ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/cebix/BasiliskII/src/Windows/configure.ac
Revision: 1.4
Committed: 2005-11-21T22:13:56Z (18 years, 7 months ago) by gbeauche
Branch: MAIN
CVS Tags: nigel-build-17
Changes since 1.3: +20 -0 lines
Log Message:
add support for instruction skipping on windows too

File Contents

# Content
1 dnl Process this file with autoconf to produce a configure script.
2 dnl Written in 2002 by Christian Bauer et al.
3
4 AC_INIT([Basilisk II], 1.0, [Christian.Bauer@uni-mainz.de], BasiliskII)
5 AC_CONFIG_SRCDIR(main_windows.cpp)
6 AC_CONFIG_AUX_DIR(../Unix)
7 AC_PREREQ(2.52)
8 AC_CONFIG_HEADER(config.h)
9
10 dnl Aliases for PACKAGE and VERSION macros.
11 AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE_NAME", [Define this program name.])
12 AC_DEFINE_UNQUOTED(VERSION, "$PACKAGE_VERSION", [Define this program version.])
13
14 dnl JIT compiler options.
15 AC_ARG_ENABLE(jit-compiler, [ --enable-jit-compiler enable JIT compiler [default=yes]], [WANT_JIT=$enableval], [WANT_JIT=yes])
16 AC_ARG_ENABLE(jit-debug, [ --enable-jit-debug activate native code disassemblers [default=no]], [WANT_JIT_DEBUG=$enableval], [WANT_JIT_DEBUG=no])
17
18 dnl FPU emulation core.
19 AC_ARG_ENABLE(fpe,
20 [ --enable-fpe=FPE specify which fpu emulator to use [default=auto]],
21 [ case "$enableval" in
22 dnl default is always ieee, if architecture has this fp format
23 auto) FPE_CORE_TEST_ORDER="ieee uae";;
24 ieee) FPE_CORE_TEST_ORDER="ieee";;
25 uae) FPE_CORE_TEST_ORDER="uae";;
26 x86) FPE_CORE_TEST_ORDER="x86";;
27 *) AC_MSG_ERROR([--enable-fpe takes only one of the following values: auto, x86, ieee, uae]);;
28 esac
29 ],
30 [ FPE_CORE_TEST_ORDER="ieee uae"
31 ])
32
33 dnl External packages.
34 AC_ARG_WITH(gtk, [ --with-gtk use GTK user interface [default=yes]], [WANT_GTK=$withval], [WANT_GTK=yes])
35
36 dnl Addressing modes.
37 AC_ARG_ENABLE(addressing,
38 [ --enable-addressing=AM specify the addressing mode to use [default=fastest]],
39 [ case "$enableval" in
40 direct) ADDRESSING_TEST_ORDER="direct";;
41 banks) ADDRESSING_TEST_ORDER="banks";;
42 fastest)ADDRESSING_TEST_ORDER="direct banks";;
43 *) AC_MSG_ERROR([--enable-addressing takes only one of the following values: fastest, direct, banks]);;
44 esac
45 ],
46 [ ADDRESSING_TEST_ORDER="direct banks"
47 ])
48
49 dnl Canonical system information.
50 AC_CANONICAL_HOST
51 AC_CANONICAL_TARGET
52
53 dnl Target CPU type.
54 HAVE_I386=no
55 HAVE_POWERPC=no
56 HAVE_X86_64=no
57 case "$target_cpu" in
58 i386* | i486* | i586* | i686* | i786* ) HAVE_I386=yes;;
59 powerpc* ) HAVE_POWERPC=yes;;
60 x86_64* ) HAVE_X86_64=yes;;
61 esac
62
63 dnl Checks for programs.
64 AC_PROG_CC
65 AC_PROG_CC_C_O
66 AC_PROG_CPP
67 AC_PROG_CXX
68 AC_PROG_MAKE_SET
69 AC_PROG_EGREP
70 AC_PROG_LN_S
71 AC_CHECK_TOOL(WINDRES, windres)
72
73 dnl We use GTK+ if possible.
74 if [[ "x$WANT_GTK" = "xyes" ]]; then
75 AM_PATH_GTK_2_0(1.3.15, [], [
76 AC_MSG_WARN([Could not find GTK+ 2.0, disabling user interface.])
77 WANT_GTK=no
78 ])
79 fi
80 AC_SUBST(WANT_GTK)
81
82 dnl We use 64-bit file size support if possible.
83 AC_SYS_LARGEFILE
84
85 dnl Checks for header files.
86 AC_HEADER_STDC
87
88 dnl Checks for typedefs, structures, and compiler characteristics.
89 AC_C_BIGENDIAN
90 AC_C_CONST
91 AC_C_INLINE
92 AC_CHECK_SIZEOF(short, 2)
93 AC_CHECK_SIZEOF(int, 4)
94 AC_CHECK_SIZEOF(long, 4)
95 AC_CHECK_SIZEOF(long long, 8)
96 AC_CHECK_SIZEOF(float, 4)
97 AC_CHECK_SIZEOF(double, 8)
98 AC_CHECK_SIZEOF(long double, 12)
99 AC_CHECK_SIZEOF(void *, 4)
100 AC_TYPE_OFF_T
101 AC_CHECK_TYPES(loff_t)
102 AC_CHECK_TYPES(caddr_t)
103 AC_TYPE_SIZE_T
104
105 dnl Define a macro that translates a yesno-variable into a C macro definition
106 dnl to be put into the config.h file
107 dnl $1 -- the macro to define
108 dnl $2 -- the value to translate
109 dnl $3 -- template name
110 AC_DEFUN([AC_TRANSLATE_DEFINE], [
111 if [[ "x$2" = "xyes" -o "x$2" = "xguessing yes" ]]; then
112 AC_DEFINE($1, 1, $3)
113 fi
114 ])
115
116 dnl Check that VirtualAlloc(), VirtualProtect() work
117 AC_CACHE_CHECK([whether VirtualProtect works],
118 ac_cv_VirtualProtect_works, [
119 AC_LANG_SAVE
120 AC_LANG_CPLUSPLUS
121 ac_cv_VirtualProtect_works=yes
122 dnl First the tests that should segfault
123 for test_def in NONE_READ NONE_WRITE READ_WRITE; do
124 AC_TRY_RUN([
125 #define HAVE_WIN32_VM 1
126 #define CONFIGURE_TEST_VM_MAP
127 #define TEST_VM_PROT_$test_def
128 #include "../Unix/vm_alloc.cpp"
129 ], ac_cv_VirtualProtect_works=no, rm -f core,
130 dnl When cross-compiling, assume it works
131 ac_cv_VirtualProtect_works="yes"
132 )
133 done
134 AC_TRY_RUN([
135 #define HAVE_WIN32_VM 1
136 #define CONFIGURE_TEST_VM_MAP
137 #define TEST_VM_PROT_RDWR_WRITE
138 #include "../Unix/vm_alloc.cpp"
139 ], , ac_cv_VirtualProtect_works=no,
140 dnl When cross-compiling, assume it works
141 ac_cv_VirtualProtect_works="yes"
142 )
143 AC_LANG_RESTORE
144 ]
145 )
146 if [[ "x$ac_cv_VirtualProtect_works" = "xyes" ]]; then
147 AC_DEFINE(HAVE_WIN32_VM, 1, [Define if your system has a working Win32-based memory allocator.])
148 else
149 AC_MSG_ERROR([Sorry, Windows VM functions don't work as expected on your system.])
150 fi
151
152 dnl Check if Windows exceptions are supported.
153 AC_CACHE_CHECK([whether your system supports Windows exceptions],
154 ac_cv_have_win32_exceptions, [
155 AC_LANG_SAVE
156 AC_LANG_CPLUSPLUS
157 AC_TRY_RUN([
158 #define HAVE_WIN32_EXCEPTIONS 1
159 #define CONFIGURE_TEST_SIGSEGV_RECOVERY
160 #include "../Unix/vm_alloc.cpp"
161 #include "../Unix/sigsegv.cpp"
162 ],
163 ac_cv_have_win32_exceptions=yes,
164 ac_cv_have_win32_exceptions=no,
165 dnl When cross-compiling, assume it works
166 ac_cv_have_win32_exceptions="yes"
167 )
168 AC_LANG_RESTORE
169 ]
170 )
171 if [[ "x$ac_cv_have_win32_exceptions" = "xyes" ]]; then
172 AC_DEFINE(HAVE_WIN32_EXCEPTIONS, 1, [Define if your system supports Windows exceptions.])
173 else
174 AC_MSG_ERROR([Sorry, Windows exceptions don't work as expected on your system.])
175 fi
176
177 dnl Check if we can ignore the fault (instruction skipping in SIGSEGV handler)
178 AC_CACHE_CHECK([whether we can skip instruction in SIGSEGV handler],
179 ac_cv_have_skip_instruction, [
180 AC_LANG_SAVE
181 AC_LANG_CPLUSPLUS
182 AC_TRY_RUN([
183 #define HAVE_SIGSEGV_SKIP_INSTRUCTION 1
184 #define CONFIGURE_TEST_SIGSEGV_RECOVERY
185 #include "../Unix/vm_alloc.cpp"
186 #include "../Unix/sigsegv.cpp"
187 ], ac_cv_have_skip_instruction=yes, ac_cv_have_skip_instruction=no,
188 dnl When cross-compiling, do not assume anything.
189 ac_cv_have_skip_instruction=no
190 )
191 AC_LANG_RESTORE
192 ]
193 )
194 AC_TRANSLATE_DEFINE(HAVE_SIGSEGV_SKIP_INSTRUCTION, "$ac_cv_have_skip_instruction",
195 [Define if we can ignore the fault (instruction skipping in SIGSEGV handler).])
196
197 dnl We really want VOSF (Video on SEGV Signals) screen updates acceleration
198 AC_DEFINE(ENABLE_VOSF, 1, [Define if using video enabled on SEGV signals.])
199
200 dnl Determine the addressing mode to use
201 ADDRESSING_MODE=""
202 AC_MSG_CHECKING([for the addressing mode to use])
203 for am in $ADDRESSING_TEST_ORDER; do
204 case $am in
205 direct)
206 dnl Direct addressing mode (constant offset)
207 ADDRESSING_MODE="direct"
208 DEFINES="$DEFINES -DDIRECT_ADDRESSING"
209 break
210 ;;
211 banks)
212 dnl Default addressing mode
213 ADDRESSING_MODE="memory banks"
214 break
215 ;;
216 *)
217 AC_MSG_ERROR([Internal configure.ac script error for $am addressing mode])
218 esac
219 done
220 AC_MSG_RESULT($ADDRESSING_MODE)
221 if [[ "x$ADDRESSING_MODE" = "x" ]]; then
222 AC_MSG_WARN([Sorry, no suitable addressing mode in $ADDRESSING_TEST_ORDER])
223 ADDRESSING_MODE="memory banks"
224 fi
225
226 dnl Banked Memory Addressing mode is not supported by the JIT compiler
227 if [[ "x$WANT_JIT" = "xyes" -a "x$ADDRESSING_MODE" = "xmemory banks" ]]; then
228 AC_MSG_ERROR([Sorry, the JIT Compiler requires Direct Addressing, at least])
229 fi
230
231 dnl Check for GAS.
232 HAVE_GAS=no
233 AC_MSG_CHECKING(for GAS .p2align feature)
234 cat >conftest.S << EOF
235 .text
236 .p2align 5
237 EOF
238 if $CC conftest.S -c -o conftest.o >/dev/null 2>&1 ; then HAVE_GAS=yes; fi
239 AC_MSG_RESULT($HAVE_GAS)
240
241 dnl Check for GCC 2.7 or higher.
242 HAVE_GCC27=no
243 AC_MSG_CHECKING(for GCC 2.7 or higher)
244 AC_EGREP_CPP(xyes,
245 [#if __GNUC__ - 1 > 1 || __GNUC_MINOR__ - 1 > 5
246 xyes
247 #endif
248 ], [AC_MSG_RESULT(yes); HAVE_GCC27=yes], AC_MSG_RESULT(no))
249
250 dnl Check for GCC 3.0 or higher.
251 HAVE_GCC30=no
252 AC_MSG_CHECKING(for GCC 3.0 or higher)
253 AC_EGREP_CPP(xyes,
254 [#if __GNUC__ >= 3
255 xyes
256 #endif
257 ], [AC_MSG_RESULT(yes); HAVE_GCC30=yes], AC_MSG_RESULT(no))
258
259 dnl Select appropriate CPU source and REGPARAM define.
260 ASM_OPTIMIZATIONS=none
261 CPUSRCS="cpuemu1.cpp cpuemu2.cpp cpuemu3.cpp cpuemu4.cpp cpuemu5.cpp cpuemu6.cpp cpuemu7.cpp cpuemu8.cpp"
262
263 dnl JITSRCS will be emptied later if the JIT is not available
264 dnl Other platforms should define their own set of noflags file variants
265 CAN_JIT=no
266 JITSRCS="compemu1.cpp compemu2.cpp compemu3.cpp compemu4.cpp compemu5.cpp compemu6.cpp compemu7.cpp compemu8.cpp"
267
268 if [[ "x$HAVE_GCC27" = "xyes" -a "x$HAVE_I386" = "xyes" ]]; then
269 dnl i386 CPU
270 DEFINES="$DEFINES -DUNALIGNED_PROFITABLE -DREGPARAM=\"__attribute__((regparm(3)))\""
271 if [[ "x$HAVE_GAS" = "xyes" ]]; then
272 ASM_OPTIMIZATIONS=i386
273 DEFINES="$DEFINES -DX86_ASSEMBLY -DOPTIMIZED_FLAGS -DSAHF_SETO_PROFITABLE"
274 JITSRCS="cpuemu1_nf.cpp cpuemu2_nf.cpp cpuemu3_nf.cpp cpuemu4_nf.cpp cpuemu5_nf.cpp cpuemu6_nf.cpp cpuemu7_nf.cpp cpuemu8_nf.cpp $JITSRCS"
275 CAN_JIT=yes
276 fi
277 elif [[ "x$HAVE_GCC30" = "xyes" -a "x$HAVE_X86_64" = "xyes" ]]; then
278 dnl x86-64 CPU
279 DEFINES="$DEFINES -DUNALIGNED_PROFITABLE"
280 if [[ "x$HAVE_GAS" = "xyes" ]]; then
281 ASM_OPTIMIZATIONS="x86-64"
282 DEFINES="$DEFINES -DX86_64_ASSEMBLY -DOPTIMIZED_FLAGS"
283 JITSRCS="cpuemu1_nf.cpp cpuemu2_nf.cpp cpuemu3_nf.cpp cpuemu4_nf.cpp cpuemu5_nf.cpp cpuemu6_nf.cpp cpuemu7_nf.cpp cpuemu8_nf.cpp $JITSRCS"
284 CAN_JIT=yes
285 WANT_33BIT_ADDRESSING=yes
286 fi
287 fi
288
289 dnl Enable JIT compiler, if possible.
290 if [[ "x$WANT_JIT" = "xyes" -a "x$CAN_JIT" ]]; then
291 JITSRCS="$JITSRCS ../uae_cpu/compiler/compemu_support.cpp ../uae_cpu/compiler/compemu_fpp.cpp compstbl.o cpustbl_nf.o"
292 DEFINES="$DEFINES -DUSE_JIT -DUSE_JIT_FPU"
293
294 if [[ "x$WANT_JIT_DEBUG" = "xyes" ]]; then
295 if [[ "x$WANT_MON" = "xyes" ]]; then
296 DEFINES="$DEFINES -DJIT_DEBUG=1"
297 else
298 AC_MSG_WARN([cxmon not found, ignoring --enable-jit-debug])
299 WANT_JIT_DEBUG=no
300 fi
301 fi
302
303 dnl IEEE core is the only FPU emulator to use with the JIT compiler
304 case $FPE_CORE_TEST_ORDER in
305 ieee*) ;;
306 *) AC_MSG_WARN([Forcing use of the IEEE FPU core, as the JIT compiler supports only this one.]) ;;
307 esac
308 FPE_CORE_TEST_ORDER="ieee"
309 else
310 WANT_JIT=no
311 WANT_JIT_DEBUG=no
312 JITSRCS=""
313 fi
314
315 dnl Utility macro used by next two tests.
316 dnl AC_EXAMINE_OBJECT(C source code,
317 dnl commands examining object file,
318 dnl [commands to run if compile failed]):
319 dnl
320 dnl Compile the source code to an object file; then convert it into a
321 dnl printable representation. All unprintable characters and
322 dnl asterisks (*) are replaced by dots (.). All white space is
323 dnl deleted. Newlines (ASCII 0x10) in the input are preserved in the
324 dnl output, but runs of newlines are compressed to a single newline.
325 dnl Finally, line breaks are forcibly inserted so that no line is
326 dnl longer than 80 columns and the file ends with a newline. The
327 dnl result of all this processing is in the file conftest.dmp, which
328 dnl may be examined by the commands in the second argument.
329 dnl
330 AC_DEFUN([gcc_AC_EXAMINE_OBJECT],
331 [AC_LANG_SAVE
332 AC_LANG_C
333 dnl Next bit cribbed from AC_TRY_COMPILE.
334 cat > conftest.$ac_ext <<EOF
335 [#line __oline__ "configure"
336 #include "confdefs.h"
337 $1
338 ]EOF
339 if AC_TRY_EVAL(ac_compile); then
340 od -c conftest.o |
341 sed ['s/^[0-7]*[ ]*/ /
342 s/\*/./g
343 s/ \\n/*/g
344 s/ [0-9][0-9][0-9]/./g
345 s/ \\[^ ]/./g'] |
346 tr -d '
347 ' | tr -s '*' '
348 ' | fold | sed '$a\
349 ' > conftest.dmp
350 $2
351 ifelse($3, , , else
352 $3
353 )dnl
354 fi
355 rm -rf conftest*
356 AC_LANG_RESTORE])
357
358 dnl Floating point format probe.
359 dnl The basic concept is the same as the above: grep the object
360 dnl file for an interesting string. We have to watch out for
361 dnl rounding changing the values in the object, however; this is
362 dnl handled by ignoring the least significant byte of the float.
363 dnl
364 dnl Does not know about VAX G-float or C4x idiosyncratic format.
365 dnl It does know about PDP-10 idiosyncratic format, but this is
366 dnl not presently supported by GCC. S/390 "binary floating point"
367 dnl is in fact IEEE (but maybe we should have that in EBCDIC as well
368 dnl as ASCII?)
369 dnl
370 AC_DEFUN([gcc_AC_C_FLOAT_FORMAT],
371 [AC_CACHE_CHECK(floating point format, ac_cv_c_float_format,
372 [gcc_AC_EXAMINE_OBJECT(
373 [/* This will not work unless sizeof(double) == 8. */
374 extern char sizeof_double_must_be_8 [sizeof(double) == 8 ? 1 : -1];
375
376 /* This structure must have no internal padding. */
377 struct possibility {
378 char prefix[8];
379 double candidate;
380 char postfix[8];
381 };
382
383 #define C(cand) { "\nformat:", cand, ":tamrof\n" }
384 struct possibility table [] =
385 {
386 C( 3.25724264705901305206e+01), /* @@IEEEFP - IEEE 754 */
387 C( 3.53802595280598432000e+18), /* D__float - VAX */
388 C( 5.32201830133125317057e-19), /* D.PDP-10 - PDP-10 - the dot is 0x13a */
389 C( 1.77977764695171661377e+10), /* IBMHEXFP - s/390 format, ascii */
390 C(-5.22995989424860458374e+10) /* IBMHEXFP - s/390 format, EBCDIC */
391 };],
392 [if grep 'format:.@IEEEF.:tamrof' conftest.dmp >/dev/null 2>&1; then
393 ac_cv_c_float_format='IEEE (big-endian)'
394 elif grep 'format:.I@@PFE.:tamrof' conftest.dmp >/dev/null 2>&1; then
395 ac_cv_c_float_format='IEEE (big-endian)'
396 elif grep 'format:.FEEEI@.:tamrof' conftest.dmp >/dev/null 2>&1; then
397 ac_cv_c_float_format='IEEE (little-endian)'
398 elif grep 'format:.EFP@@I.:tamrof' conftest.dmp >/dev/null 2>&1; then
399 ac_cv_c_float_format='IEEE (little-endian)'
400 elif grep 'format:.__floa.:tamrof' conftest.dmp >/dev/null 2>&1; then
401 ac_cv_c_float_format='VAX D-float'
402 elif grep 'format:..PDP-1.:tamrof' conftest.dmp >/dev/null 2>&1; then
403 ac_cv_c_float_format='PDP-10'
404 elif grep 'format:.BMHEXF.:tamrof' conftest.dmp >/dev/null 2>&1; then
405 ac_cv_c_float_format='IBM 370 hex'
406 else
407 AC_MSG_ERROR(Unknown floating point format)
408 fi],
409 [AC_MSG_ERROR(compile failed)])
410 ])
411 # IEEE is the default format. If the float endianness isn't the same
412 # as the integer endianness, we have to set FLOAT_WORDS_BIG_ENDIAN
413 # (which is a tristate: yes, no, default). This is only an issue with
414 # IEEE; the other formats are only supported by a few machines each,
415 # all with the same endianness.
416 format=IEEE_FLOAT_FORMAT
417 fbigend=
418 case $ac_cv_c_float_format in
419 'IEEE (big-endian)' )
420 if test $ac_cv_c_bigendian = no; then
421 fbigend=1
422 fi
423 ;;
424 'IEEE (little-endian)' )
425 if test $ac_cv_c_bigendian = yes; then
426 fbigend=0
427 fi
428 ;;
429 'VAX D-float' )
430 format=VAX_FLOAT_FORMAT
431 ;;
432 'PDP-10' )
433 format=PDP10_FLOAT_FORMAT
434 ;;
435 'IBM 370 hex' )
436 format=IBM_FLOAT_FORMAT
437 ;;
438 esac
439 AC_DEFINE_UNQUOTED(HOST_FLOAT_FORMAT, $format,
440 [Define to the floating point format of the host machine.])
441 if test -n "$fbigend"; then
442 AC_DEFINE_UNQUOTED(HOST_FLOAT_WORDS_BIG_ENDIAN, $fbigend,
443 [Define to 1 if the host machine stores floating point numbers in
444 memory with the word containing the sign bit at the lowest address,
445 or to 0 if it does it the other way around.
446
447 This macro should not be defined if the ordering is the same as for
448 multi-word integers.])
449 fi
450 ])
451
452 dnl Select appropriate FPU source.
453 gcc_AC_C_FLOAT_FORMAT
454 AC_CHECK_HEADERS(ieee754.h ieeefp.h floatingpoint.h nan.h)
455
456 for fpe in $FPE_CORE_TEST_ORDER; do
457 case $fpe in
458 ieee)
459 case $ac_cv_c_float_format in
460 IEEE*)
461 FPE_CORE="IEEE fpu core"
462 DEFINES="$DEFINES -DFPU_IEEE"
463 FPUSRCS="../uae_cpu/fpu/fpu_ieee.cpp"
464 dnl Math functions not mandated by C99 standard
465 AC_CHECK_FUNCS(isnanl isinfl)
466 dnl Math functions required by C99 standard, but probably not
467 dnl implemented everywhere. In that case, we fall back to the
468 dnl regular variant for doubles.
469 AC_CHECK_FUNCS(logl log10l expl powl fabsl sqrtl)
470 AC_CHECK_FUNCS(sinl cosl tanl sinhl coshl tanhl)
471 AC_CHECK_FUNCS(asinl acosl atanl asinhl acoshl atanhl)
472 AC_CHECK_FUNCS(floorl ceill)
473 break
474 ;;
475 esac
476 ;;
477 x86)
478 if [[ ":$HAVE_GCC27:$HAVE_I386:$HAVE_GAS:" = ":yes:yes:yes:" ]]; then
479 FPE_CORE="i387 fpu core"
480 DEFINES="$DEFINES -DFPU_X86"
481 FPUSRCS="../uae_cpu/fpu/fpu_x86.cpp"
482 break
483 fi
484 ;;
485 uae)
486 FPE_CORE="uae fpu core"
487 DEFINES="$DEFINES -DFPU_UAE"
488 FPUSRCS="../uae_cpu/fpu/fpu_uae.cpp"
489 break
490 ;;
491 *)
492 AC_MSG_ERROR([Internal configure.in script error for $fpe fpu core])
493 ;;
494 esac
495 done
496 if [[ "x$FPE_CORE" = "x" ]]; then
497 AC_MSG_ERROR([Sorry, no suitable FPU core found in $FPE_CORE_TEST_ORDER])
498 fi
499
500 dnl Check for certain math functions
501 AC_CHECK_FUNCS(atanh)
502 AC_CHECK_FUNCS(isnan isinf finite isnormal signbit)
503
504 dnl UAE CPU sources for all non-m68k-native architectures.
505 CPUINCLUDES="-I../uae_cpu"
506 CPUSRCS="../uae_cpu/basilisk_glue.cpp ../uae_cpu/memory.cpp ../uae_cpu/newcpu.cpp ../uae_cpu/readcpu.cpp $FPUSRCS cpustbl.cpp cpudefs.cpp $CPUSRCS $JITSRCS"
507
508 dnl We really want SDL for now
509 AC_CHECK_TOOL(sdl_config, sdl-config, [AC_MSG_ERROR([Sorry, you currently need SDL for this port])])
510 SDL_CFLAGS=`$sdl_config --cflags`
511 AC_SUBST(SDL_CFLAGS)
512 SDL_LIBS=`$sdl_config --libs`
513 AC_SUBST(SDL_LIBS)
514 AC_DEFINE(USE_SDL, 1, [Define to enble SDL support])
515 AC_DEFINE(USE_SDL_VIDEO, 1, [Define to enable SDL video graphics support])
516 AC_DEFINE(USE_SDL_AUDIO, 1, [Define to enable SDL audio support])
517
518 dnl Remove the "-g" option if set for GCC.
519 if [[ "x$HAVE_GCC27" = "xyes" ]]; then
520 CFLAGS=`echo $CFLAGS | sed -e 's/-g\b//g'`
521 CXXFLAGS=`echo $CXXFLAGS | sed -e 's/-g\b//g'`
522 fi
523
524 dnl Generate Makefile.
525 AC_SUBST(DEFINES)
526 AC_SUBST(CPUINCLUDES)
527 AC_SUBST(CPUSRCS)
528 AC_CONFIG_FILES([Makefile])
529 AC_OUTPUT
530
531 dnl Print summary.
532 echo
533 echo Basilisk II configuration summary:
534 echo
535 echo Use JIT compiler ....................... : $WANT_JIT
536 echo JIT debug mode ......................... : $WANT_JIT_DEBUG
537 echo Floating-Point emulation core .......... : $FPE_CORE
538 echo Assembly optimizations ................. : $ASM_OPTIMIZATIONS
539 echo Addressing mode ........................ : $ADDRESSING_MODE
540 echo GTK user interface ..................... : $WANT_GTK
541 echo
542 echo "Configuration done. Now type \"make\" (or \"gmake\")."