blob: 6aea32d848aca8511ed0cdb6bfbff1ea0d5ca3a9 (
plain)
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
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
|
#!/bin/sh
#
# configure script for ghdl (c) 2014 Tristan Gingold
#
backend=mcode
CC=${CC:-gcc}
CFLAGS=${CFLAGS:--g}
GNATMAKE=${GNATMAKE:-gnatmake}
prefix=/usr/local
build=
show_help=no
progname=$0
subst_vars="CC GNATMAKE CFLAGS build srcdir"
# Find srcdir
srcdir=`dirname $progname`
if test x$srcdir = x; then
srcdir=.
fi
# Check echo -n / echo \c
if test x`echo -n` = x"-n" ; then
echon=""
echoc="\c"
else
echon="-n"
echoc=""
fi
# Decode options
for opt do
optarg=`expr x$opt : 'x[^=]*=\(.*\)'`
case "$opt" in
CC=*|CFLAGS=*|GNATMAKE=*)
optvar=`expr x$opt : 'x\([^=]*\)=.*'`
eval $optvar="$optarg"
;;
--prefix=*) prefix="$optarg";;
--srcdir=*) srcdir="$optarg";;
-h|-help|--help) show_help=yes;;
*) echo "$0: unknown option $opt; try $0 --help"
exit 1
;;
esac
done
if test $show_help != no; then
cat <<EOF
Usage: configure [options]
Options [defaults in brackets]:
--prefix=PREFIX install in PREFIX [$prefix]
--srcdir=SRCDIR source code path [$srcdir]
EOF
exit 0
fi
# Sanity checks
# Check that gnatmake exists
if ! $GNATMAKE 2> /dev/null; then
echo "Sorry, you need GNAT to build GHDL. See the README"
echo "(gnatmake is $GNATMAKE)"
exit 1
fi
# Check that compiler exists
if ! $CC -v 2> /dev/null; then
echo "Sorry, you need a C compiler to build GHDL. See the README"
exit 1
fi
# For mcode, check that gcc emits i386
if test $backend = mcode; then
if ! $CC $CFLAGS -dumpmachine | grep -q "[3-6]86"; then
echo "WARNING: GHDL for mcode is supported only on x86 (32 bits)"
echo "continuing, but build failure expected (See the README)"
fi
fi
# Compute build machine
if test x$build = x; then
build=`$CC $CFLAGS -dumpmachine`
fi
echo "Build machine is: $build"
# Generate config.status
rm -f config.status
{
echo "#! /bin/sh"
echo "# Generated by configure."
echo "# Run this file to recreate the current configuration."
echo
echo "# Generated by:"
echo $echon "# $progname" $echoc
for opt do
echo $echon " " $opt $echoc
done
echo
echo
echo subst_vars=\"$subst_vars\"
for v in $subst_vars; do
eval vval=\$$v
echo $v="$vval"
done
echo
echo 'sed_opts=""'
echo 'for v in $subst_vars; do'
echo ' eval vval=\$$v'
echo ' sed_opts="$sed_opts -e s/@${v}@/$vval/g"'
echo 'done'
echo
echo 'echo "Creating Makefile"'
echo 'sed $sed_opts < $srcdir/Makefile.in > Makefile'
} > config.status || \
{
echo "$progname: cannot create config.status"
exit 1
}
chmod +x ./config.status
if ! sh ./config.status; then
echo "$progname: cannot execute config.status"
exit 1
fi
exit 0
|