ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/cebix/Frodo4/Src/configure.ac
Revision: 1.2
Committed: 2003-07-01T18:10:55Z (20 years, 9 months ago) by cebix
Branch: MAIN
Changes since 1.1: +1 -1 lines
Log Message:
tarname is uppercase

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