Home My Page Projects Code Snippets Project Openings diderot
Summary Activity Tracker Tasks SCM

SCM Repository

[diderot] Annotation of /branches/pure-cfg/configure.ac
ViewVC logotype

Annotation of /branches/pure-cfg/configure.ac

Parent Directory Parent Directory | Revision Log Revision Log


Revision 989 - (view) (download)

1 : jhr 3 dnl Process this file with autoconf to produce a configure script.
2 :     dnl
3 :     dnl COPYRIGHT (c) 2010 The Diderot Project
4 :     dnl All rights reserved.
5 :     dnl
6 :    
7 :     dnl NOTE: MANTICORE_DIST_VERSION is an M4 variable defined in config/aclocal.m4
8 :     dnl
9 :     AC_INIT(diderot,0.1,)
10 :    
11 :     AC_PREREQ(2.60)
12 : jhr 436 AC_COPYRIGHT([[COPYRIGHT (c) 2010 The Diderot Project (http://diderot-language.cs.uchicago.edu)]])
13 : jhr 123 AC_CONFIG_SRCDIR(src/dnorm/dnorm.c)
14 : jhr 3 AC_CONFIG_AUX_DIR(config)
15 :     AC_CONFIG_MACRO_DIR(config)
16 : jhr 123
17 : jhr 3 dnl
18 :     dnl include additional macros
19 :     dnl
20 :     sinclude(config/acx_pthread.m4)
21 : jhr 123 sinclude(config/check_smlnj.m4)
22 :     sinclude(config/check_smlnj_heap_suffix.m4)
23 : jhr 3
24 : jhr 123
25 : jhr 3 dnl
26 : jhr 123 dnl get host information
27 : jhr 3 dnl
28 :     AC_CANONICAL_HOST
29 :    
30 :     dnl check for standard programs
31 :     dnl
32 :     AC_PROG_CPP
33 :     AC_PROG_INSTALL
34 :     AC_PROG_MAKE_SET
35 :    
36 : jhr 671 dnl check for c99 support
37 : jhr 123 dnl
38 : jhr 671 AC_PROG_CC_C99
39 :     if test x"$ac_cv_prog_cc_c99" = xno ; then
40 :     AC_MSG_ERROR([Diderot requires c99 support])
41 :     fi
42 :    
43 :     dnl extra C compiler options
44 :     dnl
45 :     CC="$CC -m64"
46 :     CFLAGS="$CFLAGS -Wformat -Wreturn-type -Wuninitialized"
47 :    
48 :     dnl
49 : jhr 676 dnl Look for NVIDIA's nvcc compiler
50 :     dnl
51 :     AC_MSG_CHECKING([for CUDA and nvcc])
52 :     AC_PATH_PROG(NVCC, nvcc, ":", $PATH)
53 :     if test $NVCC = none ; then
54 : jhr 679 AC_MSG_WARN([nvcc not found])
55 : jhr 676 else
56 :     AC_MSG_RESULT([$NVCC])
57 :     fi
58 :     AC_SUBST(NVCC)
59 :    
60 :     dnl
61 : jhr 989 dnl OS-specific linking issues
62 : jhr 123 dnl
63 : jhr 989 LD_NEEDS_RPATH=false;
64 : jhr 123 case "$host_os" in
65 : jhr 989 darwin*) # On Mac OS X we check for the presence of macports and/or fink
66 : jhr 123 if test -x /opt/local/bin/port ; then
67 :     HAS_MACPORTS=yes
68 :     else
69 :     HAS_MACPORTS=no
70 :     fi
71 :     if test -x /sw/bin/fink ; then
72 :     HAS_FINK=yes
73 :     else
74 :     HAS_FINK=no
75 :     fi
76 :     ;;
77 : jhr 989 linux) # On Linux we include the -rpath option to pick up dynamically-loaded libraries
78 :     LD_NEEDS_RPATH=true
79 :     ;;
80 : jhr 123 esac
81 : jhr 3
82 : jhr 123 if test x"$HAS_MACPORTS" = xyes ; then
83 :     LDPATHS="-L/opt/local/lib"
84 :     elif test x"$HAS_FINK" = xyes ; then
85 :     LDPATHS="-L/sw/lib"
86 :     else
87 :     LDPATHS=""
88 :     fi
89 :     AC_SUBST(LDPATHS)
90 : jhr 989 AC_SUBST(LD_NEEDS_RPATH)
91 : jhr 123
92 :     dnl
93 :     dnl get the path to the TEEM installation
94 :     dnl
95 :     AC_ARG_WITH(teem,
96 :     AC_HELP_STRING([--with-teem=<path>], [specify path to teem installation]),
97 :     [ac_cv_use_teem=$withval], [ac_cv_use_teem=no])
98 :     if test x"$ac_cv_use_teem" = xno ; then
99 :     TEEM_DIR=none
100 :     else
101 :     AC_MSG_CHECKING([path to teem ($ac_cv_use_teem)])
102 :     case $ac_cv_use_teem in
103 :     /*) ;;
104 :     *) AC_MSG_ERROR([path to teem must be absolute]) ;;
105 :     esac
106 :     if test -x $ac_cv_use_teem ; then
107 :     TEEM_DIR=$ac_cv_use_teem
108 :     AC_MSG_RESULT([ okay])
109 :     else
110 :     TEEM_DIR=none
111 :     AC_MSG_RESULT([ invalid])
112 :     fi
113 :     fi
114 :     if test x"$TEEM_DIR" = xnone ; then
115 :     AC_MSG_ERROR([unable to find teem])
116 :     fi
117 :     AC_SUBST(TEEM_DIR)
118 :    
119 :     dnl ******************** SML/NJ configuration ********************
120 :     dnl
121 :    
122 :     dnl check that we have a compatible version of SML/NJ
123 :     dnl
124 :     CHECK_SMLNJ([AC_MSG_ERROR([unable to find SML/NJ installation; check your PATH or set SMLNJ_CMD])])
125 :     if test $SMLNJ_MAJOR_VERSION -lt 110 \
126 :     -o $SMLNJ_MINOR_VERSION -lt 72
127 :     then
128 :     AC_MSG_ERROR([installation requires SML/NJ version 110.72+])
129 :     fi
130 :     AC_SUBST(SMLNJ_VERSION)
131 :    
132 :     dnl determine the heap-image suffix
133 :     dnl
134 :     CHECK_SMLNJ_HEAP_SUFFIX([
135 :     AC_MSG_ERROR([unsupported configuration ${host_cpu}-${host_os}])])
136 :    
137 :     dnl look for ml-makedepend
138 :     dnl
139 :     AC_MSG_CHECKING([for ml-makedepend])
140 :     tmpPATH="$SMLNJ_PATH:$PATH"
141 :     AC_PATH_PROG(ML_MAKEDEPEND, ml-makedepend, ":", $tmpPATH)
142 :     if test $ML_MAKEDEPEND = none ; then
143 :     AC_MSG_ERROR([ml-makedepend not found])
144 :     else
145 :     AC_MSG_RESULT([$ML_MAKEDEPEND])
146 :     fi
147 :     AC_SUBST(ML_MAKEDEPEND)
148 :    
149 :     dnl
150 :     dnl look for ml-build
151 :     dnl
152 :     tmpPATH="$SMLNJ_PATH:$PATH"
153 :     AC_PATH_PROG(ML_BUILD, ml-build, none, $tmpPATH)
154 :     if test $ML_BUILD = none ; then
155 :     AC_MSG_ERROR([ml-build not found])
156 :     fi
157 :     AC_SUBST(ML_BUILD)
158 :    
159 :     dnl ******************** Paths ********************
160 :    
161 :     DIDEROT_ROOT=`pwd`
162 :     DIDEROT_DOCDIR=$DIDEROT_ROOT/doc
163 :     DIDEROT_SRCDIR=$DIDEROT_ROOT/src
164 :     DIDEROT_LIBDIR=$DIDEROT_ROOT/lib
165 :     DIDEROT_BINDIR=$DIDEROT_ROOT/bin
166 :     DIDEROT_MKDIR=$DIDEROT_ROOT/mk
167 :    
168 :     HEAP_IMAGE_DIR=$DIDEROT_BINDIR/.heap
169 :     INSTALL_SMLNJ_WRAPPER=$DIDEROT_BINDIR/install-sml-wrapper.sh
170 :    
171 :     AC_SUBST(DIDEROT_ROOT)
172 :     AC_SUBST(DIDEROT_DOCDIR)
173 :     AC_SUBST(DIDEROT_SRCDIR)
174 :     AC_SUBST(DIDEROT_LIBDIR)
175 :     AC_SUBST(DIDEROT_BINDIR)
176 :     AC_SUBST(DIDEROT_MKDIR)
177 :     AC_SUBST(HEAP_IMAGE_DIR)
178 :     AC_SUBST(INSTALL_SMLNJ_WRAPPER)
179 :    
180 :     dnl
181 :     dnl ******************** write output ********************
182 :     dnl
183 :    
184 : jhr 127 AC_CONFIG_FILES(
185 :     dnl
186 : jhr 123 dnl ***** Makefiles *****
187 : jhr 321 Makefile
188 : jhr 123 src/dnorm/Makefile
189 :     src/compiler/Makefile
190 : jhr 566 src/lib/Makefile
191 :     test/Makefile
192 : jhr 204 test/MIP/Makefile
193 : jhr 260 test/probe/Makefile
194 : jhr 127 dnl
195 :     dnl ***** SML source files *****
196 : jhr 202 src/compiler/fields/run-dnorm.sml:src/compiler/fields/run-dnorm_sml.in
197 : jhr 632 src/compiler/common/paths.sml:src/compiler/common/paths_sml.in
198 : jhr 123 )
199 :    
200 :     dnl
201 :     dnl shell scripts
202 :     dnl
203 :     AC_CONFIG_FILES([
204 :     bin/install-sml-wrapper.sh:config/install-sml-wrapper_sh.in
205 :     ], [chmod +x bin/install-sml-wrapper.sh])
206 :    
207 : jhr 3 AC_OUTPUT

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0