dnl and Martin Sperl.
dnl
dnl This script is under the wxWindows licence.
-dnl
+dnl $Id$
dnl ////////////////////////////////////////////////////////////////////////
+
dnl AM_PATH_GTK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
dnl Test for GTK, and define GTK_CFLAGS and GTK_LIBS
dnl
AC_DEFUN(AM_PATH_GTK,
-[dnl
+[dnl
dnl Get the cflags and libraries from the gtk-config script
dnl
AC_ARG_WITH(gtk-prefix,[**--with-gtk-prefix=PFX Prefix where GTK is installed],
#include <gtk/gtk.h>
#include <stdio.h>
-int
+int
main ()
{
int major, minor, micro;
exit(1);
}
+ if (gtk_minor_version == 1) return FALSE;
+
return !((gtk_major_version > major) ||
- ((gtk_major_version == major) && (gtk_minor_version > minor)) ||
- ((gtk_major_version == major) && (gtk_minor_version == minor) && (gtk_micro_version >= micro)));
+ ((gtk_major_version == major) && (gtk_minor_version > minor)) ||
+ ((gtk_major_version == major) && (gtk_minor_version == minor) && (gtk_micro_version >= micro)));
}
],, no_gtk=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
CFLAGS="$ac_save_CFLAGS"
fi
if test "x$no_gtk" = x ; then
AC_MSG_RESULT(yes)
- ifelse([$2], , :, [$2])
+ ifelse([$2], , :, [$2])
else
AC_MSG_RESULT(no)
GTK_CFLAGS=""
if test $result = 0; then
ac_path_to_include=""
else
- ac_path_to_include="-I$1"
+ ac_path_to_include="-I$1"
fi
])
if test $result = 0; then
ac_path_to_link=""
else
- ac_path_to_link="-L$1"
+ ac_path_to_link="-L$1"
fi
])
dnl search path for includes and libraries
dnl ------------------------------------------------------------------------
+dnl VZ: added standard locations for Xm.h for Irix, HP-UX and SunOS (19.02.99)
SEARCH_INCLUDE="\
+ /usr/Motif-1.2/include \
+ /usr/Motif-2.1/include \
+ \
+ /usr/include/Motif1.2 \
+ /opt/xpm/include/X11 \
+ \
/usr/Motif1.2/include \
- \
+ /usr/dt/include \
+ /usr/include/Xm \
+ \
/usr/X11R6/include \
/usr/X11R5/include \
/usr/X11R4/include \
\
+ /usr/X11R6/lib \
+ /usr/X11R5/lib \
+ /usr/X11R4/lib \
+ \
/usr/include/X11R6 \
/usr/include/X11R5 \
/usr/include/X11R4 \
/usr/XFree86/include/X11 \
\
/usr/include \
+ /usr/include/gtk \
+ /usr/include/gdk \
+ /usr/include/glib \
/usr/local/include \
/usr/unsupported/include \
/usr/athena/include \
/usr/lpp/Xamples/include \
\
/usr/local/include/gtk \
- /usr/X11R6/include/Xm \
- /usr/X11/include/Xm \
+ /usr/local/include/qt \
/usr/include/qt \
\
/usr/openwin/include \
/usr/openwin/share/include \
"
-SEARCH_LIB="`echo "$SEARCH_INCLUDE" | sed s/include/lib/g` \
- "
+SEARCH_LIB="`echo "$SEARCH_INCLUDE" | sed s/include/lib/g` "
dnl ------------------------------------------------------------------------
dnl standard checks
dnl does compiler support -c and -o simultaniously
AC_PROG_CC_C_O
-dnl defines NO_MINUS_C_MINUS_O if compiler does not accept
+dnl defines NO_MINUS_C_MINUS_O if compiler does not accept
dnl both switches simultaniously
dnl what is the c-preprocessor
AC_PROG_CPP
AC_PROG_AWK
dnl defines AWK with the appropriate command
+dnl strip command
+dnl =============
+AC_CHECK_PROG(STRIP, strip, strip, true)
+dnl defines STRIP as strip or nothing if not found
+
dnl ###############
dnl # make checks #
dnl ###############
echo dummy > sub/file
${MAKE-make} -f confMake VPATH=sub 2> config.log > /dev/null
RESULT=$?
-rm -f sub/file check final_file config.log confMake
-rmdir sub
+rm -f sub/file check final_file confMake
+rmdir sub
if test "$RESULT" = 0; then
AC_MSG_RESULT(yes)
else
setenv MAKE gmake; ./configure for csh-type shells
Also please do remember to use gmake in this case every time
you are trying to compile.
-)
+)
fi
dnl ####################
dnl defines STDC_HEADERS if ANSI-C header
AC_HEADER_SYS_WAIT
dnl defines HAVE_SYS_WAIT_H if sys/wait.h exist and is POSIX.1
-AC_CHECK_HEADER(fcntl.h)
+AC_CHECK_HEADERS(fcntl.h)
dnl defines HAVE_FCNTL_H
-AC_CHECK_HEADER(limits.h)
+AC_CHECK_HEADERS(limits.h)
dnl defines HAVE_LIMITS_h
-AC_CHECK_HEADER(sys/file.h)
+AC_CHECK_HEADERS(sys/file.h)
dnl defines HAVE_SYS_FILE_H
-AC_CHECK_HEADER(sys/time.h)
+AC_CHECK_HEADERS(sys/time.h)
dnl defines HAVE_SYS_TIME_H
-AC_CHECK_HEADER(unistd.h)
+AC_CHECK_HEADERS(unistd.h)
dnl defines HAVE_UNISTD_H
+AC_CHECK_HEADERS(wchar.h)
+dnl defines HAVE_WCHAR_H
+AC_CHECK_HEADERS(wcstr.h)
+dnl defines HAVE_WCSTR_H
+AC_CHECK_HEADERS(fnmatch.h)
+dnl defines HAVE_FNMATCH_H
dnl As it needs Linux 2.1.x for the moment: check whether the file exists (GL).
-AC_CHECK_HEADER(linux/joystick.h)
+AC_CHECK_HEADERS(linux/joystick.h)
GTK_JOYSTICK=""
if test "$ac_cv_header_linux_joystick_h" = "yes"; then
GTK_JOYSTICK="gtk/joystick.cpp"
fi
AC_SUBST(GTK_JOYSTICK)
+dnl some systems (AIX) define some of string function in strings.h
+AC_CHECK_HEADERS(strings.h)
+
+dnl #######################
+dnl # check for functions #
+dnl #######################
+
+dnl check for wcslen
+AC_CHECK_LIB(c, wcslen, [
+ AC_DEFINE(HAVE_WCSLEN)
+ WCHAR_LINK=""
+ ], [
+ AC_CHECK_LIB(w, wcslen, [
+ AC_DEFINE(HAVE_WCSLEN)
+ WCHAR_LINK="-lw"
+ ])
+ ])
+AC_SUBST(WCHAR_LINK)
+
+dnl check for vprintf/vsprintf() which are GNU extensions
+AC_FUNC_VPRINTF
+
+dnl check for vsnprintf() - a safe version of vsprintf()
+AC_CHECK_FUNCS(vsnprintf,
+ AC_DEFINE(HAVE_VSNPRINTF),
+ AC_MSG_WARN(unsafe function sprintf will be used instead of snprintf)
+ )
+
+dnl check for vfork() (even if it's the same as fork() in modern Unices)
+AC_CHECK_FUNCS(vfork)
+
+POSIX4_LINK=
+AC_CHECK_FUNCS(nanosleep, AC_DEFINE(HAVE_NANOSLEEP), [
+ AC_CHECK_LIB(posix4, nanosleep, [
+ AC_DEFINE(HAVE_NANOSLEEP)
+ POSIX4_LINK="-lposix4"
+ ], [
+ AC_CHECK_FUNCS(usleep,
+ AC_DEFINE(HAVE_USLEEP),
+ AC_MSG_WARN(Sleep() function will not work))
+ ])
+])
+
+dnl check for uname (POSIX) and gethostname (BSD)
+AC_CHECK_FUNCS(uname gethostname, break)
+
dnl ###################
dnl # checks typedefs #
dnl ###################
dnl #####################
AC_HEADER_STAT
-dnl defines STAT_MACROS_BROKEN if S_ISDIR and S_ISREG
+dnl defines STAT_MACROS_BROKEN if S_ISDIR and S_ISREG
dnl do not work properly
AC_HEADER_TIME
dnl defines TIME_WITH_SYS_TIME if time.h and sys/time.h can
dnl both be included
-AC_STRUCT_ST_BLKSIZE
+AC_STRUCT_ST_BLKSIZE
dnl defines HAVE_ST_BLKSIZE if struct stat contains st_blksize
-AC_STRUCT_ST_BLOCKS
+AC_STRUCT_ST_BLOCKS
dnl defines HAVE_ST_BLOCKS if struct stat contains st_blocks
-AC_STRUCT_ST_RDEV
+AC_STRUCT_ST_RDEV
dnl defines HAVE_ST_RDEV if struct stat contains st_rdev
AC_STRUCT_TM
dnl defines TM_IN_SYS_TIME if struct tm is not in time.h
dnl ###################################
dnl # checks compiler characteristics #
dnl ###################################
-dnl AC_C_CROSS
AC_C_CONST
dnl defines const to be empty if c-compiler does not support const fully
AC_C_BIGENDIAN
dnl defines WORDS_BIGENDIAN if system is big endian
-AC_CHECK_SIZEOF(int *)
-AC_CHECK_SIZEOF(int)
-AC_CHECK_SIZEOF(long)
-dnl defines the size of certain types of variables in SIZEOF_???
+dnl give some default values for cross-compiling
+AC_CHECK_SIZEOF(int *, 4)
+AC_CHECK_SIZEOF(int, 4)
+AC_CHECK_SIZEOF(long, 4)
+AC_CHECK_SIZEOF(long long, 0)
+dnl defines the size of certain types of variables in SIZEOF_<TYPE>
+
+dnl ######################
+dnl # check C++ features #
+dnl ######################
+
+AC_LANG_SAVE
+AC_LANG_CPLUSPLUS
+
+dnl check for iostream (as opposed to iostream.h) standard header
+AC_CHECK_HEADERS(iostream)
+if test "x$HAVE_IOSTREAM" = "x" ; then
+ AC_DEFINE(wxUSE_IOSTREAMH)
+fi
+
+dnl Check for existence of builtin 'bool' data type
+dnl
+dnl do nothing for cross-compilation - assume bool is not defined
+AC_MSG_CHECKING(if C++ compiler supports bool)
+AC_TRY_RUN([
+
+int main()
+{
+ bool b = true;
+
+ return 0;
+}
+ ],
+ AC_DEFINE(HAVE_BOOL) AC_MSG_RESULT(yes),
+ AC_MSG_RESULT(no),
+ AC_MSG_RESULT(no assumed for cross-compilation))
+
+dnl Check whether overloading on size_t/int parameter works
+AC_MSG_CHECKING(if size_t and int are different types)
+AC_TRY_RUN([
+#include <stdlib.h>
+
+void wxFoo(int i) { }
+void wxFoo(size_t n) { }
+
+int main()
+{
+ int i;
+ size_t n;
+ wxFoo(0);
+ wxFoo(1);
+ wxFoo(0u);
+ wxFoo(i);
+ wxFoo(n);
+
+ return 0;
+}
+
+ ],
+ AC_DEFINE(wxUSE_SIZE_T_STRING_OPERATOR) AC_MSG_RESULT(yes),
+ AC_MSG_RESULT(no),
+ AC_MSG_RESULT(no assumed for cross-compilation))
+
+AC_LANG_RESTORE
dnl ############################
dnl # checks library functions #
dnl 14 chars are supported
dnl AC_SYS_RESTARTABLE_SYSCALLS
-dnl defines HAVE_RESTARTABLE_SYSCALLS if the system restarts a
+dnl defines HAVE_RESTARTABLE_SYSCALLS if the system restarts a
dnl system call that is interrupted
dnl by a signal
-
+
dnl #################
dnl # checks PARSER #
dnl #################
dnl what type is yytext
AC_DECL_YYTEXT
dnl defines YYTEXT_POINTER if yytext is char*
-dnl defines LEX_OUTPUT_ROOT as to the base of the
+dnl defines LEX_OUTPUT_ROOT as to the base of the
dnl filename output by the lexer
+dnl ###################################
+dnl ## Check for dynamic load module #
+dnl ###################################
+
+DL_LIBRARY=
+AC_CHECK_FUNCS(dlopen, AC_DEFINE(HAVE_LIBDL),
+[AC_CHECK_LIB(dl, dlopen, [AC_DEFINE(HAVE_LIBDL) DL_LIBRARY="-ldl"],
+ [AC_CHECK_LIB(dld, dld_link, [AC_DEFINE(HAVE_DLD) DL_LIBRARY="-ldld"],
+ [AC_CHECK_FUNCS(shl_load, AC_DEFINE(HAVE_SHL_LOAD) )]
+ )]
+ )]
+)
+AC_SUBST(DL_LIBRARY)
+
+AC_CACHE_CHECK([for underscore before symbols], libltdl_cv_uscore, [
+ echo "main(){int i=1;} fnord(){int i=23; int ltuae=42;}" > conftest.c
+ ${CC} -c conftest.c > /dev/null
+ if (nm conftest.o | grep _fnord) > /dev/null; then
+ libltdl_cv_uscore=yes
+ else
+ libltdl_cv_uscore=no
+ fi
+ rm -f conftest*
+])
+
+if test x"$libltdl_cv_uscore" = xyes; then
+ if test x"$ac_cv_func_dlopen" = xyes ||
+ test x"$ac_cv_lib_dl_dlopen" = xyes ; then
+ AC_CACHE_CHECK([whether we have to add an underscore for dlsym],
+ libltdl_cv_need_uscore, [dnl
+ AC_TRY_RUN([
+#include <dlfcn.h>
+#include <stdio.h>
+fnord() { int i=42;}
+main() { void *self, *ptr1, *ptr2; self=dlopen(NULL,RTLD_LAZY);
+ if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord");
+ if(ptr1 && !ptr2) exit(0); } exit(1); }
+], libltdl_cv_need_uscore=no, libltdl_cv_need_uscore=yes,
+ libltdl_cv_need_uscore=no
+)])
+ fi
+fi
+
+if test x"$libltdl_cv_need_uscore" = xyes; then
+ AC_DEFINE(NEED_USCORE)
+fi
+
+dnl ##########################################
+dnl ## Check for specific library functions #
+dnl ##########################################
+
+dnl Checks for library functions.
+AC_CHECK_FUNCS(strerror)
+
dnl ------------------------------------------------------------------------
dnl main includes
dnl ------------------------------------------------------------------------
USE_UNIX=1
-
USE_LINUX=
USE_SGI=
USE_HPUX=
USE_ULTRIX=
USE_DATA_GENERAL=
+AC_DEFINE(__UNIX__)
case "${canonical}" in
*-hp-hpux* )
USE_HPUX=1
*-*-linux* )
USE_LINUX=1
AC_DEFINE(__LINUX__)
+ TMP=`uname -m`
+ if test "x$TMP" = "xalpha"
+ then
+ USE_ALPHA=1
+ AC_DEFINE(__ALPHA__)
+ fi
;;
- *-*-irix5* | *-*-irix6* )
+ *-*-irix5* | *-*-irix6* )
USE_SGI=1
USE_SVR4=1
AC_DEFINE(__SGI__)
AC_DEFINE(__SVR4__)
;;
- *-*-solaris2* )
+ *-*-solaris2* )
USE_SUN=1
USE_SOLARIS=1
USE_SVR4=1
AC_DEFINE(__SOLARIS__)
AC_DEFINE(__SVR4__)
;;
- *-*-sunos4* )
+ *-*-sunos4* )
USE_SUN=1
USE_SUNOS=1
USE_BSD=1
AC_DEFINE(__FREEBSD__)
AC_DEFINE(__BSD__)
;;
- *-*-osf* )
+ *-*-osf* )
USE_ALPHA=1
USE_OSF=1
AC_DEFINE(__ALPHA__)
AC_DEFINE(__OSF__)
;;
- *-*-dgux5* )
+ *-*-dgux5* )
USE_ALPHA=1
USE_SVR4=1
AC_DEFINE(__ALPHA__)
AC_DEFINE(__SVR4__)
;;
- *-*-sysv5* )
+ *-*-sysv5* )
USE_SYSV=1
USE_SVR4=1
AC_DEFINE(__SYSV__)
AC_DEFINE(__SVR4__)
;;
- *-*-aix* )
+ *-*-aix* )
USE_AIX=1
USE_SYSV=1
USE_SVR4=1
AC_OVERRIDES_PREPARE
-DEFAULT_USE_GTK=1
-DEFAULT_USE_QT=0
-DEFAULT_USE_MOTIF=0
-
-DEFAULT_USE_SHARED=1
-DEFAULT_USE_OPTIMISE=1
-DEFAULT_USE_PROFILE=0
-DEFAULT_USE_DEBUG_FLAG=0
-DEFAULT_USE_DEBUG_INFO=0
-DEFAULT_USE_MEM_TRACING=0
-DEFAULT_USE_DMALLOC=0
-DEFAULT_USE_APPLE_IEEE=1
-DEFAULT_USE_IOSTREAMH=1
-
-DEFAULT_USE_ZLIB=1
-DEFAULT_USE_GDK_IMLIB=1
-DEFAULT_USE_LIBPNG=1
-DEFAULT_USE_ODBC=1
-
-DEFAULT_USE_COMBOBOX=1
-DEFAULT_USE_GAUGE=1
-DEFAULT_USE_SCROLLBAR=1
-DEFAULT_USE_LISTCTRL=1
-DEFAULT_USE_TREECTRL=1
-DEFAULT_USE_GRID=1
-DEFAULT_USE_TAB_DIALOG=1
-DEFAULT_USE_NOTEBOOK=1
-
-DEFAULT_USE_TIMEDATE=1
-DEFAULT_USE_FRACTION=1
-DEFAULT_USE_LOG=1
-DEFAULT_USE_INTL=1
-DEFAULT_USE_CONFIG=1
-DEFAULT_USE_STREAMS=1
-DEFAULT_USE_SERIAL=1
-DEFAULT_USE_FILE=1
-DEFAULT_USE_TEXTFILE=1
-
-DEFAULT_USE_AFM_FOR_POSTSCRIPT=1
+DEFAULT_wxUSE_GTK=1
+DEFAULT_wxUSE_QT=0
+DEFAULT_wxUSE_MOTIF=0
+
+DEFAULT_wxUSE_THREADS=0
+
+DEFAULT_wxUSE_SHARED=1
+DEFAULT_wxUSE_OPTIMISE=1
+DEFAULT_wxUSE_PROFILE=0
+DEFAULT_wxUSE_DEBUG_FLAG=0
+DEFAULT_wxUSE_DEBUG_INFO=0
+DEFAULT_wxUSE_MEM_TRACING=0
+DEFAULT_wxUSE_DMALLOC=0
+DEFAULT_wxUSE_APPLE_IEEE=1
+DEFAULT_wxUSE_IOSTREAMH=1
+
+DEFAULT_wxUSE_ZLIB=1
+DEFAULT_wxUSE_LIBPNG=1
+DEFAULT_wxUSE_LIBJPEG=1
+DEFAULT_wxUSE_ODBC=1
+
+DEFAULT_wxUSE_TIMEDATE=1
+DEFAULT_wxUSE_INTL=1
+DEFAULT_wxUSE_CONFIG=1
+DEFAULT_wxUSE_STREAMS=1
+DEFAULT_wxUSE_SOCKETS=1
+DEFAULT_wxUSE_SERIAL=1
+DEFAULT_wxUSE_DYNLIB_CLASS=1
+
+DEFAULT_wxUSE_AFM_FOR_POSTSCRIPT=1
DEFAULT_WX_NORMALIZED_PS_FONTS=1
-DEFAULT_USE_POSTSCRIPT=1
+DEFAULT_wxUSE_POSTSCRIPT=1
-DEFAULT_USE_IPC=1
-DEFAULT_USE_RESOURCES=1
-DEFAULT_USE_CONSTRAINTS=1
-DEFAULT_USE_CLIPBOARD=0
-DEFAULT_USE_DND=1
+DEFAULT_wxUSE_IPC=1
+DEFAULT_wxUSE_RESOURCES=1
+DEFAULT_wxUSE_CLIPBOARD=1
+DEFAULT_wxUSE_TOOLTIPS=1
+DEFAULT_wxUSE_DRAG_AND_DROP=1
+DEFAULT_wxUSE_SPLINE=1
-DEFAULT_USE_MDI_ARCHITECTURE=1
-DEFAULT_USE_DOC_VIEW_ARCHITECTURE=1
-DEFAULT_USE_PRINTING_ARCHITECTURE=1
+DEFAULT_wxUSE_MDI_ARCHITECTURE=1
+DEFAULT_wxUSE_DOC_VIEW_ARCHITECTURE=1
+DEFAULT_wxUSE_PRINTING_ARCHITECTURE=1
-DEFAULT_USE_PROLOGIO=1
-DEFAULT_USE_WX_RESOURCES=1
-DEFAULT_USE_RPC=0
+DEFAULT_wxUSE_PROLOGIO=1
+DEFAULT_wxUSE_WX_RESOURCES=1
+DEFAULT_wxUSE_RPC=0
+DEFAULT_wxUSE_HELP=1
-DEFAULT_USE_OPENGL=0
-DEFAULT_USE_METAFILE=0
-DEFAULT_USE_WXGRAPH=0
-DEFAULT_USE_WXTREE=0
-DEFAULT_USE_HELP=0
+DEFAULT_wxUSE_UNICODE=0
+DEFAULT_wxUSE_WCSRTOMBS=0
dnl ----------------------------------------------------------------
dnl toolkit options
AC_OVERRIDES(gtk,gtk,
**--with-gtk use GTK,
-USE_GTK)
+wxUSE_GTK)
AC_OVERRIDES(qt,qt,
**--with-qt use Qt,
-USE_QT)
+wxUSE_QT)
AC_OVERRIDES(motif,motif,
**--with-motif use Motif/Lesstif,
-USE_MOTIF)
+wxUSE_MOTIF)
dnl ----------------------------------------------------------------
dnl compile options
AC_OVERRIDES(shared,shared,
**--with-shared create shared libraries,
-USE_SHARED)
+wxUSE_SHARED)
AC_OVERRIDES(optimise,optimise,
**--with-optimise create optimised code,
-USE_OPTIMISE)
+wxUSE_OPTIMISE)
AC_OVERRIDES(debug_flag,debug_flag,
**--with-debug_flag create code with WXDEBUG define set to 1,
-USE_DEBUG_FLAG)
+wxUSE_DEBUG_FLAG)
AC_OVERRIDES(debug_info,debug_info,
**--with-debug_info create code with debuging information,
-USE_DEBUG_INFO)
+wxUSE_DEBUG_INFO)
+
+AC_OVERRIDES(debug_gdb,debug_gdb,
+**--with-debug_gdb create code with extra GDB debuging information,
+wxUSE_DEBUG_GDB)
AC_OVERRIDES(mem_tracing,mem_tracing,
**--with-mem_traing create code with memory tracing,
-USE_MEM_TRACING)
+wxUSE_MEM_TRACING)
AC_OVERRIDES(dmalloc,dmalloc,
**--with-dmalloc use dmalloc memory debug library (www.letters.com/dmalloc/),
-USE_DMALLOC)
+wxUSE_DMALLOC)
AC_OVERRIDES(profile,profile,
**--with-profile create code with profiling information,
-USE_PROFILE)
+wxUSE_PROFILE)
AC_OVERRIDES(apple_ieee, apple_ieee,
**--with_apple_ieee use the Apple IEEE codec,
-USE_APPLE_IEEE)
+wxUSE_APPLE_IEEE)
+
+AC_OVERRIDES(threads,threads,
+**--with-threads for enabling threads,
+wxUSE_THREADS)
+
+AC_OVERRIDES(dynlib,dynlib,
+**--with-dynlib to compile wxLibrary class,
+wxUSE_DYNLIB_CLASS)
dnl ----------------------------------------------------------------
dnl user options for libraries
dnl ----------------------------------------------------------------
AC_OVERRIDES(zlib,zlib,
-**--with-zlib use zlib for LZW comression,
-USE_ZLIB)
-
-AC_OVERRIDES(gdk_imlib,gdk_imlib,
-**--with-gdk_imlib use Raster's gdk_imlib (Image library),
-USE_GDK_IMLIB)
+**--without-zlib don't use zlib for LZW comression,
+wxUSE_ZLIB)
AC_OVERRIDES(libpng,libpng,
-**--with-libpng use libpng (PNG image format),
-USE_LIBPNG)
+**--without-libpng don't use libpng (PNG image format),
+wxUSE_LIBPNG)
+
+AC_OVERRIDES(libjpeg,libjpeg,
+**--without-libjpeg don't use libjpeg (JPEG image format),
+wxUSE_LIBJPEG)
AC_OVERRIDES(odbc,odbc,
**--with-odbc use iODBC and wxODBC classes,
-USE_ODBC)
-
-AC_OVERRIDES(opengl,opengl,
-**--with-opengl use OpenGL (or Mesa),
-USE_OPENGL)
-
-dnl ----------------------------------------------------------------
-dnl user options for GUI control classes
-dnl ----------------------------------------------------------------
-
-AC_OVERRIDES(gauge,gauge,
-**--with-gauge use wxGauge class,
-USE_GAUGE)
-
-AC_OVERRIDES(combobox,combobox,
-**--with-combobox use wxComboBox class,
-USE_COMBOBOX)
-
-AC_OVERRIDES(scrollbar,scrollbar,
-**--with-scrollbar use wxScrollbar class,
-USE_SCROLLBAR)
-
-AC_OVERRIDES(listctrl,listctrl,
-**--with-listctrl use wxListCtrl class,
-USE_LISTCTRL)
-
-AC_OVERRIDES(treectrl,treectrl,
-**--with-treectrl use wxTreeCtrl class,
-USE_TREECTRL)
-
-AC_OVERRIDES(grid,grid,
-**--with-grid use wxGrid class,
-USE_GRID)
-
-AC_OVERRIDES(tab_dialog,tab_dialog,
-**--with-tab_dialog use wxTabDia class,
-USE_TAB_DIALOG)
-
-AC_OVERRIDES(notebook,notebook,
-**--with-notebook use wxNotebook class,
-USE_NOTEBOOK)
+wxUSE_ODBC)
dnl ----------------------------------------------------------------
dnl user options for non-GUI classes
AC_OVERRIDES(timedate, timedate,
**--with-timedate use wxTime and wxDate classes,
-USE_TIMEDATE)
-
-AC_OVERRIDES(fraction,fraction,
-**--with-fraction use wxFraction class,
-USE_FRACTION)
-
-AC_OVERRIDES(log,log,
-**--with-log use logging system,
-USE_LOG)
+wxUSE_TIMEDATE)
AC_OVERRIDES(intl,intl,
**--with-intl use internationalization system,
-USE_INTL)
+wxUSE_INTL)
AC_OVERRIDES(config,config,
**--with-config use wxConfig class,
-USE_CONFIG)
+wxUSE_CONFIG)
AC_OVERRIDES(streams,streams,
**--with-streams use wxStream etc classes,
-USE_STREAMS)
+wxUSE_STREAMS)
AC_OVERRIDES(serial,serial,
**--with-serial use class serialization,
-USE_SERIAL)
+wxUSE_SERIAL)
-AC_OVERRIDES(file,file,
-**--with-file use wxFile class,
-USE_FILE)
-
-AC_OVERRIDES(textfile,textfile,
-**--with-textfile use wxTextFile class,
-USE_TEXTFILE)
+AC_OVERRIDES(sockets,sockets,
+**--with-sockets use wxSocket etc classes,
+wxUSE_SOCKETS)
dnl ----------------------------------------------------------------
dnl user options for PostScript
AC_OVERRIDES(afmfonts,afmfonts,
**--with-afmfonts use Adobe Font Metric Font table,
-USE_AFM_FOR_POSTSCRIPT)
+wxUSE_AFM_FOR_POSTSCRIPT)
AC_OVERRIDES(normalized, normalized,
**--with-PS-normalized use normalized PS fonts,
AC_OVERRIDES(postscript, postscript,
**--with-postscript use wxPostscriptDC device context,
-USE_POSTSCRIPT)
+wxUSE_POSTSCRIPT)
+
+dnl ----------------------------------------------------------------
+dnl user options for wxString and Unicode
+dnl ----------------------------------------------------------------
+
+AC_OVERRIDES(unicode,unicode,
+**--with-unicode compile wxString with Unicode support,
+wxUSE_UNICODE)
+
+AC_OVERRIDES(wcsrtombs,wcsrtombs,
+**--with-wcsrtombs use wcsrtombs instead of (buggy in GNU libc5) wcstombs,
+wxUSE_WCSRTOMBS)
dnl ----------------------------------------------------------------
dnl user options for Prolog and Resources
AC_OVERRIDES(wxresources,wxresources,
**--with-wxresources use wxWindows's resources,
-USE_WX_RESOURCES)
+wxUSE_WX_RESOURCES)
AC_OVERRIDES(prologio,prologio,
**--with-prologio use Prolog IO library,
-USE_PROLOGIO)
+wxUSE_PROLOGIO)
AC_OVERRIDES(rpc,RPC,
**--with-rpc use Prolog's remote procedure calls,
-USE_RPC)
+wxUSE_RPC)
dnl ----------------------------------------------------------------
dnl user options for misc stuff
AC_OVERRIDES(ipc,IPC,
**--with-ipc use interprocess communication (wxSocket etc.),
-USE_IPC)
+wxUSE_IPC)
AC_OVERRIDES(resources,resources,
**--with-resources use X resources for saving information,
-USE_RESOURCES)
+wxUSE_RESOURCES)
AC_OVERRIDES(clipboard,clipboard,
**--with-clipboard use wxClipboard classes,
-USE_CLIPBOARD)
+wxUSE_CLIPBOARD)
+
+AC_OVERRIDES(tooltips,tooltips,
+**--with-tooltips use tooltips,
+wxUSE_TOOLTIPS)
AC_OVERRIDES(dnd,dnd,
**--with-dnd use Drag'n'Drop classes,
-USE_DND)
+wxUSE_DRAG_AND_DROP)
-AC_OVERRIDES(constraints,constrains,
-**--with-constraints use layout-constraints system,
-USE_CONSTRAINTS)
+AC_OVERRIDES(spline,spline,
+**--with-spline use Spline drawing code,
+wxUSE_SPLINE)
dnl ----------------------------------------------------------------
dnl user options for architectures
AC_OVERRIDES(mdi,mdi,
**--with-mdi use multiple document interface architecture,
-USE_MDI_ARCHITECTURE)
+wxUSE_MDI_ARCHITECTURE)
AC_OVERRIDES(docview,docview,
**--with-docview use document view architecture,
-USE_DOC_VIEW_ARCHITECTURE)
+wxUSE_DOC_VIEW_ARCHITECTURE)
AC_OVERRIDES(printarch,printarch,
**--with-printarch use printing architecture,
-USE_PRINTING_ARCHITECTURE)
+wxUSE_PRINTING_ARCHITECTURE)
+
+AC_OVERRIDES(help,help,
+**--with-help use help (using external browser at present),
+wxUSE_HELP)
-dnl ----------------------------------------------------------------
-dnl user options with no effect yet
-dnl ----------------------------------------------------------------
-dnl
-dnl AC_OVERRIDES(metafile, metafile,
-dnl **--with-metafile use metafile (no effect),
-dnl USE_METAFILE)
-dnl
-dnl AC_OVERRIDES(help,help,
-dnl **--with-help use help (no effect),
-dnl USE_HELP)
-dnl
-dnl AC_OVERRIDES(wxgraph,wxgraph,
-dnl **--with-wxgraph use wxgraph (no effect),
-dnl USE_WXGRAPH)
-dnl
-dnl AC_OVERRIDES(wxtree,wxtree,
-dnl **--with-wxtree use wxtree (no effect),
-dnl USE_WXTREE)
-dnl
-dnl AC_OVERRIDES(package,message,helpmessage,variable)
-dnl
dnl ----------------------------------------------------------------
dnl Unix, obviously
dnl ----------------------------------------------------------------
-if test "$USE_UNIX" = 1 ; then
+if test "$wxUSE_UNIX" = 1 ; then
AC_DEFINE(__UNIX__)
fi
+dnl ----------------------------------------------------------------
+dnl Linux: test for libc5/glibc2: glibc2 has gettext() included
+dnl ----------------------------------------------------------------
+if test "$USE_LINUX" = 1; then
+ AC_CHECK_LIB(c,gettext,AC_DEFINE(wxHAVE_GLIBC2))
+fi
+
dnl ----------------------------------------------------------------
dnl search for toolkit (widget sets)
dnl ----------------------------------------------------------------
GUI_TK_LIBRARY=
GUI_TK_LINK=
+WX_LINK=
+
MAKEINCLUDE=
-if test "$USE_GTK" = 1; then
- AM_PATH_GTK(0.99.7, [
+WXGTK12=
+
+if test "$wxUSE_GTK" = 1; then
+ AM_PATH_GTK(1.0.0, [
GUI_TK_INCLUDE="$GTK_CFLAGS"
GUI_TK_LIBRARY="$GTK_LIBS"
- ], AC_MSG_ERROR(Are gtk-config and the GTK in path and up-to-date?))
+ ], AC_MSG_ERROR(Is gtk-config in path and GTK+ is version 1.2.X or 1.0.X?))
TOOLKIT=GTK
TOOLKIT_DEF=__WXGTK__
+ WX_LINK=-lwx_gtk2
MAKEINCLUDE=../gtk.inc
+ AM_PATH_GTK(1.2.0, [
+ WXGTK12=1
+ ])
fi
-if test "$USE_QT" = 1; then
+if test "$wxUSE_QT" = 1; then
AC_MSG_CHECKING(for Qt includes)
AC_PATH_FIND_INCLUDES($SEARCH_INCLUDE,qapp.h)
if test "$ac_find_includes" != "" ; then
else
AC_MSG_ERROR(no)
fi
- GUI_TK_LINK="-lXext -lX11 -lqt -lm"
+ GUI_TK_LINK="-lX11 -lqt -lm"
TOOLKIT=QT
TOOLKIT_DEF=__WXQT__
+ WX_LINK=-lwx_qt
MAKEINCLUDE=../qt.inc
fi
-if test "$USE_MOTIF" = 1; then
- AC_MSG_CHECKING(for Motif/Lesstif includes)
- AC_PATH_FIND_INCLUDES($SEARCH_INCLUDE,Xm.h)
- if test "$ac_find_includes" != "" ; then
- AC_MSG_RESULT(found $ac_find_includes)
- AC_MSG_CHECKING(for Motif or Lesstif library)
- AC_PATH_FIND_LIBRARIES($SEARCH_LIB,Xm)
- if test "$ac_find_libraries" != "" ; then
- AC_INCLUDE_PATH_EXIST($ac_find_includes,$CHECK_INCLUDE)
- AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
- CHECK_LINK="$CHECK_INCLUDE $ac_path_to_link"
- CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include"
- AC_MSG_RESULT(found at $ac_find_libraries)
- else
- AC_MSG_ERROR(no)
- fi
- else
- AC_MSG_ERROR(no)
- fi
- GUI_TK_LINK="-lXext -lXt -lX11 -lXm -lm"
- TOOLKIT=MOTIF
- TOOLKIT_DEF=__WXMOTIF__
- MAKEINCLUDE=../motif.inc
+if test "$wxUSE_MOTIF" = 1; then
+ AC_MSG_CHECKING(for Motif/Lesstif includes)
+ AC_PATH_FIND_INCLUDES($SEARCH_INCLUDE, Xm/Xm.h)
+ if test "$ac_find_includes" != "" ; then
+ AC_MSG_RESULT(found $ac_find_includes)
+ else
+ AC_MSG_RESULT(no)
+ AC_MSG_ERROR(please set CFLAGS to contain the location of Xm/Xm.h)
+ fi
+
+ AC_MSG_CHECKING(for Motif/Lesstif library)
+ AC_PATH_FIND_LIBRARIES($SEARCH_LIB, Xm)
+ if test "$ac_find_libraries" != "" ; then
+ AC_INCLUDE_PATH_EXIST($ac_find_includes, $CHECK_INCLUDE)
+ AC_LINK_PATH_EXIST($ac_find_libraries, $CHECK_LIB)
+
+ CHECK_LINK="$CHECK_LIB $ac_path_to_link"
+ CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include"
+ AC_MSG_RESULT(found at $ac_find_libraries)
+ else
+ AC_MSG_RESULT(no)
+ AC_MSG_ERROR(please set LDFLAGS to contain the location of libXm)
+ fi
+
+ AC_MSG_CHECKING(for Xt library)
+ AC_PATH_FIND_LIBRARIES($SEARCH_LIB,Xt)
+ if test "$ac_find_libraries" != "" ; then
+ AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
+ CHECK_LINK="$CHECK_LIB $ac_path_to_link"
+ AC_MSG_RESULT(found at $ac_find_libraries)
+ else
+ AC_MSG_RESULT(no)
+ AC_MSG_ERROR(please set LDFLAGS to contain the location of libXt)
+ fi
+
+ XPM_LINK=""
+ AC_MSG_CHECKING(for Xpm library)
+ AC_PATH_FIND_LIBRARIES($SEARCH_LIB,Xpm)
+ if test "$ac_find_libraries" != "" ; then
+ AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
+ CHECK_LINK="$CHECK_LIB $ac_path_to_link"
+ XPM_LINK="-lXpm "
+ AC_DEFINE(wxHAVE_LIB_XPM)
+ AC_MSG_RESULT(found at $ac_find_libraries)
+ else
+ AC_MSG_RESULT(no)
+ AC_MSG_WARN(library will be compiled without support for images in XPM format)
+ fi
+
+ GUI_TK_LINK="-lXm $(XPM_LINK)-lXmu -lXt -lX11 -lm"
+ GUI_TK_LIBRARY="$CHECK_LIB $GUI_TK_LINK"
+ TOOLKIT=MOTIF
+ TOOLKIT_DEF=__WXMOTIF__
+ WX_LINK=-lwx_motif2
+ MAKEINCLUDE=../motif.inc
fi
if test "$TOOLKIT" = ""; then
- AC_MSG_ERROR(You must specify a toolkit: --with-gtk --with-qt --with-motif)
+ AC_MSG_ERROR(You must specify a toolkit: --with-gtk --with-qt --with-motif)
fi
AC_SUBST(GUI_TK_INCLUDE)
AC_SUBST(GUI_TK_LIBRARY)
AC_SUBST(GUI_TK_LINK)
+AC_SUBST(WX_LINK)
+
AC_SUBST(TOOLKIT)
AC_SUBST(TOOLKIT_DEF)
dnl Register compile options for makefiles and setup.h
dnl ----------------------------------------------------------------
+if test "$WXGTK12" = 1 ; then
+ AC_DEFINE_UNQUOTED(__WXGTK12__,$WXGTK12)
+fi
+
+EXTRA_LINK=
+
WXDEBUG=
-if test "$USE_DEBUG_INFO" = 1 ; then
- WXDEBUG="-g -O0"
+if test "$wxUSE_DEBUG_GDB" = 1 ; then
+ wxUSE_DEBUG_INFO=1
+ WXDEBUG="-ggdb"
+fi
+
+if test "$wxUSE_DEBUG_INFO" = 1 ; then
+ WXDEBUG="-g"
+ wxUSE_OPTIMISE=0
fi
+
AC_SUBST(WXDEBUG)
-if test "$USE_DEBUG_FLAG" = 1 ; then
- AC_DEFINE_UNQUOTED(WXDEBUG,$USE_DEBUG_FLAG)
+if test "$wxUSE_DEBUG_FLAG" = 1 ; then
+ AC_DEFINE_UNQUOTED(WXDEBUG,$wxUSE_DEBUG_FLAG)
WXDEBUG_DEFINE="-D__WXDEBUG__"
AC_SUBST(WXDEBUG_DEFINE)
+else
+ WXDEBUG_DEFINE="-DGTK_NO_CHECK_CASTS"
+ AC_SUBST(WXDEBUG_DEFINE)
fi
-if test "$USE_MEM_TRACING" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_MEMORY_TRACING,$USE_MEM_TRACING)
- AC_DEFINE_UNQUOTED(USE_GLOBAL_MEMORY_OPERATORS,$USE_MEM_TRACING)
+if test "$wxUSE_MEM_TRACING" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_MEMORY_TRACING,$wxUSE_MEM_TRACING)
+ AC_DEFINE_UNQUOTED(wxUSE_GLOBAL_MEMORY_OPERATORS,$wxUSE_MEM_TRACING)
fi
-EXTRA_LINK=
-if test "$USE_DMALLOC" = 1 ; then
+if test "$wxUSE_DMALLOC" = 1 ; then
EXTRA_LINK="$EXTRA_LINK -ldmalloc"
fi
AC_SUBST(EXTRA_LINK)
PROFILE=
-if test "$USE_PROFILE" = 1 ; then
+if test "$wxUSE_PROFILE" = 1 ; then
PROFILE="-pg"
fi
AC_SUBST(PROFILE)
CXXFLAGS=`echo "${CXXFLAGS}" | sed "s/\-O.//g" `
CFLAGS=`echo "${CFLAGS}" | sed "s/\-O.//g" `
-if test "$USE_OPTIMISE" = 0 ; then
+if test "$wxUSE_OPTIMISE" = 0 ; then
OPTIMISE=
else
if test "$GCC" = yes ; then
AC_SUBST(OPTIMISE)
APPLE_IEEE=NONE
-if test "$USE_APPLE_IEEE" = 1 ; then
+if test "$wxUSE_APPLE_IEEE" = 1 ; then
APPLE_IEEE="APPLE_IEEE"
- AC_DEFINE_UNQUOTED(USE_APPLE_IEEE,$USE_APPLE_IEEE)
+ AC_DEFINE_UNQUOTED(wxUSE_APPLE_IEEE,$wxUSE_APPLE_IEEE)
fi
-USE_IOSTREAMH=$DEFAULT_USE_IOSTREAMH
-AC_DEFINE_UNQUOTED(USE_IOSTREAMH,$USE_IOSTREAMH)
+wxUSE_IOSTREAMH=$DEFAULT_wxUSE_IOSTREAMH
+AC_DEFINE_UNQUOTED(wxUSE_IOSTREAMH,$wxUSE_IOSTREAMH)
dnl ----------------------------------------------------------------
dnl Register library options for makefiles and setup.h
dnl ----------------------------------------------------------------
-if test "$USE_ZLIB" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_ZLIB,$USE_ZLIB)
+if test "$wxUSE_ZLIB" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_ZLIB,$wxUSE_ZLIB)
+ Z_C_SRC="\$(Z_C_SRC)"
fi
+AC_SUBST(Z_C_SRC)
-if test "$USE_GDK_IMLIB" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_GDK_IMLIB,$USE_GDK_IMLIB)
+if test "$wxUSE_LIBPNG" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_LIBPNG,$wxUSE_LIBPNG)
+ PNG_C_SRC="\$(PNG_C_SRC)"
fi
+AC_SUBST(PNG_C_SRC)
-if test "$USE_LIBPNG" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_LIBPNG,$USE_LIBPNG)
+if test "$wxUSE_LIBJPEG" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_LIBJPEG,$wxUSE_LIBJPEG)
+ JPEG_C_SRC="\$(JPEG_C_SRC)"
fi
-
-if test "$USE_ODBC" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_ODBC,$USE_ODBC)
+AC_SUBST(JPEG_C_SRC)
+
+JPEG_LINK=""
+dnl if test "$wxUSE_LIBJPEG" = 1 ; then
+dnl AC_DEFINE_UNQUOTED(wxUSE_LIBJPEG,$wxUSE_LIBJPEG)
+dnl AC_CHECK_LIB(jpeg,main,,AC_MSG_ERROR("libjpeg is not available."))
+dnl JPEG_LINK="-ljpeg"
+dnl fi
+AC_SUBST(JPEG_LINK)
+
+IODBC_C_SRC=""
+if test "$wxUSE_ODBC" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_ODBC,$wxUSE_ODBC)
+ IODBC_C_SRC="\$(IODBC_C_SRC)"
fi
+AC_SUBST(IODBC_C_SRC)
dnl ----------------------------------------------------------------
-dnl Register GUI-control options for makefiles and setup.h
+dnl thread support
dnl ----------------------------------------------------------------
-if test "$USE_GAUGE" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_GAUGE,$USE_GAUGE)
-fi
-
-if test "$USE_COMBOBOX" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_COMBOBOX,$USE_COMBOBOX)
-fi
-
-if test "$USE_SCROLLBAR" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_SCROLLBAR,$USE_SCROLLBAR)
-fi
+dnl defines UNIX_THREAD it contains the source file to use for threads. (GL)
+dnl defines THREADS_LINK it contains the thread library to link with. (GL)
+dnl defines wxUSE_THREADS if thread support is activated. (GL)
-if test "$USE_LISTCTRL" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_LISTCTRL,$USE_LISTCTRL)
-fi
+THREADS_LINK=""
+UNIX_THREAD=""
-if test "$USE_TREECTRL" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_TREECTRL,$USE_TREECTRL)
+if test "$wxUSE_THREADS" = "1"; then
+ dnl find if POSIX threads are available
+
+ dnl standard lib name is pthread
+ dnl We no longer test for pthread-0.7 as it breaks compilation on some
+ dnl glibc2 systems, especially for static linkage.
+ AC_CHECK_LIB(pthread, pthread_create, [
+ UNIX_THREAD="unix/threadpsx.cpp"
+ THREADS_LINK="pthread"
+ ], [
+ dnl thread functions are in libc_r under FreeBSD
+ AC_CHECK_LIB(c_r, pthread_create, [
+ UNIX_THREAD="unix/threadpsx.cpp"
+ THREADS_LINK="c_r"
+ ], [
+ dnl VZ: SGI threads are not supported currently
+ AC_CHECK_HEADER(sys/prctl.h, [
+ UNIX_THREAD="gtk/threadsgi.cpp"
+ ])
+ ])
+ ])
+ if test "$THREADS_LINK" != ""; then
+ AC_DEFINE(wxUSE_THREADS)
+ else
+ AC_MSG_WARN(No thread support on this system)
+ fi
fi
-if test "$USE_GRID" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_GRID,$USE_GRID)
+if test -z "$UNIX_THREAD"; then
+ wxUSE_THREADS=0
fi
-if test "$USE_TAB_DIALOG" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_TAB_DIALOG,$USE_TAB_DIALOG)
+dnl do other tests only if we are using threads
+if test "$wxUSE_THREADS" = "1"; then
+
+ dnl define autoconf macro to check for given function in both pthread and
+ dnl posix4 libraries
+ dnl usage: AC_FUNC_THREAD(FUNCTION_NAME)
+ dnl VZ: TODO
+ dnl AC_DEFUN(AC_FUNC_THREAD,
+ dnl [
+ dnl AC_CHECK_LIB($THREADS_LINK, $1,
+ dnl AC_DEFINE(HAVE_`'translit($1, `A-Z', 'a-z'),
+ dnl [AC_CHECK_LIB("posix4", $1,
+ dnl [AC_DEFINE(HAVE_`'translit($1, `A-Z', 'a-z'))
+ dnl POSIX4_LINK="-lposix4"
+ dnl ])
+ dnl ])
+ dnl ])
+
+ AC_CHECK_HEADERS(sched.h)
+
+ AC_CHECK_LIB($THREADS_LINK, sched_yield,
+ AC_DEFINE(HAVE_SCHED_YIELD),
+ [AC_CHECK_LIB("posix4", sched_yield,
+ [AC_DEFINE(HAVE_SCHED_YIELD) POSIX4_LINK="-lposix4"],
+ AC_MSG_WARN(wxThread::Yield() will not work properly)
+ )]
+ )
+
+ dnl VZ: we should be checking for all of the following functions instead:
+ dnl 1. pthread_attr_getschedpolicy
+ dnl 2. sched_get_priority_min and sched_get_priority_max
+ dnl 3. pthread_attr_getschedparam and pthread_attr_setschedparam
+ dnl but it seems that if the first one is there, the other ones are too (of
+ dnl course the proper solution would be to implement AC_FUNC_THREAD above
+ dnl and do test for them all - anyone?)
+ AC_CHECK_LIB($THREADS_LINK, pthread_attr_getschedpolicy,
+ AC_DEFINE(HAVE_THREAD_PRIORITY_FUNCTIONS),
+ [AC_CHECK_LIB("posix4", pthread_attr_getschedpolicy,
+ [AC_DEFINE(HAVE_THREAD_PRIORITY_FUNCTIONS) POSIX4_LINK="-lposix4"],
+ AC_MSG_WARN(Setting thread priority will not work)
+ )]
+ )
+
+ AC_CHECK_LIB($THREADS_LINK, pthread_cancel,
+ AC_DEFINE(HAVE_PTHREAD_CANCEL),
+ AC_MSG_WARN(wxThread::Kill() will not work properly))
+
+ AC_MSG_CHECKING([for pthread_cleanup_push/pop])
+ AC_TRY_COMPILE([#include <pthread.h>],
+ [
+ pthread_cleanup_push(NULL, NULL);
+ pthread_cleanup_pop(0);
+ ],
+ [AC_MSG_RESULT(yes)
+ AC_DEFINE(HAVE_THREAD_CLEANUP_FUNCTIONS)
+ ],
+ [AC_MSG_RESULT(no)]
+ )
+
+ THREADS_LINK="-l$THREADS_LINK"
fi
-if test "$USE_NOTEBOOK" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_NOTEBOOK,$USE_NOTEBOOK)
-fi
+AC_SUBST(UNIX_THREAD)
+AC_SUBST(THREADS_LINK)
+AC_SUBST(POSIX4_LINK)
dnl ----------------------------------------------------------------
dnl Register non-GUI class options for makefiles and setup.h
dnl ----------------------------------------------------------------
-if test "$USE_CONFIG" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_CONFIG,$USE_CONFIG)
+if test "$wxUSE_CONFIG" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_CONFIG,$wxUSE_CONFIG)
fi
-if test "$USE_TIMEDATE" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_TIMEDATE,$USE_TIMEDATE)
+if test "$wxUSE_TIMEDATE" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_TIMEDATE,$wxUSE_TIMEDATE)
fi
-if test "$USE_FRACTION" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_FRACTION,$USE_FRACTION)
+if test "$wxUSE_INTL" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_INTL,$wxUSE_INTL)
fi
-if test "$USE_LOG" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_LOG,$USE_LOG)
+if test "$wxUSE_STREAMS" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_STREAMS,$wxUSE_STREAMS)
fi
-if test "$USE_INTL" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_INTL,$USE_INTL)
+if test "$wxUSE_SOCKETS" = 1 ; then
+ if test "$wxUSE_THREADS" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_SOCKETS,$wxUSE_SOCKETS)
+ else
+ AC_MSG_WARN(sockets or only supported with threads)
+ wxUSE_SOCKETS=0
+ fi
fi
-if test "$USE_STREAMS" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_STREAMS,$USE_STREAMS)
+if test "$wxUSE_SERIAL" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_SERIAL,$wxUSE_SERIAL)
fi
-if test "$USE_SERIAL" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_SERIAL,$USE_SERIAL)
+dnl ------------------------------------------------------------------------
+dnl wxSocket
+dnl ------------------------------------------------------------------------
+
+if test "$wxUSE_SOCKETS" = "1"; then
+ AC_LANG_SAVE
+ AC_LANG_CPLUSPLUS
+ dnl determine the type of third argument for getsockname
+ AC_MSG_CHECKING(the type of the third argument of getsockname)
+ AC_TRY_COMPILE(
+ [#include <sys/socket.h>],
+ [socklen_t len; getsockname(0, NULL, &len);],
+ AC_DEFINE(SOCKLEN_T, socklen_t) AC_MSG_RESULT(socklen_t),
+ AC_TRY_COMPILE(
+ [#include <sys/socket.h>],
+ [size_t len; getsockname(0, NULL, &len);],
+ AC_DEFINE(SOCKLEN_T, size_t) AC_MSG_RESULT(size_t),
+ AC_TRY_COMPILE(
+ [#include <sys/socket.h>],
+ [int len; getsockname(0, NULL, &len);],
+ AC_DEFINE(SOCKLEN_T, int) AC_MSG_RESULT(int),
+ AC_MSG_RESULT(unknown)
+ )
+ )
+ )
+ AC_LANG_RESTORE
fi
-if test "$USE_FILE" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_FILE,$USE_FILE)
+dnl ------------------------------------------------------------------------
+dnl wxLibrary class
+dnl ------------------------------------------------------------------------
+
+HAVE_DL_FUNCS=0
+if test "$wxUSE_DYNLIB_CLASS" = "1"; then
+ dnl the test is a bit complicated because we check for dlopen() both with
+ dnl and without -ldl
+ AC_CHECK_FUNCS(dlopen,
+ [AC_DEFINE(HAVE_DLOPEN) HAVE_DL_FUNCS=1],
+ [AC_CHECK_LIB(dl, dlopen,
+ [AC_DEFINE(HAVE_DLOPEN) HAVE_DL_FUNCS=1])])
+ AC_CHECK_FUNCS(shl_load, [AC_DEFINE(HAVE_SHL_LOAD) HAVE_DL_FUNCS=1])
+
+ if test "$HAVE_DL_FUNCS" = 0; then
+ AC_MSG_WARN("--with-dynlib will be disabled because no function was found to load a shared library on this platform")
+
+ wxUSE_DYNLIB_CLASS=0
+ fi
fi
-if test "$USE_TEXTFILE" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_TEXTFILE,$USE_TEXTFILE)
+if test "$wxUSE_DYNLIB_CLASS" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_DYNLIB_CLASS,$wxUSE_DYNLIB_CLASS)
fi
dnl ----------------------------------------------------------------
dnl Register Prolog and Resources options for makefiles and setup.h
dnl ----------------------------------------------------------------
-if test "$USE_RPC" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_RPC,$USE_RPC)
+if test "$wxUSE_RPC" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_RPC,$wxUSE_RPC)
fi
-if test "$USE_WX_RESOURCES" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_WX_RESOURCES,$USE_WX_RESOURCES)
+if test "$wxUSE_WX_RESOURCES" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_WX_RESOURCES,$wxUSE_WX_RESOURCES)
fi
-if test "$USE_PROLOGIO" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_PROLOGIO)
+if test "$wxUSE_PROLOGIO" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_PROLOGIO)
fi
dnl ----------------------------------------------------------------
dnl Register PostScript options for makefiles and setup.h
dnl ----------------------------------------------------------------
-if test "$USE_POSTSCRIPT" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_POSTSCRIPT)
+if test "$wxUSE_POSTSCRIPT" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_POSTSCRIPT)
fi
-AC_DEFINE_UNQUOTED(USE_AFM_FOR_POSTSCRIPT,$USE_AFM_FOR_POSTSCRIPT)
+AC_DEFINE_UNQUOTED(wxUSE_AFM_FOR_POSTSCRIPT,$wxUSE_AFM_FOR_POSTSCRIPT)
AC_DEFINE_UNQUOTED(WX_NORMALIZED_PS_FONTS,$WX_NORMALIZED_PS_FONTS)
dnl Register architecture options for makefiles and setup.h
dnl ----------------------------------------------------------------
-if test "$USE_MDI_ARCHITECTURE" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_MDI_ARCHITECTURE,$USE_MDI_ARCHITECTURE)
+if test "$wxUSE_MDI_ARCHITECTURE" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_MDI_ARCHITECTURE,$wxUSE_MDI_ARCHITECTURE)
fi
-if test "$USE_DOC_VIEW_ARCHITECTURE" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_DOC_VIEW_ARCHITECTURE,$USE_DOC_VIEW_ARCHITECTURE)
+if test "$wxUSE_DOC_VIEW_ARCHITECTURE" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_DOC_VIEW_ARCHITECTURE,$wxUSE_DOC_VIEW_ARCHITECTURE)
fi
-if test "$USE_PRINTING_ARCHITECTURE" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_PRINTING_ARCHITECTURE,$USE_PRINTING_ARCHITECTURE)
+if test "$wxUSE_PRINTING_ARCHITECTURE" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_PRINTING_ARCHITECTURE,$wxUSE_PRINTING_ARCHITECTURE)
fi
dnl ----------------------------------------------------------------
-dnl Register misc options for makefiles and setup.h
+dnl Register wxString options for makefiles and setup.h
dnl ----------------------------------------------------------------
-if test "$USE_IPC" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_IPC)
+if test "$wxUSE_UNICODE" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_UNICODE)
fi
-if test "$USE_RESOURCES" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_RESOURCES,$USE_RESOURCES)
-fi
-
-if test "$USE_CLIPBOARD" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_CLIPBOARD,$USE_CLIPBOARD)
-fi
-
-if test "$USE_DND" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_DND,$USE_DND)
-fi
-
-if test "$USE_CONSTRAINTS" = 1 ; then
- AC_DEFINE_UNQUOTED(USE_CONSTRAINTS,$USE_CONSTRAINTS)
+if test "$wxUSE_WCSRTOMBS" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_WCSRTOMBS)
fi
dnl ----------------------------------------------------------------
-dnl No effect
+dnl Register misc options for makefiles and setup.h
dnl ----------------------------------------------------------------
-METAFILE=NONE
-if test "$USE_METAFILE" = 1 ; then
- METAFILE="METAFILE"
- AC_DEFINE_UNQUOTED(USE_METAFILE,$USE_METAFILE)
+if test "$wxUSE_IPC" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_IPC)
fi
-AC_SUBST(METAFILE)
-HELP=NONE
-if test "$USE_HELP" = 1 ; then
- HELP="HELP"
- AC_DEFINE_UNQUOTED(USE_HELP,$USE_HELP)
-fi
-AC_SUBST(HELP)
-
-WXGRAPH=NONE
-if test "$USE_WXGRAPH" = 1 ; then
- WXGRAPH="WXGRAPH"
- AC_DEFINE_UNQUOTED(USE_WXGRAPH,$USE_WXGRAPH)
-fi
-AC_SUBST(WXGRAPH)
-
-WXTREE=NONE
-if test "$USE_WXTREE" = 1 ; then
- WXTREE="WXTREE"
- AC_DEFINE_UNQUOTED(USE_WXTREE,$USE_WXTREE)
+if test "$wxUSE_RESOURCES" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_RESOURCES,$wxUSE_RESOURCES)
fi
-AC_SUBST(WXTREE)
-
-GLCANVAS=NONE
-if test "$USE_OPENGL" = 1 ; then
- GLCANVAS="GLCANVAS"
-fi
-
-dnl ----------------------------------------------------------------
-dnl select dynamic loader (used by iODBC to load drivers)
-dnl ----------------------------------------------------------------
-
-AC_CHECK_LIB(dl,main,[DL_LIBRARY=-ldl],[DL_LIBRARY=])
-AC_SUBST(DL_LIBRARY)
-
-dnl ----------------------------------------------------------------
-dnl thread support
-dnl ----------------------------------------------------------------
-
-USE_THREADS=1
-THREADS_LINK=""
-UNIX_THREAD=""
-
-AC_ARG_WITH(threads,
-[**--without-threads Force disabling threads ],
-[USE_THREADS="$withval"])
-
-if test "$USE_THREADS" = "1"; then
- UNIX_THREAD="gtk/threadno.cpp"
- dnl For glibc 2 users who have the old libc 5 too
-
- AC_CHECK_LIB(pthread-0.7, pthread_create, [
- UNIX_THREAD="gtk/threadpsx.cpp"
- THREADS_LINK="-lpthread-0.7"
- ],[
- AC_CHECK_HEADER(sys/prctl.h, [
- UNIX_THREAD="gtk/threadsgi.cpp"
- ])
-
- dnl pthread_create is always available in pthread but it seems not to be
- dnl the case for pthread_setcanceltype.
-
- AC_CHECK_LIB(pthread, pthread_setcanceltype, [
- UNIX_THREAD="gtk/threadpsx.cpp"
- THREADS_LINK="-lpthread"
- ])
- ])
- AC_CHECK_LIB(pthreads, pthread_setcanceltype, [
- UNIX_THREAD="gtk/threadpsx.cpp"
- THREADS_LINK="-lpthreads"
- ])
+if test "$wxUSE_CLIPBOARD" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_CLIPBOARD,$wxUSE_CLIPBOARD)
fi
-if test -z "$UNIX_THREAD"; then
- USE_THREADS=0
+if test "$wxUSE_TOOLTIPS" = 1 ; then
+ if test "$wxUSE_MOTIF" = 1; then
+ AC_MSG_WARN(tooltips are not supported yet under Motif)
+ wxUSE_TOOLTIPS=0
+ fi
+ AC_DEFINE_UNQUOTED(wxUSE_TOOLTIPS,$wxUSE_TOOLTIPS)
fi
-AC_SUBST(UNIX_THREAD)
-AC_SUBST(THREADS_LINK)
-AC_DEFINE(USE_THREADS)
-
-dnl defines UNIX_THREAD it contains the source file to use for threads. (GL)
-dnl defines THREADS_LINK it contains the thread library to link with. (GL)
-dnl defines USE_THREADS if thread support is activated. (GL)
-
-dnl ----------------------------------------------------------------
-dnl search for opengl
-dnl ----------------------------------------------------------------
-
-OPENGL_INCLUDE=
-OPENGL_LIBRARY=
-OPENGL_LINK=
-
-if test "$USE_OPENGL" = 1; then
- dnl checking OPENGL includes
- AC_MSG_CHECKING(for OpenGL includes)
- AC_PATH_FIND_INCLUDES($SEARCH_INCLUDE,GL/gl.h)
- if test "$ac_find_includes" != "" ; then
- OPENGL_INCLUDE="-I$ac_find_includes"
- AC_MSG_RESULT(found $ac_find_includes)
- dnl checking OPENGL libraries
- AC_MSG_CHECKING(for OpenGL library)
- AC_PATH_FIND_LIBRARIES($SEARCH_LIB,GL)
- if test "$ac_find_libraries" != "" ; then
- AC_INCLUDE_PATH_EXIST($ac_find_includes,$CHECK_INCLUDE)
- AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
- CHECK_LINK="$CHECK_INCLUDE $ac_path_to_link"
- CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include"
- OPENGL_LIBRARY="$ac_path_to_link"
- OPENGL_INCLUDE="$ac_path_to_include"
- OPENGL_LINK="-lGL"
- AC_MSG_RESULT(found OpenGL at $ac_find_libraries)
+if test "$wxUSE_DRAG_AND_DROP" = 1 ; then
+ if test "$WXGTK12" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_DRAG_AND_DROP,$wxUSE_DRAG_AND_DROP)
else
- AC_PATH_FIND_LIBRARIES($SEARCH_LIB,MesaGL)
- if test "$ac_find_libraries" != "" ; then
- AC_INCLUDE_PATH_EXIST($ac_find_includes,$CHECK_INCLUDE)
- AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
- CHECK_LINK="$CHECK_INCLUDE $ac_path_to_link"
- CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include"
- OPENGL_LIBRARY="$ac_path_to_link"
- OPENGL_INCLUDE="$ac_path_to_include"
- OPENGL_LINK="-lMesaGL"
- AC_MSG_RESULT(found MESA at $ac_find_libraries)
- else
- AC_MSG_ERROR(no)
- fi
+ AC_MSG_WARN(drag and drop is only supported under GTK 1.2)
+ wxUSE_DRAG_AND_DROP=0
fi
- else
- AC_MSG_ERROR(no)
- fi
+fi
+
+if test "$wxUSE_SPLINE" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_SPLINE,$wxUSE_SPLINE)
fi
dnl ----------------------------------------------------------------
-dnl left-over
+dnl No effect yet
dnl ----------------------------------------------------------------
-USE_GLX=$USE_OPENGL
-if test "$USE_OPENGL" != 1; then
- OPENGL_LIBRARIES=
- OPENGL_INCLUDE=
- OPENGL_LINK=
- GLCANVAS=NONE
+HELP=NONE
+if test "$wxUSE_HELP" = 1 ; then
+ HELP="HELP"
+ AC_DEFINE_UNQUOTED(wxUSE_HELP,$wxUSE_HELP)
fi
-
-AC_DEFINE_UNQUOTED(USE_GLX,$USE_GLX)
-AC_SUBST(OPENGL_INCLUDE)
-AC_SUBST(OPENGL_LIBRARY)
-AC_SUBST(OPENGL_LINK)
-AC_SUBST(GLCANVAS)
+AC_SUBST(HELP)
dnl ------------------------------------------------------------------------
dnl compiler options for shared libs
PICFLAGS=
CREATE_SHARED=
case "${canonical}" in
-
*-hp-hpux* )
- if test "${CC}" != "gcc" ; then
+ if test "$GCC" != "yes" ; then
CXXFLAGS="${CXXFLAGS} +a1 -z -Aa -D_HPUX_SOURCE"
CFLAGS="${CFLAGS} -z -D_HPUX_SOURCE"
PICFLAGS="+z"
CREATE_SHARED=sharedLinux
;;
- *-*-irix5* | *-*-irix6* )
+ *-*-irix5* | *-*-irix6* )
# PICFLAGS can remain empty, as pic is the default
LDFLAGS="-Wl,+s"
CREATE_SHARED=sharedIrix
AC_DEFINE(SVR4)
;;
- *-*-solaris2* )
- if test "${CC}" != "gcc" ; then
+ *-*-solaris2* )
+ if test "$GCC" != "yes" ; then
PICFLAGS="-KPIC"
else
PICFLAGS="-fPIC"
AC_DEFINE(SVR4)
;;
- *-*-sunos4* )
- if test "${CC}" != "gcc" ; then
+ *-*-sunos4* )
+ if test "$GCC" != "yes" ; then
PICFLAGS="-PIC"
else
PICFLAGS="-fPIC"
AC_DEFINE(BSD)
;;
- *-*-osf* )
+ *-*-osf* )
PICFLAGS="-fPIC"
CREATE_SHARED=sharedOSF
;;
- *-*-dgux5* )
- if test "${CC}" != "gcc" ; then
+ *-*-dgux5* )
+ if test "$GCC" != "yes" ; then
PICFLAGS="-K PIC"
else
PICFLAGS="-fPIC"
AC_DEFINE(SVR4)
;;
- *-*-sysv5* )
- if test "${CC}" != "gcc" ; then
+ *-*-sysv5* )
+ if test "$GCC" != "yes" ; then
PICFLAGS="-K PIC"
else
PICFLAGS="-fPIC"
AC_DEFINE(SVR4)
;;
- *-*-aix* )
- if test "${CC}" != "gcc" ; then
+ *-*-aix* )
+ if test "$GCC" != "yes" ; then
PICFLAGS="-bM\:SRE"
else
- PICFLAGS="-fPIC"
+ PICFLAGS="-fPIC -D__SYSV__"
fi
CREATE_SHARED=sharedAIX
AC_DEFINE(SYSV)
esac
if test "x$GCC" = xyes; then
- CFLAGS="${CFLAGS} -Wall"
+ CFLAGS="${CFLAGS} -Wall -Wno-unused -Wno-uninitialized -D_REENTRANT -DLEX_SCANNER -DHAVE_LIBDL"
fi
if test "x$GXX" = xyes; then
- CXXFLAGS="${CXXFLAGS} -Wall"
+ if test "$wxUSE_MOTIF" = 1; then
+ CXXFLAGS="${CXXFLAGS} -Wall -Wno-unused -D_REENTRANT"
+ else
+ CXXFLAGS="${CXXFLAGS} -Wall -D_REENTRANT"
+ fi
fi
-if test "$USE_SHARED" != 1; then
+if test "$wxUSE_SHARED" != 1; then
CREATE_SHARED=
PICFLAGS=
fi
dnl add OS to list of configured
echo $OS >> system.list
-AC_CONFIG_HEADER(./include/wx/gtk/setup.h:./setup/setup.hin)
+TOOLKIT_DIR=`echo ${TOOLKIT} | tr "A-Z" "a-z"`
+AC_CONFIG_HEADER(./include/wx/${TOOLKIT_DIR}/setup.h:./setup/setup.hin)
+
AC_OUTPUT(./setup/substit ./wx-config:./wx-config.in,./setup/general/createall)
AC_OVERRIDES_DONE
+