no_gtk=""
if test "$GTK_CONFIG" != "no" ; then
GTK_CFLAGS=`$GTK_CONFIG --cflags`
- GTK_LIBS=`$GTK_CONFIG --libs`
+ GTK_LIBS=`$GTK_CONFIG --libs gthread`
ac_save_CFLAGS="$CFLAGS"
ac_save_LIBS="$LIBS"
CFLAGS="$CFLAGS $GTK_CFLAGS"
WX_MAJOR_VERSION_NUMBER=2
WX_MINOR_VERSION_NUMBER=1
-WX_RELEASE_NUMBER=12
+WX_RELEASE_NUMBER=13
WX_INTERFACE_AGE=0
WX_BINARY_AGE=0
AC_DEFINE(__GNUWIN32__)
AC_DEFINE(STRICT)
AC_DEFINE(WINVER, 0x0400)
+ PROGRAM_EXT=".exe"
DEFAULT_DEFAULT_wxUSE_MSW=1
;;
*-pc-os2_emx )
AC_DEFINE(__EMX__)
+ PROGRAM_EXT=".exe"
DEFAULT_DEFAULT_wxUSE_PM=1
;;
DEFAULT_wxUSE_LIBPNG=yes
DEFAULT_wxUSE_LIBJPEG=yes
DEFAULT_wxUSE_LIBTIFF=yes
- DEFAULT_wxUSE_ODBC=yes
+ DEFAULT_wxUSE_ODBC=no
DEFAULT_wxUSE_STD_IOSTREAM=no
DEFAULT_wxUSE_FILE=yes
fi
dnl we suppose that expr exists...
-NUM_TOOLKITS=`expr ${wxUSE_GTK:-0} + ${wxUSE_MOTIF:-0} + ${wxUSE_WINE:-0} + ${wxUSE_MINGW:-0} + ${wxUSE_CYGWIN:-0} + ${wxUSE_PM:-0}`
+NUM_TOOLKITS=`expr ${wxUSE_GTK:-0} + ${wxUSE_MOTIF:-0} + ${wxUSE_WINE:-0} + ${wxUSE_MINGW:-0} + ${wxUSE_CYGWIN:-0}`
+
+dnl Allow wxUSE_PM only for OS/2 with EMX.
+dnl Path separator; ':' for unix.
+dnl Stem for flex output; lexyy for OS/2, lex.yy otherwise
+dnl Extension for programs; '.exe' for OS/2 and msw builds (set later).
+case "${host}" in
+ *-pc-os2_emx )
+ NUM_TOOLKITS=`expr ${NUM_TOOLKITS} + ${wxUSE_PM:-0}`
+ # PATH_IFS is autodetected by OS/2's configure (usually ';')
+ LEX_STEM="lexyy"
+ ;;
+ *)
+ PATH_IFS=':'
+ LEX_STEM="lex.yy"
+ PROGRAM_EXT=
+ ;;
+esac
case "$NUM_TOOLKITS" in
1)
dnl from "if wxUSE_GUI"
else
+ PATH_IFS=':'
AC_MSG_RESULT(base only)
fi
/usr/x386/include \
/usr/XFree86/include/X11 \
\
+ X:/XFree86/include \
+ X:/XFree86/include/X11 \
+ \
/usr/include/gtk \
/usr/local/include/gtk \
/usr/include/glib \
dnl search for toolkit (widget sets)
dnl ----------------------------------------------------------------
+AFMINSTALL=
+
if test "$wxUSE_GUI" = "yes"; then
+USE_GUI=1
+
TOOLKIT=
TOOLKIT_INCLUDE=
GUI_TK_LINK=
WXGTK12=
+WXGTK13=
WXWINE=
-dnl Extension for programs; '.exe' for msw builds
-PROGRAM_EXT=
-
if test "$wxUSE_CYGWIN" = 1 || test "$wxUSE_MINGW" = 1 ; then
if test "$cross_compiling" = "yes" ; then
AC_MSG_WARN(Cross compiling --- skipping windows.h check)
GENERICOBJS="\$(MSW_GENERICOBJS)"
UNIXOBJS=
GUIDIST=MSW_DIST
- PROGRAM_EXT=.exe
fi
if test "$wxUSE_GTK" = 1; then
- dnl avoid calling AM_PATH_GTK twice, so check first for the newer version and
- dnl only then, if it wasn't found, for an older one
- AM_PATH_GTK(1.2.1, WXGTK12=1, AC_MSG_ERROR(Is gtk-config in path and GTK+ is version 1.2.1 or above?))
+ dnl avoid calling AM_PATH_GTK twice, so check first for the newer version
+ dnl and only then, if it wasn't found, for an older one
+ AM_PATH_GTK(1.2.3, WXGTK12=1)
+
+ if test "$WXGTK12" != 1; then
+ AC_MSG_ERROR([
+ Please check that gtk-config is in path, the directory
+ where GTK+ libraries are installed (returned by
+ 'gtk-config --libs' command) is in LD_LIBRARY_PATH or
+ equivalent variable and GTK+ is version 1.2.3 or above.
+ ])
+ fi
+
+dnl it doesn't really work with 1.3.0 now...
+dnl AM_PATH_GTK(1.3.0,
+dnl WXGTK13=1,
+dnl AM_PATH_GTK(1.2.1,
+dnl WXGTK12=1,
+dnl AC_MSG_ERROR(Is gtk-config in path and GTK+ is version 1.2.1 or above?)
+dnl )
+dnl )
TOOLKIT_INCLUDE="$GTK_CFLAGS"
- GUI_TK_LIBRARY="$GTK_LIBS -lgthread"
+
+dnl Appending gthreads as it was done here is not portable, instead
+dnl we now call "gtk-config --libs gthread" which sets the right library
+dnl name for us. The following hacks are no longer required.
+
+ GUI_TK_LIBRARY="$GTK_LIBS"
+
+dnl dnl On FreeBSD, the libs are called gtk12 etc, so we must append gthread12
+dnl echo $GTK_LIBS | fgrep -q "glib12"
+dnl if test $? = 0 ; then
+dnl GUI_TK_LIBRARY="$GTK_LIBS -gthread12"
+dnl else
+dnl GUI_TK_LIBRARY="$GTK_LIBS -lgthread"
+dnl fi
TOOLKIT=GTK
+ AFMINSTALL=afminstall
+
GUIOBJS="\$(GTK_GUIOBJS)"
GUIHEADERS="\$(GTK_HEADERS)"
COMMONOBJS="\$(GTK_COMMONOBJS)"
UNIXDEPS="\$(UNIX_DEPS)"
GUIDIST=GTK_DIST
-dnl test for XIM support in libgdk
-AC_CHECK_LIB(gdk, gdk_im_open, AC_DEFINE(HAVE_XIM))
-
+ dnl test for XIM support in libgdk
+ AC_CHECK_LIB(gdk, gdk_im_open, AC_DEFINE(HAVE_XIM))
fi
if test "$wxUSE_WINE" = 1; then
GUI_TK_LIBRARY="$X_LIBS"
TOOLKIT_INCLUDE="$X_CFLAGS"
+ AFMINSTALL=afminstall
+
dnl manual check for X11 headers/libs
dnl
dnl AC_MSG_CHECKING(for X11 headers)
dnl the name of the directory where the files for this toolkit live
if test "$TOOLKIT" != "PM" ; then
- TOOLKIT_DIR=`echo ${TOOLKIT} | tr "A-Z" "a-z"`
+ TOOLKIT_DIR=`echo ${TOOLKIT} | tr "[[A-Z]]" "[[a-z]]"`
else
TOOLKIT_DIR="os2"
fi
-dnl the symbol which allows conditional compilation for the given toolkit
-TOOLKIT_DEF="-D__WX${TOOLKIT}__"
+ dnl the symbol which allows conditional compilation for the given toolkit
+ TOOLKIT_DEF="-D__WX${TOOLKIT}__"
-dnl the name of the (libtool) library
-WX_LIBRARY="wx_${TOOLKIT_DIR}"
+ dnl the name of the (libtool) library
+ WX_LIBRARY="wx_${TOOLKIT_DIR}"
dnl the sources, their dependenices and the headers
- ALL_OBJECTS="\$(GUIOBJS) \$(COMMONOBJS) \$(GENERICOBJS) \$(UNIXOBJS) \$(HTMLOBJS) \$(IODBCOBJS)"
+ ALL_OBJECTS="\$(GUIOBJS) \$(COMMONOBJS) \$(GENERICOBJS) \$(UNIXOBJS) \$(HTMLOBJS)"
+
+ dnl ODBC objects are Unix only
+ if test "$(TOOLKIT)" != "MSW"; then
+ ALL_OBJECTS="${ALL_OBJECTS} \$(IODBCOBJS)"
+ fi
+
if test "$wxUSE_LIBJPEG" = "yes" ; then
- ALL_OBJECTS="${ALL_OBJECTS} \$(JPEGOBJS)"
+ ALL_OBJECTS="${ALL_OBJECTS} \$(JPEGOBJS)"
fi
if test "$wxUSE_LIBTIFF" = "yes" ; then
ALL_OBJECTS="${ALL_OBJECTS} \$(TIFFOBJS)"
ALL_OBJECTS="${ALL_OBJECTS} \$(ZLIBOBJS)"
fi
ALL_DEPFILES="\$(GUIDEPS) \$(COMMONDEPS) \$(GENERICDEPS) \$(UNIXDEPS) \$(HTMLDEPS)"
- ALL_HEADERS="\$(GUIHEADERS) \$(HTML_HEADERS) \$(UNIX_HEADERS) \$(PROTOCOL_HEADERS) \$(GENERIC_HEADERS) \$(WX_HEADERS)"
+
+ PORT_FILES="src/\$(TOOLKITDIR)/files.lst"
+ RPM_FILES="src/\$(TOOLKITDIR)/rpmfiles.lst"
+ RPM_SPEC="wx\$(TOOLKIT).spec"
+
+ dnl distribute samples/demos/utils with GUI versions
+ GUIDIST="${GUIDIST} SAMPLES_DIST DEMOS_DIST UTILS_DIST MISC_DIST"
+ DISTDIR="wx\$(TOOLKIT)"
else
dnl leave all TOOLKIT_XXX vars empty
+ USE_GUI=0
+
dnl the sources, their dependenices and the headers
- ALL_OBJECTS="\$(BASE_OBJS)"
- ALL_DEPFILES="\${BASE_DEPS}"
- ALL_HEADERS="\${BASE_HEADERS}"
+ ALL_OBJECTS="\$(BASE_OBJS) \${BASE_UNIX_OBJS}"
+ ALL_DEPFILES="\${BASE_DEPS} \${BASE_UNIX_DEPS}"
dnl building wxBase only
WX_LIBRARY="wxbase"
+
+ PORT_FILES="src/files.lst"
+ RPM_FILES="src/rpmfiles.lst"
+ RPM_SPEC="wxBase.spec"
+
+ dnl distribute only wxBase sources/headers
+ GUIDIST="BASE_DIST"
+ DISTDIR="wxBase"
fi
dnl the name of the (libtool) library
AC_DEFINE(HAVE_VSSCANF)
wx_cv_func_vsscanf=yes
],
- wx_cv_func_vsscanf=no,
- wx_cv_func_vsscanf=no
+ wx_cv_func_vsscanf=no,
+ wx_cv_func_vsscanf=no
)
])
fi
fi
+if test "$WXGTK13" = 1 ; then
+ AC_DEFINE_UNQUOTED(__WXGTK13__,$WXGTK13)
+ WXGTK12=1
+fi
+
if test "$WXGTK12" = 1 ; then
AC_DEFINE_UNQUOTED(__WXGTK12__,$WXGTK12)
fi
fi
DEP_INFO_FLAGS=
+CODE_GEN_FLAGS=
if test "$GCC" = yes ; then
if test "$wxUSE_NO_RTTI" = "yes" ; then
- WXDEBUG_DEFINE="$WXDEBUG_DEFINE -fno-rtti"
+ CODE_GEN_FLAGS="$CODE_GEN_FLAGS -fno-rtti"
fi
if test "$wxUSE_NO_EXCEPTIONS" = "yes" ; then
- WXDEBUG_DEFINE="$WXDEBUG_DEFINE -fno-exceptions"
+ CODE_GEN_FLAGS="$CODE_GEN_FLAGS -fno-exceptions"
fi
if test "$wxUSE_PERMISSIVE" = "yes" ; then
- CFLAGS="${CFLAGS} -fpermissive"
- CXXFLAGS="${CXXFLAGS} -fpermissive"
+ CODE_GEN_FLAGS="$CODE_GEN_FLAGS -fpermissive"
fi
if test "$wxUSE_NO_DEPS" = "no" ; then
DEP_INFO_FLAGS="-MMD"
if test "$wxUSE_DIALUP_MANAGER" = "yes" ; then
AC_DEFINE(wxUSE_DIALUP_MANAGER)
- SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS nettest"
+ SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS dialup"
fi
if test "$wxUSE_STREAMS" = "yes" ; then
dnl as we want $wx_cv_var_timezone to be expanded, use AC_DEFINE_UNQUOTED
AC_DEFINE_UNQUOTED(WX_TIMEZONE, $wx_cv_var_timezone)
- dnl check for localtime (POSIX), gettimeofday (SVr4, BSD 4.3) and ftime
- dnl (V7, BSD 4.3)
- AC_CHECK_FUNCS(localtime gettimeofday ftime, break)
+ dnl check for localtime (it's POSIX, but the check can do no harm...)
+ AC_CHECK_FUNCS(localtime)
if test "$ac_cv_func_localtime" = "yes"; then
AC_CACHE_CHECK(for tm_gmtoff in struct tm,
wx_cv_struct_tm_has_gmtoff=no
)
])
- elif test "$ac_cv_func_gettimeofday" = "yes"; then
+ fi
+
+ dnl check for gettimeofday (SVr4, BSD 4.3) and ftime (V7, BSD 4.3) for the
+ dnl function to be used for high resolution timers
+ AC_CHECK_FUNCS(gettimeofday ftime, break)
+
+ if test "$ac_cv_func_gettimeofday" = "yes"; then
AC_CACHE_CHECK([whether gettimeofday takes two arguments],
wx_cv_func_gettimeofday_has_2_args,
[
AC_LANG_RESTORE
AC_DEFINE(wxUSE_SOCKETS)
- SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS wxsocket"
+ SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS sockets"
INCLUDE_SUBDIRS="$INCLUDE_SUBDIRS protocol"
fi
dnl library features they need are present)
dnl TODO some samples are never built so far:
- dnl mfc, nativdlg, oleauto, ownerdrw, proplist
- SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS bombs controls dialogs drawing dynamic \
- font forty fractal image minimal richedit wxpoem"
+ dnl ipc, mfc, nativdlg, oleauto, ownerdrw, proplist
+ SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS controls dialogs drawing dynamic \
+ font fractal image minimal richedit"
dnl this is needed to be able to find AFM files
CPPFLAGS="$CPPFLAGS \$(EXTRADEFS)"
dnl
dnl FIXME For some mysterious reasons, sometimes the directories are duplicated
dnl in this list - hence uniq. But normally, this shouldn't be needed!
-SAMPLES_SUBDIRS="`echo $SAMPLES_SUBDIRS | tr -s ' ' | tr ' ' '\n' | sort | uniq | tr '\n' ' '`"
+dnl Unfortunately, there is a bug in OS/2's tr, such that
+dnl tr ' ' '\n' introduces DOS-like line breaks, whereas tr '\n' ' '
+dnl only removes the Unix-like part of the introduced line break.
+SAMPLES_SUBDIRS="`echo $SAMPLES_SUBDIRS | tr -s ' ' | tr ' ' '\n' | sort | uniq | tr '\n' ' '| tr -d '\r'`"
+
+dnl makefile variables
+AC_SUBST(LEX_STEM)
+AC_SUBST(PATH_IFS)
dnl global options
AC_SUBST(WX_MAJOR_VERSION_NUMBER)
AC_SUBST(SHARED_LD)
AC_SUBST(PIC_FLAG)
AC_SUBST(DEP_INFO_FLAGS)
+AC_SUBST(CODE_GEN_FLAGS)
AC_SUBST(BURNT_LIBRARY_NAME)
dnl debugging options
AC_SUBST(WXDEBUG_DEFINE)
dnl toolkit options
+AC_SUBST(USE_GUI)
+AC_SUBST(AFMINSTALL)
AC_SUBST(TOOLKIT)
AC_SUBST(TOOLKIT_DEF)
AC_SUBST(TOOLKIT_DIR)
AC_SUBST(UNIXDEPS)
AC_SUBST(ALL_OBJECTS)
AC_SUBST(ALL_DEPFILES)
-AC_SUBST(ALL_HEADERS)
+
+dnl distribution vars
AC_SUBST(GUIDIST)
+AC_SUBST(PORT_FILES)
+AC_SUBST(DISTDIR)
+AC_SUBST(RPM_SPEC)
+AC_SUBST(RPM_FILES)
dnl additional subdirectories where we will build
AC_SUBST(SRC_SUBDIRS)
AC_CONFIG_HEADER(setup.h:setup.h.in)
-dnl Duh! glcanvas/$(TOOLKIT_DIR) doesn't work for msw because some
-dnl genius called it "win"
-if test "${TOOLKIT_DIR}" = "msw" ; then
- GL_TOOLKIT_DIR="win"
-else
- GL_TOOLKIT_DIR="${TOOLKIT_DIR}"
+dnl some more GUI only things
+if test "$wxUSE_GUI" = "yes"; then
+ AC_CACHE_CHECK([glcanvas subdirectory to use], wx_cv_path_glcanvas,
+ [
+ dnl Duh! glcanvas/$(TOOLKIT_DIR) doesn't work for msw because some
+ dnl genius called it "win"
+ if test "${TOOLKIT_DIR}" = "msw" ; then
+ wx_cv_path_glcanvas="win"
+ else
+ wx_cv_path_glcanvas="${TOOLKIT_DIR}"
+ fi
+ ])
+
+ dnl It's needed in glcanvas/Makefile.in so we even have to subst this hack!
+ GL_TOOLKIT_DIR=$wx_cv_PATH_glcanvas
+ AC_SUBST(GL_TOOLKIT_DIR)
+
+ AC_CONFIG_SUBDIRS(demos samples utils)
fi
-dnl It's needed in glcanvas/Makefile.in so we even have to subst this hack!
-AC_SUBST(GL_TOOLKIT_DIR)
+dnl from wxUSE_GUI
dnl create each of the files in the space separated list from the file.in
dnl (the original file name may be overriden by appending another name after a
src/makeprog.env
src/makelib.env
Makefile
- samples/Makefile
- samples/bombs/Makefile
- samples/caret/Makefile
- samples/checklst/Makefile
- samples/config/Makefile
- samples/controls/Makefile
- samples/console/Makefile
- samples/db/Makefile
- samples/dialogs/Makefile
- samples/docview/Makefile
- samples/docvwmdi/Makefile
- samples/dnd/Makefile
- samples/drawing/Makefile
- samples/forty/Makefile
- samples/font/Makefile
- samples/fractal/Makefile
- samples/image/Makefile
- samples/internat/Makefile
- samples/layout/Makefile
- samples/listctrl/Makefile
- samples/mdi/Makefile
- samples/minifram/Makefile
- samples/minimal/Makefile
- samples/nettest/Makefile
- samples/newgrid/Makefile
- samples/notebook/Makefile
- samples/png/Makefile
- samples/printing/Makefile
- samples/proplist/Makefile
- samples/richedit/Makefile
- samples/resource/Makefile
- samples/sashtest/Makefile
- samples/scroll/Makefile
- samples/scrollsub/Makefile
- samples/splitter/Makefile
- samples/text/Makefile
- samples/thread/Makefile
- samples/toolbar/Makefile
- samples/treectrl/Makefile
- samples/typetest/Makefile
- samples/validate/Makefile
- samples/wxpoem/Makefile
- samples/wxsocket/Makefile
- samples/wizard/Makefile
- samples/html/Makefile
- samples/html/about/Makefile
- samples/html/help/Makefile
- samples/html/printing/Makefile
- samples/html/helpview/Makefile
- samples/html/test/Makefile
- samples/html/zip/Makefile
- samples/html/virtual/Makefile
- samples/html/widget/Makefile
- utils/Makefile
- utils/wxMMedia2/Makefile
- utils/wxMMedia2/lib/Makefile
- utils/wxMMedia2/sample/Makefile
- utils/glcanvas/Makefile
- utils/glcanvas/${GL_TOOLKIT_DIR}/Makefile
- utils/ogl/Makefile
- utils/ogl/src/Makefile
],
[
chmod +x wx-config