Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

12 роки тому
12 роки тому
12 роки тому
12 роки тому
12 роки тому
13 роки тому
13 роки тому
12 роки тому
12 роки тому
11 роки тому
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522
  1. dnl configure script for Lol Engine
  2. AC_INIT(lolengine, 0.0)
  3. AC_PREREQ(2.50)
  4. AC_CONFIG_AUX_DIR(.auto)
  5. AC_CANONICAL_SYSTEM
  6. AM_INIT_AUTOMAKE([subdir-objects no-define tar-ustar silent-rules])
  7. dnl AM_MAINTAINER_MODE
  8. AM_DEFAULT_VERBOSITY=0
  9. dnl Versioning of the separate software we ship
  10. LOLUNIT_VERSION=0.1
  11. AC_SUBST(LOLUNIT_VERSION)
  12. LOLREMEZ_VERSION=0.2
  13. AC_SUBST(LOLREMEZ_VERSION)
  14. AC_CONFIG_HEADER(config.h)
  15. AM_PROG_CC_C_O
  16. AC_PROG_CPP
  17. AC_PROG_CXX
  18. AC_PROG_CXXCPP
  19. AC_PROG_RANLIB
  20. dnl Check that the C++ compiler really works
  21. AC_LANG_PUSH(C++)
  22. AC_MSG_CHECKING(for a fully working C++ compiler)
  23. AC_TRY_LINK([], [],
  24. [AC_MSG_RESULT(yes)],
  25. [AC_MSG_RESULT(no)
  26. AC_MSG_ERROR([[C++ compiler cannot link executables]])])
  27. AC_LANG_POP(C++)
  28. AC_LIBTOOL_WIN32_DLL
  29. AM_PROG_LIBTOOL
  30. AC_LIBTOOL_CXX
  31. AC_C_CONST
  32. AC_C_INLINE
  33. dnl Ensure an error is thrown if pkg-config M4 files are not found.
  34. m4_pattern_allow([^PKG_CONFIG_LIBDIR$])
  35. m4_pattern_forbid([^PKG_CHECK_MODULES$])
  36. m4_pattern_forbid([^PKG_PROG_PKG_CONFIG$])
  37. dnl Same for Lol Engine M4 files.
  38. m4_pattern_forbid([^LOL_])
  39. dnl Do not use PKG_CONFIG_LIBDIR when cross-compiling.
  40. if test "${build}" != "${host}" -a "${PKG_CONFIG_LIBDIR}" = ""; then
  41. export PKG_CONFIG_LIBDIR=/dev/null
  42. fi
  43. dnl AC_PROG_EGREP only exists in autoconf 2.54+, so we use AC_EGREP_CPP right
  44. dnl now otherwise it might be set in an obscure if statement. Same thing for
  45. dnl PKG_PROG_PKG_CONFIG which needs to be called first.
  46. AC_EGREP_CPP(yes, foo)
  47. PKG_PROG_PKG_CONFIG()
  48. dnl Check for a working implementation of sed
  49. AC_PROG_SED
  50. AC_MSG_CHECKING(for a sed that understands \t)
  51. if test "$(echo 'x\x' | "${SED}" 's/.*@<:@^x\t@:>@//')" != x; then
  52. AC_MSG_RESULT(no)
  53. AC_MSG_ERROR([[consider installing GNU sed]])
  54. else
  55. AC_MSG_RESULT(yes)
  56. fi
  57. dnl conditional builds
  58. AC_ARG_ENABLE(debug,
  59. [ --enable-debug build debug versions of the game (default no)])
  60. AC_ARG_ENABLE(release,
  61. [ --enable-release build final release of the game (default no)])
  62. AC_ARG_ENABLE(experimental,
  63. [ --enable-experimental experimental build (default no)])
  64. AC_ARG_ENABLE(doc,
  65. [ --enable-doc build documentation (needs doxygen and LaTeX)])
  66. dnl Common C headers
  67. AC_CHECK_HEADERS(stdio.h stdarg.h inttypes.h endian.h stdint.h getopt.h)
  68. AC_CHECK_HEADERS(fastmath.h pthread.h libutil.h util.h pty.h glob.h unistd.h)
  69. AC_CHECK_HEADERS(execinfo.h)
  70. AC_CHECK_HEADERS(sys/ioctl.h sys/ptrace.h sys/stat.h sys/syscall.h sys/user.h)
  71. AC_CHECK_HEADERS(sys/wait.h sys/time.h)
  72. AC_CHECK_HEADERS(linux/kdev_t.h linux/major.h)
  73. AC_CHECK_HEADERS(security/pam_appl.h security/pam_misc.h)
  74. AC_CHECK_HEADERS(pam/pam_appl.h pam/pam_misc.h)
  75. dnl Common C++ headers
  76. AC_LANG_PUSH(C++)
  77. AC_CHECK_HEADERS(cxxabi.h)
  78. AC_LANG_POP(C++)
  79. dnl Common C functions
  80. AC_CHECK_FUNCS(getenv system tmpfile tmpnam getcwd _getcwd backtrace_symbols)
  81. AC_CHECK_FUNCS(gettimeofday usleep)
  82. if test "${enable_debug}" = "yes"; then
  83. AC_DEFINE(LOL_DEBUG, 1, Define to 1 to activate debug)
  84. OPT_CXXFLAGS="-O"
  85. else
  86. OPT_CXXFLAGS="-O3 -ffast-math -fomit-frame-pointer"
  87. OPT_LDFLAGS="-fno-strength-reduce"
  88. fi
  89. if test "${enable_release}" = "yes"; then
  90. AC_DEFINE(LOL_RELEASE, 1, Define to 1 to activate final release)
  91. REL_CXXFLAGS=""
  92. else
  93. REL_CXXFLAGS="-g"
  94. fi
  95. if test "${enable_experimental}" = "yes"; then
  96. AC_DEFINE(LOL_EXPERIMENTAL, 1, Define to 1 to activate experimental build)
  97. fi
  98. # Build documentation?
  99. DOXYGEN="no"
  100. LATEX="no"
  101. if test "${enable_doc}" != "no"; then
  102. AC_PATH_PROG(DOXYGEN, doxygen, no)
  103. if test "${DOXYGEN}" != "no"; then
  104. # Build LaTeX documentation?
  105. AC_PATH_PROG(LATEX, pdflatex, no)
  106. AC_PATH_PROG(KPSEWHICH, kpsewhich, no)
  107. AC_PATH_PROG(DVIPS, dvips, no)
  108. if test "${DVIPS}" = "no" -o "${KPSEWHICH}" = "no"; then
  109. LATEX="no"
  110. fi
  111. if test "${LATEX}" != "no"; then
  112. AC_MSG_CHECKING(for a4.sty and a4wide.sty)
  113. if "${KPSEWHICH}" a4.sty >/dev/null 2>&1; then
  114. if "${KPSEWHICH}" a4wide.sty >/dev/null 2>&1; then
  115. AC_MSG_RESULT(yes)
  116. else
  117. LATEX="no"
  118. AC_MSG_RESULT(no)
  119. fi
  120. else
  121. LATEX="no"
  122. AC_MSG_RESULT(no)
  123. fi
  124. fi
  125. AC_PATH_PROG(DOT, dot, no)
  126. if test "${DOT}" != "no"; then
  127. USE_DOT="YES"
  128. else
  129. USE_DOT="NO"
  130. fi
  131. fi
  132. fi
  133. dnl XXX: disable LaTeX because we use too much memory
  134. LATEX=no
  135. AM_CONDITIONAL(BUILD_DOCUMENTATION, test "${DOXYGEN}" != "no")
  136. AM_CONDITIONAL(USE_LATEX, test "${LATEX}" != "no")
  137. AM_CONDITIONAL(USE_DOT, test "${DOT}" != "no")
  138. dnl No exceptions
  139. LOL_TRY_CXXFLAGS(-fno-exceptions, [AM_CXXFLAGS="${AM_CXXFLAGS} -fno-exceptions"])
  140. LOL_TRY_CXXFLAGS(-fno-rtti, [AM_CXXFLAGS="${AM_CXXFLAGS} -fno-rtti"])
  141. dnl Optimizations
  142. AM_CXXFLAGS="${AM_CXXFLAGS} ${REL_CXXFLAGS} ${OPT_CXXFLAGS}"
  143. AM_LDFLAGS="${AM_LDFLAGS} ${REL_LDFLAGS} ${OPT_LDFLAGS}"
  144. dnl Debug symbols
  145. LOL_TRY_LDFLAGS(-rdynamic, [AM_LDFLAGS="${AM_LDFLAGS} -rdynamic"])
  146. dnl Code qui fait des warnings == code de porc == deux baffes dans ta gueule
  147. LOL_TRY_CXXFLAGS(-Wall, [AM_CPPFLAGS="${AM_CPPFLAGS} -Wall"])
  148. LOL_TRY_CXXFLAGS(-Wextra, [AM_CPPFLAGS="${AM_CPPFLAGS} -Wextra"])
  149. LOL_TRY_CXXFLAGS(-Wpointer-arith, [AM_CPPFLAGS="${AM_CPPFLAGS} -Wpointer-arith"])
  150. LOL_TRY_CXXFLAGS(-Wcast-align, [AM_CPPFLAGS="${AM_CPPFLAGS} -Wcast-align"])
  151. LOL_TRY_CXXFLAGS(-Wcast-qual, [AM_CPPFLAGS="${AM_CPPFLAGS} -Wcast-qual"])
  152. LOL_TRY_CXXFLAGS(-Wshadow, [AM_CPPFLAGS="${AM_CPPFLAGS} -Wshadow"])
  153. LOL_TRY_CXXFLAGS(-Wsign-compare, [AM_CPPFLAGS="${AM_CPPFLAGS} -Wsign-compare"])
  154. dnl Add these even though they're implicitly set, so that we can safely
  155. dnl remove them from within a Makefile.
  156. LOL_TRY_CXXFLAGS(-Wmaybe-uninitialized, [AM_CPPFLAGS="${AM_CPPFLAGS} -Wmaybe-uninitialized"])
  157. LOL_TRY_CXXFLAGS(-Wnarrowing, [AM_CPPFLAGS="${AM_CPPFLAGS} -Wnarrowing"])
  158. LOL_TRY_CXXFLAGS(-Wunused, [AM_CPPFLAGS="${AM_CPPFLAGS} -Wunused"])
  159. LOL_TRY_CXXFLAGS(-Wstrict-aliasing, [AM_CPPFLAGS="${AM_CPPFLAGS} -Wstrict-aliasing"])
  160. LOL_TRY_CXXFLAGS(-Wparentheses, [AM_CPPFLAGS="${AM_CPPFLAGS} -Wparentheses"])
  161. LOL_TRY_CXXFLAGS(-Wreorder, [AM_CXXFLAGS="${AM_CXXFLAGS} -Wreorder"])
  162. AC_CHECK_LIB(m, sin, MATH_LIBS="${MATH_LIBS} -lm")
  163. AC_CHECK_LIB(pthread, main, LIBS="$LIBS -lpthread")
  164. dnl Unix-specific libutil
  165. AC_CHECK_LIB(util, forkpty,
  166. [UTIL_LIBS="${UTIL_LIBS} -lutil"
  167. dnl Override future forkpty detection
  168. ac_cv_func_forkpty="yes"])
  169. AC_CHECK_FUNCS(forkpty)
  170. dnl GCC-specific symbol demangling
  171. AC_LANG_PUSH(C++)
  172. AC_TRY_LINK(
  173. [#include <cxxabi.h>],
  174. [abi::__cxa_demangle(NULL, 0, 0, NULL);],
  175. [AC_DEFINE(HAVE_CXA_DEMANGLE, 1, Define to 1 if abi::__cxa_demangle is available)])
  176. AC_LANG_POP(C++)
  177. dnl Are we on the PS3?
  178. ac_cv_my_have_ps3="no"
  179. AC_CHECK_LIB(sysmodule_stub, cellSysmoduleLoadModule,
  180. [ac_cv_my_have_ps3="yes"
  181. LOL_LIBS="${LOL_LIBS} -lsysmodule_stub -lsysutil_stub -lresc_stub"
  182. dnl For PSGL
  183. AC_DEFINE(HAVE_GLES_2X, 1, Define to 1 if GLES 2.x is available) # FIXME: hack
  184. GL_LIBS="${GL_LIBS} -lPSGL -lgcm_cmd -lgcm_sys_stub"
  185. dnl This is the old way; we now use CELL_SDK instead of CELLSDK
  186. if test "x${CELLSDK}" != x -a "x${CELL_SDK}" = x; then
  187. CELL_SDK="${CELLSDK}"
  188. fi
  189. if test "x${enable_debug}" = xyes; then
  190. GL_LIBS="${GL_LIBS} -L${CELL_SDK}/target/ppu/lib/PSGL/RSX/debug"
  191. elif test "x${enable_release}" = xyes; then
  192. GL_LIBS="${GL_LIBS} -L${CELL_SDK}/target/ppu/lib/PSGL/RSX/ultra-opt"
  193. else
  194. GL_LIBS="${GL_LIBS} -L${CELL_SDK}/target/ppu/lib/PSGL/RSX/opt"
  195. fi
  196. dnl For the runtime Cg compiler
  197. GL_LIBS="${GL_LIBS} -lcgc -lPSGLcgc"
  198. dnl For the PNG decoder
  199. LOL_LIBS="${LOL_LIBS} -lpngdec_stub"
  200. dnl For the pad library
  201. LOL_LIBS="${LOL_LIBS} -lio_stub -lusbd_stub -lpadfilter"
  202. dnl For the audio library
  203. LOL_LIBS="${LOL_LIBS} -laudio_stub -lspurs_stub -lmstreamSPURSMP3"
  204. dnl For the filesystem support
  205. LOL_LIBS="${LOL_LIBS} -lfs_stub"
  206. dnl Disable this warning, it's too verbose with vector.h
  207. AM_CXXFLAGS="${AM_CXXFLAGS} -Wno-sign-compare"
  208. AC_PATH_PROG(MAKE_FSELF, make_fself, no)
  209. if test "${MAKE_FSELF}" = "no"; then
  210. AC_MSG_ERROR([[Building for PS3 but make_fself not found]])
  211. fi],
  212. [MAKE_FSELF=no])
  213. AM_CONDITIONAL(USE_PS3, test "${ac_cv_my_have_ps3}" != "no")
  214. dnl Are we building using MinGW?
  215. LOL_TRY_CXXFLAGS(-mwindows -mwin32,
  216. [AM_CXXFLAGS="${AM_CXXFLAGS} -mwindows -mwin32"
  217. LOL_LIBS="${LOL_LIBS} -uWinMain -u_WinMain@16"])
  218. dnl Are we building using Emscripten?
  219. ac_cv_my_have_emscripten="no"
  220. AC_CHECK_HEADERS(emscripten.h,
  221. [ac_cv_my_have_emscripten="yes"
  222. dnl XXX: activate this if memory heap is too small
  223. #AM_CXXFLAGS="${AM_CXXFLAGS} -s ALLOW_MEMORY_GROWTH=1"
  224. dnl HACK: until emcc properly adds these to EMSDK_OPTS
  225. CPPFLAGS="${CPPFLAGS} -U__i386__ -U__x86_64__ -U__i386 -U__x86_64 -Ui386 -Ux86_64"
  226. CPPFLAGS="${CPPFLAGS} -U__SSE__ -U__SSE2__ -U__MMX__ -UX87_DOUBLE_ROUNDING"
  227. CPPFLAGS="${CPPFLAGS} -UHAVE_GCC_ASM_FOR_X87 -DEMSCRIPTEN -U__STRICT_ANSI__"
  228. CPPFLAGS="${CPPFLAGS} -U__CYGWIN__"])
  229. AM_CONDITIONAL(USE_EMSCRIPTEN, test "${ac_cv_my_have_emscripten}" != "no")
  230. dnl Are we on the Xbox 360?
  231. dnl Answer: NO! we don't know how to build for it anyway
  232. AM_CONDITIONAL(USE_X360, false)
  233. dnl Are we on an OS X or iOS platform?
  234. LOL_TRY_LDFLAGS(-framework Foundation,
  235. [LOL_LIBS="${LOL_LIBS} -framework Foundation"])
  236. LOL_TRY_LDFLAGS(-framework CoreGraphics,
  237. [LOL_LIBS="${LOL_LIBS} -framework CoreGraphics"])
  238. LOL_TRY_LDFLAGS(-framework CoreData,
  239. [LOL_LIBS="${LOL_LIBS} -framework CoreData"])
  240. LOL_TRY_LDFLAGS(-framework UIKit,
  241. [LOL_LIBS="${LOL_LIBS} -framework UIKit"])
  242. dnl Are we on a Direct3D 9 platform?
  243. #ac_cv_my_have_d3d9="no"
  244. #AC_CHECK_HEADERS(d3d9.h, [ac_cv_my_have_d3d9="yes"])
  245. #if test "${ac_cv_my_have_d3d9}" != "no"; then
  246. # D3D_LIBS="${D3D_LIBS} -ld3d9 -ld3dx9 -lxinput"
  247. # AC_DEFINE(USE_D3D9, 1, Define to 1 to use DirectX 9)
  248. #fi
  249. #AM_CONDITIONAL(USE_D3D9, test "${ac_cv_my_have_d3d9}" != "no")
  250. LOL_CHECK_OPENGL
  251. LOL_CHECK_SDL
  252. dnl Use Flex's FlexLexer.h or ours?
  253. ac_cv_my_have_flexlexer_h="no"
  254. AC_LANG_PUSH(C++)
  255. AC_CHECK_HEADERS(FlexLexer.h,
  256. dnl Ensure that FlexLexer::yleng is of type int, and not size_t like
  257. dnl on recent Apple systems. It would break all our existing code.
  258. [AC_MSG_CHECKING(for FlexLexer.h validity)
  259. AC_COMPILE_IFELSE(
  260. [AC_LANG_PROGRAM([#include <FlexLexer.h>
  261. class Foo : public FlexLexer
  262. {
  263. Foo() { int &test = yyleng; }
  264. };],
  265. [])],
  266. [AC_MSG_RESULT(yes)
  267. ac_cv_my_have_flexlexer_h="yes"],
  268. [AC_MSG_RESULT(no)])])
  269. AC_LANG_POP(C++)
  270. if test "x${ac_cv_my_have_flexlexer_h}" = "xno"; then
  271. LOL_CFLAGS="$LOL_CFLAGS -I\$(top_srcdir)/external/flex-2.5.35/include"
  272. fi
  273. dnl Use NativeClient?
  274. ac_cv_my_have_nacl="no"
  275. AC_LANG_PUSH(C++)
  276. AC_CHECK_HEADERS(ppapi/cpp/instance.h,
  277. [ac_cv_my_have_nacl="yes"
  278. LOL_LIBS="${LOL_LIBS} -lnosys"])
  279. AC_LANG_POP(C++)
  280. AM_CONDITIONAL(USE_NACL, test "${ac_cv_my_have_nacl}" != "no")
  281. dnl Use Android? FIXME: super hacks!
  282. ac_cv_my_have_android="no"
  283. AC_CHECK_LIB(log, __android_log_vprint,
  284. [ac_cv_my_have_android="yes"
  285. LOL_LIBS="${LOL_LIBS} -llog -landroid -module -lEGL -lGLESv2"])
  286. AM_CONDITIONAL(USE_ANDROID, test "${ac_cv_my_have_android}" != "no")
  287. dnl Use EGL?
  288. ac_cv_my_have_egl="no"
  289. PKG_CHECK_MODULES(EGL, egl, [ac_cv_my_have_egl="yes"], [:])
  290. if test "${ac_cv_my_have_egl}" != "no"; then
  291. AC_DEFINE(USE_EGL, 1, Define to 1 to use libegl)
  292. EGL_LIBS="${EGL_LIBS} -lX11"
  293. fi
  294. AC_CHECK_LIB(EGL, main,
  295. [ac_cv_my_have_egl="yes"
  296. AC_DEFINE(USE_EGL, 1, Define to 1 to use libegl)
  297. EGL_LIBS="-lEGL"])
  298. dnl Raspberry Pi is different, check for it with extra libs; also we
  299. dnl look for a different function to bypass autoconf caching
  300. AC_CHECK_LIB(EGL, eglGetDisplay,
  301. [ac_cv_my_have_egl="yes"
  302. AC_DEFINE(USE_EGL, 1, Define to 1 to use libegl)
  303. EGL_LIBS="-lEGL -lvcos -lvchiq_arm -lbcm_host -lGLESv2"],
  304. [:],
  305. [-lvcos -lvchiq_arm -lbcm_host -lGLESv2])
  306. AM_CONDITIONAL(USE_EGL, test "${ac_cv_my_have_egl}" != "no")
  307. dnl Use libpng? (replacement for SDL_image)
  308. ac_cv_my_have_libpng="no"
  309. PKG_CHECK_MODULES(LIBPNG, libpng, [ac_cv_my_have_libpng="yes"], [:])
  310. if test "${ac_cv_my_have_libpng}" != "no"; then
  311. AC_DEFINE(USE_LIBPNG, 1, Define to 1 to use libpng)
  312. fi
  313. AM_CONDITIONAL(USE_LIBPNG, test "${ac_cv_my_have_libpng}" != "no")
  314. dnl Use Windows GDI+?
  315. ac_cv_my_have_gdiplus="no"
  316. AC_LANG_PUSH(C++)
  317. AC_CHECK_HEADERS(gdiplus.h,
  318. [ac_cv_my_have_gdiplus="yes"
  319. LOL_LIBS="${LOL_LIBS} -lgdiplus"],
  320. [ac_cv_my_have_gdiplus="no"],
  321. [#include <algorithm>
  322. using std::min;
  323. using std::max;
  324. #include <windows.h>])
  325. AC_LANG_POP(C++)
  326. if test "${ac_cv_my_have_gdiplus}" != "no"; then
  327. AC_DEFINE(USE_GDIPLUS, 1, Define to 1 to use GDI+)
  328. fi
  329. AM_CONDITIONAL(USE_GDIPLUS, test "${ac_cv_my_have_gdiplus}" = "yes")
  330. dnl Use libcaca? (required for font generation)
  331. ac_cv_my_have_caca="no"
  332. PKG_CHECK_MODULES(CACA, caca >= 0.99.beta17, [ac_cv_my_have_caca="yes"], [:])
  333. if test "${ac_cv_my_have_caca}" != "no"; then
  334. AC_DEFINE(USE_CACA, 1, Define to 1 to use libcaca)
  335. fi
  336. AM_CONDITIONAL(USE_CACA, test "${ac_cv_my_have_caca}" != "no")
  337. dnl Use libpipi? (required for video recording)
  338. ac_cv_my_have_pipi="no"
  339. PKG_CHECK_MODULES(PIPI, pipi, [ac_cv_my_have_pipi="yes"], [:])
  340. if test "${ac_cv_my_have_pipi}" != "no"; then
  341. AC_DEFINE(USE_PIPI, 1, Define to 1 to use libpipi)
  342. LOL_CFLAGS="${LOL_CFLAGS} ${PIPI_CFLAGS}"
  343. LOL_LIBS="${LOL_LIBS} ${PIPI_LIBS}"
  344. fi
  345. AM_CONDITIONAL(USE_PIPI, test "${ac_cv_my_have_pipi}" != "no")
  346. dnl Use GTK+? (required for the deushax editor)
  347. ac_cv_my_have_gtkgl="no"
  348. PKG_CHECK_MODULES(GTK, gtk+-2.0, [ac_cv_my_have_gtkgl="yes"], [:])
  349. PKG_CHECK_MODULES(GTKGL, gtkgl-2.0, [:], [ac_cv_my_have_gtkgl="no"])
  350. if test "${ac_cv_my_have_gtkgl}" != "no"; then
  351. AC_DEFINE(USE_GTKGL, 1, Define to 1 to use GtkGl)
  352. fi
  353. AM_CONDITIONAL(USE_GTKGL, test "${ac_cv_my_have_gtkgl}" != "no")
  354. dnl Can we build neercs?
  355. AM_CONDITIONAL(BUILD_NEERCS, test "${ac_cv_my_have_caca}" != "no")
  356. dnl Extra libraries we may need
  357. AC_SUBST(MATH_LIBS)
  358. AC_SUBST(PAM_LIBS)
  359. AC_SUBST(UTIL_LIBS)
  360. dnl How to use the Lol Engine outside this tree
  361. LOL_CFLAGS="$LOL_CFLAGS $SDL_CFLAGS $GL_CFLAGS $EGL_CFLAGS $LIBPNG_CFLAGS"
  362. LOL_LIBS="$LOL_LIBS $SDL_LIBS $GL_LIBS $EGL_LIBS $LIBPNG_LIBS $D3D_LIBS"
  363. LOL_DEPS="${LOL_DEPS} \$(top_builddir)/src/liblolcore.a"
  364. LOL_DEPS="${LOL_DEPS} \$(top_builddir)/src/bullet/liblolbullet.a"
  365. LOL_DEPS="${LOL_DEPS} \$(top_builddir)/src/lua/liblollua.a"
  366. dnl How to use the Lol Engine inside this tree
  367. AM_CPPFLAGS="${AM_CPPFLAGS} -I\$(top_srcdir)/src"
  368. AM_CPPFLAGS="${AM_CPPFLAGS} -DLOL_CONFIG_SOURCESUBDIR=\\\"\$(subdir)\\\""
  369. AM_CPPFLAGS="${AM_CPPFLAGS} ${LOL_CFLAGS}"
  370. AM_LDFLAGS="${AM_LDFLAGS} ${LOL_DEPS}"
  371. AM_LDFLAGS="${AM_LDFLAGS} ${LOL_LIBS}"
  372. dnl Extra flags
  373. AC_SUBST(LOL_CFLAGS)
  374. AC_SUBST(LOL_LIBS)
  375. AC_SUBST(LOL_DEPS)
  376. AC_SUBST(AM_CFLAGS)
  377. AC_SUBST(AM_CPPFLAGS)
  378. AC_SUBST(AM_CXXFLAGS)
  379. AC_SUBST(AM_LDFLAGS)
  380. AC_SUBST(USE_DOT)
  381. AC_CONFIG_FILES(
  382. [Makefile
  383. src/Makefile
  384. src/bullet/Makefile
  385. src/lua/Makefile
  386. src/data/Makefile
  387. src/data/font/Makefile
  388. tutorial/Makefile
  389. test/Makefile
  390. test/math/Makefile
  391. test/sandbox/Makefile
  392. test/xolotl/Makefile
  393. build/Makefile
  394. binaries/Makefile
  395. people/Makefile
  396. games/Makefile
  397. tools/Makefile
  398. tools/vimlol/Makefile
  399. tools/vslol/Makefile
  400. doc/Makefile
  401. doc/doxygen.cfg
  402. ])
  403. AC_CONFIG_FILES(
  404. [games/monsterz/Makefile
  405. ])
  406. AC_CONFIG_FILES(
  407. [games/deushax/Makefile
  408. games/deushax/art/Makefile
  409. games/deushax/art/test/Makefile
  410. games/deushax/gfx/Makefile
  411. games/deushax/maps/Makefile
  412. ])
  413. AC_CONFIG_FILES(
  414. [games/mrpigeon/Makefile
  415. ])
  416. AC_CONFIG_FILES(
  417. [games/orbital/Makefile
  418. ])
  419. AC_CONFIG_FILES(
  420. [tools/neercs/Makefile
  421. ])
  422. AC_CONFIG_FILES(
  423. [people/jnat/Makefile
  424. people/jnat/TestProject/Makefile
  425. people/peeweek/Makefile
  426. people/peeweek/private/Makefile
  427. people/touky/Makefile
  428. people/touky/private/Makefile
  429. people/touky/private/touky_demo/Makefile
  430. people/touky/private/tactics/Makefile
  431. people/touky/private/the_unfortunate_voronoid/Makefile
  432. people/jylam/Makefile
  433. people/jylam/private/Makefile
  434. people/jylam/private/chat/Makefile
  435. people/jylam/private/lander/Makefile
  436. people/sam/Makefile
  437. people/sam/private/Makefile
  438. people/sam/private/kanagawa/Makefile
  439. people/sam/private/lol.js/Makefile
  440. people/sam/private/sapp/Makefile
  441. ])
  442. AC_OUTPUT