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;
if (gtk_minor_version > 0) 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
])
/usr/Motif1.2/include \
/usr/dt/include \
/usr/include/Xm \
- \
+ \
/usr/X11R6/include \
/usr/X11R5/include \
/usr/X11R4/include \
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
${MAKE-make} -f confMake VPATH=sub 2> config.log > /dev/null
RESULT=$?
rm -f sub/file check final_file confMake
-rmdir sub
+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 check for vprintf/vsprintf() which are GNU extensions
AC_FUNC_VPRINTF
-dnl check for vsnprintf() which is another GNU extension
-AC_CHECK_FUNC(vsnprintf, AC_DEFINE(HAVE_VSNPRINTF))
+
+dnl check for several standard functions we use if they are available
+AC_CHECK_FUNCS(vsnprintf vfork)
+
+dnl check for usleep() and nanosleep() which is better in MT programs
+dnl AC_CHECK_FUNCS(nanosleep, AC_DEFINE(HAVE_NANOSLEEP),
+dnl [
+dnl AC_CHECK_LIB(posix4, nanosleep,
+dnl AC_DEFINE(HAVE_NANOSLEEP),
+dnl AC_CHECK_FUNCS(usleep))
+dnl ]
+dnl )
+AC_CHECK_FUNCS(nanosleep, AC_DEFINE(HAVE_NANOSLEEP),
+[AC_CHECK_LIB(posix4, nanosleep, AC_DEFINE(HAVE_NANOSLEEP),
+ [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)
AC_LANG_SAVE
AC_LANG_CPLUSPLUS
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 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 ###################################
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); }
+ if(ptr1 && !ptr2) exit(0); } exit(1); }
], libltdl_cv_need_uscore=no, libltdl_cv_need_uscore=yes,
libltdl_cv_need_uscore=no
)])
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
DEFAULT_wxUSE_INTL=1
DEFAULT_wxUSE_CONFIG=1
DEFAULT_wxUSE_STREAMS=1
-DEFAULT_wxUSE_SOCKETS=0
+DEFAULT_wxUSE_SOCKETS=1
DEFAULT_wxUSE_SERIAL=1
DEFAULT_wxUSE_DYNLIB_CLASS=1
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))
+ AC_CHECK_LIB(c,gettext,AC_DEFINE(wxHAVE_GLIBC2))
fi
dnl ----------------------------------------------------------------
else
AC_MSG_ERROR(no)
fi
-
+
GUI_TK_LINK="-lXm -lXpm -lXmu -lXt -lX11 -lm"
GUI_TK_LIBRARY="$CHECK_LIB $GUI_TK_LINK"
TOOLKIT=MOTIF
- TOOLKIT_DEF="__WXMOTIF__ -D__LINUX__ -D__UNIX__"
+ 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(Z_C_SRC)
if test "$wxUSE_LIBPNG" = 1 ; then
- AC_DEFINE_UNQUOTED(wxUSE_LIBPNG,$wxUSE_LIBPNG)
+ AC_DEFINE_UNQUOTED(wxUSE_LIBPNG,$wxUSE_LIBPNG)
PNG_C_SRC="\$(PNG_C_SRC)"
fi
AC_SUBST(PNG_C_SRC)
JPEG_LINK=""
if test "$wxUSE_LIBJPEG" = 1 ; then
AC_DEFINE_UNQUOTED(wxUSE_LIBJPEG,$wxUSE_LIBJPEG)
- AC_CHECK_LIB(jpeg)
+ AC_CHECK_LIB(jpeg)
JPEG_LINK="-ljpeg"
fi
AC_SUBST(JPEG_LINK)
IODBC_C_SRC=""
if test "$wxUSE_ODBC" = 1 ; then
- AC_DEFINE_UNQUOTED(wxUSE_ODBC,$wxUSE_ODBC)
+ AC_DEFINE_UNQUOTED(wxUSE_ODBC,$wxUSE_ODBC)
IODBC_C_SRC="\$(IODBC_C_SRC)"
fi
AC_SUBST(IODBC_C_SRC)
AC_DEFINE_UNQUOTED(wxUSE_STREAMS,$wxUSE_STREAMS)
fi
+if test "$wxUSE_SOCKETS" = 1 ; then
+ AC_DEFINE_UNQUOTED(wxUSE_SOCKETS,$wxUSE_SOCKETS)
+fi
+
if test "$wxUSE_SERIAL" = 1 ; then
AC_DEFINE_UNQUOTED(wxUSE_SERIAL,$wxUSE_SERIAL)
fi
dnl thread support
dnl ----------------------------------------------------------------
+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)
+
THREADS_LINK=""
UNIX_THREAD=""
if test "$wxUSE_THREADS" = "1"; then
-
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"
+ UNIX_THREAD="unix/threadpsx.cpp"
+ THREADS_LINK="pthread-0.7"
],[
AC_CHECK_HEADER(sys/prctl.h, [
UNIX_THREAD="gtk/threadsgi.cpp"
dnl the case for pthread_setcanceltype.
AC_CHECK_LIB(pthread, pthread_setcanceltype, [
- UNIX_THREAD="gtk/threadpsx.cpp"
- THREADS_LINK="-lpthread"
+ UNIX_THREAD="unix/threadpsx.cpp"
+ THREADS_LINK="pthread"
])
])
+ if test "x$THREADS_LINK" = "x"; then
+ 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"
+ ])
+ fi
+
if test "$THREADS_LINK" != ""; then
AC_DEFINE(wxUSE_THREADS)
fi
-
- dnl -lposix4 seems to be required on Solaris
-
- AC_CHECK_LIB(posix4, printf, [
- THREADS_LINK="$THREADS_LINK -lposix4"
- ])
-
-fi
-
-if test "$wxUSE_MOTIF" = "1"; then
- UNIX_THREAD="motif/thread.cpp"
fi
if test -z "$UNIX_THREAD"; then
wxUSE_THREADS=0
fi
+dnl do other tests only if we are using threads
+if test "$wxUSE_THREADS" = "1"; then
+ THREADS_LINK2=""
+
+ 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) THREADS_LINK2="-lposix4"],
+ AC_MSG_WARN(wxThread::Yield() will not work properly)
+ )]
+ )
+
+ AC_CHECK_LIB($THREADS_LINK, sched_get_priority_min,
+ AC_DEFINE(HAVE_THREAD_PRIORITY_FUNCTIONS),
+ [AC_CHECK_LIB("posix4", sched_get_priority_min,
+ [AC_DEFINE(HAVE_THREAD_PRIORITY_FUNCTIONS) THREADS_LINK2="-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))
+
+ THREADS_LINK="-l$THREADS_LINK $THREADS_LINK2"
+fi
+
AC_SUBST(UNIX_THREAD)
AC_SUBST(THREADS_LINK)
-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)
-
dnl ------------------------------------------------------------------------
dnl compiler options for shared libs
dnl ------------------------------------------------------------------------
PICFLAGS=
CREATE_SHARED=
case "${canonical}" in
-
*-hp-hpux* )
if test "$GCC" != "yes" ; then
CXXFLAGS="${CXXFLAGS} +a1 -z -Aa -D_HPUX_SOURCE"
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* )
+ *-*-solaris2* )
if test "$GCC" != "yes" ; then
PICFLAGS="-KPIC"
else
AC_DEFINE(SVR4)
;;
- *-*-sunos4* )
+ *-*-sunos4* )
if test "$GCC" != "yes" ; then
PICFLAGS="-PIC"
else
AC_DEFINE(BSD)
;;
- *-*-osf* )
+ *-*-osf* )
PICFLAGS="-fPIC"
CREATE_SHARED=sharedOSF
;;
- *-*-dgux5* )
+ *-*-dgux5* )
if test "$GCC" != "yes" ; then
PICFLAGS="-K PIC"
else
AC_DEFINE(SVR4)
;;
- *-*-sysv5* )
+ *-*-sysv5* )
if test "$GCC" != "yes" ; then
PICFLAGS="-K PIC"
else
AC_DEFINE(SVR4)
;;
- *-*-aix* )
+ *-*-aix* )
if test "$GCC" != "yes" ; then
PICFLAGS="-bM\:SRE"
else
AC_OUTPUT(./setup/substit ./wx-config:./wx-config.in,./setup/general/createall)
AC_OVERRIDES_DONE
+