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

SCM Repository

[diderot] Diff of /branches/vis15/configure.ac
ViewVC logotype

Diff of /branches/vis15/configure.ac

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3715, Sat Apr 2 17:23:54 2016 UTC revision 4239, Wed Jul 20 18:19:49 2016 UTC
# Line 2  Line 2 
2  dnl  dnl
3  dnl This code is part of the Diderot Project (http://diderot-language.cs.uchicago.edu)  dnl This code is part of the Diderot Project (http://diderot-language.cs.uchicago.edu)
4  dnl  dnl
5  dnl COPYRIGHT (c) 2015 The University of Chicago  dnl COPYRIGHT (c) 2016 The University of Chicago
6  dnl All rights reserved.  dnl All rights reserved.
7  dnl  dnl
8    
9  AC_INIT(diderot,1.0,)  AC_INIT(diderot,1.0,)
10    
11  AC_PREREQ(2.60)  AC_PREREQ(2.60)
12  AC_COPYRIGHT([[COPYRIGHT (c) 2015 The University of Chicago]])  AC_COPYRIGHT([[COPYRIGHT (c) 2016 The University of Chicago]])
13  AC_CONFIG_SRCDIR(src/compiler/options/ctl.sml)  AC_CONFIG_SRCDIR(src/compiler/options/ctl.sml)
14  AC_CONFIG_AUX_DIR(config)  AC_CONFIG_AUX_DIR(config)
15  AC_CONFIG_MACRO_DIR(config)  AC_CONFIG_MACRO_DIR(config)
# Line 27  Line 27 
27  sinclude(config/check_smlnj.m4)  sinclude(config/check_smlnj.m4)
28  sinclude(config/check_smlnj_heap_suffix.m4)  sinclude(config/check_smlnj_heap_suffix.m4)
29  sinclude(config/ax_check_framework.m4)  sinclude(config/ax_check_framework.m4)
30    sinclude(config/ax_cxx_compile_stdcxx.m4)
31    
32  dnl  dnl
33  dnl get host information  dnl get host information
34  dnl  dnl
35  AC_CANONICAL_HOST  AC_CANONICAL_HOST
36    
37    #################### Paths configuration ####################
38    
39    DIDEROT_ROOT=`pwd`
40    DIDEROT_DOCDIR=$DIDEROT_ROOT/doc
41    DIDEROT_SRCDIR=$DIDEROT_ROOT/src
42    DIDEROT_LIBDIR=$DIDEROT_ROOT/lib
43    DIDEROT_BINDIR=$DIDEROT_ROOT/bin
44    DIDEROT_MKDIR=$DIDEROT_ROOT/mk
45    
46    AC_SUBST(DIDEROT_ROOT)
47    AC_SUBST(DIDEROT_DOCDIR)
48    AC_SUBST(DIDEROT_SRCDIR)
49    AC_SUBST(DIDEROT_LIBDIR)
50    AC_SUBST(DIDEROT_BINDIR)
51    AC_SUBST(DIDEROT_MKDIR)
52    
53    #################### end Paths configuration ####################
54    
55  dnl check for standard programs  dnl check for standard programs
56  dnl  dnl
 AC_PROG_CC([clang gcc cc])  
57  AC_PROG_CPP  AC_PROG_CPP
58    AC_PROG_CC([clang gcc cc])
59    AC_PROG_CXX([clang++ g++ c++])
60    AX_CXX_COMPILE_STDCXX(11,[],[mandatory])
61  AC_PROG_INSTALL  AC_PROG_INSTALL
62  AC_PROG_MAKE_SET  AC_PROG_MAKE_SET
63    
# Line 48  Line 69 
69  fi  fi
70  AC_SUBST(LD)  AC_SUBST(LD)
71    
72  dnl check for c99 support  dnl extra compiler options
73  dnl  dnl
74  AC_PROG_CC_C99  CXXFLAGS_BASE="-Wreturn-type -Wuninitialized"
 if test x"$ac_cv_prog_cc_c99" = xno ; then  
   AC_MSG_ERROR([Diderot requires c99 support])  
 fi  
75    
76  AC_ARG_ENABLE([32-bit],  AC_ARG_ENABLE([32-bit],
77    AC_HELP_STRING([--enable-32-bit], [configure Diderot to produce 32-bit executables]),    AC_HELP_STRING([--enable-32-bit], [configure Diderot to produce 32-bit executables]),
78    [CFLAG_MXX="-m32"],    [CXXFLAG_Mxx="-m32"],
79    [CFLAG_MXX="-m64"])    [CXXFLAG_Mxx="-m64"])
80    if test x"$CXX" != "xclang++" ; then
81      CXXFLAGS_BASE="$CXXFLAGS_BASE -fno-implicit-templates"
82    fi
83    
84    CXXFLAGS="$CXXFLAG_Mxx $CXXFLAGS_BASE"
85    AC_SUBST(CXXFLAG_Mxx)
86    AC_SUBST(CXXFLAGS_BASE)
87    
88    dnl
89    dnl run the compiler tests in 64-bit mode
90    dnl
91    save_CFLAGS=$CFLAGS
92    CFLAGS="$CFLAGS $CFLAG_MXX"
93    
94    dnl
95    dnl check for gcc builtin atomic operations
96    dnl
97    AC_MSG_CHECKING([for builtin atomic operations])
98    AC_LINK_IFELSE(
99       [AC_LANG_PROGRAM([], [int foo1; int foo2 = __sync_fetch_and_add(&foo1, 1);])],
100       AC_MSG_RESULT(yes)
101       AC_DEFINE(
102        [HAVE_BUILTIN_ATOMIC_OPS], 1,
103        [Define to 1 if gcc compiler provides atomic operations.]),
104       AC_MSG_RESULT(no))
105    
106    AC_C_BIGENDIAN
107    
108    #
109    # determine the sizes of the standard C types
110    AC_CHECK_SIZEOF([int])
111    SIZEOF_C_INT=$ac_cv_sizeof_int
112    AC_CHECK_SIZEOF([long])
113    SIZEOF_C_LONG=$ac_cv_sizeof_long
114    AC_CHECK_SIZEOF([float])
115    SIZEOF_C_FLOAT=$ac_cv_sizeof_float
116    AC_CHECK_SIZEOF([double])
117    SIZEOF_C_DOUBLE=$ac_cv_sizeof_double
118    
119    AC_SUBST(SIZEOF_C_INT)
120    AC_SUBST(SIZEOF_C_LONG)
121    AC_SUBST(SIZEOF_C_FLOAT)
122    AC_SUBST(SIZEOF_C_DOUBLE)
123    
 dnl extra C compiler options  
124  dnl  dnl
125  CFLAGS=""  dnl restore CFLAGS
126  CFLAGS_BASE="-Wformat -Wreturn-type -Wuninitialized"  dnl
127  AC_SUBST(CFLAG_MXX)  CFLAGS=$save_CFLAGS
 AC_SUBST(CFLAGS_BASE)  
128    
129  dnl  dnl
130  dnl standard headers  dnl check for <stdbool.h>, which we use in the C API
131  dnl  dnl
132  AC_HEADER_STDBOOL  AC_HEADER_STDBOOL
133    
134  dnl  dnl
135    dnl the C boolean type to use in generated library headers
136    dnl
137    if test x"$ac_cv_header_stdbool_h" = xyes ; then
138      BOOLTY="bool"
139    elif test "x$ac_cv_type__Bool" = xyes; then
140      BOOLTY="_Bool"
141    else
142      BOOLTY="int"
143    fi
144    AC_SUBST(BOOLTY)
145    
146    dnl
147  dnl check for pthreads support  dnl check for pthreads support
148  dnl  dnl
149  ACX_PTHREAD  ACX_PTHREAD
150    
151  dnl  dnl
152    dnl check for various library routines etc.
153    dnl
154    AC_CHECK_FUNCS(posix_memalign)
155    if test x"$ac_cv_func_posix_memalign" != xyes ; then
156      AC_CHECK_FUNCS(memalign)
157      if test x"$ac_cv_func_posix_memalign" != xyes ; then
158        AC_CHECK_FUNCS(valloc)
159      fi
160    fi
161    
162    AC_CHECK_FUNCS(mach_absolute_time)
163    AC_CHECK_TYPES([struct timespec])
164    AC_CHECK_FUNCS(pthread_barrier_init)
165    
166    dnl
167    dnl check for clock_gettime.  On Linux, this requires librt.
168    dnl
169    save_LIBS=$LIBS
170    LIBS="-lrt $LIBS"
171    AC_MSG_CHECKING([for clock_gettime])
172    AC_LINK_IFELSE(
173      [AC_LANG_PROGRAM(
174        [[#include <time.h>]],
175        [[struct timespec t; clock_gettime(CLOCK_REALTIME, &t); ]])],
176      [ ac_cv_func_clock_gettime=yes;
177        AC_DEFINE(HAVE_CLOCK_GETTIME, [1], [is clock_gettime available?])],
178      [ac_cv_func_clock_gettime=no])
179    AC_MSG_RESULT($ac_cv_func_clock_gettime)
180    if test "$ac_cv_func_clock_gettime" = "no" ; then
181      LIBS=$save_LIBS
182    fi
183    
184    AC_CHECK_FUNCS(pthread_getcpuclockid)
185    AC_CHECK_FUNCS(sigtimedwait nanosleep)
186    
187    dnl
188    dnl check for sched_setaffinity
189    dnl
190    AC_CHECK_FUNCS(sched_setaffinity)
191    
192    dnl
193    dnl check for pthread_setaffinity_np
194    dnl
195    save_LIBS=$LIBS
196    save_CFLAGS=$CFLAGS
197    LIBS="$PTHREAD_LIBS $LIBS"
198    CFLAGS="$PTHREAD_CFLAGS $CFLAGS"
199    AC_MSG_CHECKING([for pthread_setaffinity_np])
200    AC_LINK_IFELSE(
201      [AC_LANG_PROGRAM(
202        [[#include <pthread.h>]],
203        [[cpu_set_t s; pthread_setaffinity_np(pthread_self(), sizeof(s), &s); ]])],
204      [ ac_cv_func_pthread_setaffinity_np=yes;
205        AC_DEFINE(HAVE_PTHREAD_SETAFFINITY_NP, [1], [is pthread_setaffinity_np available?])],
206      [ac_cv_func_pthread_setaffinity_np=no])
207    AC_MSG_RESULT($ac_cv_func_pthread_setaffinity_np)
208    LIBS=$save_LIBS
209    CFLAGS=$save_CFLAGS
210    
211    dnl
212    dnl check for Linux NUMA support (libnuma)
213    dnl
214    AC_CHECK_LIB(numa,numa_available)
215    if test "$ac_cv_lib_numa_numa_available" = "yes" ; then
216      PTHREAD_LIBS="$PTHREAD_LIBS -lnuma"
217    fi
218    
219    dnl check for /proc/cpuinfo
220    dnl
221    AC_CHECK_FILES(/proc/cpuinfo)
222    
223    dnl
224    dnl OS-specific linking issues
225    dnl
226    LD_NEEDS_RPATH=false;
227    LIBM=""
228    case "$host_os" in
229      darwin*) # On Mac OS X we check for the presence of macports and/or fink
230        if test -x /opt/local/bin/port ; then
231          HAS_MACPORTS=yes
232        else
233          HAS_MACPORTS=no
234        fi
235        if test -x /sw/bin/fink ; then
236          HAS_FINK=yes
237        else
238          HAS_FINK=no
239        fi
240      ;;
241      linux*) # On Linux we include the -rpath option to pick up dynamically-loaded libraries
242        LD_NEEDS_RPATH=true
243        LIBM="-lm"
244      ;;
245    esac
246    
247    if test x"$HAS_MACPORTS" = xyes ; then
248      LDPATHS="-L/opt/local/lib"
249    elif test x"$HAS_FINK" = xyes ; then
250      LDPATHS="-L/sw/lib"
251    else
252      LDPATHS=""
253    fi
254    AC_SUBST(LDPATHS)
255    AC_SUBST(LD_NEEDS_RPATH)
256    AC_SUBST(LIBM)
257    
258    #################### CUDA configuration ####################
259    
260    dnl
261  dnl Look for NVIDIA's nvcc compiler  dnl Look for NVIDIA's nvcc compiler
262  dnl  dnl
263  AC_MSG_NOTICE([checking for CUDA and nvcc])  AC_MSG_NOTICE([checking for CUDA and nvcc])
# Line 93  Line 273 
273  AC_SUBST(NVCC)  AC_SUBST(NVCC)
274  AC_SUBST(CUDA_ENABLED)  AC_SUBST(CUDA_ENABLED)
275    
276    #################### end CUDA configuration ####################
277    
278    #################### OpenCL configuration ####################
279    
280  dnl  dnl
281  dnl check for OpenCL support  dnl check for OpenCL support
282  dnl  dnl
# Line 220  Line 404 
404  AC_SUBST(SIZEOF_CL_FLOAT)  AC_SUBST(SIZEOF_CL_FLOAT)
405  AC_SUBST(SIZEOF_CL_DOUBLE)  AC_SUBST(SIZEOF_CL_DOUBLE)
406    
407  dnl  #################### end OpenCL configuration ####################
 dnl check for various library routines etc.  
 dnl  
 AC_CHECK_FUNCS(posix_memalign)  
 if test x"$ac_cv_func_posix_memalign" != xyes ; then  
   AC_CHECK_FUNCS(memalign)  
   if test x"$ac_cv_func_posix_memalign" != xyes ; then  
     AC_CHECK_FUNCS(valloc)  
   fi  
 fi  
408    
409  AC_CHECK_FUNCS(mach_absolute_time)  #################### Teem configuration ####################
 AC_CHECK_TYPES([struct timespec])  
 AC_CHECK_FUNCS(pthread_barrier_init)  
   
 dnl  
 dnl check for clock_gettime.  On Linux, this requires librt.  
 dnl  
 save_LIBS=$LIBS  
 LIBS="-lrt $LIBS"  
 AC_MSG_CHECKING([for clock_gettime])  
 AC_LINK_IFELSE(  
   [AC_LANG_PROGRAM(  
     [[#include <time.h>]],  
     [[struct timespec t; clock_gettime(CLOCK_REALTIME, &t); ]])],  
   [ ac_cv_func_clock_gettime=yes;  
     AC_DEFINE(HAVE_CLOCK_GETTIME, [1], [is clock_gettime available?])],  
   [ac_cv_func_clock_gettime=no])  
 AC_MSG_RESULT($ac_cv_func_clock_gettime)  
 if test "$ac_cv_func_clock_gettime" = "no" ; then  
   LIBS=$save_LIBS  
 fi  
   
 AC_CHECK_FUNCS(pthread_getcpuclockid)  
 AC_CHECK_FUNCS(sigtimedwait nanosleep)  
   
 dnl  
 dnl check for sched_setaffinity  
 dnl  
 AC_CHECK_FUNCS(sched_setaffinity)  
   
 dnl  
 dnl check for pthread_setaffinity_np  
 dnl  
 save_LIBS=$LIBS  
 save_CFLAGS=$CFLAGS  
 LIBS="$PTHREAD_LIBS $LIBS"  
 CFLAGS="$PTHREAD_CFLAGS $CFLAGS"  
 AC_MSG_CHECKING([for pthread_setaffinity_np])  
 AC_LINK_IFELSE(  
   [AC_LANG_PROGRAM(  
     [[#include <pthread.h>]],  
     [[cpu_set_t s; pthread_setaffinity_np(pthread_self(), sizeof(s), &s); ]])],  
   [ ac_cv_func_pthread_setaffinity_np=yes;  
     AC_DEFINE(HAVE_PTHREAD_SETAFFINITY_NP, [1], [is pthread_setaffinity_np available?])],  
   [ac_cv_func_pthread_setaffinity_np=no])  
 AC_MSG_RESULT($ac_cv_func_pthread_setaffinity_np)  
 LIBS=$save_LIBS  
 CFLAGS=$save_CFLAGS  
   
 dnl  
 dnl check for Linux NUMA support (libnuma)  
 dnl  
 AC_CHECK_LIB(numa,numa_available)  
 if test "$ac_cv_lib_numa_numa_available" = "yes" ; then  
   PTHREAD_LIBS="$PTHREAD_LIBS -lnuma"  
 fi  
   
 dnl check for /proc/cpuinfo  
 dnl  
 AC_CHECK_FILES(/proc/cpuinfo)  
   
 dnl  
 dnl OS-specific linking issues  
 dnl  
 LD_NEEDS_RPATH=false;  
 LIBM=""  
 case "$host_os" in  
   darwin*) # On Mac OS X we check for the presence of macports and/or fink  
     if test -x /opt/local/bin/port ; then  
       HAS_MACPORTS=yes  
     else  
       HAS_MACPORTS=no  
     fi  
     if test -x /sw/bin/fink ; then  
       HAS_FINK=yes  
     else  
       HAS_FINK=no  
     fi  
   ;;  
   linux*) # On Linux we include the -rpath option to pick up dynamically-loaded libraries  
     LD_NEEDS_RPATH=true  
     LIBM="-lm"  
   ;;  
 esac  
   
 if test x"$HAS_MACPORTS" = xyes ; then  
   LDPATHS="-L/opt/local/lib"  
 elif test x"$HAS_FINK" = xyes ; then  
   LDPATHS="-L/sw/lib"  
 else  
   LDPATHS=""  
 fi  
 AC_SUBST(LDPATHS)  
 AC_SUBST(LD_NEEDS_RPATH)  
 AC_SUBST(LIBM)  
410    
411  dnl  dnl
412  dnl get the path to the TEEM installation.  We need this to build the Diderot  dnl get the path to the TEEM installation.  We need this to build the Diderot
# Line 337  Line 418 
418    [ac_cv_use_teem=$withval], [ac_cv_use_teem=no])    [ac_cv_use_teem=$withval], [ac_cv_use_teem=no])
419  if test x"$ac_cv_use_teem" = xno ; then  if test x"$ac_cv_use_teem" = xno ; then
420    TEEM_DIR=none    TEEM_DIR=none
421      AC_MSG_ERROR([unable to find teem; use --with-teem option to specify location])
422  else  else
423    AC_MSG_CHECKING([path to teem ($ac_cv_use_teem)])    AC_MSG_CHECKING([path to teem ($ac_cv_use_teem)])
424    case $ac_cv_use_teem in    case $ac_cv_use_teem in
# Line 350  Line 432 
432        AC_MSG_RESULT([yes])        AC_MSG_RESULT([yes])
433      else      else
434        TEEM_DIR=none        TEEM_DIR=none
435        AC_MSG_RESULT([no])        AC_MSG_RESULT([invalid path to teem])
436      fi      fi
437    else    else
438      TEEM_DIR=none      TEEM_DIR=none
439      AC_MSG_RESULT([no])      AC_MSG_RESULT([invalid path to teem])
440    fi    fi
441  fi  fi
442  if test x"$TEEM_DIR" = xnone ; then  if test x"$TEEM_DIR" = xnone ; then
443    AC_MSG_ERROR([unable to find teem; use --with-teem option to specify location])    AC_MSG_ERROR([unable to find teem])
444  fi  fi
445  dnl  dnl
446  dnl check that unu supports the dnorm command  dnl check that unu supports the dnorm command
# Line 378  Line 460 
460  fi  fi
461  AC_SUBST(TEEM_DIR)  AC_SUBST(TEEM_DIR)
462    
463  dnl ******************** SML/NJ configuration ********************  #################### end Teem configuration ####################
464    
465    #################### SML configuration ####################
466    
467  dnl  dnl
468  dnl We support building with both SML/NJ (the default) or MLton.  dnl We support building with both SML/NJ (the default) or MLton.
469  dnl  dnl
# Line 408  Line 493 
493    fi    fi
494  fi  fi
495    
496  if test $with_mlton = xno ; then  if test x"$with_mlton" = xno ; then
497    # we are using SML/NJ    # we are using SML/NJ
498    #    #
499    
# Line 449  Line 534 
534    AC_SUBST(ML_BUILD)    AC_SUBST(ML_BUILD)
535    SML=smlnj    SML=smlnj
536    
537      HEAP_IMAGE_DIR=$DIDEROT_BINDIR/.heap
538      INSTALL_SMLNJ_WRAPPER=$DIDEROT_BINDIR/install-sml-wrapper.sh
539      AC_SUBST(HEAP_IMAGE_DIR)
540      AC_SUBST(INSTALL_SMLNJ_WRAPPER)
541    
542  else  else
543    
544    # we are using MLton    # we are using MLton
545    MLTON=$with_mlton    MLTON=$with_mlton
546    AC_SUBST(MLTON)    AC_SUBST(MLTON)
547    SML=mlton    SML=mlton
548    
549  fi  fi
550  AC_SUBST(SML)  AC_SUBST(SML)
551    
552  dnl ******************** Documentation tools ********************  #################### SML configuration ####################
553    
554    #################### Documentation tools configuration ####################
555    
556  dnl check for doxygen  dnl check for doxygen
557  dnl  dnl
# Line 508  Line 602 
602  AC_SUBST(HIGHLIGHTER)  AC_SUBST(HIGHLIGHTER)
603  AC_SUBST(DBLATEX)  AC_SUBST(DBLATEX)
604    
605    #################### end Documentation tools configuration ####################
606    
607  dnl ******************** Paths ********************  #################### config.h ####################
608    
609  DIDEROT_ROOT=`pwd`  AC_DEFINE_UNQUOTED(DIDEROT_INCLUDE_PATH,["$DIDEROT_SRCDIR/lib/include"], [path for Diderot header files])
 DIDEROT_DOCDIR=$DIDEROT_ROOT/doc  
 DIDEROT_SRCDIR=$DIDEROT_ROOT/src  
 DIDEROT_LIBDIR=$DIDEROT_ROOT/lib  
 DIDEROT_BINDIR=$DIDEROT_ROOT/bin  
 DIDEROT_MKDIR=$DIDEROT_ROOT/mk  
   
 HEAP_IMAGE_DIR=$DIDEROT_BINDIR/.heap  
 INSTALL_SMLNJ_WRAPPER=$DIDEROT_BINDIR/install-sml-wrapper.sh  
   
 AC_SUBST(DIDEROT_ROOT)  
 AC_SUBST(DIDEROT_DOCDIR)  
 AC_SUBST(DIDEROT_SRCDIR)  
 AC_SUBST(DIDEROT_LIBDIR)  
 AC_SUBST(DIDEROT_BINDIR)  
 AC_SUBST(DIDEROT_MKDIR)  
 AC_SUBST(HEAP_IMAGE_DIR)  
 AC_SUBST(INSTALL_SMLNJ_WRAPPER)  
   
 dnl  
 dnl ******************** C compiler properties ********************  
 dnl  
   
 dnl  
 dnl run the compiler tests in 64-bit mode  
 dnl  
 save_CFLAGS=$CFLAGS  
 CFLAGS="$CFLAGS $CFLAG_MXX"  
   
 dnl  
 dnl check for gcc builtin atomic operations  
 dnl  
 AC_MSG_CHECKING([for builtin atomic operations])  
 AC_LINK_IFELSE(  
    [AC_LANG_PROGRAM([], [int foo1; int foo2 = __sync_fetch_and_add(&foo1, 1);])],  
    AC_MSG_RESULT(yes)  
    AC_DEFINE(  
     [HAVE_BUILTIN_ATOMIC_OPS], 1,  
     [Define to 1 if gcc compiler provides atomic operations.]),  
    AC_MSG_RESULT(no))  
   
 AC_C_BIGENDIAN  
   
 #  
 # determine the sizes of the standard C types  
 AC_CHECK_SIZEOF([int])  
 SIZEOF_C_INT=$ac_cv_sizeof_int  
 AC_CHECK_SIZEOF([long])  
 SIZEOF_C_LONG=$ac_cv_sizeof_long  
 AC_CHECK_SIZEOF([float])  
 SIZEOF_C_FLOAT=$ac_cv_sizeof_float  
 AC_CHECK_SIZEOF([double])  
 SIZEOF_C_DOUBLE=$ac_cv_sizeof_double  
   
 AC_SUBST(SIZEOF_C_INT)  
 AC_SUBST(SIZEOF_C_LONG)  
 AC_SUBST(SIZEOF_C_FLOAT)  
 AC_SUBST(SIZEOF_C_DOUBLE)  
   
 dnl  
 dnl restore CFLAGS  
 dnl  
 CFLAGS=$save_CFLAGS  
   
 dnl  
 dnl ******************** config.h stuff ********************  
 dnl  
   
 AC_DEFINE_UNQUOTED(DIDEROT_INCLUDE_PATH,["$DIDEROT_SRCDIR/include"], [path for Diderot header files])  
610    
611  AH_TOP([  AH_TOP([
612  /*  /*
613   * This code is part of the Diderot Project (http://diderot-language.cs.uchicago.edu)   * This code is part of the Diderot Project (http://diderot-language.cs.uchicago.edu)
614   *   *
615   * COPYRIGHT (c) 2015 The University of Chicago * All rights reserved.   * COPYRIGHT (c) 2016 The University of Chicago * All rights reserved.
616   */   */
617    
618  #ifndef _DIDEROT_CONFIG_H_  #ifndef _DIDEROT_CONFIG_H_
# Line 594  Line 621 
621  ])  ])
622  AH_BOTTOM([  AH_BOTTOM([
623    
 #ifdef NDEBUG  
 #define STATIC_INLINE   static inline  
 #else  
 #define STATIC_INLINE   static  
 #endif  
   
624  #endif /* !_DIDEROT_CONFIG_H_ */  #endif /* !_DIDEROT_CONFIG_H_ */
625  ])  ])
626    
627  dnl  #################### end config.h ####################
628  dnl ******************** write output ********************  
629  dnl  #################### write output ####################
630    
631  dnl The compiler Makefile depends on which SML system we are  dnl The compiler Makefile depends on which SML system we are
632  dnl using.  dnl using.
 AC_MSG_NOTICE([using $SML])  
633  if test x"$SML" = xmlton ; then  if test x"$SML" = xmlton ; then
634    COMPILER_MAKEFILE_IN=":src/compiler/Makefile_mlton.in"    COMPILER_MAKEFILE_IN=":src/compiler/Makefile_mlton.in"
635  else  else
# Line 624  Line 644 
644  dnl  doc/man/Makefile  dnl  doc/man/Makefile
645  dnl  src/clinfo/Makefile  dnl  src/clinfo/Makefile
646    src/compiler/Makefile"$COMPILER_MAKEFILE_IN"    src/compiler/Makefile"$COMPILER_MAKEFILE_IN"
647  dnl  src/lib/build/Makefile    src/lib/build/Makefile
648  dnl  src/lib/build/mk/build.gmk:src/lib/build/mk/build_gmk.in    src/lib/build/mk/build.gmk:src/lib/build/mk/build_gmk.in
649  dnl  test/MIP/Makefile  dnl  test/MIP/Makefile
650  dnl  test/probe/Makefile  dnl  test/probe/Makefile
651  dnl  test/iso2d-polyline/Makefile  dnl  test/iso2d-polyline/Makefile
# Line 639  Line 659 
659    src/compiler/options/version.sml:src/compiler/options/version_sml.in    src/compiler/options/version.sml:src/compiler/options/version_sml.in
660  )  )
661    
662  AC_CONFIG_HEADERS(src/include/Diderot/config.h:config/config_h.in)  AC_CONFIG_HEADERS(src/lib/include/diderot/config.h:config/config_h.in)
663    
664  dnl  dnl
665  dnl shell scripts  dnl shell scripts
# Line 647  Line 667 
667  AC_CONFIG_FILES([  AC_CONFIG_FILES([
668    bin/install-sml-wrapper.sh:config/install-sml-wrapper_sh.in    bin/install-sml-wrapper.sh:config/install-sml-wrapper_sh.in
669  ], [chmod +x bin/install-sml-wrapper.sh])  ], [chmod +x bin/install-sml-wrapper.sh])
670  # AC_CONFIG_FILES([  AC_CONFIG_FILES([
671  #   src/compiler/gen/file2str/file2str.sh:src/compiler/gen/file2str/file2str_sh.in    src/compiler/gen/fragments/mkfrags.sh:src/compiler/gen/fragments/mkfrags_sh.in
672  # ], [chmod +x src/compiler/gen/file2str/file2str.sh])  ], [chmod +x src/compiler/gen/fragments/mkfrags.sh])
673  # AC_CONFIG_FILES([  AC_CONFIG_FILES([
674  #   rtest/scripts/run.sh:rtest/scripts/run_sh.in    src/compiler/gen/fragments/mkmk.sh:src/compiler/gen/fragments/mkmk_sh.in
675  # ], [chmod +x rtest/scripts/run.sh])  ], [chmod +x src/compiler/gen/fragments/mkmk.sh])
676  # AC_CONFIG_FILES([  AC_CONFIG_FILES([
677  #   rtest/scripts/run-one.sh:rtest/scripts/run-one_sh.in    src/tests/rtest/scripts/run.sh:src/tests/rtest/scripts/run_sh.in
678  # ], [chmod +x rtest/scripts/run-one.sh])  ], [chmod +x src/tests/rtest/scripts/run.sh])
679    AC_CONFIG_FILES([
680      src/tests/rtest/scripts/run-one.sh:src/tests/rtest/scripts/run-one_sh.in
681    ], [chmod +x src/tests/rtest/scripts/run-one.sh])
682  #  #
683  # more regression tests; should merge with rtest at some point  # more regression tests; should merge with rtest at some point
684  #  #
# Line 671  Line 694 
694  dnl  dnl
695  dnl usage: MK_BUILD_DIR(<build-dir>, <target-platform>, <options>)  dnl usage: MK_BUILD_DIR(<build-dir>, <target-platform>, <options>)
696  dnl  dnl
697    dnl where the options are taken from [debug, parallel]
698    dnl
699  AC_DEFUN([MK_BUILD_DIR], [  AC_DEFUN([MK_BUILD_DIR], [
700      if test ! -d src/lib/build/$1 ; then      if test ! -d src/lib/build/$1 ; then
701        mkdir src/lib/build/$1        mkdir src/lib/build/$1
# Line 683  Line 708 
708      AC_CONFIG_FILES(src/lib/build/$1/Makefile)      AC_CONFIG_FILES(src/lib/build/$1/Makefile)
709    ])    ])
710    
711  #MK_BUILD_DIR(rt-c-f, c, [float])  MK_BUILD_DIR(rt-seq, sequential, [])
712  #MK_BUILD_DIR(rt-c-d, c, [double])  MK_BUILD_DIR(rt-seq-debug, sequential, [debug])
713  #MK_BUILD_DIR(rt-c-f-debug, c, [float debug])  MK_BUILD_DIR(rt-par, parallel, [parallel])
714  #MK_BUILD_DIR(rt-c-d-debug, c, [double debug])  MK_BUILD_DIR(rt-par-debug, parallel, [parallel debug])
 #MK_BUILD_DIR(rt-c-f-par, parallel, [parallel float])  
 #MK_BUILD_DIR(rt-c-d-par, parallel, [parallel double])  
 #MK_BUILD_DIR(rt-c-f-par-debug, parallel, [parallel float debug])  
 #MK_BUILD_DIR(rt-c-d-par-debug, parallel, [parallel double debug])  
715    
716  #if test x"$CL_ENABLED" = xtrue ; then  #if test x"$CL_ENABLED" = xtrue ; then
717  #  MK_BUILD_DIR(rt-cl-f, cl, [float])  #  MK_BUILD_DIR(rt-cl-f, opencl, [float])
718  #  MK_BUILD_DIR(rt-cl-d, cl, [double])  #  MK_BUILD_DIR(rt-cl-d, opencl, [double])
719  #  MK_BUILD_DIR(rt-cl-f-debug, cl, [float debug])  #  MK_BUILD_DIR(rt-cl-f-debug, opencl, [float debug])
720  #  MK_BUILD_DIR(rt-cl-d-debug, cl, [double debug])  #  MK_BUILD_DIR(rt-cl-d-debug, opencl, [double debug])
721  #fi  #fi
722    
723  AC_OUTPUT  AC_OUTPUT
724    
725    #################### end write output ####################

Legend:
Removed from v.3715  
changed lines
  Added in v.4239

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