dnl Process this file with autoconf to produce a configure script. AC_INIT(gimprc.in) dnl Initialize automake stuff GIMP_MAJOR_VERSION=1 GIMP_MINOR_VERSION=1 GIMP_MICRO_VERSION=0 GIMP_INTERFACE_AGE=0 GIMP_BINARY_AGE=0 GIMP_VERSION=$GIMP_MAJOR_VERSION.$GIMP_MINOR_VERSION.$GIMP_MICRO_VERSION dnl libtool versioning LT_RELEASE=$GIMP_MAJOR_VERSION.$GIMP_MINOR_VERSION LT_CURRENT=`expr $GIMP_MICRO_VERSION - $GIMP_INTERFACE_AGE` LT_REVISION=$GIMP_INTERFACE_AGE LT_AGE=`expr $GIMP_BINARY_AGE - $GIMP_INTERFACE_AGE` VERSION=$GIMP_VERSION PACKAGE=gimp AM_INIT_AUTOMAKE($PACKAGE, $VERSION, no-define) dnl Specify a header configuration file AM_CONFIG_HEADER(config.h) dnl Initialize libtool AM_PROG_LIBTOOL dnl Initialize maintainer mode AM_MAINTAINER_MODE AC_CANONICAL_HOST AC_ARG_ENABLE(debug, [ --enable-debug turn on debugging [default=no]], if eval "test x$enable_debug = xyes"; then DEBUGFLAG="-g" fi) AC_ARG_ENABLE(ansi, [ --enable-ansi turn on strict ansi [default=no]], , enable_ansi=no) dnl Possibly change default gimpdir from .gimp gimpdir=.gimp-1.1 AC_ARG_ENABLE(gimpdir, [ --enable-gimpdir=DIR change default gimpdir from .gimp to DIR], if eval "test x$enable_gimpdir != x"; then if eval "test x$enable_gimpdir != xyes"; then gimpdir=$enable_gimpdir fi fi) if test -n "$DEBUGFLAG"; then CFLAGS="$DEBUGFLAG $CFLAGS" fi dnl Checks for programs. AC_PROG_CC AC_ISC_POSIX AM_PROG_CC_STDC AC_PROG_INSTALL AC_PROG_LN_S AC_PROG_MAKE_SET AC_PROG_CPP dnl i18n stuff ALL_LINGUAS="fr sv ja it fi ko de" AM_GNU_GETTEXT dnl Check for GTK+ AM_PATH_GTK(1.1.3,, AC_MSG_ERROR(Test for GTK failed. See the file 'INSTALL' for help.)) changequote(,)dnl dnl Evil stuff to extract GLIB stuff from gtk-config output dnl (we want to make sure it matches with the gtk we're using) GLIB_CFLAGS=`echo $GTK_CFLAGS | sed 's/^.*\(-I[^ ]*glib[^ ]* *-I[^ ]*\).*$/\1/'` GLIB_LDFLAGS=`echo $gtk_libs | sed -e 's/^.*-lgdk[^ ]* *\(-L[^ ]*\).*$/\1/' -e 's/^.* -lgdk[^ ]* .*$//'` if test -z "$GLIB_LDFLAGS" ; then GLIB_LDFLAGS=`echo $GTK_LIBS | sed 's/^ *\(-L[^ ]*\) .*$/\1/'` fi GLIB_LIBS="$GLIB_LDFLAGS `echo $GTK_LIBS | sed 's/^.*\(-lglib[^ ]*\).*$/\1/'`" if eval "test x$GCC = xyes"; then case " $CFLAGS " in *[\ \ ]-Wall[\ \ ]*) ;; *) CFLAGS="$CFLAGS -Wall" ;; esac if test "x$enable_ansi" = "xyes"; then case " $CFLAGS " in *[\ \ ]-ansi[\ \ ]*) ;; *) CFLAGS="$CFLAGS -ansi" ;; esac case " $CFLAGS " in *[\ \ ]-pedantic[\ \ ]*) ;; *) CFLAGS="$CFLAGS -pedantic" ;; esac fi fi changequote([,])dnl dnl DU4 native cc currently needs -std1 for ANSI mode (instead of K&R) AC_MSG_CHECKING([for extra flags to get ANSI library prototypes]) gimp_save_LIBS=$LIBS LIBS="$LIBS -lm" AC_TRY_RUN([#include int main (void) { return (log(1) != log(1.)); }], AC_MSG_RESULT(none needed), gimp_save_CFLAGS=$CFLAGS CFLAGS="$CFLAGS -std1" AC_TRY_RUN([#include int main (void) { return (log(1) != log(1.)); }], AC_MSG_RESULT(-std1), AC_MSG_RESULT() CFLAGS=$gimp_save_CFLAGS AC_MSG_WARN([No ANSI prototypes found in library. (-std1 didn't work.)]), AC_MSG_RESULT), AC_MSG_RESULT()) LIBS=$gimp_save_LIBS dnl NeXTStep cc seems to need this AC_MSG_CHECKING([for extra flags for POSIX compliance]) AC_TRY_COMPILE([#include ], [DIR *dir;], AC_MSG_RESULT(none needed), gimp_save_CFLAGS=$CFLAGS CFLAGS="$CFLAGS -posix" AC_TRY_COMPILE([#include ], [DIR *dir;], AC_MSG_RESULT(-posix), AC_MSG_RESULT() CFLAGS=$gimp_save_CFLAGS AC_MSG_WARN([Could not determine POSIX flag. (-posix didn't work.)]))) gimp_save_CPPFLAGS="$CPPFLAGS" gimp_save_LDFLAGS="$LDFLAGS" gimp_save_LIBS="$LIBS" CPPFLAGS="$CPPFLAGS $GTK_CFLAGS" LDFLAGS="$LDFLAGS `echo $GTK_LIBS | sed 's/\(.*\)\(-lgtk.*\)/\1/'`" LIBS="$LIBS $GTK_LIBS" dnl Test for Xmu if test -z "$LIBXMU_LIB"; then AC_CHECK_LIB(Xmu, XmuClientWindow, AC_CHECK_HEADER(X11/Xmu/WinUtil.h, WEBBROWSER="webbrowser"; LIBXMU_LIB='-lXmu -lXt -lSM -lICE', AC_MSG_WARN(*** webbrowser plug-in will not be built (XMU header file not found) ***)), AC_CHECK_LIB(Xmu, XmuUpdateMapHints, AC_CHECK_HEADER(X11/Xmu/WinUtil.h, WEBBROWSER="webbrowser"; LIBXMU_LIB='-lXmu -lXt', AC_MSG_WARN(*** webbrowser plug-in will not be built (XMU header file not found) ***)), AC_MSG_WARN(*** webbrowser plug-in will not be built (XMU library not found) ***), -lXt), -lXt -lSM -lICE) fi dnl Test for libaa if test -z "$LIBAA_LIB"; then AC_CHECK_LIB(aa, aa_printf, AC_CHECK_HEADER(aalib.h, AA='aa'; LIBAA_LIB='-laa', AC_MSG_WARN(*** AA plug-in will not be built (AA header file not found) ***)), AC_MSG_WARN(*** AA plug-in will not be built (AA library not found) ***)) fi dnl Test for libtiff if test -z "$LIBTIFF_LIB"; then AC_CHECK_LIB(tiff, TIFFReadScanline, AC_CHECK_HEADER(tiffio.h, TIFF='tiff'; LIBTIFF_LIB='-ltiff', AC_MSG_WARN(*** TIFF plug-in will not be built (TIFF header files not found) ***)), AC_CHECK_LIB(tiff, TIFFWriteScanline, AC_CHECK_HEADER(tiffio.h, TIFF='tiff'; LIBTIFF_LIB='-ltiff -ljpeg -lz', AC_MSG_WARN(*** TIFF plug-in will not be built (TIFF header files not found) ***)), AC_CHECK_LIB(tiff34, TIFFFlushData, AC_CHECK_HEADER(tiffio.h, TIFF='tiff'; LIBTIFF_LIB='-ltiff34 -ljpeg -lz', AC_MSG_WARN(*** TIFF plug-in will not be built (TIFF header files not found) ***)), AC_MSG_WARN(*** TIFF plug-in will not be built (TIFF library not found) ***), -ljpeg -lz -lm), -ljpeg -lz -lm), -lm) fi dnl Test for libjpeg if test -z "$LIBJPEG_LIB"; then AC_CHECK_LIB(jpeg, jpeg_destroy_decompress, jpeg_ok=yes, jpeg_ok=no AC_MSG_WARN(*** JPEG plug-in will not be built (JPEG library not found) ***)) if test "$jpeg_ok" = yes; then AC_MSG_CHECKING([for jpeglib.h]) AC_TRY_CPP( [#include #undef PACKAGE #undef VERSION #include ], jpeg_ok=yes, jpeg_ok=no) AC_MSG_RESULT($jpeg_ok) if test "$jpeg_ok" = yes; then JPEG='jpeg'; LIBJPEG_LIB='-ljpeg' else AC_MSG_WARN(*** JPEG plug-in will not be built (JPEG header file not found) ***) fi fi fi dnl Test for libpng if test -z "$LIBPNG_LIB"; then AC_CHECK_LIB(png, png_read_info, AC_CHECK_HEADER(png.h, png_ok=yes, png_ok=no), AC_MSG_WARN(*** PNG plug-in will not be built (PNG library not found) ***), -lz -lm) if test "$png_ok" = yes; then AC_MSG_CHECKING([for png_structp in png.h]) AC_TRY_COMPILE([#include ], [png_structp pp; png_infop info; png_colorp cmap; png_create_read_struct;], png_ok=yes, png_ok=no) AC_MSG_RESULT($png_ok) if test "$png_ok" = yes; then PNG='png'; LIBPNG_LIB='-lpng -lz' else AC_MSG_WARN(*** PNG plug-in will not be built (PNG library is too old) ***) fi else AC_MSG_WARN(*** PNG plug-in will not be built (PNG header file not found) ***) fi fi dnl Test for libmpeg if test -z "$LIBMPEG_LIB"; then AC_CHECK_LIB(mpeg, GetMPEGFrame, AC_CHECK_HEADER(mpeg.h, MPEG='mpeg'; LIBMPEG_LIB='-lmpeg', AC_MSG_WARN(*** MPEG plug-in will not be built (MPEG header file not found) ***)), AC_MSG_WARN(*** MPEG plug-in will not be built (MPEG library not found) ***)) fi dnl Test for libxdelta (optional) AC_ARG_WITH(xdelta, [ --with-xdelta compile the xdelta plugin ]) if test "x$with_xdelta" = "xyes"; then if test -z "$LIBXDELTA_LIB"; then AC_CHECK_LIB(xdelta, xd_checkin, xdelta_ok=yes ; LIBXDELTA_LIB='-lxdelta -lglib -lgdbm', AC_CHECK_LIB(xdelta, xd_checkout, xdelta_ok=yes ; LIBXDELTA_LIB='-lxdelta -lglib -lgdbm -lz', xdelta_ok=no AC_MSG_WARN(*** XD plug-in will not be built (XDELTA library not found) ***), -lglib -lgdbm -lz), -lglib -lgdbm) if test "$xdelta_ok" = yes; then AC_MSG_CHECKING([for xdelta.h]) AC_TRY_CPP( [#include #include ], xdelta_ok=yes, xdelta_ok=no) AC_MSG_RESULT($xdelta_ok) if test "$xdelta_ok" = yes; then XD='xd' else AC_MSG_WARN(*** XD plug-in will not be built (XDELTA header file not found) ***) fi fi fi fi dnl Test for libXpm if test -z "$LIBXPM_LIB"; then AC_CHECK_LIB(Xpm, XpmReadFileToXpmImage, AC_CHECK_HEADER(X11/xpm.h, XPM='xpm'; LIBXPM_LIB='-lXpm', AC_MSG_WARN(*** XPM plug-in will not be built (XPM header file not found) ***)), AC_MSG_WARN(*** XPM plug-in will not be built (XPM library not found) ***), $X_LIBS) fi dnl Check for shared memory AC_CHECK_HEADER(sys/ipc.h, AC_DEFINE(HAVE_IPC_H), no_sys_ipc=yes) AC_CHECK_HEADER(sys/shm.h, AC_DEFINE(HAVE_SHM_H), no_sys_shm=yes) if test "$ac_cv_header_sys_shm_h" = "yes"; then AC_MSG_CHECKING(whether shmctl IPC_RMID allowes subsequent attaches) AC_TRY_RUN([ #include #include #include int main() { int id; char *shmaddr; id = shmget (IPC_PRIVATE, 4, IPC_CREAT | 0777); if (id == -1) exit (2); shmaddr = shmat (id, 0, 0); shmctl (id, IPC_RMID, 0); if ((char*) shmat (id, 0, 0) == (char*) -1) { shmdt (shmaddr); exit (1); } shmdt (shmaddr); shmdt (shmaddr); exit (0); } ], AC_DEFINE(IPC_RMID_DEFERRED_RELEASE) AC_MSG_RESULT(yes), AC_MSG_RESULT(no), AC_MSG_RESULT(assuming no)) fi AC_HEADER_DIRENT AC_HEADER_STDC AC_HEADER_SYS_WAIT AC_HEADER_TIME AC_CHECK_HEADER(sys/time.h, AC_DEFINE(HAVE_SYS_TIME_H)) AC_CHECK_HEADER(unistd.h, AC_DEFINE(HAVE_UNISTD_H)) AC_TYPE_PID_T AC_TYPE_SIGNAL AC_FUNC_VPRINTF AC_FUNC_ALLOCA dnl Check for sys/select.h AC_MSG_CHECKING([fd_set and sys/select]) AC_TRY_COMPILE([#include ], [fd_set readMask, writeMask;], gimp_ok=yes, gimp_ok=no) if test $gimp_ok = no; then AC_HEADER_EGREP(fd_mask, sys/select.h, gimp_ok=yes) if test $gimp_ok = yes; then AC_DEFINE(HAVE_SYS_SELECT_H) fi fi AC_MSG_RESULT($gimp_ok) if test $gimp_ok = no; then AC_DEFINE(NO_FD_SET) fi dnl Check for random number functions LIBUCB_LIB="" AC_CHECK_FUNC(random, [ AC_DEFINE(RAND_FUNC, random) AC_DEFINE(SRAND_FUNC, srandom)], [AC_CHECK_LIB(ucb, random, [ AC_DEFINE(RAND_FUNC, random) AC_DEFINE(SRAND_FUNC, srandom) LIBUCB_LIB='-lucb'], [AC_CHECK_FUNC(lrand48, [AC_DEFINE(RAND_FUNC, lrand48) AC_DEFINE(SRAND_FUNC, srand48)], [AC_DEFINE(RAND_FUNC, rand) AC_DEFINE(SRAND_FUNC, srand)])])]) dnl check for difftime AC_CHECK_FUNC(difftime, , AC_DEFINE(NO_DIFFTIME)) dnl check for putenv (because %#@&% NeXTStep doesn't have it) AC_CHECK_FUNC(putenv, AC_DEFINE(HAVE_PUTENV)) dnl check for inline AC_MSG_CHECKING([for inline definition in glibconfig.h]) AC_EGREP_CPP(glib_defines_inline, [#include #ifdef inline glib_defines_inline #endif ], have_glib_inline=yes, have_glib_inline=no) AC_MSG_RESULT($have_glib_inline) if test "$have_glib_inline" = "no"; then AC_C_INLINE fi dnl Threads AC_ARG_WITH(threads, [ --with-threads=[posix] support threading ]) THREAD_LIBS= if test "x$with_threads" = "xposix" || test "x$with_threads" = "xyes"; then AC_CHECK_LIB(pthread, pthread_attr_init, AC_DEFINE(USE_PTHREADS) CFLAGS="$CFLAGS -D_REENTRANT" THREAD_LIBS="-lpthread") fi CPPFLAGS="$gimp_save_CPPFLAGS" LDFLAGS="$gimp_save_LDFLAGS" LIBS="$gimp_save_LIBS" gimpdatadir=$datadir/gimp gimpplugindir=$libdir/$PACKAGE/$GIMP_MAJOR_VERSION.$GIMP_MINOR_VERSION localedir=$datadir/locale brushdata=`ls -1 $srcdir/data/brushes | grep -v Makefile` gradientdata=`ls -1 $srcdir/data/gradients | grep -v Makefile` palettedata=`ls -1 $srcdir/data/palettes | grep -v Makefile` patterndata=`ls -1 $srcdir/data/patterns | grep -v Makefile` brushdata=`echo $brushdata` gradientdata=`echo $gradientdata` palettedata=`echo $palettedata` patterndata=`echo $patterndata` dnl This is for generating PDB docuemntation. AC_PATH_PROGS(EMACS, emacs xemacs, :) dnl This is for the mail plug-in sendmail_path=":" AC_ARG_ENABLE(sendmail_path, [ --with-sendmail=DIR set sendmail command location], if eval "test x$with_sendmail != x"; then sendmail_path=$with_sendmail fi) AC_PATH_PROG(SENDMAIL, "sendmail", $sendmail_path, $PATH:/usr/sbin:/usr/lib) if test $ac_cv_path_SENDMAIL != ":"; then MAILER="-DMAILER=\\\"$ac_cv_path_SENDMAIL\\\"" fi dnl This is for the print plug-in lp_path=":" AC_ARG_ENABLE(lp_path, [ --with-lp=DIR set lp command location], if eval "test x$with_lp != x"; then lp_path=$with_lp fi) AC_PATH_PROG(LP_COMMAND, "lp", $lp_path, $PATH:/usr/bin:/usr/sbin:/usr/ucb:/usr/bsd) if test $ac_cv_path_LP_COMMAND != ":"; then LP_DEF="-DLP_COMMAND=\\\"$ac_cv_path_LP_COMMAND\\\"" fi lpstat_path=":" AC_ARG_ENABLE(lpstat_path, [ --with-lpstat=DIR set lpstat command location], if eval "test x$with_lpstat != x"; then lpstat_path=$with_lpstat fi) AC_PATH_PROG(LPSTAT_COMMAND, "lpstat", $lpstat_path, $PATH:/usr/bin:/usr/sbin:/usr/ucb:/usr/bsd) if test $ac_cv_path_LPSTAT_COMMAND != ":"; then LPSTAT_DEF="-DLPSTAT_COMMAND=\\\"$ac_cv_path_LPSTAT_COMMAND\\\"" fi lpr_path=":" AC_ARG_ENABLE(lpr_path, [ --with-lpr=DIR set lpr command location], if eval "test x$with_lpr != x"; then lpr_path=$with_lpr fi) AC_PATH_PROG(LPR_COMMAND, "lpr", $lpr_path, $PATH:/usr/bin:/usr/sbin:/usr/ucb:/usr/bsd) if test $ac_cv_path_LPR_COMMAND != ":"; then LPR_DEF="-DLPR_COMMAND=\\\"$ac_cv_path_LPR_COMMAND\\\"" fi lpc_path=":" AC_ARG_ENABLE(lpc_path, [ --with-lpc=DIR set lpc command location], if eval "test x$with_lpc != x"; then lpc_path=$with_lpc fi) AC_PATH_PROG(LPC_COMMAND, "lpc", $lpc_path, $PATH:/usr/bin:/usr/sbin:/usr/ucb:/usr/bsd) if test $ac_cv_path_LPC_COMMAND != ":"; then LPC_DEF="-DLPC_COMMAND=\\\"$ac_cv_path_LPC_COMMAND\\\"" fi dnl This is for the gimp-perl plug-in AC_ARG_ENABLE(perl, [ --disable-perl do not build perl extension [by default enabled]]) if eval "test x$enable_perl != xno"; then AC_CHECK_PROGS(PERL,perl5.00504 perl5.00503 perl5.00502 perl5.00501 perl5.005 perl,perl) AC_MSG_CHECKING(for perl version >= 5.005) if test "`$PERL -e 'print $]>=5.005'`" = "1"; then AC_MSG_RESULT(yes) dnl perl does not allow VPATH builds (yet) if test ! -f plug-ins/perl/Makefile.PL; then mkdir plug-ins || true cp -r $srcdir/plug-ins/perl plug-ins/perl fi dnl these are gross hacks GIMP_CFLAGS="$CFLAGS $GLIB_CFLAGS -I$srcdir -I\$topdir/../.. $GTK_CFLAGS" GIMP_CFLAGS_NOUI="$GIMP_CFLAGS" GIMP_LIBS="$LIBS $GLIB_LIBS -L\$topdir/../../libgimp/.libs -L\$topdir/../../libgimp -lgimp" GIMP_LIBS_NOUI="$GIMP_LIBS" GIMPTOOL="../../gimptool" IN_GIMP=1 EXTENSIVE_TESTS=0 dnl include the autoconf fragment from there dnl This doesn't work with automake 1.3 due to a bug, so for now we'll dnl include it by hand dnl sinclude(plug-ins/perl/etc/configure.frag) AC_CHECK_FUNCS(vsnprintf,AC_DEFINE(HAVE_VSNPRINTF),[ AC_MSG_WARN(vsnprintf not found.. I hope you are using gcc...) ]) dnl disable some warnings I don't want to see if test "x$GCC" = xyes; then nowarn="-Wno-parentheses -Wno-unused -Wno-uninitialized" GIMP_CFLAGS="$GIMP_CFLAGS $nowarn" GIMP_CFLAGS_NOUI="$GIMP_CFLAGS" fi AC_SUBST(EXTENSIVE_TESTS)dnl from Makefile.PL AC_SUBST(CPPFLAGS) AC_SUBST(CFLAGS) AC_SUBST(LDFLAGS) AC_SUBST(prefix) AC_SUBST(IN_GIMP) AC_SUBST(GIMP_CFLAGS) AC_SUBST(GIMP_CFLAGS_NOUI) AC_SUBST(GIMP_LIBS) AC_SUBST(GIMP_LIBS_NOUI) AC_SUBST(PERL) AC_SUBST(GIMP) AC_SUBST(GIMPTOOL) AC_SUBST(GIMP_CFLAGS) AC_SUBST(GIMP_LIBS) dnl we ignore prefix cat >plug-ins/perl/config.status < po/Makefile case "$CONFIG_FILES" in *plug-ins/perl*) if test -e plug-ins/perl/config.status; then ( cd plug-ins/perl; . config.status ) fi ;; esac ] )