-
Notifications
You must be signed in to change notification settings - Fork 2
/
configure.in
116 lines (96 loc) · 2.63 KB
/
configure.in
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
# -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.
AC_INIT(emulator/main.cpp)
AM_INIT_AUTOMAKE(SimIt-MIPS, 1.0)
AM_CONFIG_HEADER(config.h:config.h.in)
#if the user sets CXXFLAGS
usr_CXXFLAGS=${CXXFLAGS+set}
# Checks for programs.
AC_PROG_CC
AC_PROG_CXX
AC_PROG_RANLIB
AC_PROG_INSTALL
AM_PROG_LEX
AC_PROG_YACC
LT_AC_PROG_SED
if AX_IS_GXX() then
cxxflags="-Wall -O3 -fomit-frame-pointer"
else
AC_MSG_WARN(["CXX is not g++, cannot build compiled simulator"])
fi
# if the user does not set CXX flags, we set it
if test "$usr_CXXFLAGS" != set; then
if AX_IS_GXX3() then
cxxflags="$cxxflags -finline-limit-1500"
fi
if AX_CXX_FLAG_WORKS($cxxflags) then
CXXFLAGS=$cxxflags
else
if AX_CXX_FLAG_WORKS(["-O3"]) then
CXXFLAGS="-O3"
fi
fi
# see if fpe flags are supported
if AX_CXX_FLAG_WORKS([-msse2 -mfpmath=sse]) then
CXXFLAGS="$CXXFLAGS -msse2 -mfpmath=sse"
FP_OPTION=" -msse2 -mfpmath=sse"
AC_SUBST([FP_OPTION])
fi
fi
# check if user wants jit
#AC_ARG_ENABLE(jit,
# [ --enable-jit Build just-in-time compiled-emulator],
# [case "${enableval}" in
# yes) jit=true ;;
# no) jit=false ;;
# *) AC_MSG_ERROR(bad value ${enableval} for --enable-jit) ;;
# esac],[jit=false])
jit=true;
if test "x$jit" = xtrue; then
AC_CHECK_LIB(dl, dlerror, [jit=true],
[jit=false; AC_MSG_ERROR([libdl not found, disable JIT])])
AC_CHECK_LIB(pthread, pthread_testcancel, [jit=true],
[jit=false; AC_MSG_ERROR([libpthread not found, disable JIT])])
fi
AM_CONDITIONAL(ENABLE_JIT, test x$jit = xtrue)
# Check for gmp
#AC_CHECK_LIB(gmp, __gmpz_init, , [AC_MSG_ERROR(
# [GNU MP not found, see http://swox.com/gmp])])
# Checks for header files.
AC_HEADER_STDC
AC_CHECK_HEADERS([fcntl.h inttypes.h stdint.h stdlib.h string.h sys/time.h sys/resource.h unistd.h sys/mman.h])
AC_PREFIX_DEFAULT("`pwd`/build")
# Checks for typedefs, structures, and compiler characteristics.
# AC_HEADER_STDBOOL
AC_C_CONST
AC_TYPE_UID_T
AC_C_INLINE
AC_C_BIGENDIAN
AC_TYPE_MODE_T
AC_TYPE_OFF_T
AC_TYPE_PID_T
AC_TYPE_SIZE_T
AC_CHECK_SIZEOF(char)
AC_CHECK_SIZEOF(short)
AC_CHECK_SIZEOF(int)
AC_CHECK_SIZEOF(long)
AC_CHECK_SIZEOF(long long)
#AC_CHECK_MEMBERS([struct stat.st_blksize])
#AC_STRUCT_ST_BLOCKS
#AC_CHECK_MEMBERS([struct stat.st_rdev])
AC_HEADER_TIME
# Checks for library functions.
#AC_FUNC_MALLOC
# AC_FUNC_REALLOC
AC_TYPE_SIGNAL
#AC_CHECK_FUNCS([memset])
AC_FUNC_MMAP
AC_CONFIG_FILES([Makefile
issgen/Makefile
decgen/Makefile
emulator/Makefile
jit/build_dll.hpp
jit/build_scs
jit/Makefile
jit/decomp_src/Makefile])
AC_OUTPUT