~ubuntu-branches/ubuntu/trusty/mit-scheme/trusty-proposed

« back to all changes in this revision

Viewing changes to src/microcode/achost.ac

  • Committer: Package Import Robot
  • Author(s): Chris Hanson
  • Date: 2011-10-15 03:08:33 UTC
  • mfrom: (1.1.8) (3.1.7 sid)
  • Revision ID: package-import@ubuntu.com-20111015030833-x7qc6yxuulvxbafv
Tags: 9.1-1
* New upstream.
* debian/control, debian/copyright, debian/mit-scheme-doc.*,
  debian/mit-scheme.install, debian/rules, Upstream has removed cover
  texts from documentation licenses, so merge packages mit-scheme and
  mit-scheme-doc back together.
* debian/compat: Bump to current version.
* debian/control: Bump standards-version to current and make
  necessary changes.
* debian/rules: Fix lintian warnings.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
### -*-M4-*-
 
2
###
 
3
### Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993,
 
4
###     1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
 
5
###     2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Massachusetts
 
6
###     Institute of Technology
 
7
###
 
8
### This file is part of MIT/GNU Scheme.
 
9
###
 
10
### MIT/GNU Scheme is free software; you can redistribute it and/or
 
11
### modify it under the terms of the GNU General Public License as
 
12
### published by the Free Software Foundation; either version 2 of the
 
13
### License, or (at your option) any later version.
 
14
###
 
15
### MIT/GNU Scheme is distributed in the hope that it will be useful,
 
16
### but WITHOUT ANY WARRANTY; without even the implied warranty of
 
17
### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 
18
### General Public License for more details.
 
19
###
 
20
### You should have received a copy of the GNU General Public License
 
21
### along with MIT/GNU Scheme; if not, write to the Free Software
 
22
### Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
 
23
### 02110-1301, USA.
 
24
 
 
25
AC_CANONICAL_HOST
 
26
 
 
27
dnl Save these prior to running AC_PROG_CC.
 
28
SAVED_CFLAGS=${CFLAGS}
 
29
SAVED_LDFLAGS=${LDFLAGS}
 
30
 
 
31
dnl Checks for programs.
 
32
AC_PROG_CC
 
33
AC_PROG_CC_STDC
 
34
if test "x${ac_cv_prog_cc_c99}" != xno; then
 
35
   AC_DEFINE([HAVE_STDC_99], [1], [Does the compiler support C99?])
 
36
fi
 
37
if test "x${ac_cv_prog_cc_c89}" != xno; then
 
38
   AC_DEFINE([HAVE_STDC_89], [1], [Does the compiler support C89?])
 
39
fi
 
40
AC_C_BACKSLASH_A
 
41
AC_C_BIGENDIAN
 
42
AC_C_CONST
 
43
AC_C_RESTRICT
 
44
AC_C_VOLATILE
 
45
AC_C_INLINE
 
46
AC_C_STRINGIZE
 
47
AC_C_PROTOTYPES
 
48
AC_PROG_EGREP
 
49
AC_PROG_FGREP
 
50
AC_PROG_GREP
 
51
AC_PROG_INSTALL
 
52
AC_PROG_LN_S
 
53
AC_PROG_MAKE_SET
 
54
 
 
55
if test ${GCC} = yes; then
 
56
 
 
57
    dnl Discard flags computed by AC_PROG_CC; we'll use our own.
 
58
    CFLAGS=${SAVED_CFLAGS}
 
59
    LDFLAGS=${SAVED_LDFLAGS}
 
60
 
 
61
    if test ${enable_debugging} = no; then
 
62
        CFLAGS="${CFLAGS} -O3"
 
63
    else
 
64
        CFLAGS="${CFLAGS} -O0 -g -DENABLE_DEBUGGING_TOOLS"
 
65
        LDFLAGS="${LDFLAGS} -g"
 
66
    fi
 
67
    CFLAGS="${CFLAGS} -Wall -Wundef -Wpointer-arith -Winline"
 
68
    CFLAGS="${CFLAGS} -Wstrict-prototypes -Wnested-externs -Wredundant-decls"
 
69
 
 
70
    AC_MSG_CHECKING([for GCC>=4])
 
71
    AC_COMPILE_IFELSE(
 
72
        [AC_LANG_PROGRAM(
 
73
            [[
 
74
            #if __GNUC__ >= 4
 
75
            ;
 
76
            #else
 
77
            #error "gcc too old"
 
78
            #endif
 
79
            ]],
 
80
            [[]]
 
81
        )],
 
82
        [
 
83
        AC_MSG_RESULT([yes])
 
84
        CFLAGS="${CFLAGS} -Wextra -Wno-sign-compare -Wno-unused-parameter"
 
85
        CFLAGS="${CFLAGS} -Wold-style-definition"
 
86
        ],
 
87
        [AC_MSG_RESULT([no])])
 
88
 
 
89
    # other possibilities:
 
90
    # -Wmissing-prototypes -Wunreachable-code -Wwrite-strings
 
91
fi
 
92
FOO=`${INSTALL} --help 2> /dev/null | ${FGREP} -e --preserve-timestamps`
 
93
if test "x${FOO}" != x; then
 
94
    INSTALL="${INSTALL} --preserve-timestamps"
 
95
fi
 
96
CCLD=${CC}
 
97
 
 
98
MIT_SCHEME_NATIVE_CODE([${enable_native_code}],[${host_cpu}])
 
99
 
 
100
if test x${mit_scheme_native_code} = xhppa; then
 
101
   GC_HEAD_FILES="${GC_HEAD_FILES} hppacach.h"
 
102
fi
 
103
 
 
104
AUXDIR_NAME=mit-scheme-${mit_scheme_native_code}
 
105
EXE_NAME=mit-scheme-${mit_scheme_native_code}
 
106
 
 
107
dnl Add OS-dependent customizations.  This must happen before checking
 
108
dnl any headers or library routines, because it may add CFLAGS or
 
109
dnl LDFLAGS that the subsequent checks require.
 
110
 
 
111
DO_GCC_TESTS=no
 
112
GNU_LD=no
 
113
case ${host_os} in
 
114
linux-gnu)
 
115
    M4_FLAGS="${M4_FLAGS} -P __linux__,1"
 
116
    DO_GCC_TESTS=yes
 
117
    GNU_LD=yes
 
118
    ;;
 
119
freebsd*)
 
120
    M4_FLAGS="${M4_FLAGS} -P SUPPRESS_LEADING_UNDERSCORE,1"
 
121
    DO_GCC_TESTS=yes
 
122
    GNU_LD=yes
 
123
    ;;
 
124
dragonfly*)
 
125
    M4_FLAGS="${M4_FLAGS} -P SUPPRESS_LEADING_UNDERSCORE,1"
 
126
    DO_GCC_TESTS=yes
 
127
    GNU_LD=yes
 
128
    ;;
 
129
darwin*)
 
130
    if test -n "${with_macosx_version}"; then
 
131
        MACOSX=${with_macosx_version}
 
132
        MACOSX_CFLAGS="-mmacosx-version-min=${MACOSX}"
 
133
    else
 
134
        MACOSX=`sw_vers | ${GREP} ^ProductVersion: \
 
135
            | ${EGREP} -o '[[0-9]+\.[0-9]+]'`
 
136
        if test -z "${MACOSX}"; then
 
137
            AC_MSG_ERROR([Unable to determine MacOSX version])
 
138
        fi
 
139
        MACOSX_CFLAGS=
 
140
    fi
 
141
    if test "${MACOSX}" = 10.4; then
 
142
        SDK=MacOSX${MACOSX}u
 
143
    else
 
144
        SDK=MacOSX${MACOSX}
 
145
    fi
 
146
    MACOSX_SYSROOT=/Developer/SDKs/${SDK}.sdk
 
147
    if test ! -d "${MACOSX_SYSROOT}"; then
 
148
        AC_MSG_ERROR([No MacOSX SDK for version: ${MACOSX}])
 
149
    fi
 
150
    MACOSX_CFLAGS="${MACOSX_CFLAGS} -isysroot ${MACOSX_SYSROOT}"
 
151
    MACOSX_CFLAGS="${MACOSX_CFLAGS} -fconstant-cfstrings"
 
152
    MACOSX_CFLAGS="${MACOSX_CFLAGS} -DSIGNAL_HANDLERS_CAN_USE_SCHEME_STACK"
 
153
    AC_MSG_NOTICE([Compiling for MacOSX version ${MACOSX}])
 
154
    case ${mit_scheme_native_code} in
 
155
    i386)
 
156
        MACOSX_CFLAGS="-arch i386 ${MACOSX_CFLAGS}"
 
157
        AS_FLAGS="-arch i386 ${AS_FLAGS}"
 
158
        SCHEME_LDFLAGS="${SCHEME_LDFLAGS} -Wl,-pagezero_size,04000000"
 
159
        ;;
 
160
    x86-64)
 
161
        MACOSX_CFLAGS="-arch x86_64 ${MACOSX_CFLAGS}"
 
162
        AS_FLAGS="-arch x86_64 ${AS_FLAGS}"
 
163
        ;;
 
164
    esac
 
165
    CFLAGS="${CFLAGS} ${MACOSX_CFLAGS} -frounding-math"
 
166
    LDFLAGS="${LDFLAGS} ${MACOSX_CFLAGS} -Wl,-syslibroot,${MACOSX_SYSROOT}"
 
167
    LDFLAGS="${LDFLAGS} -framework CoreFoundation"
 
168
    MODULE_LDFLAGS="${MODULE_LDFLAGS} -bundle"
 
169
    if test "${with_module_loader}" != no; then
 
170
      if test "${with_module_loader}" = yes; then
 
171
        MODULE_LOADER='${SCHEME_EXE}'
 
172
      else
 
173
        MODULE_LOADER="${with_module_loader}"
 
174
      fi
 
175
      MODULE_LDFLAGS="${MODULE_LDFLAGS} -bundle_loader ${MODULE_LOADER}"
 
176
    fi
 
177
    AUX_PROGRAMS="${AUX_PROGRAMS} macosx-starter"
 
178
    ;;
 
179
netbsd*)
 
180
    DO_GCC_TESTS=yes
 
181
    GNU_LD=yes
 
182
    ;;
 
183
openbsd*)
 
184
    M4_FLAGS="${M4_FLAGS} -P SUPPRESS_LEADING_UNDERSCORE,1"
 
185
    DO_GCC_TESTS=yes
 
186
    GNU_LD=yes
 
187
    ;;
 
188
solaris*)
 
189
    # How do we tell whether we're using GNU ld or Solaris ld?
 
190
    if test ${GCC} = yes; then
 
191
        DO_GCC_TESTS=yes
 
192
        M4_FLAGS="${M4_FLAGS} -P SUPPRESS_LEADING_UNDERSCORE,1"
 
193
    fi
 
194
    LDFLAGS="${LDFLAGS} -lsocket -lnsl"
 
195
    ;;
 
196
esac
 
197
 
 
198
if test "${DO_GCC_TESTS}" = yes; then
 
199
    if test "${GNU_LD}" = yes; then
 
200
        SCHEME_LDFLAGS="${SCHEME_LDFLAGS} -export-dynamic"
 
201
    fi
 
202
    MODULE_CFLAGS="${MODULE_CFLAGS} -fPIC"
 
203
    MODULE_LDFLAGS="${MODULE_LDFLAGS} -shared -fPIC"
 
204
    AC_MSG_CHECKING([for ELF binaries])
 
205
    AC_RUN_IFELSE(
 
206
        [AC_LANG_PROGRAM(
 
207
            [[]],
 
208
            [[
 
209
            #ifdef __ELF__
 
210
            return 0;
 
211
            #endif
 
212
            return 1;
 
213
            ]]
 
214
        )],
 
215
        [
 
216
        AC_MSG_RESULT([yes])
 
217
        M4_FLAGS="${M4_FLAGS} -P SUPPRESS_LEADING_UNDERSCORE,1"
 
218
        M4_FLAGS="${M4_FLAGS} -P __ELF__,1"
 
219
        ],
 
220
        [AC_MSG_RESULT([no])])
 
221
fi