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

SCM Repository

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

Diff of /branches/lamont/configure.ac

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

branches/vis12/configure.ac revision 1718, Sat Mar 10 23:03:02 2012 UTC branches/lamont/configure.ac revision 2364, Fri Apr 12 12:26:44 2013 UTC
# Line 1  Line 1 
1  dnl Process this file with autoconf to produce a configure script.  dnl Process this file with autoconf to produce a configure script.
2  dnl  dnl
3  dnl COPYRIGHT (c) 2010 The Diderot Project  dnl COPYRIGHT (c) 2012 The Diderot Project
4  dnl All rights reserved.  dnl All rights reserved.
5  dnl  dnl
6    
7  AC_INIT(diderot,0.1,)  AC_INIT(diderot,0.1,)
8    
9  AC_PREREQ(2.60)  AC_PREREQ(2.60)
10  AC_COPYRIGHT([[COPYRIGHT (c) 2011 The Diderot Project (http://diderot-language.cs.uchicago.edu)]])  AC_COPYRIGHT([[COPYRIGHT (c) 2012 The Diderot Project (http://diderot-language.cs.uchicago.edu)]])
11  AC_CONFIG_SRCDIR(src/dnorm/dnorm.c)  AC_CONFIG_SRCDIR(src/dnorm/dnorm.c)
12  AC_CONFIG_AUX_DIR(config)  AC_CONFIG_AUX_DIR(config)
13  AC_CONFIG_MACRO_DIR(config)  AC_CONFIG_MACRO_DIR(config)
# Line 47  Line 47 
47    AC_MSG_ERROR([Diderot requires c99 support])    AC_MSG_ERROR([Diderot requires c99 support])
48  fi  fi
49    
50    AC_ARG_ENABLE([32-bit],
51      AC_HELP_STRING([--enable-32-bit], [configure Diderot to produce 32-bit executables]),
52      [CFLAG_MXX="-m32"],
53      [CFLAG_MXX="-m64"])
54    
55  dnl extra C compiler options  dnl extra C compiler options
56  dnl  dnl
57  CFLAGS=""  CFLAGS=""
 CFLAG_M64="-m64"  
58  CFLAGS_BASE="-Wformat -Wreturn-type -Wuninitialized"  CFLAGS_BASE="-Wformat -Wreturn-type -Wuninitialized"
59  AC_SUBST(CFLAG_M64)  AC_SUBST(CFLAG_MXX)
60  AC_SUBST(CFLAGS_BASE)  AC_SUBST(CFLAGS_BASE)
61    
62  dnl  dnl
63    dnl standard headers
64    dnl
65    AC_HEADER_STDBOOL
66    
67    dnl
68  dnl check for pthreads support  dnl check for pthreads support
69  dnl  dnl
70  ACX_PTHREAD()  ACX_PTHREAD
71    
72  dnl check for doxygen  dnl check for doxygen
73  dnl  dnl
# Line 107  Line 116 
116  dnl  dnl
117  dnl check for OpenCL support  dnl check for OpenCL support
118  dnl  dnl
119  CL_LIBS="none"  LIBS_CL="none"
120  case "$host_os" in  case "$host_os" in
121    darwin*) # On Mac OS X we check for installed frameworks    darwin*) # On Mac OS X we check for installed frameworks
122      AX_CHECK_FRAMEWORK([OpenCL], [CL_LIBS="-framework OpenCL"], [])      AX_CHECK_FRAMEWORK([OpenCL], [LIBS_CL="-framework OpenCL"], [])
123    ;;    ;;
124    *)    *)
125      AC_CHECK_LIB([OpenCL],[clGetPlatformIDs],[CL_LIBS="-lOpenCL"])      AC_CHECK_LIB([OpenCL],[clGetPlatformIDs],[LIBS_CL="-lOpenCL"])
126    ;;    ;;
127  esac  esac
128  if test x"$CL_LIBS" = xnone ; then  if test x"$LIBS_CL" = xnone ; then
129    AC_MSG_WARN([no OpenCL library found])    AC_MSG_WARN([no OpenCL library found])
130    CL_ENABLED=false    CL_ENABLED=false
131    CL_VERSION=0    CL_VERSION=0
132  else  else
133    CL_ENABLED=true    CL_ENABLED=true
134    AC_CHECK_HEADERS([CL/cl.h OpenCL/cl.h])    CPPFLAGS_CL=""
135      CL_HEADER=""
136      AC_CHECK_HEADERS([CL/cl.h OpenCL/cl.h], [HAVE_CL_H="yes"; CL_HEADER="$ac_header"; break], [HAVE_CL_H="no"])
137      if test x"$HAVE_CL_H" = xno ; then
138        # check for AMD's SDK
139        AC_MSG_CHECKING([for cl.h in AMD's SDK])
140        if test -d /opt/AMDAPP/include/CL ; then
141          HAVE_CL_H="yes"
142          CL_HEADER="/opt/AMDAPP/include/CL/cl.h"
143          AC_DEFINE([HAVE_CL_CL_H])
144          CPPFLAGS_CL="-I/opt/AMDAPP/include"
145        fi
146        AC_MSG_RESULT([$HAVE_CL_H])
147      fi
148      if test x"$HAVE_CL_H" = xno ; then
149        # check for NVIDIA's SDK
150        AC_MSG_CHECKING([for NVIDIA's SDK cl.h])
151        if test -d /usr/local/cuda/include/CL ; then
152          HAVE_CL_H="yes"
153          AC_DEFINE([HAVE_CL_CL_H])
154          CPPFLAGS_CL="-I/usr/local/cuda/include"
155        fi
156        AC_MSG_RESULT([$HAVE_CL_H])
157      fi
158      if test x"$HAVE_CL_H" = xno ; then
159        AC_MSG_WARN([no cl.h found])
160        CL_ENABLED=false
161        CL_VERSION=0
162        SIZEOF_CL_INT=0
163        SIZEOF_CL_LONG=0
164        SIZEOF_CL_FLOAT=0
165        SIZEOF_CL_DOUBLE=0
166      else
167    # check the cl.h header for which version of OpenCL is supported    # check the cl.h header for which version of OpenCL is supported
168    AC_LANG([C])    AC_LANG([C])
169        save_CPPFLAGS=$CPPFLAGS
170        CPPFLAGS="$CPPFLAGS_CL $CPPFLAGS"
171    AC_LINK_IFELSE([AC_LANG_PROGRAM([[    AC_LINK_IFELSE([AC_LANG_PROGRAM([[
172  #include <stdio.h>  #include <stdio.h>
173  # ifdef HAVE_CL_CL_H  # ifdef HAVE_CL_CL_H
# Line 148  Line 191 
191  dnl the specification specifies the behavior, but it was unspecified in 1.0.  dnl the specification specifies the behavior, but it was unspecified in 1.0.
192  dnl  dnl
193    AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[    AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
194  # ifdef HAVE_CL_CL_H  #include "$CL_HEADER"
195  #   include <CL/cl.h>  ]],
 # elif defined(HAVE_OPENCL_CL_H)  
 #   include <OpenCL/cl.h>  
 # else  
 #   error no cl.h  
 # endif]],  
196      [[cl_float4 x; x[0] = 0.0;]])],      [[cl_float4 x; x[0] = 0.0;]])],
197      [AC_DEFINE([CL_HOST_VECTORS_ARE_ARRAYS],[1],[host vector types are arrays])],      [AC_DEFINE([CL_HOST_VECTORS_ARE_ARRAYS],[1],[host vector types are arrays])],
198  dnl  dnl
199  dnl not arrays, so try the OpenCL 1.1 structure representation  dnl not arrays, so try the OpenCL 1.1 structure representation
200  dnl  dnl
201      [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[      [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
202  # ifdef HAVE_CL_CL_H  #include "$CL_HEADER"
203  #   include <CL/cl.h>  ]],
 # elif defined(HAVE_OPENCL_CL_H)  
 #   include <OpenCL/cl.h>  
 # else  
 #   error no cl.h  
 # endif]],  
204      [[cl_float4 x; x.s[0] = 0.0;]])],      [[cl_float4 x; x.s[0] = 0.0;]])],
205      [AC_DEFINE([CL_HOST_VECTORS_ARE_STRUCTS],[1],[host vector types are structs])],      [AC_DEFINE([CL_HOST_VECTORS_ARE_STRUCTS],[1],[host vector types are structs])],
206      [AC_MSG_ERROR([unable to figure out host types for OpenCL vectors])])])      [AC_MSG_ERROR([unable to figure out host types for OpenCL vectors])])])
207      # restore saved CPPFLAGS
208        CPPFLAGS=$save_CPPFLAGS
209    # substitutions    # substitutions
210    AC_SUBST(CL_LIBS)      AC_SUBST(LIBS_CL)
211        AC_SUBST(CPPFLAGS_CL)
212      #
213      # determine the sizes of the host-side OpenCL types
214      AC_CHECK_SIZEOF([cl_int], [], [#include "$CL_HEADER"])
215      SIZEOF_CL_INT=$ac_cv_sizeof_cl_int
216      AC_CHECK_SIZEOF([cl_long], [], [#include "$CL_HEADER"])
217      SIZEOF_CL_LONG=$ac_cv_sizeof_cl_long
218      AC_CHECK_SIZEOF([cl_float], [], [#include "$CL_HEADER"])
219      SIZEOF_CL_FLOAT=$ac_cv_sizeof_cl_float
220      AC_CHECK_SIZEOF([cl_double], [], [#include "$CL_HEADER"])
221      SIZEOF_CL_DOUBLE=$ac_cv_sizeof_cl_double
222      fi
223  fi  fi
224  AC_SUBST(CL_ENABLED)  AC_SUBST(CL_ENABLED)
225  AC_SUBST(CL_VERSION)  AC_SUBST(CL_VERSION)
226    
227    AC_SUBST(SIZEOF_CL_INT)
228    AC_SUBST(SIZEOF_CL_LONG)
229    AC_SUBST(SIZEOF_CL_FLOAT)
230    AC_SUBST(SIZEOF_CL_DOUBLE)
231    
232  dnl  dnl
233  dnl check for various library routines etc.  dnl check for various library routines etc.
234  dnl  dnl
# Line 313  Line 365 
365    fi    fi
366  fi  fi
367  if test x"$TEEM_DIR" = xnone ; then  if test x"$TEEM_DIR" = xnone ; then
368    AC_MSG_ERROR([unable to find teem])    AC_MSG_ERROR([unable to find teem; use --with-teem option to specify location])
369  fi  fi
370  AC_SUBST(TEEM_DIR)  AC_SUBST(TEEM_DIR)
371    
# Line 324  Line 376 
376  dnl  dnl
377  CHECK_SMLNJ([AC_MSG_ERROR([unable to find SML/NJ installation; check your PATH or set SMLNJ_CMD])])  CHECK_SMLNJ([AC_MSG_ERROR([unable to find SML/NJ installation; check your PATH or set SMLNJ_CMD])])
378  if test $SMLNJ_MAJOR_VERSION -lt 110 \  if test $SMLNJ_MAJOR_VERSION -lt 110 \
379    -o $SMLNJ_MINOR_VERSION -lt 73    -o $SMLNJ_MINOR_VERSION -lt 74
380  then  then
381    AC_MSG_ERROR([installation requires SML/NJ version 110.73+])    AC_MSG_ERROR([installation requires SML/NJ version 110.74+])
382  fi  fi
383  AC_SUBST(SMLNJ_VERSION)  AC_SUBST(SMLNJ_VERSION)
384    
# Line 386  Line 438 
438  dnl run the compiler tests in 64-bit mode  dnl run the compiler tests in 64-bit mode
439  dnl  dnl
440  save_CFLAGS=$CFLAGS  save_CFLAGS=$CFLAGS
441  CFLAGS="$CFLAGS $CFLAG_M64"  CFLAGS="$CFLAGS $CFLAG_MXX"
442    
443  dnl  dnl
444  dnl check for gcc builtin atomic operations  dnl check for gcc builtin atomic operations
# Line 402  Line 454 
454    
455  AC_C_BIGENDIAN  AC_C_BIGENDIAN
456    
457    #
458    # determine the sizes of the standard C types
459    AC_CHECK_SIZEOF([int])
460    SIZEOF_C_INT=$ac_cv_sizeof_int
461    AC_CHECK_SIZEOF([long])
462    SIZEOF_C_LONG=$ac_cv_sizeof_long
463    AC_CHECK_SIZEOF([float])
464    SIZEOF_C_FLOAT=$ac_cv_sizeof_float
465    AC_CHECK_SIZEOF([double])
466    SIZEOF_C_DOUBLE=$ac_cv_sizeof_double
467    
468    AC_SUBST(SIZEOF_C_INT)
469    AC_SUBST(SIZEOF_C_LONG)
470    AC_SUBST(SIZEOF_C_FLOAT)
471    AC_SUBST(SIZEOF_C_DOUBLE)
472    
473  dnl  dnl
474  dnl restore CFLAGS  dnl restore CFLAGS
475  dnl  dnl
# Line 425  Line 493 
493  ])  ])
494  AH_BOTTOM([  AH_BOTTOM([
495    
496    #ifdef NDEBUG
497    #define STATIC_INLINE   static inline
498    #else
499    #define STATIC_INLINE   static
500    #endif
501    
502  #endif /* !_DIDEROT_CONFIG_H_ */  #endif /* !_DIDEROT_CONFIG_H_ */
503  ])  ])
504    
# Line 444  Line 518 
518    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
519    test/MIP/Makefile    test/MIP/Makefile
520    test/probe/Makefile    test/probe/Makefile
521      test/halftone/Makefile
522      test/implicit-surface/Makefile
523      test/implicit-surface/gl_version/Makefile
524      test/boids/Makefile
525      test/iso2d-polyline/Makefile
526    test/vr-lite-cam/Makefile    test/vr-lite-cam/Makefile
527      test/hlic/Makefile
528  dnl  dnl
529  dnl ***** SML source files *****  dnl ***** SML source files *****
530    src/compiler/fields/run-dnorm.sml:src/compiler/fields/run-dnorm_sml.in    src/compiler/nrrd/run-dnorm.sml:src/compiler/nrrd/run-dnorm_sml.in
531    src/compiler/common/paths.sml:src/compiler/common/paths_sml.in    src/compiler/common/paths.sml:src/compiler/common/paths_sml.in
532      src/compiler/common/size-of.sml:src/compiler/common/size-of_sml.in
533  )  )
534    
535  AC_CONFIG_HEADERS(src/include/Diderot/config.h:config/config_h.in)  AC_CONFIG_HEADERS(src/include/Diderot/config.h:config/config_h.in)
# Line 462  Line 543 
543  AC_CONFIG_FILES([  AC_CONFIG_FILES([
544    src/compiler/gen/file2str/file2str.sh:src/compiler/gen/file2str/file2str_sh.in    src/compiler/gen/file2str/file2str.sh:src/compiler/gen/file2str/file2str_sh.in
545  ], [chmod +x src/compiler/gen/file2str/file2str.sh])  ], [chmod +x src/compiler/gen/file2str/file2str.sh])
546    AC_CONFIG_FILES([
547      rtest/scripts/run.sh:rtest/scripts/run_sh.in
548    ], [chmod +x rtest/scripts/run.sh])
549    AC_CONFIG_FILES([
550      rtest/scripts/run-one.sh:rtest/scripts/run-one_sh.in
551    ], [chmod +x rtest/scripts/run-one.sh])
552    
553  dnl  dnl
554  dnl generate makefiles for runtime library builds  dnl generate makefiles for runtime library builds

Legend:
Removed from v.1718  
changed lines
  Added in v.2364

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