Menu

[r7221]: / branches / wxsmith_addons / configure.in  Maximize  Restore  History

Download this file

454 lines (412 with data), 15.4 kB

AC_PREREQ(2.50)

m4_include([revision.m4])

AC_INIT([codeblocks], SVN_REVISION)

AC_CANONICAL_TARGET

AM_INIT_AUTOMAKE([dist-bzip2 no-dist-gzip])
AC_CONFIG_HEADER([src/include/config.h])

dnl Checks for programs.
AC_PROG_CXX
AC_PROG_CPP
AC_PROG_CC
AC_PROG_CC_C_O
AC_PROG_INSTALL
AC_PROG_LN_S
AC_PROG_MAKE_SET
AC_PROG_AWK

CODEBLOCKS_SETUP_FOR_TARGET

AC_DISABLE_STATIC
AC_PROG_LIBTOOL

dnl Checks for header files.
AC_HEADER_DIRENT
AC_HEADER_STDC
AC_CHECK_HEADERS([fcntl.h limits.h stdlib.h string.h sys/param.h unistd.h malloc.h])

dnl Checks for typedefs, structures, and compiler characteristics.
AC_HEADER_STDBOOL
AC_C_CONST
AC_C_INLINE
AC_TYPE_SIZE_T
AC_HEADER_TIME
AC_C_VOLATILE

dnl Checks for library functions.
AC_FUNC_CLOSEDIR_VOID
AC_FUNC_MALLOC
AC_FUNC_MEMCMP
AC_FUNC_STAT
AC_FUNC_VPRINTF
AC_CHECK_FUNCS([atexit getcwd isascii memchr memmove memset strcasecmp strchr strcspn strdup strrchr strstr])
AC_CHECK_LIB(dl, dlopen)
AC_CHECK_LIB(pthread, pthread_create)
AC_CHECK_FUNC(snprintf, AC_DEFINE(HAVE_SNPRINTF,,snprintf))
AC_CHECK_FUNC(vsnprintf, AC_DEFINE(HAVE_VSNPRINTF,,vsnprintf))

save_LIBS=$LIBS
AC_SEARCH_LIBS(gzopen, z, [HAVE_ZLIB=yes], [HAVE_ZLIB=no])
LIBS=$save_LIBS
AC_SEARCH_LIBS(BZ2_bzopen, bz2, [HAVE_BZIP2=yes], [HAVE_BZIP2=no])
LIBS=$save_LIBS

AM_CONDITIONAL([HAVE_ZLIB], [test "$HAVE_ZLIB" = yes])
AM_CONDITIONAL([HAVE_BZIP2], [test "$HAVE_BZIP2" = yes])

dnl versioning info for libtool
dnl Note this is the ABI version which is not the same as our actual library version
CODEBLOCKS_CURRENT=0
CODEBLOCKS_REVISION=1
CODEBLOCKS_AGE=0
CODEBLOCKS_VERSION_INFO=$CODEBLOCKS_CURRENT:$CODEBLOCKS_REVISION:$CODEBLOCKS_AGE
AC_SUBST(CODEBLOCKS_VERSION_INFO)

AM_MISSING_PROG(AMTAR, tar)
_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
              [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
                             [_AM_PROG_TAR([v7])])])

CODEBLOCKS_GET_PLATFORM
CODEBLOCKS_ENABLE_SETTINGS

AM_OPTIONS_WXCONFIG
AM_PATH_WXCONFIG(2.8.0, wxWin=1)
        if test "$wxWin" != 1; then
        AC_MSG_ERROR([
                wxWidgets must be installed on your system.

                Please check that wx-config is in path, the directory
                where wxWidgets libraries are installed (returned by
                'wx-config --libs' or 'wx-config --static --libs' command)
                is in LD_LIBRARY_PATH or equivalent variable and
                wxWindows version is 2.8.0 or above.
                ])
	else
		# check for wx2.8.3 which is known to behave badly for us
		if test "$WX_VERSION" = "2.8.3"; then
			AC_MSG_ERROR([
		wxWidgets version 2.8.3 is known to behave badly with
		Code::Blocks. Please upgrade to a newer (or downgrade to an
		earlier) wxWidgets version...
			])
		fi
        fi

dnl		CPPFLAGS="$CPPFLAGS $WX_CPPFLAGS"
dnl		CXXFLAGS="$CXXFLAGS $WX_CXXFLAGS_ONLY"
dnl		CFLAGS="$CFLAGS $WX_CFLAGS_ONLY"
dnl		LIBS="$LIBS $WX_LIBS"

AC_SUBST(CPPFLAGS)
AC_SUBST(CXXFLAGS)
AC_SUBST(CFLAGS)
AC_SUBST(LIBS)

WX_GTK2_CFLAGS=
WX_GTK2_LIBS=
WX_X11_CFLAGS=
WX_X11_LIBS=

dnl default value is to (silently) do nothing in the makefile
POSTLINK_COMMAND="@true"
MACSETFILE="@true"

AC_MSG_CHECKING(for wxWidgets platform)
WX_BASENAME=`$WX_CONFIG_WITH_ARGS --basename`
case $WX_BASENAME in
    *wx_gtk*)
        AC_MSG_RESULT(wxGTK)
		dnl
		dnl pkg-config no longer needed by debugger plugin
		dnl but seems to be needed by codesnippets...
		dnl
		dnl only do this if it is really needed
		dnl AM_CONDITIONAL adds _TRUE and _FALSE to the appropriate variables
		dnl if the condition is true, the *_TRUE variable is empty (!)
		if test "x$BUILD_CODESNIPPETS_TRUE" = "x" -o \
				"x$BUILD_FILEMANAGER_TRUE" = "x" -o \
				"x$BUILD_MOUSESAP_TRUE" = "x" ; then

			AC_CHECK_PROG(HAVE_PKG_CONFIG, pkg-config, yes, no)
			ifdef([PKG_CHECK_MODULES],[],[
				define([PKG_CHECK_MODULES],
				[ echo "You don't have pkg.m4 properly installed" >&2
					exit 1
				])
			])

			if test "x$BUILD_CODESNIPPETS_TRUE" = "x" -o \
					"x$BUILD_MOUSESAP_TRUE" = "x" ; then
				if test "x$HAVE_PKG_CONFIG" = "xyes"; then
					PKG_CHECK_MODULES([GTK2], [gtk+-2.0 >= 2.0.0])
				fi
			fi
			if test "x$BUILD_FILEMANAGER_TRUE" = "x" ; then
				if test "x$HAVE_PKG_CONFIG" = "xyes"; then
					PKG_CHECK_MODULES([GAMIN], [gamin])
				fi
			fi
    	fi
		
		dnl
		dnl Check whether the necessary boost-headers are installed
		dnl a little hacky, but it seems there is no common macro-library
		dnl to check for boost
		dnl If anybody knows a better way, feel free to change it
		if test "x$BUILD_NASSISHNEIDERMAN_TRUE" = "x" ; then
			AC_LANG_PUSH([C++])
            AC_CHECK_HEADER([boost/spirit/include/classic.hpp],[],[AC_MSG_ERROR([needed boost headers not found or not usable])])
			AC_LANG_POP([C++])
        fi


		CB_GAMIN_CFLAGS="$GAMIN_CFLAGS"
		CB_GAMIN_LIBS="$GAMIN_LIBS"
        WX_GTK2_CFLAGS="$GTK2_CFLAGS"
        WX_GTK2_LIBS="$GTK2_LIBS"
        AC_PATH_XTRA
        WX_X11_CFLAGS="`echo $X_CFLAGS | sed 's/ -INONE//'`"
        WX_X11_LIBS="`echo $X_LIBS | sed 's/ -LNONE//' | sed 's/ -RNONE//'`"
        if test "$no_x" != yes; then
            WX_X11_LIBS="$WX_X11_LIBS -lX11 $X_EXTRA_LIBS"
        fi
    ;;
    *wx_msw*)
        AC_MSG_RESULT(wxMSW)
    ;;
    *wx_mac*)
        AC_MSG_RESULT(wxMac)
        AC_CHECK_PROG(REZ, Rez, Rez, /Developer/Tools/Rez)
        POSTLINK_COMMAND="\$(REZ) -d __DARWIN__ -t APPL Carbon.r -o"
        AC_CHECK_PROG(SETFILE, SetFile, SetFile, /Developer/Tools/SetFile)
        MACSETFILE="\$(SETFILE)"
    ;;
    *)
        AC_MSG_RESULT(other)
    ;;
esac

AC_SUBST(WX_GTK2_CFLAGS)
AC_SUBST(WX_GTK2_LIBS)
AC_SUBST(CB_GAMIN_CFLAGS)
AC_SUBST(CB_GAMIN_LIBS)
AC_SUBST(WX_X11_CFLAGS)
AC_SUBST(WX_X11_LIBS)

AC_SUBST(POSTLINK_COMMAND)
AC_SUBST(MACSETFILE)

PLUGIN_WX_LIBS=

AC_MSG_CHECKING(if wxWidgets libraries are needed for plugins)
case `uname` in
    Darwin)
        AC_MSG_RESULT(yes)
        PLUGIN_WX_LIBS="$WX_LIBS"
    ;;
    *)
        AC_MSG_RESULT(no)
    ;;
esac

AC_SUBST(PLUGIN_WX_LIBS)

PIC_FLAGS=

AC_MSG_CHECKING(for PIC flags)
case `uname` in
    Solaris)
        if test "$GCC" = yes; then
            PIC_FLAGS="-fPIC -DPIC"
        else
            PIC_FLAGS="-KPIC -DPIC"
        fi
    ;;
    *)
        PIC_FLAGS="-fPIC -DPIC"
    ;;
esac
AC_MSG_RESULT($PIC_FLAGS)

CPPFLAGS="$CPPFLAGS -Ulinux -Uunix"
CXXFLAGS="$CXXFLAGS $PCH_FLAGS $PIC_FLAGS -fexceptions"
AC_SUBST(codeblocks_PCH_FLAGS, "$PCH_FLAGS")

dnl AM_PATH_GTK(1.2.7, ,
dnl             AC_MSG_ERROR(Cannot find GTK: Is gtk-config in path?),
dnl             gthread)

AM_CONDITIONAL([LINUX], [test `uname` = "Linux"])
AM_CONDITIONAL([DARWIN], [test `uname` = "Darwin"])

AC_MSG_NOTICE([Configuring Code::Blocks...])
AC_MSG_NOTICE(SVN revision SVN_REVISION (SVN_DATE))
AC_SUBST(REVISION, SVN_REV)
AC_SUBST(DATE, "SVN_DATE")

AC_CONFIG_FILES([Makefile
	src/Makefile
	src/base/Makefile
	src/base/tinyxml/Makefile
	src/build_tools/Makefile
	src/build_tools/autorevision/Makefile
	src/include/autorevision.h
	src/include/Makefile
	src/include/scripting/Makefile
	src/include/scripting/bindings/Makefile
	src/include/scripting/include/Makefile
	src/include/scripting/sqplus/Makefile
	src/include/scripting/sqstdlib/Makefile
	src/include/scripting/squirrel/Makefile
	src/include/tinyxml/Makefile
	src/sdk/Makefile
	src/sdk/wxpropgrid/Makefile
	src/sdk/scripting/Makefile
	src/sdk/scripting/bindings/Makefile
	src/sdk/scripting/squirrel/Makefile
	src/sdk/scripting/sqstdlib/Makefile
	src/sdk/scripting/sqplus/Makefile
	src/sdk/wxscintilla/Makefile
	src/sdk/resources/Makefile
	src/sdk/resources/lexers/Makefile
	src/src/resources/Makefile
	src/src/resources/icons/Makefile
	src/src/resources/images/Makefile
	src/src/resources/images/16x16/Makefile
	src/src/resources/images/settings/Makefile
	src/src/Makefile
	src/plugins/Makefile
	src/plugins/astyle/Makefile
	src/plugins/astyle/resources/Makefile
	src/plugins/autosave/Makefile
	src/plugins/classwizard/Makefile
	src/plugins/classwizard/resources/Makefile
	src/plugins/codecompletion/Makefile
	src/plugins/codecompletion/resources/Makefile
	src/plugins/compilergcc/Makefile
	src/plugins/compilergcc/depslib/Makefile
	src/plugins/compilergcc/depslib/src/Makefile
	src/plugins/compilergcc/resources/Makefile
	src/plugins/debuggergdb/Makefile
	src/plugins/debuggergdb/resources/Makefile
	src/plugins/debuggergdb/resources/images/Makefile
	src/plugins/debuggergdb/resources/images/16x16/Makefile
	src/plugins/defaultmimehandler/Makefile
	src/plugins/defaultmimehandler/resources/Makefile
	src/plugins/openfileslist/Makefile
	src/plugins/projectsimporter/Makefile
	src/plugins/projectsimporter/resources/Makefile
	src/plugins/scriptedwizard/Makefile
	src/plugins/scriptedwizard/resources/Makefile
	src/plugins/scriptedwizard/resources/arm/Makefile
	src/plugins/scriptedwizard/resources/avr/Makefile
	src/plugins/scriptedwizard/resources/c_file/Makefile
	src/plugins/scriptedwizard/resources/console/Makefile
	src/plugins/scriptedwizard/resources/d/Makefile
	src/plugins/scriptedwizard/resources/directx/Makefile
	src/plugins/scriptedwizard/resources/dll/Makefile
	src/plugins/scriptedwizard/resources/empty/Makefile
	src/plugins/scriptedwizard/resources/empty_file/Makefile
	src/plugins/scriptedwizard/resources/fltk/Makefile
	src/plugins/scriptedwizard/resources/fortran/Makefile
	src/plugins/scriptedwizard/resources/glfw/Makefile
	src/plugins/scriptedwizard/resources/glut/Makefile
	src/plugins/scriptedwizard/resources/gtk/Makefile
	src/plugins/scriptedwizard/resources/h_file/Makefile
	src/plugins/scriptedwizard/resources/irrlicht/Makefile
	src/plugins/scriptedwizard/resources/lf/Makefile
	src/plugins/scriptedwizard/resources/matlab_csf/Makefile
	src/plugins/scriptedwizard/resources/matlab_csf/files/Makefile
	src/plugins/scriptedwizard/resources/matlab_csf/lccstub/Makefile
	src/plugins/scriptedwizard/resources/ogre/Makefile
	src/plugins/scriptedwizard/resources/ogre/files/Makefile
	src/plugins/scriptedwizard/resources/opengl/Makefile
	src/plugins/scriptedwizard/resources/opengl/files_unix/Makefile
	src/plugins/scriptedwizard/resources/opengl/files_win/Makefile
	src/plugins/scriptedwizard/resources/plugins/Makefile
	src/plugins/scriptedwizard/resources/plugins/templates/Makefile
	src/plugins/scriptedwizard/resources/ppc/Makefile
	src/plugins/scriptedwizard/resources/qt4/Makefile
	src/plugins/scriptedwizard/resources/qt4/files/Makefile
	src/plugins/scriptedwizard/resources/sdl/Makefile
	src/plugins/scriptedwizard/resources/sdl/files/Makefile
	src/plugins/scriptedwizard/resources/sfml/Makefile
	src/plugins/scriptedwizard/resources/sfml/files/Makefile
	src/plugins/scriptedwizard/resources/sharedlib/Makefile
	src/plugins/scriptedwizard/resources/sharedlib/c/Makefile
	src/plugins/scriptedwizard/resources/sharedlib/cpp/Makefile
	src/plugins/scriptedwizard/resources/smartwin/Makefile
	src/plugins/scriptedwizard/resources/smartwin/files/Makefile
	src/plugins/scriptedwizard/resources/staticlib/Makefile
	src/plugins/scriptedwizard/resources/staticlib/files/Makefile
	src/plugins/scriptedwizard/resources/stlport/Makefile
	src/plugins/scriptedwizard/resources/stlport/files/Makefile
	src/plugins/scriptedwizard/resources/sys/Makefile
	src/plugins/scriptedwizard/resources/tricore/Makefile
	src/plugins/scriptedwizard/resources/win32gui/Makefile
	src/plugins/scriptedwizard/resources/wxwidgets/Makefile
	src/plugins/todo/Makefile
	src/plugins/todo/resources/Makefile
	src/plugins/abbreviations/Makefile
	src/plugins/abbreviations/resources/Makefile
	src/plugins/xpmanifest/Makefile
	src/plugins/contrib/Makefile
	src/plugins/contrib/AutoVersioning/Makefile
	src/plugins/contrib/BrowseTracker/Makefile
	src/plugins/contrib/byogames/Makefile
	src/plugins/contrib/Cccc/Makefile
	src/plugins/contrib/Cccc/resources/Makefile
	src/plugins/contrib/CppCheck/Makefile
	src/plugins/contrib/CppCheck/resources/Makefile
	src/plugins/contrib/cb_koders/Makefile
	src/plugins/contrib/codesnippets/Makefile
	src/plugins/contrib/codesnippets/resources/Makefile
	src/plugins/contrib/codestat/Makefile
	src/plugins/contrib/codestat/resources/Makefile
	src/plugins/contrib/copystrings/Makefile
	src/plugins/contrib/Cscope/Makefile
	src/plugins/contrib/devpak_plugin/Makefile
	src/plugins/contrib/devpak_plugin/bzip2/Makefile
	src/plugins/contrib/DoxyBlocks/Makefile
	src/plugins/contrib/DoxyBlocks/images/Makefile
	src/plugins/contrib/DoxyBlocks/images/16x16/Makefile
	src/plugins/contrib/dragscroll/Makefile
	src/plugins/contrib/EditorTweaks/Makefile
	src/plugins/contrib/envvars/Makefile
	src/plugins/contrib/FileManager/Makefile
	src/plugins/contrib/headerfixup/Makefile
	src/plugins/contrib/help_plugin/Makefile
	src/plugins/contrib/help_plugin/bzip2/Makefile
	src/plugins/contrib/help_plugin/zlib/Makefile
	src/plugins/contrib/keybinder/Makefile
	src/plugins/contrib/NassiShneiderman/Makefile
	src/plugins/contrib/profiler/Makefile
	src/plugins/contrib/profiler/resources/Makefile
	src/plugins/contrib/source_exporter/Makefile
	src/plugins/contrib/source_exporter/wxPdfDocument/Makefile
	src/plugins/contrib/symtab/Makefile
	src/plugins/contrib/symtab/resources/Makefile
	src/plugins/contrib/regex_testbed/Makefile
	src/plugins/contrib/ReopenEditor/Makefile
	src/plugins/contrib/ThreadSearch/Makefile
	src/plugins/contrib/ThreadSearch/resources/Makefile
	src/plugins/contrib/ThreadSearch/resources/images/Makefile
	src/plugins/contrib/ThreadSearch/resources/images/16x16/Makefile
	src/plugins/contrib/ThreadSearch/resources/images/22x22/Makefile
	src/plugins/contrib/ToolsPlus/Makefile
	src/plugins/contrib/ToolsPlus/Resources/Makefile
	src/plugins/contrib/Valgrind/Makefile
	src/plugins/contrib/Valgrind/resources/Makefile
	src/plugins/contrib/wxSmith/Makefile
	src/plugins/contrib/wxSmith/wxsmith.pc
	src/plugins/contrib/wxSmith/plugin/Makefile
	src/plugins/contrib/wxSmith/properties/Makefile
	src/plugins/contrib/wxSmith/wxwidgets/Makefile
	src/plugins/contrib/wxSmith/wxwidgets/properties/Makefile
	src/plugins/contrib/wxSmith/wxwidgets/defitems/Makefile
	src/plugins/contrib/wxSmith/wxwidgets/icons/Makefile
	src/plugins/contrib/wxSmithContribItems/Makefile
	src/plugins/contrib/wxSmithContribItems/wxsmith-contrib.pc
	src/plugins/contrib/wxSmithContribItems/wxchart/wxchart-1.0/Makefile
	src/plugins/contrib/wxSmithContribItems/wxflatnotebook/wxFlatNotebook/Makefile
	src/plugins/contrib/wxSmithContribItems/wximagepanel/wxImagePanel/Makefile
	src/plugins/contrib/wxSmithContribItems/wxthings/wxthings/Makefile
	src/plugins/contrib/wxSmithAui/Makefile
	src/plugins/contrib/wxSmithAui/wxsmithaui.pc
	src/plugins/contrib/lib_finder/Makefile
	src/plugins/contrib/lib_finder/lib_finder/Makefile
	src/plugins/contrib/HexEditor/Makefile
	src/plugins/contrib/IncrementalSearch/Makefile
	src/plugins/contrib/MouseSap/Makefile
	src/mime/Makefile
	src/scripts/Makefile
	src/tools/Makefile
	src/tools/cb_share_config/Makefile
	src/tools/ConsoleRunner/Makefile
	src/tools/CBLauncher/Makefile
	src/templates/Makefile
	src/templates/common/Makefile
	src/templates/unix/Makefile
	src/templates/win32/Makefile
	src/wxsmith/Makefile
	codeblocks.pc
	codeblocks.spec
	codeblocks.plist
])

AC_OUTPUT

echo
echo
echo "*************************************************"
echo "* Code::Blocks source tree has been configured. *"
echo "*************************************************"
echo
echo "You can now build Code::Blocks by issuing 'make'".
echo "When the build is complete, become root and install"
echo "it by issuing 'make install'".
echo
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.