ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/cebix/Frodo4/Src/configure.in
Revision: 1.2
Committed: 2003-07-01T18:09:37Z (20 years, 10 months ago) by cebix
Branch: MAIN
CVS Tags: VERSION_4_2, HEAD
Changes since 1.1: +0 -0 lines
State: FILE REMOVED
Log Message:
modernized the autoconf stuff

File Contents

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