| 1 | # $Id$ |
|---|
| 2 | |
|---|
| 3 | AC_INIT(libpipi, 0.0) |
|---|
| 4 | AC_PREREQ(2.50) |
|---|
| 5 | AC_CONFIG_AUX_DIR(.auto) |
|---|
| 6 | AC_CANONICAL_SYSTEM |
|---|
| 7 | AM_INIT_AUTOMAKE([no-define tar-ustar]) |
|---|
| 8 | dnl AM_MAINTAINER_MODE |
|---|
| 9 | |
|---|
| 10 | AM_CONFIG_HEADER(config.h) |
|---|
| 11 | |
|---|
| 12 | LT_MAJOR="0" |
|---|
| 13 | LT_MINOR="0" |
|---|
| 14 | LT_MICRO="0" |
|---|
| 15 | AC_SUBST(LT_MAJOR) |
|---|
| 16 | AC_SUBST(LT_MINOR) |
|---|
| 17 | AC_SUBST(LT_MICRO) |
|---|
| 18 | LT_VERSION="$LT_MAJOR:$LT_MINOR:$LT_MICRO" |
|---|
| 19 | AC_SUBST(LT_VERSION) |
|---|
| 20 | |
|---|
| 21 | AM_PROG_CC_C_O |
|---|
| 22 | AC_PROG_CPP |
|---|
| 23 | AC_PROG_OBJC |
|---|
| 24 | _AM_DEPENDENCIES([OBJC]) |
|---|
| 25 | OBJC="${CC}" |
|---|
| 26 | AC_SUBST(OBJC) |
|---|
| 27 | AC_SUBST(OBJCFLAGS) |
|---|
| 28 | |
|---|
| 29 | AC_LIBTOOL_WIN32_DLL |
|---|
| 30 | AM_PROG_LIBTOOL |
|---|
| 31 | AC_LIBTOOL_CXX |
|---|
| 32 | |
|---|
| 33 | AC_C_CONST |
|---|
| 34 | AC_C_INLINE |
|---|
| 35 | |
|---|
| 36 | dnl AC_PROG_EGREP only exists in autoconf 2.54+, so we use AC_EGREP_CPP right |
|---|
| 37 | dnl now otherwise it might be set in an obscure if statement. Same thing for |
|---|
| 38 | dnl PKG_PROG_PKG_CONFIG which needs to be called first. |
|---|
| 39 | AC_EGREP_CPP(yes, foo) |
|---|
| 40 | PKG_PROG_PKG_CONFIG() |
|---|
| 41 | m4_pattern_allow([^PKG_CONFIG_LIBDIR$]) |
|---|
| 42 | if test "${build}" != "${host}" -a "${PKG_CONFIG_LIBDIR}" = ""; then |
|---|
| 43 | export PKG_CONFIG_LIBDIR=/dev/null |
|---|
| 44 | fi |
|---|
| 45 | |
|---|
| 46 | AC_MSG_CHECKING(for library suffix) |
|---|
| 47 | LT_SUFFIX="`./libtool -n --mode=link gcc -o libTEST.la -no-undefined -version-number 123:666:999 -rpath / | xargs -n 1 | sed -ne 's/.*libTEST\(@<:@^, ()0-9@:>@*\)123\(@<:@^, ()0-9@:>@*\).*/\1'$LT_MAJOR'\2/p' | grep -v '\.$' | head -n 1`" |
|---|
| 48 | if test "$LT_SUFFIX" = ""; then |
|---|
| 49 | LT_SUFFIX=".so.$LT_MAJOR" |
|---|
| 50 | AC_MSG_RESULT([unknown, defaulting to $LT_SUFFIX]) |
|---|
| 51 | else |
|---|
| 52 | AC_MSG_RESULT($LT_SUFFIX) |
|---|
| 53 | fi |
|---|
| 54 | AC_SUBST(LT_SUFFIX) |
|---|
| 55 | |
|---|
| 56 | AC_CHECK_HEADERS(stdio.h stdarg.h inttypes.h endian.h stdint.h getopt.h) |
|---|
| 57 | |
|---|
| 58 | ac_cv_have_getopt_long="no" |
|---|
| 59 | AC_CHECK_FUNCS(getopt_long, |
|---|
| 60 | [ac_cv_have_getopt_long="yes"], |
|---|
| 61 | [AC_CHECK_LIB(gnugetopt, getopt_long, |
|---|
| 62 | [ac_cv_have_getopt_long="yes" |
|---|
| 63 | GETOPT_LIBS="${GETOPT_LIBS} -lgnugetopt"])]) |
|---|
| 64 | if test "$ac_cv_have_getopt_long" != "no"; then |
|---|
| 65 | AC_DEFINE(HAVE_GETOPT_LONG, 1, Define to 1 if you have the `getopt_long' function.) |
|---|
| 66 | fi |
|---|
| 67 | AM_CONDITIONAL(NEED_GETOPT_LONG, test "$ac_cv_have_getopt_long" = "no") |
|---|
| 68 | AC_SUBST(GETOPT_LIBS) |
|---|
| 69 | |
|---|
| 70 | # Optimizations |
|---|
| 71 | CFLAGS="${CFLAGS} -g -O2 -fno-strength-reduce -fomit-frame-pointer" |
|---|
| 72 | # Code qui fait des warnings == code de porc == deux baffes dans ta gueule |
|---|
| 73 | CFLAGS="${CFLAGS} -Wall -Wpointer-arith -Wcast-align -Wcast-qual -Wstrict-prototypes -Wshadow -Waggregate-return -Wmissing-prototypes -Wnested-externs -Wsign-compare" |
|---|
| 74 | |
|---|
| 75 | # Use DevIL? |
|---|
| 76 | #AC_CHECK_HEADERS(IL/il.h, |
|---|
| 77 | # [ac_cv_my_have_il="yes"], |
|---|
| 78 | # [ac_cv_my_have_il="no"]) |
|---|
| 79 | #CPPFLAGS="${save_CPPFLAGS}" |
|---|
| 80 | #AM_CONDITIONAL(USE_IL, test "${ac_cv_my_have_il}" = "yes") |
|---|
| 81 | |
|---|
| 82 | # Use Windows? |
|---|
| 83 | #AC_CHECK_HEADERS(olectl.h, |
|---|
| 84 | # [ac_cv_my_have_ole="yes"], |
|---|
| 85 | # [ac_cv_my_have_ole="no"]) |
|---|
| 86 | #CPPFLAGS="${save_CPPFLAGS}" |
|---|
| 87 | #AM_CONDITIONAL(USE_OLE, test "${ac_cv_my_have_ole}" = "yes") |
|---|
| 88 | |
|---|
| 89 | # Use SDL? |
|---|
| 90 | ac_cv_my_have_sdl="no" |
|---|
| 91 | save_CPPFLAGS="${CPPFLAGS}" |
|---|
| 92 | AC_PATH_PROG(SDL_CONFIG, sdl-config, no) |
|---|
| 93 | if test "${SDL_CONFIG}" != "no"; then |
|---|
| 94 | CPPFLAGS="${CPPFLAGS} `sdl-config --cflags`" |
|---|
| 95 | fi |
|---|
| 96 | AC_CHECK_HEADERS(SDL_image.h, |
|---|
| 97 | [ac_cv_my_have_sdl="yes"], |
|---|
| 98 | [ac_cv_my_have_sdl="no"]) |
|---|
| 99 | CPPFLAGS="${save_CPPFLAGS}" |
|---|
| 100 | if test "${ac_cv_my_have_sdl}" != "no"; then |
|---|
| 101 | AC_DEFINE(USE_SDL, 1, Define to 1 to use SDL_image) |
|---|
| 102 | fi |
|---|
| 103 | AM_CONDITIONAL(USE_SDL, test "${ac_cv_my_have_sdl}" = "yes") |
|---|
| 104 | |
|---|
| 105 | # Use OpenCV? |
|---|
| 106 | ac_cv_my_have_opencv="no" |
|---|
| 107 | OPENCV="no" |
|---|
| 108 | PKG_CHECK_MODULES(OPENCV, opencv, [ac_cv_my_have_opencv="yes"], [:]) |
|---|
| 109 | if test "${ac_cv_my_have_opencv}" != "no"; then |
|---|
| 110 | AC_DEFINE(USE_OPENCV, 1, Define to 1 to use OpenCV) |
|---|
| 111 | fi |
|---|
| 112 | AM_CONDITIONAL(USE_OPENCV, test "${ac_cv_my_have_opencv}" = "yes") |
|---|
| 113 | |
|---|
| 114 | # Use Imlib2? |
|---|
| 115 | ac_cv_my_have_imlib2="no" |
|---|
| 116 | IMLIB2="no" |
|---|
| 117 | PKG_CHECK_MODULES(IMLIB2, imlib2, [ac_cv_my_have_imlib2="yes"], [:]) |
|---|
| 118 | if test "${ac_cv_my_have_imlib2}" != "no"; then |
|---|
| 119 | AC_DEFINE(USE_IMLIB2, 1, Define to 1 to use Imlib2) |
|---|
| 120 | fi |
|---|
| 121 | AM_CONDITIONAL(USE_IMLIB2, test "${ac_cv_my_have_imlib2}" = "yes") |
|---|
| 122 | |
|---|
| 123 | # Use Windows GDI? |
|---|
| 124 | ac_cv_my_have_gdi="no" |
|---|
| 125 | GDI="no" |
|---|
| 126 | AC_CHECK_HEADERS(windows.h, |
|---|
| 127 | [ac_cv_my_have_gdi="yes"], |
|---|
| 128 | [ac_cv_my_have_gdi="no"]) |
|---|
| 129 | if test "${ac_cv_my_have_gdi}" != "no"; then |
|---|
| 130 | AC_DEFINE(USE_GDI, 1, Define to 1 to use GDI) |
|---|
| 131 | fi |
|---|
| 132 | AM_CONDITIONAL(USE_GDI, test "${ac_cv_my_have_gdi}" = "yes") |
|---|
| 133 | |
|---|
| 134 | # Use Cocoa? |
|---|
| 135 | ac_cv_my_have_cocoa="no" |
|---|
| 136 | AC_CHECK_HEADERS(/System/Library/Frameworks/Cocoa.framework/Headers/Cocoa.h, |
|---|
| 137 | [ |
|---|
| 138 | MACOSX_SDK_FRAMEWORKS="-F${MACOSX_SDK}/System/Library/Frameworks" |
|---|
| 139 | CPPFLAGS="${CPPFLAGS} ${ARCH} ${MACOSX_SDK_FRAMEWORKS} -I/Developer//SDKs/MacOSX10.5.sdk/System/Library/Frameworks/QuartzCore.framework/Versions/A/Headers/" |
|---|
| 140 | CFLAGS="${CFLAGS} ${MACOSX_SDK_CFLAGS} -I/Developer//SDKs/MacOSX10.5.sdk/System/Library/Frameworks/QuartzCore.framework/Versions/A/Headers/" |
|---|
| 141 | CXXFLAGS="${CXXFLAGS} ${MACOSX_SDK_CXXFLAGS}" |
|---|
| 142 | OBJCFLAGS="${OBJCFLAGS} ${MACOSX_SDK_CFLAGS}" |
|---|
| 143 | LDFLAGS="${ARCH} ${MACOSX_SDK_LDFLAGS} ${LDFLAGS}" |
|---|
| 144 | AC_DEFINE(USE_COCOA, 1, Define to 1 to activate the Cocoa backend driver) |
|---|
| 145 | # CACA_LIBS="${CACA_LIBS} -Wl,-syslibroot,${MACOSX_SDK},-framework,Cocoa" |
|---|
| 146 | # CACA_DRIVERS="${CACA_DRIVERS} cocoa" |
|---|
| 147 | ac_cv_my_have_cocoa="yes"], |
|---|
| 148 | [ac_cv_my_have_cocoa="no"] |
|---|
| 149 | ) |
|---|
| 150 | AM_CONDITIONAL(USE_COCOA, test "${ac_cv_my_have_cocoa}" = "yes") |
|---|
| 151 | |
|---|
| 152 | |
|---|
| 153 | if test "${ac_cv_my_have_il}" = "no" -a "${ac_cv_my_have_ole}" = "no" -a "${ac_cv_my_have_sdl}" = "no" -a "${ac_cv_my_have_imlib2}" = "no" -a "${ac_cv_my_have_opencv}" = "no" -a "${ac_cv_my_have_cocoa}" = "no"; then |
|---|
| 154 | AC_MSG_ERROR([[cannot find DevIL, OLE, SDL_Image, Imlib2, Cocoa, or OpenCV, please install one of them]]) |
|---|
| 155 | fi |
|---|
| 156 | |
|---|
| 157 | # Build The Pimp? |
|---|
| 158 | AC_PATH_PROG(GMCS, gmcs, no) |
|---|
| 159 | PKG_CHECK_MODULES([GLADE_SHARP_20], [glade-sharp-2.0], [:]) |
|---|
| 160 | PKG_CHECK_MODULES([GLIB_SHARP_20], [glib-sharp-2.0], [:]) |
|---|
| 161 | PKG_CHECK_MODULES([GTK_SHARP_20], [gtk-sharp-2.0], [:]) |
|---|
| 162 | AM_CONDITIONAL(USE_CSHARP, test "${gmcs}" != "no") |
|---|
| 163 | |
|---|
| 164 | |
|---|
| 165 | AC_CONFIG_FILES([ |
|---|
| 166 | Makefile |
|---|
| 167 | pipi/Makefile |
|---|
| 168 | src/Makefile |
|---|
| 169 | genethumb/Makefile |
|---|
| 170 | examples/Makefile |
|---|
| 171 | test/Makefile |
|---|
| 172 | pipi-sharp/Makefile |
|---|
| 173 | ThePimp/Makefile |
|---|
| 174 | win32/Makefile |
|---|
| 175 | ]) |
|---|
| 176 | AC_CONFIG_FILES([ |
|---|
| 177 | pipi/pipi.pc |
|---|
| 178 | pipi-sharp/pipi-sharp.pc |
|---|
| 179 | pipi-sharp/pipi-sharp.dll.config |
|---|
| 180 | ]) |
|---|
| 181 | |
|---|
| 182 | AC_OUTPUT |
|---|
| 183 | |
|---|