ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/cebix/Frodo4/Src/configure.ac
Revision: 1.3
Committed: 2003-07-01T19:04:37Z (20 years, 9 months ago) by cebix
Branch: MAIN
Changes since 1.2: +1 -0 lines
Log Message:
ROMs are in /usr/share/frodo under Unix

File Contents

# Content
1 dnl Process this file with autoconf to produce a configure script.
2
3 AC_INIT(Frodo, 4.2, [Christian.Bauer@uni-mainz.de], Frodo)
4 AC_CONFIG_SRCDIR(main.cpp)
5 AC_PREREQ(2.52)
6 AC_CONFIG_HEADER(sysconfig.h)
7
8 dnl Checks for programs.
9 AC_PROG_CC
10 AC_PROG_CXX
11 AC_PROG_CPP
12 AC_PROG_MAKE_SET
13 AC_PROG_INSTALL
14
15 dnl Don't want the default "-O2 -g" that autoconf uses for gcc.
16 if [[ x"$GXX" = "xyes" ]]; then
17 CFLAGS="-O2 -g -fomit-frame-pointer -Wall -Wno-unused -Wno-format"
18 fi
19
20 UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
21 UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
22
23 HPUX_REV=0
24 if [[ x$UNAME_SYSTEM = "xHP-UX" ]]; then
25 HPUX_REV=`echo $UNAME_RELEASE | sed -e 's/[^.]*.[0B]*//' -e 's/\..*$//'`
26 fi
27
28 AC_AIX
29 AC_ISC_POSIX
30
31 dnl Checks for libraries.
32 HAVE_BEBOX=no
33 AC_CHECK_LIB(amiga, OpenLibrary, HAVE_AMIGA_LIB=yes, HAVE_AMIGA_LIB=no)
34 AC_CHECK_LIB(vga, vga_setmode, HAVE_SVGA_LIB=yes, HAVE_SVGA_LIB=no)
35 AM_PATH_SDL(1.2.0, HAVE_SDL=yes, HAVE_SDL=no)
36
37 AC_PATH_XTRA
38
39 AC_HEADER_DIRENT
40 AC_HEADER_STDC
41 AC_CHECK_HEADERS(unistd.h fcntl.h sys/time.h sys/types.h utime.h string.h strings.h values.h ncurses.h)
42 AC_CHECK_HEADERS(sys/vfs.h sys/mount.h sys/select.h sys/param.h sys/statfs.h sys/statvfs.h sys/stat.h linux/joystick.h)
43
44 AC_CHECK_SIZEOF(char)
45 AC_CHECK_SIZEOF(short)
46 AC_CHECK_SIZEOF(int)
47 AC_CHECK_SIZEOF(long)
48 AC_CHECK_SIZEOF(long long)
49
50 dnl Checks for typedefs, structures, and compiler characteristics.
51 AC_TYPE_MODE_T
52 AC_TYPE_OFF_T
53 AC_TYPE_PID_T
54 AC_STRUCT_ST_BLOCKS
55 AC_HEADER_TIME
56 AC_STRUCT_TM
57
58 dnl Checks for library functions.
59 AC_PROG_GCC_TRADITIONAL
60 AC_FUNC_MEMCMP
61 AC_TYPE_SIGNAL
62 AC_FUNC_UTIME_NULL
63 AC_CHECK_FUNCS(gettimeofday sigaction mkdir rmdir select strerror strstr statfs usleep)
64
65 KBD_LANG=0
66 AC_ARG_ENABLE(kbd-lang-de,[ --enable-kbd-lang-de Use german keyboard layout],[KBD_LANG=1],[])
67 AC_ARG_ENABLE(kbd-lang-us,[ --enable-kbd-lang-us Use american keyboard layout],[KBD_LANG=0],[])
68
69 AC_MSG_CHECKING(which target to use)
70 if [[ x"$HAVE_BEBOX" = "xyes" ]]; then
71 AC_MSG_RESULT([BeBox])
72 TARGET=be
73 elif [[ x"$HAVE_AMIGA_LIB" = "xyes" ]]; then
74 AC_MSG_RESULT([AmigaOS])
75 TARGET=amigaos
76 elif [[ x"$no_x" = "xyes" ]]; then
77 if [[ x"$HAVE_SVGA_LIB" = "xyes" ]]; then
78 AC_MSG_RESULT([SVGAlib])
79 TARGET=svgalib
80 CFLAGS="$CFLAGS -D__svgalib__"
81 LIBS="$LIBS -lvga"
82 else
83 AC_MSG_RESULT([Ummm...])
84 AC_MSG_ERROR([Neither X nor SVGAlib found, don't know what target to use.])
85 fi
86 elif [[ x"$HAVE_SDL" = "xyes" ]]; then
87 AC_MSG_RESULT([SDL])
88 TARGET=sdl
89 CFLAGS="$CFLAGS $SDL_CFLAGS -DHAVE_SDL"
90 LIBS="$LIBS $SDL_LIBS"
91 else
92 AC_MSG_RESULT([X Window System])
93 TARGET=x11
94 CFLAGS="$CFLAGS $X_CFLAGS -I$ac_cv_x_include"
95 LIBS="$LIBS $X_LIBS $X_PRE_LIBS -lXext -lX11 $X_EXTRA_LIBS"
96 fi
97
98 dnl Find out some things about the system
99 dnl - whether we have GCC 2.7 or better.
100 dnl - what CPU we have (to use some assembly hacks on the x86)
101
102 HAVEGCC27=n
103 HAVEI386=n
104
105 cat >conftest.cpp << EOF
106 #include <stdio.h>
107 int main()
108 {
109 #if defined(__GNUC__) && defined(__GNUC_MINOR__)
110 #if __GNUC__ > 2 || __GNUC_MINOR__ > 6
111 printf("GNU\n");
112 #endif
113 #endif
114 return 0;
115 }
116 EOF
117
118 $CXX conftest.cpp -c -o conftest.o
119 $CXX conftest.o -o conftest
120 ./conftest >conftest.file
121 if grep GNU conftest.file >/dev/null; then
122 HAVEGCC27=y
123 echo "Good news. Found GCC 2.7 or better."
124 elif [[ "$CC" = "gcc" ]]; then
125 echo "I suggest you upgrade to at least version 2.7 of GCC"
126 else
127 echo "Couldn't find GCC. Frodo may or may not compile and run correctly."
128 fi
129
130 cat >conftest.c << EOF
131 #include <stdio.h>
132 int main()
133 {
134 #ifdef __i386__
135 printf("386\n");
136 #endif
137 return 0;
138 }
139 EOF
140
141 $CC conftest.c -c -o conftest.o
142 $CC conftest.o -o conftest
143 ./conftest >conftest.file
144 if grep 386 conftest.file >/dev/null; then
145 HAVEI386=y
146 echo "You seem to be using a x86 CPU"
147 else
148 echo "No special hacks for your CPU, sorry."
149 fi
150
151 rm -f conftest*
152
153 if [[ "$HAVEGCC27" = "y" -a "$HAVEI386" = "y" ]]; then
154 # Don't want strength-reduce on the i386, makes the code slower usually.
155 CFLAGS="$CFLAGS -fno-strength-reduce -DREGPARAM=\"__attribute__((regparm(3)))\""
156 elif [[ "$TARGET" = "amigaos" ]]; then
157 CFLAGS="$CFLAGS -DREGPARAM=\"__attribute__((regargs(4)))\" "
158 else
159 CFLAGS="$CFLAGS -DREGPARAM="
160 fi
161
162 CC=$CXX
163
164 AC_SUBST(TARGET)
165 AC_SUBST(SET_MAKE)
166 AC_SUBST(top_srcdir)
167 AC_SUBST(HPUX_REV)
168 AC_SUBST(KBD_LANG)
169
170 dnl Generate Makefile.
171 AC_CONFIG_FILES([Makefile])
172 AC_OUTPUT
173
174 dnl Print summary.
175 echo
176 echo "Configuration done. Now type \"make\"."