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])
76 dnl Checks for libraries.
77 dnl Replace `main' with a function in -lncurses:
78 if test x"$enable_cocoa" != xyes ; then
79 AC_CHECK_LIB(ncursesw, initscr, [AC_DEFINE(USE_GCU, 1, [Allow -mGCU environment]) AC_DEFINE(USE_NCURSES, 1, [Use ncurses]) LIBS="$LIBS -lncursesw"])
80 if test "$ac_cv_lib_ncursesw_initscr" != yes; then
81 AC_CHECK_LIB(ncurses, initscr, [AC_DEFINE(USE_GCU, 1, [Allow -mGCU environment]) AC_DEFINE(USE_NCURSES, 1, [Use ncurses]) LIBS="$LIBS -lncurses"])
82 if test "$ac_cv_lib_ncurses_initscr" != yes; then
83 AC_CHECK_LIB(curses, initscr, [AC_DEFINE(USE_GCU, 1, [Allow -mGCU environment]) LIBS="$LIBS -lcurses"])
84 if test "$ac_cv_lib_curses_initscr" != yes; then
85 AC_CHECK_LIB(termcap, tgetent, [AC_DEFINE(USE_CAP, 1, [Allow -mCAP environment]) LIBS="$LIBS -ltermcap"])
91 AC_CHECK_LIB(iconv, iconv_open)
93 AC_CHECK_FILE(/dev/urandom, AC_DEFINE(RNG_DEVICE, "/dev/urandom", [Random Number Generation device file]))
95 dnl Checks for header files.
96 dnl AC_PATH_XTRA has side effects on CPP which are beneficial on Mac OS X.
97 dnl Removing it or conditionally executing it will likely lead to warnings
98 dnl on that platform about the preprocessor disagreeing with the compiler on
99 dnl the tests in AC_CHECK_HEADERS.
101 if test "$have_x" = yes && test x"$enable_cocoa" != xyes ; then
103 AC_DEFINE(USE_X11, 1, [Allow -mX11 environment])
104 CFLAGS="$X_CFLAGS $CFLAGS"
105 LDFLAGS="$X_LIBS $LDFLAGS"
107 if test "$use_fontset" = yes; then
108 AC_DEFINE(USE_FONTSET, 1, [Use FontSet])
110 if test "$use_japanese" != no; then
111 AC_DEFINE(USE_JP_FONTSTRUCT, 1, [Use Kanji without FontSet])
115 if test "$use_xim" = yes; then
116 AC_DEFINE(USE_XIM, 1, [Use X Imput Method])
119 if test "$use_fontset" = yes || test "$use_xim" = yes; then
120 AC_DEFINE(USE_LOCALE, 1, [Support Locale])
121 if test "$use_japanese" != no; then
122 AC_DEFINE(DEFAULT_LOCALE, "ja_JP.eucJP", Default Japanese Locale)
124 AC_CHECK_LIB(X11, _Xsetlocale, AC_DEFINE(X_LOCALE, 1, [Use XLocale]))
125 AC_CHECK_LIB(xpg4, setlocale, LIBS="$LIBS -lxpg4")
129 if test "$use_japanese" != no; then
130 AC_CHECK_PROG(NKF, nkf, yes)
131 if test x"$NKF" != x"yes"; then
132 AC_MSG_ERROR([nkf is not found. Please install nkf.])
137 AC_CHECK_HEADERS(fcntl.h strings.h sys/file.h sys/ioctl.h sys/time.h termio.h unistd.h stdint.h)
139 dnl Checks for typedefs, structures, and compiler characteristics.
146 dnl Checks for library functions.
147 AC_PROG_GCC_TRADITIONAL
152 AC_CHECK_FUNCS(gethostname mkdir select socket strtol vsnprintf mkstemp usleep)
154 AC_OUTPUT(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)