annotate src/capnproto-0.6.0/c++/configure.ac @ 169:223a55898ab9 tip default

Add null config files
author Chris Cannam <cannam@all-day-breakfast.com>
date Mon, 02 Mar 2020 14:03:47 +0000
parents 45360b968bf4
children
rev   line source
cannam@147 1 ## Process this file with autoconf to produce configure.
cannam@147 2
cannam@147 3 AC_INIT([Capn Proto],[0.6.0],[capnproto@googlegroups.com],[capnproto-c++])
cannam@147 4
cannam@147 5 AC_CONFIG_SRCDIR([src/capnp/layout.c++])
cannam@147 6 AC_CONFIG_AUX_DIR([build-aux])
cannam@147 7 AC_CONFIG_HEADERS([config.h])
cannam@147 8 AC_CONFIG_MACRO_DIR([m4])
cannam@147 9
cannam@147 10 # autoconf's default CXXFLAGS are usually "-g -O2". A far more reasonable
cannam@147 11 # default is -O2 -NDEBUG.
cannam@147 12 AS_IF([test "x${ac_cv_env_CFLAGS_set}" = "x"],
cannam@147 13 [CFLAGS="-O2 -DNDEBUG"])
cannam@147 14 AS_IF([test "x${ac_cv_env_CXXFLAGS_set}" = "x"],
cannam@147 15 [CXXFLAGS="-O2 -DNDEBUG"])
cannam@147 16
cannam@147 17 AM_INIT_AUTOMAKE([tar-ustar])
cannam@147 18
cannam@147 19 AC_ARG_WITH([external-capnp],
cannam@147 20 [AS_HELP_STRING([--with-external-capnp],
cannam@147 21 [use the system capnp binary (or the one specified with $CAPNP) instead of compiling a new
cannam@147 22 one (useful for cross-compiling)])],
cannam@147 23 [external_capnp=yes],[external_capnp=no])
cannam@147 24
cannam@147 25 AC_ARG_ENABLE([reflection], [
cannam@147 26 AS_HELP_STRING([--disable-reflection], [
cannam@147 27 compile Cap'n Proto in "lite mode", in which all reflection APIs (schema.h, dynamic.h, etc.)
cannam@147 28 are not included. Produces a smaller library at the cost of features. All programs built
cannam@147 29 against the library MUST be compiled with -DCAPNP_LITE=1. Note that because the compiler
cannam@147 30 itself uses reflection in its implementation, you must also use --with-external-capnp when
cannam@147 31 using this option.])
cannam@147 32 ], [
cannam@147 33 case "${enableval}" in
cannam@147 34 yes)
cannam@147 35 lite_mode=no
cannam@147 36 ;;
cannam@147 37 no)
cannam@147 38 lite_mode=yes
cannam@147 39 AS_IF([test "$external_capnp" != "yes"], [
cannam@147 40 AC_MSG_ERROR([you must specify --with-external-capnp when using --disable-reflection])
cannam@147 41 ])
cannam@147 42 ;;
cannam@147 43 *)
cannam@147 44 AC_MSG_ERROR([bad value ${enableval} for --enable-reflection])
cannam@147 45 ;;
cannam@147 46 esac
cannam@147 47 ], [lite_mode=no])
cannam@147 48
cannam@147 49 # Checks for programs.
cannam@147 50 AC_PROG_CC
cannam@147 51 AC_PROG_CXX
cannam@147 52 AC_LANG([C++])
cannam@147 53 AX_CXX_COMPILE_STDCXX_11
cannam@147 54
cannam@147 55 AS_CASE("${host_os}", *mingw*, [
cannam@147 56 # We don't use pthreads on MinGW.
cannam@147 57 PTHREAD_CFLAGS="-mthreads"
cannam@147 58 PTHREAD_LIBS=""
cannam@147 59 PTHREAD_CC=""
cannam@147 60 ASYNC_LIBS="-lws2_32"
cannam@147 61 AC_SUBST(PTHREAD_LIBS)
cannam@147 62 AC_SUBST(PTHREAD_CFLAGS)
cannam@147 63 AC_SUBST(PTHREAD_CC)
cannam@147 64 AC_SUBST(ASYNC_LIBS)
cannam@147 65 ], *, [
cannam@147 66 ACX_PTHREAD
cannam@147 67 ASYNC_LIBS=""
cannam@147 68 AC_SUBST(ASYNC_LIBS)
cannam@147 69 ])
cannam@147 70
cannam@147 71 LT_INIT
cannam@147 72
cannam@147 73 AS_IF([test "$external_capnp" != "no"], [
cannam@147 74 AS_IF([test "x$CAPNP" = "x"], [CAPNP="capnp"], [with_capnp=yes])
cannam@147 75 AS_IF([test "x$CAPNPC_CXX" = "x"], [
cannam@147 76 # CAPNPC_CXX was not specified. Choose a reasonable default.
cannam@147 77 AS_CASE([$CAPNP], [*/*], [
cannam@147 78 # $CAPNP contains a slash, so it's not on $PATH. Assume capnpc-c++ is not either, but is
cannam@147 79 # in the same directory.
cannam@147 80 CAPNPC_CXX=`dirname $CAPNP`/capnpc-c++
cannam@147 81 ], [
cannam@147 82 # $CAPNP is on $PATH, so tell it to find the plugin on $PATH as well.
cannam@147 83 CAPNPC_CXX="c++"
cannam@147 84 ])
cannam@147 85 ])
cannam@147 86 AC_SUBST([CAPNP])
cannam@147 87 AC_SUBST([CAPNPC_CXX])
cannam@147 88 ])
cannam@147 89 AM_CONDITIONAL([USE_EXTERNAL_CAPNP], [test "$external_capnp" != "no"])
cannam@147 90
cannam@147 91 AM_CONDITIONAL([LITE_MODE], [test "$lite_mode" = "yes"])
cannam@147 92
cannam@147 93 AS_IF([test "$lite_mode" = "yes"], [
cannam@147 94 CXXFLAGS="-DCAPNP_LITE $CXXFLAGS"
cannam@147 95 CAPNP_LITE_FLAG=-DCAPNP_LITE
cannam@147 96 ])
cannam@147 97 AC_SUBST([CAPNP_LITE_FLAG])
cannam@147 98
cannam@147 99 AC_SEARCH_LIBS(sched_yield, rt)
cannam@147 100
cannam@147 101 # Users will need to use the same -stdlib as us so we'd better let pkg-config know about it.
cannam@147 102 STDLIB_FLAG=`echo "$CXX $CXXFLAGS" | grep -o ' [[-]]stdlib=[[^ ]]*'`
cannam@147 103 AC_SUBST([STDLIB_FLAG])
cannam@147 104
cannam@147 105 LIBS="$PTHREAD_LIBS $LIBS"
cannam@147 106 CXXFLAGS="$CXXFLAGS $PTHREAD_CFLAGS"
cannam@147 107
cannam@147 108 AC_CONFIG_FILES([Makefile capnp.pc capnp-rpc.pc capnp-json.pc kj.pc kj-async.pc])
cannam@147 109 AC_OUTPUT