aboutsummaryrefslogtreecommitdiff
path: root/modules/configure.in
blob: df88ceecea2f54c0574e069618ffd75f0b4cda01 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
AC_INIT(bennu,1.0.0)

LT_INIT([disable-static])

PKG_PROG_PKG_CONFIG()

AC_CONFIG_MACRO_DIR([m4])

AC_CANONICAL_SYSTEM
AC_ARG_PROGRAM

AC_LIBTOOL_WIN32_DLL
AC_LIBTOOL_DLOPEN
AC_PROG_LIBTOOL

AM_MAINTAINER_MODE

echo "Your machine: ${target_cpu} ${target_os}"

AC_ARG_ENABLE(debug, [  --enable-debug       enable use of Debug     (default: no)], enable_debug=$enableval, enable_debug=no)
AC_ARG_WITH(bennu-prefix,[  --with-bennu-prefix=PFX Prefix where Bennu is installed (optional)], BGD_PATH="$withval", BGD_PATH="`pwd`/../core")

AC_CHECK_TOOL(WINDRES, windres, )
AM_CONDITIONAL(HAVE_WINDRES, test "$WINDRES" != "")

dnl Aqui es donde se chequeara el SO, pero solo hay una opcion xD
case "$target_os" in
    linux-gnueabi)
        COMMON_CFLAGS="-Wall -DTARGET_LINUX"
        COMMON_LDFLAGS="$COMMON_LIBS -lc -ldl"

        COMMON_CFLAGS="$COMMON_CFLAGS $CFLAGS"
        COMMON_LDFLAGS="$COMMON_LDFLAGS $LDFLAGS"
        SDL_MIXER_DEPS="-lSDL -lvorbis -logg -lmad -lvorbisfile -lvorbisidec"
        LM=-lm
        ;;

    linux-gnu*)
        COMMON_CFLAGS="-Wall -DTARGET_LINUX"
        COMMON_LDFLAGS="$COMMON_LIBS -lc -ldl"

        case "$target_cpu" in
            i*86*)
                COMMON_CFLAGS="$COMMON_CFLAGS -m32"
                COMMON_LDFLAGS="$COMMON_LDFLAGS -m32 -L/lib32"
                LM=-lm
                LIBSSL="crypto"
                USE_OPENSSL=yes
                ;;

            arm)
                COMMON_CFLAGS="$COMMON_CFLAGS -DUSE_LIBDES $CFLAGS -I`pwd`/../3rdparty/des-4.04b"
                COMMON_LDFLAGS="$COMMON_LDFLAGS $LDFLAGS -L`pwd`/../3rdparty/des-4.04b -ldes"
                SDL_MIXER_DEPS="-lSDL -liconv -lvorbis -logg -lmad -lvorbisfile -lvorbisidec"
                LM=-lm
                ;;

            mipsel)
                COMMON_CFLAGS="$COMMON_CFLAGS -DUSE_LIBDES $CFLAGS -I`pwd`/../3rdparty/des-4.04b"
                COMMON_LDFLAGS="$COMMON_LDFLAGS $LDFLAGS -L`pwd`/../3rdparty/des-4.04b -ldes"
                SDL_MIXER_DEPS="-lSDL -liconv -lvorbis -logg -lmad -lvorbisfile -lvorbisidec"
                LM=-lm
                ;;

        esac
	    ;;

    mingw32)
	    COMMON_CFLAGS="$COMMON_CFLAGS $CFLAGS -I/usr/local/include -DTARGET_WIN32 -DWIN32 -D_WIN32 -DUSE_LIBDES -I`pwd`/../3rdparty/des-4.04b"
	    COMMON_LDFLAGS="$COMMON_LDFLAGS $LDFLAGS -L`pwd`/../3rdparty/des-4.04b -ldes -L/usr/local/lib -lshlwapi -lkernel32 -Wl,--enable-auto-import"
        LM=-lm
        USE_OPENSSL=no
	    ;;

    mingw32msvc)
	    COMMON_CFLAGS="$COMMON_CFLAGS $CFLAGS -I/usr/i586-mingw32msvc/include -DTARGET_WIN32 -DWIN32 -D_WIN32 -DUSE_LIBDES -I`pwd`/../3rdparty/des-4.04b"
	    COMMON_LDFLAGS="$COMMON_LDFLAGS $LDFLAGS -L`pwd`/../3rdparty/des-4.04b -ldes -L/usr/i586-mingw32msvc/lib -lshlwapi -lkernel32 -Wl,--enable-auto-import"
        LM=-lm
        LIBSSL="crypto"
        USE_OPENSSL=yes
	    ;;

    dragonfly*)
        COMMON_CFLAGS="-I/usr/local/include -Wall -DTARGET_BSD"
	    COMMON_LDFLAGS="-pthread -L/usr/local/lib"
        LM=-lm
        LIBSSL="crypto"
        USE_OPENSSL=yes
	    ;;

    darwin*)
        COMMON_CFLAGS="-I/usr/local/include -Wall -DTARGET_MAC"
        COMMON_LDFLAGS="-L/usr/local/lib"
        LM=-lm
        LIBSSL="crypto"
        USE_OPENSSL=yes
	    ;;

    haiku)
        INCLUDES="-I/usr/local/include"
        COMMON_CFLAGS="-Wall -DTARGET_BEOS"
	    COMMON_LDFLAGS="-L/usr/local/lib"
        LM=
        LIBSSL="crypto"
        USE_OPENSSL=yes
        ;;

esac

AM_INIT_AUTOMAKE(1.6)

dnl Check for compilers
AC_PROG_CC

AC_CHECK_LIB(m,fabs,,AC_MSG_RESULT(math library not found))

if test "x$enable_debug" = "xyes"; then
	CFLAGS+=" -g $COMMON_CFLAGS"
else
	CFLAGS+=" -O2 -finline-functions -fno-strict-aliasing $COMMON_CFLAGS"
fi

if test "x$enable_static" = "xyes"; then
    CFLAGS+=" -D__STATIC__ "
    enable_shared=no
fi

dnl librerias para todos

dnl Check for SDL library

PKG_CHECK_MODULES([SDL], [sdl >= 1.2])
PKG_CHECK_MODULES(ZLIB, [ zlib ])
PKG_CHECK_MODULES([PNG], [libpng >= 1.2])
PKG_CHECK_MODULES([SDL_mixer], [SDL_mixer])

if test "$USE_OPENSSL" = "yes"; then
AC_CHECK_LIB($LIBSSL, DES_ecb_encrypt, [AC_CHECK_HEADER(openssl/des.h,CRYPT_LDFLAGS=-l$LIBSSL,)], [AC_MSG_ERROR($LIBSSL not found!)])
fi

#AC_CHECK_LIB(z, gzsetparams, [AC_CHECK_HEADER(zlib.h,ZLIBS="-lz",)], [AC_MSG_ERROR(zlib not found!)])
#AC_CHECK_LIB(png, png_read_info, [AC_CHECK_HEADER(png.h,PNGLIBS="-lpng",)], AC_MSG_ERROR(PNG library not found!), -lz $LM)
#AC_CHECK_LIB(SDL_mixer, Mix_AllocateChannels, [AC_CHECK_HEADER(SDL_mixer.h,LIBS+="-lSDL_mixer",)], [AC_MSG_ERROR(libSDL_mixer not found!)], $SDL_MIXER_DEPS)

AC_CHECK_LIB(X11, [XQueryTree,XMoveWindow],X11LIBS="-lX11",)

AC_SUBST(COMMON_LDFLAGS)
AC_SUBST(COMMON_CFLAGS)
AC_SUBST(BGD_PATH)
AC_SUBST(ZLIBS)
AC_SUBST(PNGLIBS)
AC_SUBST(DESLIBS)
AC_SUBST(X11LIBS)

AC_OUTPUT([
Makefile
libgrbase/Makefile
libvideo/Makefile
libblit/Makefile
librender/Makefile
libdraw/Makefile
libfont/Makefile
libtext/Makefile
libsdlhandler/Makefile
libwm/Makefile
libkey/Makefile
libmouse/Makefile
libjoy/Makefile
libscroll/Makefile
libbgload/Makefile
mod_scroll/Makefile
mod_mouse/Makefile
mod_map/Makefile
mod_video/Makefile
mod_screen/Makefile
mod_blendop/Makefile
mod_text/Makefile
mod_draw/Makefile
mod_grproc/Makefile
mod_effects/Makefile
mod_key/Makefile
mod_cd/Makefile
mod_dir/Makefile
mod_file/Makefile
mod_crypt/Makefile
mod_joy/Makefile
mod_math/Makefile
mod_mathi/Makefile
mod_mem/Makefile
mod_proc/Makefile
mod_rand/Makefile
mod_regex/Makefile
mod_say/Makefile
mod_sort/Makefile
mod_sound/Makefile
mod_string/Makefile
mod_sys/Makefile
mod_time/Makefile
mod_timers/Makefile
mod_path/Makefile
mod_wm/Makefile
mod_debug/Makefile
mod_flic/Makefile
mod_m7/Makefile
])

echo
echo Bennu Modules $VERSION
echo
echo Debug Mode ....... : $enable_debug
echo Static build ..... : $enable_static
echo
echo configure complete, now type \'make\'.
echo