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

# User Rev Content
1 cebix 1.1 dnl Process this file with autoconf to produce a configure script.
2    
3 cebix 1.2 AC_INIT(Frodo, 4.2, [Christian.Bauer@uni-mainz.de], Frodo)
4 cebix 1.1 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\"."