|
| 1 | +# -*- Autoconf -*- |
| 2 | +# Process this file with autoconf to produce a configure script. |
| 3 | + |
| 4 | +AC_PREREQ(2.69) |
| 5 | +AC_INIT([cpp-pthread], [1.0.0], [[email protected]]) |
| 6 | +AC_LANG(C++) |
| 7 | +AC_CONFIG_SRCDIR([thread.cpp]) |
| 8 | +AC_CONFIG_AUX_DIR([/usr/bin ../ ../bin]) |
| 9 | +AC_CONFIG_HEADERS([../include/pthread/config.h]) |
| 10 | +AC_DEFINE_UNQUOTED(CPP_THREAD_VERSION, ["version: $PACKAGE_VERSION - branch: <branch> - compiled on `uname -sv`."], [pthread C++ wrapper.]) |
| 11 | + |
| 12 | +# Checks for programs. |
| 13 | +AC_PROG_CXX([xlC_r xlC gcc cl KCC CC cxx cc++ aCC c++ g++]) |
| 14 | +AC_PROG_CC([xlc xlc_r gcc cl cc]) |
| 15 | +AC_CHECK_PROG([AR],[ar],[ar -rv]) |
| 16 | +AC_CHECK_PROG([MV],[mv],[mv],[echo "no mv command found"]) |
| 17 | +AC_CHECK_PROG([BEAUTIFIER],[uncrustify],[uncrustify -l CPP --replace -c ../crust.cfg *.bsr *.bcl *.cpp *.hpp],[echo \"install crustify to run beautifier\"]) |
| 18 | +AC_PROG_RANLIB |
| 19 | + |
| 20 | +CXXFLAGS="$CXXFLAGS -I ../include -I ./" |
| 21 | +LDFLAGS="$LDFLAGS -L ../lib" |
| 22 | + |
| 23 | +AC_CHECK_SIZEOF([long]) |
| 24 | +if test $ac_cv_sizeof_long == "8" |
| 25 | +then |
| 26 | + AC_SUBST(BITS,"64") |
| 27 | +else |
| 28 | + AC_MSG_RESULT([using 32 bits (default)]) |
| 29 | + AC_SUBST(BITS,"32") |
| 30 | +fi |
| 31 | + |
| 32 | +OBJECTS="" |
| 33 | +for src in *.cpp |
| 34 | +do |
| 35 | + obj=`basename $src .cpp`.o |
| 36 | + OBJECTS="$OBJECTS $obj" |
| 37 | +done |
| 38 | +AC_SUBST(OBJECTS,$OBJECTS) |
| 39 | + |
| 40 | +AC_MSG_CHECKING([for specific $CXX compiler options]) |
| 41 | +case "$CXX" in |
| 42 | + xlC_r | xlC) |
| 43 | + CXXFLAGS="-bh:5 -qlanglvl=extended0x -qwarn0x -qsourcetype=c++ -O $CXXFLAGS" |
| 44 | + AC_MSG_RESULT([yes]) |
| 45 | + ;; |
| 46 | + g++ | gcc) |
| 47 | + CXXFLAGS="-x c++ -std=c++11 -frtti $CXXFLAGS " |
| 48 | + AC_MSG_RESULT([yes]) |
| 49 | + ;; |
| 50 | + *) |
| 51 | + AC_MSG_RESULT(none found.) |
| 52 | +esac |
| 53 | + |
| 54 | +CFLAGS=$CXXFLAGS |
| 55 | +CPPFLAGS="$CPPFLAGS $CFLAGS" |
| 56 | + |
| 57 | +# Checks for libraries. |
| 58 | +AC_CHECK_LIB([pthread], [pthread_create]) |
| 59 | + |
| 60 | +# Checks for header files. |
| 61 | +#AC_HEADER_STDC |
| 62 | +AC_CHECK_HEADERS([nl_types.h stdlib.h string.h unistd.h]) |
| 63 | + |
| 64 | +AC_CHECK_HEADER([mutex], [AC_DEFINE([HAVE_CPP11_MUTEX])]) |
| 65 | +AC_CHECK_HEADER([chrono], [AC_DEFINE([HAVE_CPP11_CHRONO])]) |
| 66 | +AC_CHECK_HEADER([thread], [AC_DEFINE([HAVE_CPP11_THREAD])]) |
| 67 | + |
| 68 | +# Checks for typedefs, structures, and compiler characteristics. |
| 69 | +#AC_C_CONST |
| 70 | +#AC_C_INLINE |
| 71 | +#AC_HEADER_TIME |
| 72 | + |
| 73 | +# Checks for library functions. |
| 74 | +#AC_TYPE_SIGNAL |
| 75 | + |
| 76 | +# Checks for typedefs, structures, and compiler characteristics. |
| 77 | +AC_HEADER_STDBOOL |
| 78 | + |
| 79 | +# Checks for library functions. |
| 80 | +#AC_FUNC_ERROR_AT_LINE |
| 81 | +#AC_FUNC_MALLOC |
| 82 | +AC_CHECK_FUNCS([gettimeofday]) |
| 83 | + |
| 84 | +LDFLAGS="$LDFLAGS $LIBS" |
| 85 | + |
| 86 | +AC_CONFIG_FILES([Makefile]) |
| 87 | +AC_OUTPUT |
| 88 | + |
0 commit comments