1 dnl Process this file with autoconf to produce a configure script.
2 AC_INIT(hengband, 2.2.1.7)
4 AC_CONFIG_HEADERS(src/autoconf.h)
5 AC_CONFIG_SRCDIR(src/main.c)
9 [ --with-setgid=NAME install hengband as group NAME],
12 yes) AC_MSG_ERROR(missing argument for --with-setgid);;
13 *) GAMEGROUP="$withval";;
16 AM_CONDITIONAL(SET_GID, test "$GAMEGROUP" != "")
20 dnl generate the installation path for the ./lib/ folder
21 if test "$GAMEGROUP" != ""; then
22 MY_EXPAND_DIR(game_libpath, "$datadir/games/$PACKAGE/lib/")
24 MY_EXPAND_DIR(game_libpath, "./lib/")
28 dnl overwrite the path with an user-specified value
30 [ --with-libpath=path specify the path to the Hengband lib folder],
31 [game_libpath="$withval"])
34 [ --with-varpath=path specify the path to the Hengband var folder],
35 [game_varpath="$withval"],
36 [game_varpath="$game_libpath"])
38 AC_DEFINE_UNQUOTED(DEFAULT_LIB_PATH, "$game_libpath", [Path to the Hengband lib folder])
39 DEFAULT_LIB_PATH="$game_libpath"
40 AC_SUBST(DEFAULT_LIB_PATH)
42 AC_DEFINE_UNQUOTED(DEFAULT_VAR_PATH, "$game_varpath", [Path to the Hengband var folder])
43 DEFAULT_VAR_PATH="$game_varpath"
44 AC_SUBST(DEFAULT_VAR_PATH)
46 dnl Checks for programs.
49 AC_ARG_ENABLE(japanese,
50 [ --disable-japanese build english version], use_japanese=no, [AC_DEFINE(JP, 1, [Enable Japanese]) AC_DEFINE(EUC, 1, [Use Extended Unix Code])])
53 [ --disable-xim disable xim support], use_xim=no, use_xim=yes)
54 AC_ARG_ENABLE(fontset,
55 [ --disable-fontset disable fontset support], use_fontset=no, use_fontset=yes)
56 AC_ARG_ENABLE(worldscore,
57 [ --disable-worldscore disable worldscore support], ,AC_DEFINE(WORLD_SCORE, 1, [Allow the game to send scores to the score server]))
58 AC_ARG_ENABLE(chuukei,
59 [ --enable-chuukei enable internet chuukei support], AC_DEFINE(CHUUKEI, 1, [Chuukei mode]))
60 AC_ARG_ENABLE([cocoa],
61 [ --enable-cocoa enable a Cocoa user interface (OS X only)],
62 AC_DEFINE([MACH_O_COCOA], [1], [Use a Cocoa interface (OS X only)]), [])
63 AM_CONDITIONAL([COCOA], [test x$enable_cocoa = xyes])
64 dnl Since AC_PROG_OBJC has the side effect of setting this conditional,
65 dnl guarantee that is is always set, regardless of what happens in the if
67 AM_CONDITIONAL([am__fastdepOBJC], false)
68 if test x"$enable_cocoa" = xyes ; then
69 dnl Use AC_LANG_PUSH and AC_LANG_POP to try to get back to the state that
70 dnl AC_LANG_C set in case there are side effects.
71 AC_LANG_PUSH([Objective C])
73 AC_LANG_POP([Objective C])
74 AC_DEFINE(SAFE_DIRECTORY, 1, [Mark var directory with version string])
75 AC_DEFINE(VERSION_STRING, "2.2.1", [Version string to use for var directory])
78 dnl Checks for libraries.
79 dnl Replace `main' with a function in -lncurses:
80 if test x"$enable_cocoa" != xyes ; then
81 AC_CHECK_LIB(ncursesw, initscr, [AC_DEFINE(USE_GCU, 1, [Allow -mGCU environment]) AC_DEFINE(USE_NCURSES, 1, [Use ncurses]) LIBS="$LIBS -lncursesw"])
82 if test "$ac_cv_lib_ncursesw_initscr" != yes; then
83 AC_CHECK_LIB(ncurses, initscr, [AC_DEFINE(USE_GCU, 1, [Allow -mGCU environment]) AC_DEFINE(USE_NCURSES, 1, [Use ncurses]) LIBS="$LIBS -lncurses"])
84 if test "$ac_cv_lib_ncurses_initscr" != yes; then
85 AC_CHECK_LIB(curses, initscr, [AC_DEFINE(USE_GCU, 1, [Allow -mGCU environment]) LIBS="$LIBS -lcurses"])
86 if test "$ac_cv_lib_curses_initscr" != yes; then
87 AC_CHECK_LIB(termcap, tgetent, [AC_DEFINE(USE_CAP, 1, [Allow -mCAP environment]) LIBS="$LIBS -ltermcap"])
93 AC_CHECK_LIB(iconv, iconv_open)
95 AC_CHECK_FILE(/dev/urandom, AC_DEFINE(RNG_DEVICE, "/dev/urandom", [Random Number Generation device file]))
97 dnl Checks for header files.
98 dnl AC_PATH_XTRA has side effects on CPP which are beneficial on Mac OS X.
99 dnl Removing it or conditionally executing it will likely lead to warnings
100 dnl on that platform about the preprocessor disagreeing with the compiler on
101 dnl the tests in AC_CHECK_HEADERS.
103 if test "$have_x" = yes && test x"$enable_cocoa" != xyes ; then
105 AC_DEFINE(USE_X11, 1, [Allow -mX11 environment])
106 CFLAGS="$X_CFLAGS $CFLAGS"
107 LDFLAGS="$X_LIBS $LDFLAGS"
109 if test "$use_fontset" = yes; then
110 AC_DEFINE(USE_FONTSET, 1, [Use FontSet])
112 if test "$use_japanese" != no; then
113 AC_DEFINE(USE_JP_FONTSTRUCT, 1, [Use Kanji without FontSet])
117 if test "$use_xim" = yes; then
118 AC_DEFINE(USE_XIM, 1, [Use X Imput Method])
121 if test "$use_fontset" = yes || test "$use_xim" = yes; then
122 AC_DEFINE(USE_LOCALE, 1, [Support Locale])
123 if test "$use_japanese" != no; then
124 AC_DEFINE(DEFAULT_LOCALE, "ja_JP.eucJP", Default Japanese Locale)
126 AC_CHECK_LIB(X11, _Xsetlocale, AC_DEFINE(X_LOCALE, 1, [Use XLocale]))
127 AC_CHECK_LIB(xpg4, setlocale, LIBS="$LIBS -lxpg4")
131 if test "$use_japanese" != no; then
132 AC_CHECK_PROG(NKF, nkf, yes)
133 if test x"$NKF" != x"yes"; then
134 AC_MSG_ERROR([nkf is not found. Please install nkf.])
138 AC_CHECK_HEADERS(fcntl.h sys/file.h sys/ioctl.h sys/time.h termio.h unistd.h stdint.h)
140 dnl Checks for typedefs, structures, and compiler characteristics.
146 dnl Checks for library functions.
147 AC_PROG_GCC_TRADITIONAL
151 AC_CHECK_FUNCS(gethostname mkdir select socket strtol vsnprintf mkstemp usleep)
153 AC_CONFIG_FILES(Makefile src/Makefile lib/Makefile lib/apex/Makefile lib/bone/Makefile lib/data/Makefile lib/edit/Makefile lib/file/Makefile lib/help/Makefile lib/info/Makefile lib/pref/Makefile lib/save/Makefile lib/script/Makefile lib/user/Makefile lib/xtra/Makefile lib/xtra/font/Makefile lib/xtra/graf/Makefile lib/xtra/music/Makefile lib/xtra/sound/Makefile)