[2227] | 1 | # $Id$ |
---|
| 2 | |
---|
| 3 | AC_INIT(libpipi, 0.0) |
---|
[2866] | 4 | AC_PREREQ(2.50) |
---|
[2227] | 5 | AC_CONFIG_AUX_DIR(.auto) |
---|
[2866] | 6 | AC_CANONICAL_SYSTEM |
---|
[2227] | 7 | AM_INIT_AUTOMAKE([no-define tar-ustar]) |
---|
[2228] | 8 | dnl AM_MAINTAINER_MODE |
---|
[2227] | 9 | |
---|
| 10 | AM_CONFIG_HEADER(config.h) |
---|
| 11 | |
---|
| 12 | LT_MAJOR="0" |
---|
[2866] | 13 | LT_MINOR="0" |
---|
| 14 | LT_MICRO="0" |
---|
[2227] | 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) |
---|
[2866] | 20 | |
---|
| 21 | AM_PROG_CC_C_O |
---|
| 22 | AC_PROG_CPP |
---|
[2883] | 23 | AC_PROG_OBJC |
---|
| 24 | _AM_DEPENDENCIES([OBJC]) |
---|
| 25 | OBJC="${CC}" |
---|
| 26 | AC_SUBST(OBJC) |
---|
| 27 | AC_SUBST(OBJCFLAGS) |
---|
[2866] | 28 | |
---|
[2227] | 29 | AC_LIBTOOL_WIN32_DLL |
---|
| 30 | AM_PROG_LIBTOOL |
---|
| 31 | AC_LIBTOOL_CXX |
---|
| 32 | |
---|
| 33 | AC_C_CONST |
---|
| 34 | AC_C_INLINE |
---|
| 35 | |
---|
[2839] | 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 | |
---|
[2886] | 46 | AC_MSG_CHECKING(for library suffix) |
---|
[2937] | 47 | LT_SUFFIX="`./libtool -n --tag CC --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`" |
---|
[2886] | 48 | if test "$LT_SUFFIX" = ""; then |
---|
| 49 | LT_SUFFIX=".so.$LT_MAJOR" |
---|
[2894] | 50 | AC_MSG_RESULT([unknown, defaulting to $LT_SUFFIX]) |
---|
[2886] | 51 | else |
---|
| 52 | AC_MSG_RESULT($LT_SUFFIX) |
---|
| 53 | fi |
---|
| 54 | AC_SUBST(LT_SUFFIX) |
---|
| 55 | |
---|
[2258] | 56 | AC_CHECK_HEADERS(stdio.h stdarg.h inttypes.h endian.h stdint.h getopt.h) |
---|
[2227] | 57 | |
---|
[2258] | 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 | |
---|
[2902] | 70 | # How to get the C99 types. See pipi/pipi_types.h.in for details about |
---|
| 71 | # the PIPI_TYPES variable |
---|
| 72 | if test "${ac_cv_my_have_vga}" = "yes"; then |
---|
| 73 | PIPI_TYPES=0 |
---|
| 74 | else |
---|
| 75 | AC_CHECK_HEADERS(stdint.h, |
---|
| 76 | [PIPI_TYPES=1], |
---|
| 77 | [AC_CHECK_HEADERS(inttypes.h, |
---|
| 78 | [PIPI_TYPES=2], |
---|
| 79 | [AC_CHECK_HEADERS(windows.h, |
---|
| 80 | [PIPI_TYPES=3], |
---|
| 81 | [PIPI_TYPES=0])])]) |
---|
| 82 | fi |
---|
| 83 | AC_SUBST(PIPI_TYPES) |
---|
| 84 | |
---|
[2227] | 85 | # Optimizations |
---|
| 86 | CFLAGS="${CFLAGS} -g -O2 -fno-strength-reduce -fomit-frame-pointer" |
---|
| 87 | # Code qui fait des warnings == code de porc == deux baffes dans ta gueule |
---|
| 88 | CFLAGS="${CFLAGS} -Wall -Wpointer-arith -Wcast-align -Wcast-qual -Wstrict-prototypes -Wshadow -Waggregate-return -Wmissing-prototypes -Wnested-externs -Wsign-compare" |
---|
| 89 | |
---|
[3016] | 90 | |
---|
| 91 | AC_CHECK_LIB(m, sin, MATH_LIBS="${MATH_LIBS} -lm") |
---|
| 92 | |
---|
[2228] | 93 | # Use DevIL? |
---|
| 94 | #AC_CHECK_HEADERS(IL/il.h, |
---|
| 95 | # [ac_cv_my_have_il="yes"], |
---|
| 96 | # [ac_cv_my_have_il="no"]) |
---|
| 97 | #CPPFLAGS="${save_CPPFLAGS}" |
---|
| 98 | #AM_CONDITIONAL(USE_IL, test "${ac_cv_my_have_il}" = "yes") |
---|
| 99 | |
---|
| 100 | # Use Windows? |
---|
| 101 | #AC_CHECK_HEADERS(olectl.h, |
---|
| 102 | # [ac_cv_my_have_ole="yes"], |
---|
| 103 | # [ac_cv_my_have_ole="no"]) |
---|
| 104 | #CPPFLAGS="${save_CPPFLAGS}" |
---|
| 105 | #AM_CONDITIONAL(USE_OLE, test "${ac_cv_my_have_ole}" = "yes") |
---|
| 106 | |
---|
| 107 | # Use SDL? |
---|
| 108 | ac_cv_my_have_sdl="no" |
---|
| 109 | save_CPPFLAGS="${CPPFLAGS}" |
---|
| 110 | AC_PATH_PROG(SDL_CONFIG, sdl-config, no) |
---|
| 111 | if test "${SDL_CONFIG}" != "no"; then |
---|
| 112 | CPPFLAGS="${CPPFLAGS} `sdl-config --cflags`" |
---|
| 113 | fi |
---|
| 114 | AC_CHECK_HEADERS(SDL_image.h, |
---|
| 115 | [ac_cv_my_have_sdl="yes"], |
---|
| 116 | [ac_cv_my_have_sdl="no"]) |
---|
| 117 | CPPFLAGS="${save_CPPFLAGS}" |
---|
[2259] | 118 | if test "${ac_cv_my_have_sdl}" != "no"; then |
---|
| 119 | AC_DEFINE(USE_SDL, 1, Define to 1 to use SDL_image) |
---|
| 120 | fi |
---|
[2228] | 121 | AM_CONDITIONAL(USE_SDL, test "${ac_cv_my_have_sdl}" = "yes") |
---|
| 122 | |
---|
| 123 | # Use OpenCV? |
---|
| 124 | ac_cv_my_have_opencv="no" |
---|
[2628] | 125 | OPENCV="no" |
---|
[2803] | 126 | PKG_CHECK_MODULES(OPENCV, opencv, [ac_cv_my_have_opencv="yes"], [:]) |
---|
[2259] | 127 | if test "${ac_cv_my_have_opencv}" != "no"; then |
---|
| 128 | AC_DEFINE(USE_OPENCV, 1, Define to 1 to use OpenCV) |
---|
| 129 | fi |
---|
[2228] | 130 | AM_CONDITIONAL(USE_OPENCV, test "${ac_cv_my_have_opencv}" = "yes") |
---|
| 131 | |
---|
[2227] | 132 | # Use Imlib2? |
---|
[2228] | 133 | ac_cv_my_have_imlib2="no" |
---|
| 134 | IMLIB2="no" |
---|
[2803] | 135 | PKG_CHECK_MODULES(IMLIB2, imlib2, [ac_cv_my_have_imlib2="yes"], [:]) |
---|
[2228] | 136 | if test "${ac_cv_my_have_imlib2}" != "no"; then |
---|
| 137 | AC_DEFINE(USE_IMLIB2, 1, Define to 1 to use Imlib2) |
---|
[2227] | 138 | fi |
---|
[2228] | 139 | AM_CONDITIONAL(USE_IMLIB2, test "${ac_cv_my_have_imlib2}" = "yes") |
---|
[2227] | 140 | |
---|
[2839] | 141 | # Use Windows GDI? |
---|
| 142 | ac_cv_my_have_gdi="no" |
---|
| 143 | GDI="no" |
---|
| 144 | AC_CHECK_HEADERS(windows.h, |
---|
| 145 | [ac_cv_my_have_gdi="yes"], |
---|
| 146 | [ac_cv_my_have_gdi="no"]) |
---|
| 147 | if test "${ac_cv_my_have_gdi}" != "no"; then |
---|
| 148 | AC_DEFINE(USE_GDI, 1, Define to 1 to use GDI) |
---|
| 149 | fi |
---|
| 150 | AM_CONDITIONAL(USE_GDI, test "${ac_cv_my_have_gdi}" = "yes") |
---|
[3071] | 151 | AM_CONDITIONAL(USE_GDIPLUS, test "${ac_cv_my_have_gdi}" = "yes") |
---|
[2839] | 152 | |
---|
[3071] | 153 | # Use Cocoa? |
---|
[2883] | 154 | ac_cv_my_have_cocoa="no" |
---|
| 155 | AC_CHECK_HEADERS(/System/Library/Frameworks/Cocoa.framework/Headers/Cocoa.h, |
---|
| 156 | [ |
---|
| 157 | MACOSX_SDK_FRAMEWORKS="-F${MACOSX_SDK}/System/Library/Frameworks" |
---|
[2897] | 158 | CPPFLAGS="${CPPFLAGS} ${ARCH} ${MACOSX_SDK_FRAMEWORKS} -I/Developer//SDKs/MacOSX10.5.sdk/System/Library/Frameworks/QuartzCore.framework/Versions/A/Headers/" |
---|
| 159 | CFLAGS="${CFLAGS} ${MACOSX_SDK_CFLAGS} -I/Developer//SDKs/MacOSX10.5.sdk/System/Library/Frameworks/QuartzCore.framework/Versions/A/Headers/" |
---|
[2883] | 160 | CXXFLAGS="${CXXFLAGS} ${MACOSX_SDK_CXXFLAGS}" |
---|
| 161 | OBJCFLAGS="${OBJCFLAGS} ${MACOSX_SDK_CFLAGS}" |
---|
| 162 | LDFLAGS="${ARCH} ${MACOSX_SDK_LDFLAGS} ${LDFLAGS}" |
---|
| 163 | AC_DEFINE(USE_COCOA, 1, Define to 1 to activate the Cocoa backend driver) |
---|
| 164 | # CACA_LIBS="${CACA_LIBS} -Wl,-syslibroot,${MACOSX_SDK},-framework,Cocoa" |
---|
| 165 | # CACA_DRIVERS="${CACA_DRIVERS} cocoa" |
---|
| 166 | ac_cv_my_have_cocoa="yes"], |
---|
| 167 | [ac_cv_my_have_cocoa="no"] |
---|
| 168 | ) |
---|
| 169 | AM_CONDITIONAL(USE_COCOA, test "${ac_cv_my_have_cocoa}" = "yes") |
---|
| 170 | |
---|
| 171 | |
---|
| 172 | 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 |
---|
| 173 | AC_MSG_ERROR([[cannot find DevIL, OLE, SDL_Image, Imlib2, Cocoa, or OpenCV, please install one of them]]) |
---|
[2228] | 174 | fi |
---|
| 175 | |
---|
[3016] | 176 | AC_SUBST(MATH_LIBS) |
---|
| 177 | |
---|
[2912] | 178 | # Build pipi-sharp? |
---|
[2869] | 179 | AC_PATH_PROG(GMCS, gmcs, no) |
---|
[3035] | 180 | AC_PATH_PROG(GACUTIL, gacutil, no) |
---|
| 181 | AM_CONDITIONAL(USE_CSHARP, test "${GMCS}" != "no" -a "${GACUTIL}" != "no") |
---|
[2869] | 182 | |
---|
[2912] | 183 | # Build The Pimp? |
---|
| 184 | ac_cv_my_have_gtksharp=yes |
---|
| 185 | PKG_CHECK_MODULES([GLIB_SHARP_20], [glib-sharp-2.0], [:], [ac_cv_my_have_gtksharp=no]) |
---|
| 186 | PKG_CHECK_MODULES([GTK_SHARP_20], [gtk-sharp-2.0], [:], [ac_cv_my_have_gtksharp=no]) |
---|
| 187 | AM_CONDITIONAL(USE_GTKSHARP, test "${ac_cv_my_have_gtksharp}" != no) |
---|
[2883] | 188 | |
---|
[2227] | 189 | AC_CONFIG_FILES([ |
---|
| 190 | Makefile |
---|
| 191 | pipi/Makefile |
---|
[2693] | 192 | src/Makefile |
---|
[2227] | 193 | genethumb/Makefile |
---|
[2262] | 194 | examples/Makefile |
---|
[2621] | 195 | test/Makefile |
---|
[2869] | 196 | pipi-sharp/Makefile |
---|
| 197 | ThePimp/Makefile |
---|
[2899] | 198 | win32/Makefile |
---|
[2227] | 199 | ]) |
---|
| 200 | AC_CONFIG_FILES([ |
---|
[2902] | 201 | pipi/pipi_types.h |
---|
[2227] | 202 | pipi/pipi.pc |
---|
[2869] | 203 | pipi-sharp/pipi-sharp.pc |
---|
| 204 | pipi-sharp/pipi-sharp.dll.config |
---|
[2227] | 205 | ]) |
---|
[3035] | 206 | AC_CONFIG_FILES([ThePimp/pimp], [chmod +x ThePimp/pimp]) |
---|
[2227] | 207 | |
---|
| 208 | AC_OUTPUT |
---|
| 209 | |
---|