OSDN Git Service

a393165f7b10ee436dc20a55895675dfe3036ed6
[hengbandforosx/hengbandosx.git] / configure.ac
1 dnl Process this file with autoconf to produce a configure script.
2 AC_INIT(hengband, 1.6.2)
3
4 AC_CONFIG_HEADERS(src/autoconf.h)
5 AC_CONFIG_SRCDIR(src/main.c)
6 AM_INIT_AUTOMAKE
7
8 AC_ARG_WITH(setgid,
9 [  --with-setgid=NAME      install hengband as group NAME],
10 [case "${withval}" in
11   no) GAMEGROUP="";;
12   yes) AC_MSG_ERROR(missing argument for --with-setgid);;
13   *) GAMEGROUP="$withval";;
14 esac])
15 AC_SUBST(GAMEGROUP)
16 AM_CONDITIONAL(SET_GID, test "$GAMEGROUP" != "")
17
18 AC_LANG_C
19
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/")
23 else
24   MY_EXPAND_DIR(game_libpath, "./lib/")
25   bindir=".."
26 fi
27
28 dnl overwrite the path with an user-specified value
29 AC_ARG_WITH(libpath,
30 [  --with-libpath=path     specify the path to the Hengband lib folder],
31 [game_libpath="$withval"])
32
33 AC_ARG_WITH(varpath,
34 [  --with-varpath=path     specify the path to the Hengband var folder],
35 [game_varpath="$withval"],
36 [game_varpath="$game_libpath"])
37
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)
41
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)
45
46 dnl Checks for programs.
47 AC_PROG_CC
48
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])])
51
52 AC_ARG_ENABLE(xim,
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
61 dnl -fno-strength-reduce prevents a bug in some versions of gcc
62 if test "$GCC" = yes; then
63   CFLAGS="$CFLAGS -fno-strength-reduce"
64 fi
65
66 dnl Checks for libraries.
67 dnl Replace `main' with a function in -lncurses:
68 AC_CHECK_LIB(ncurses, initscr, [AC_DEFINE(USE_GCU, 1, [Allow -mGCU environment]) AC_DEFINE(USE_NCURSES, 1, [Use ncurses]) LIBS="$LIBS -lncurses"])
69 if test "$ac_cv_lib_ncurses_initscr" != yes; then
70   AC_CHECK_LIB(curses, initscr, [AC_DEFINE(USE_GCU, 1, [Allow -mGCU environment]) LIBS="$LIBS -lcurses"])
71   if test "$ac_cv_lib_curses_initscr" != yes; then
72     AC_CHECK_LIB(termcap, tgetent, [AC_DEFINE(USE_CAP, 1, [Allow -mCAP environment]) LIBS="$LIBS -ltermcap"])
73   fi
74 fi
75
76 dnl Checks for header files.
77 AC_PATH_XTRA
78 if test "$have_x" = yes; then
79   LIBS="$LIBS -lX11"
80   AC_DEFINE(USE_X11, 1, [Allow -mX11 environment])
81   AC_DEFINE(USE_TRANSPARENCY, 1, [Use transparency mode])
82   CFLAGS="$X_CFLAGS $CFLAGS"
83   LDFLAGS="$X_LIBS $LDFLAGS"
84   if test "$use_japanese" != no; then
85     if test "$use_fontset" = yes; then
86       AC_DEFINE(USE_FONTSET, 1, [Use FontSet])
87     else
88       AC_DEFINE(_JP, 1, [Use Kanji without FontSet])
89     fi
90     if test "$use_xim" = yes; then
91       AC_DEFINE(USE_XIM, 1, [Use X Imput Method])
92     fi
93     if test "$use_fontset" = yes || test "$use_xim" = yes; then
94       AC_DEFINE(USE_LOCALE, 1, [Support Locale])
95       AC_DEFINE(DEFAULT_LOCALE, "ja_JP.eucJP", Default Japanese Locale)
96       AC_CHECK_LIB(X11, _Xsetlocale, AC_DEFINE(X_LOCALE, 1, [Use XLocale]))
97       AC_CHECK_LIB(xpg4, setlocale, LIBS="$LIBS -lxpg4")
98     fi
99   fi
100 fi
101
102 AC_HEADER_STDC
103 AC_CHECK_HEADERS(fcntl.h strings.h sys/file.h sys/ioctl.h sys/time.h termio.h unistd.h)
104
105 dnl Checks for typedefs, structures, and compiler characteristics.
106 AC_C_CONST
107 AC_TYPE_PID_T
108 AC_TYPE_SIZE_T
109 AC_HEADER_TIME
110 AC_STRUCT_TM
111
112 dnl Checks for library functions.
113 AC_PROG_GCC_TRADITIONAL
114 AC_FUNC_MEMCMP
115 AC_TYPE_SIGNAL
116 AC_FUNC_STRFTIME
117 AC_FUNC_VPRINTF
118 AC_CHECK_FUNCS(gethostname mkdir select socket strstr strtol vasprintf vsnprintf mkstemp usleep)
119
120 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)