David Reiss | feab773 | 2009-03-30 22:52:44 +0000 | [diff] [blame] | 1 | # |
| 2 | # Licensed to the Apache Software Foundation (ASF) under one |
| 3 | # or more contributor license agreements. See the NOTICE file |
| 4 | # distributed with this work for additional information |
| 5 | # regarding copyright ownership. The ASF licenses this file |
| 6 | # to you under the Apache License, Version 2.0 (the |
| 7 | # "License"); you may not use this file except in compliance |
| 8 | # with the License. You may obtain a copy of the License at |
| 9 | # |
| 10 | # http://www.apache.org/licenses/LICENSE-2.0 |
| 11 | # |
| 12 | # Unless required by applicable law or agreed to in writing, |
| 13 | # software distributed under the License is distributed on an |
| 14 | # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| 15 | # KIND, either express or implied. See the License for the |
| 16 | # specific language governing permissions and limitations |
| 17 | # under the License. |
| 18 | # |
| 19 | |
T Jake Luciani | 03ec1e4 | 2011-01-27 02:53:57 +0000 | [diff] [blame] | 20 | AC_PREREQ(2.65) |
Jens Geyer | 4aa95df | 2015-04-03 12:37:03 +0200 | [diff] [blame] | 21 | AC_CONFIG_MACRO_DIR([./aclocal]) |
Marc Slemko | b09f588 | 2006-08-23 22:03:34 +0000 | [diff] [blame] | 22 | |
jfarrell | 384647d | 2018-10-16 22:36:46 -0400 | [diff] [blame] | 23 | AC_INIT([thrift], [0.12.0]) |
Marc Slemko | b09f588 | 2006-08-23 22:03:34 +0000 | [diff] [blame] | 24 | |
| 25 | AC_CONFIG_AUX_DIR([.]) |
| 26 | |
Jens Geyer | 8677719 | 2015-07-25 15:59:46 +0200 | [diff] [blame] | 27 | AM_INIT_AUTOMAKE([1.13 subdir-objects tar-ustar]) |
Bryan Duxbury | b005c1f | 2011-02-09 17:05:11 +0000 | [diff] [blame] | 28 | PKG_PROG_PKG_CONFIG |
Marc Slemko | b09f588 | 2006-08-23 22:03:34 +0000 | [diff] [blame] | 29 | |
David Reiss | d683219 | 2007-09-05 00:47:32 +0000 | [diff] [blame] | 30 | AC_ARG_VAR([PY_PREFIX], [Prefix for installing Python modules. |
| 31 | (Normal --prefix is ignored for Python because |
| 32 | Python has different conventions.) |
| 33 | Default = "/usr"]) |
David Reiss | cdd6f3c | 2008-03-04 21:10:29 +0000 | [diff] [blame] | 34 | AS_IF([test "x$PY_PREFIX" = x], [PY_PREFIX="/usr"]) |
David Reiss | d683219 | 2007-09-05 00:47:32 +0000 | [diff] [blame] | 35 | |
David Reiss | f0c21a7 | 2008-07-11 01:26:16 +0000 | [diff] [blame] | 36 | AC_ARG_VAR([JAVA_PREFIX], [Prefix for installing the Java lib jar. |
Randy Abernethy | c295c82 | 2016-02-16 08:22:49 -0800 | [diff] [blame] | 37 | Default = "/usr/local/lib"]) |
| 38 | AS_IF([test "x$JAVA_PREFIX" != x], [JAVA_PREFIX="$JAVA_PREFIX/usr/local/lib"], |
| 39 | [test "x$PREFIX" != x], [JAVA_PREFIX="$PREFIX/usr/local/lib"], |
| 40 | [JAVA_PREFIX="/usr/local/lib"]) |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 41 | |
Bryan Duxbury | 3f0b526 | 2010-05-12 21:31:58 +0000 | [diff] [blame] | 42 | AC_ARG_VAR([RUBY_PREFIX], [Prefix for installing Ruby modules. |
| 43 | (Normal --prefix is ignored for Ruby because |
| 44 | Ruby has different conventions.) |
| 45 | Default = none, let ruby setup decide]) |
| 46 | |
Bryan Duxbury | 6a68187 | 2010-05-02 22:39:31 +0000 | [diff] [blame] | 47 | AC_ARG_VAR([PHP_PREFIX], [Prefix for installing PHP modules. |
| 48 | (Normal --prefix is ignored for PHP because |
| 49 | PHP has different conventions.) |
| 50 | Default = "/usr/lib/php"]) |
| 51 | AS_IF([test "x$PHP_PREFIX" = x], [PHP_PREFIX="/usr/lib/php"]) |
| 52 | |
Bryan Duxbury | 89200e1 | 2010-08-25 17:09:02 +0000 | [diff] [blame] | 53 | AC_ARG_VAR([PHP_CONFIG_PREFIX], |
| 54 | [Prefix for installing PHP extension module .ini file. |
| 55 | (Normal --prefix is ignored for PHP because PHP has |
| 56 | different conventions.) |
| 57 | Default = "/etc/php.d"]) |
| 58 | AS_IF([test "x$PHP_CONFIG_PREFIX" = x], [PHP_CONFIG_PREFIX="/etc/php.d"]) |
| 59 | |
Jake Farrell | 05e0cdb | 2011-05-05 13:45:26 +0000 | [diff] [blame] | 60 | AC_ARG_VAR([INSTALLDIRS], [When installing Perl modules, specifies which |
| 61 | of the sets of installation directories |
| 62 | to choose: perl, site or vendor. |
| 63 | Default = "vendor"]) |
| 64 | AS_IF([test "x$INSTALLDIRS" = x], [INSTALLDIRS="vendor"]) |
| 65 | |
David Reiss | c07057e | 2010-06-11 17:57:32 +0000 | [diff] [blame] | 66 | AC_ARG_VAR([PERL_PREFIX], [Prefix for installing Perl modules. |
| 67 | (Normal --prefix is ignored for Perl because |
| 68 | Perl has different conventions.) |
Jake Farrell | 05e0cdb | 2011-05-05 13:45:26 +0000 | [diff] [blame] | 69 | Ignored, when INSTALLDIRS set to site or vendor. |
David Reiss | c07057e | 2010-06-11 17:57:32 +0000 | [diff] [blame] | 70 | Default = "/usr/local/lib"]) |
| 71 | AS_IF([test "x$PERL_PREFIX" = x], [PERL_PREFIX="/usr/local"]) |
| 72 | |
Anthony F. Molinaro | a5df7c7 | 2010-09-27 17:22:17 +0000 | [diff] [blame] | 73 | AC_ARG_VAR([CABAL_CONFIGURE_FLAGS], |
| 74 | [Extra flags to pass to cabal: "cabal Setup.lhs configure $CABAL_CONFIGURE_FLAGS". |
| 75 | (Typically used to set --user or force --global.)]) |
| 76 | |
| 77 | AC_SUBST(CABAL_CONFIGURE_FLAGS) |
| 78 | |
Jake Farrell | b95b0ff | 2012-03-22 21:49:10 +0000 | [diff] [blame] | 79 | AC_ARG_VAR([D_IMPORT_PREFIX], [Prefix for installing D modules. |
| 80 | [INCLUDEDIR/d2]]) |
| 81 | AS_IF([test "x$D_IMPORT_PREFIX" = x], [D_IMPORT_PREFIX="${includedir}/d2"]) |
| 82 | |
| 83 | AC_ARG_VAR([DMD_LIBEVENT_FLAGS], [DMD flags for linking libevent (auto-detected if not set).]) |
| 84 | AC_ARG_VAR([DMD_OPENSSL_FLAGS], [DMD flags for linking OpenSSL (auto-detected if not set).]) |
| 85 | |
Thomas Petazzoni | 1744cdc | 2017-08-26 00:10:40 +0200 | [diff] [blame] | 86 | AC_ARG_VAR([THRIFT], [Path to the thrift tool (needed for cross-compilation).]) |
| 87 | AS_IF([test "x$THRIFT" = x], [THRIFT=`pwd`/compiler/cpp/thrift]) |
| 88 | |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 89 | AC_PROG_CC |
| 90 | AC_PROG_CPP |
| 91 | AC_PROG_CXX |
| 92 | AC_PROG_INSTALL |
| 93 | AC_PROG_LIBTOOL |
| 94 | AC_PROG_MAKE_SET |
Roger Meier | 3974aab | 2014-07-14 20:22:12 +0200 | [diff] [blame] | 95 | AC_PROG_BISON(2.5) |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 96 | AC_PROG_YACC |
| 97 | AC_PROG_LEX |
| 98 | AM_PROG_LEX |
David Reiss | 7ed4b98 | 2008-02-11 23:24:47 +0000 | [diff] [blame] | 99 | AC_PROG_LN_S |
| 100 | AC_PROG_MKDIR_P |
Christian Lavoie | afc6d8f | 2011-02-20 02:39:19 +0000 | [diff] [blame] | 101 | AC_PROG_AWK |
| 102 | AC_PROG_RANLIB |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 103 | |
| 104 | AC_LANG([C++]) |
Gustavo Zacarias | e856d68 | 2015-04-25 17:53:28 +0200 | [diff] [blame] | 105 | AX_CXX_COMPILE_STDCXX_11([noext], [optional]) |
James E. King, III | 43e959b | 2017-04-04 13:04:29 -0400 | [diff] [blame] | 106 | if test "$ac_success" = "no"; then |
| 107 | CXXFLAGS="$CXXFLAGS -Wno-variadic-macros -Wno-long-long -Wno-c++11-long-long" |
| 108 | fi |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 109 | |
Konrad Grochowski | 16a23a6 | 2014-11-13 15:33:38 +0100 | [diff] [blame] | 110 | AM_EXTRA_RECURSIVE_TARGETS([style]) |
| 111 | AC_SUBST(CPPSTYLE_CMD, 'find . -type f \( -iname "*.h" -or -iname "*.cpp" -or -iname "*.cc" -or -iname "*.tcc" \) -printf "Reformatting: %h/%f\n" -exec clang-format -i {} \;') |
wilfrem | 2c69b5a | 2015-04-20 19:24:50 +0900 | [diff] [blame] | 112 | # ' |
| 113 | # The above comment is to fix editor syntax highlighting |
Konrad Grochowski | 16a23a6 | 2014-11-13 15:33:38 +0100 | [diff] [blame] | 114 | |
Roger Meier | c92cda0 | 2014-02-09 21:13:53 +0100 | [diff] [blame] | 115 | AC_ARG_ENABLE([libs], |
| 116 | AS_HELP_STRING([--enable-libs], [build the Apache Thrift libraries [default=yes]]), |
| 117 | [], enable_libs=yes |
| 118 | ) |
| 119 | have_libs=yes |
| 120 | if test "$enable_libs" = "no"; then |
| 121 | have_libs="no" |
| 122 | with_cpp="no" |
| 123 | with_c_glib="no" |
Tomek Kurcz | e93a901 | 2017-09-19 09:16:43 +0200 | [diff] [blame] | 124 | with_cl="no" |
Roger Meier | c92cda0 | 2014-02-09 21:13:53 +0100 | [diff] [blame] | 125 | with_java="no" |
| 126 | with_csharp="no" |
| 127 | with_python="no" |
James E. King, III | d7142b7 | 2017-09-01 13:00:36 -0700 | [diff] [blame] | 128 | with_py3="no" |
Roger Meier | c92cda0 | 2014-02-09 21:13:53 +0100 | [diff] [blame] | 129 | with_ruby="no" |
| 130 | with_haskell="no" |
Jens Geyer | bd52f1a | 2014-07-28 01:25:30 +0200 | [diff] [blame] | 131 | with_haxe="no" |
Volodymyr Gotra | b587a12 | 2016-09-14 19:18:48 -0500 | [diff] [blame] | 132 | with_dotnetcore="no" |
Roger Meier | c92cda0 | 2014-02-09 21:13:53 +0100 | [diff] [blame] | 133 | with_perl="no" |
| 134 | with_php="no" |
| 135 | with_php_extension="no" |
Mark Erickson | 932c470 | 2015-08-29 10:46:51 -0500 | [diff] [blame] | 136 | with_dart="no" |
Roger Meier | c92cda0 | 2014-02-09 21:13:53 +0100 | [diff] [blame] | 137 | with_erlang="no" |
| 138 | with_go="no" |
| 139 | with_d="no" |
| 140 | with_nodejs="no" |
wilfrem | 2c69b5a | 2015-04-20 19:24:50 +0900 | [diff] [blame] | 141 | with_nodets="no" |
Roger Meier | 6cf0ffc | 2014-04-05 00:45:42 +0200 | [diff] [blame] | 142 | with_lua="no" |
Allen George | 8b96bfb | 2016-11-02 08:01:08 -0400 | [diff] [blame] | 143 | with_rs="no" |
Roger Meier | c92cda0 | 2014-02-09 21:13:53 +0100 | [diff] [blame] | 144 | fi |
| 145 | |
David Reiss | ea4c981 | 2010-08-31 16:51:21 +0000 | [diff] [blame] | 146 | AX_THRIFT_LIB(cpp, [C++], yes) |
| 147 | have_cpp=no |
| 148 | if test "$with_cpp" = "yes"; then |
Sergei Nikulov | 283899b | 2015-02-11 16:55:22 +0300 | [diff] [blame] | 149 | AX_BOOST_BASE([1.53.0]) |
Jake Farrell | 3ad8081 | 2011-06-09 19:14:22 +0000 | [diff] [blame] | 150 | if test "x$succeeded" = "xyes" ; then |
Konrad Grochowski | ec8d877 | 2014-12-20 12:19:00 +0100 | [diff] [blame] | 151 | AC_SUBST([BOOST_LIB_DIR], [$(echo "$BOOST_LDFLAGS" | sed -e 's/^\-L//')]) |
Ben Craig | 1684c42 | 2015-04-24 08:52:44 -0500 | [diff] [blame] | 152 | AC_SUBST([BOOST_CHRONO_LDADD], [$(echo "$BOOST_LIB_DIR/libboost_chrono.a")]) |
Jim King | b0b710a | 2015-07-28 13:31:27 -0400 | [diff] [blame] | 153 | AC_SUBST([BOOST_FILESYSTEM_LDADD], [$(echo "$BOOST_LIB_DIR/libboost_filesystem.a")]) |
Ben Craig | 1684c42 | 2015-04-24 08:52:44 -0500 | [diff] [blame] | 154 | AC_SUBST([BOOST_SYSTEM_LDADD], [$(echo "$BOOST_LIB_DIR/libboost_system.a")]) |
Konrad Grochowski | ec8d877 | 2014-12-20 12:19:00 +0100 | [diff] [blame] | 155 | AC_SUBST([BOOST_TEST_LDADD], [$(echo "$BOOST_LIB_DIR/libboost_unit_test_framework.a")]) |
Ben Craig | 1684c42 | 2015-04-24 08:52:44 -0500 | [diff] [blame] | 156 | AC_SUBST([BOOST_THREAD_LDADD], [$(echo "$BOOST_LIB_DIR/libboost_thread.a")]) |
David Reiss | ef5e81b | 2010-08-31 16:51:28 +0000 | [diff] [blame] | 157 | have_cpp="yes" |
| 158 | fi |
David Reiss | 5cc3ba8 | 2010-08-31 16:51:20 +0000 | [diff] [blame] | 159 | |
David Reiss | ea4c981 | 2010-08-31 16:51:21 +0000 | [diff] [blame] | 160 | AX_LIB_EVENT([1.0]) |
| 161 | have_libevent=$success |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 162 | |
David Reiss | ea4c981 | 2010-08-31 16:51:21 +0000 | [diff] [blame] | 163 | AX_LIB_ZLIB([1.2.3]) |
| 164 | have_zlib=$success |
Chris Piro | 20c81ad | 2013-03-07 11:32:48 -0500 | [diff] [blame] | 165 | |
Jake Farrell | d6d3e37 | 2012-07-27 16:01:33 +0000 | [diff] [blame] | 166 | AX_THRIFT_LIB(qt4, [Qt], yes) |
| 167 | have_qt=no |
| 168 | if test "$with_qt4" = "yes"; then |
| 169 | PKG_CHECK_MODULES([QT], [QtCore >= 4.3, QtNetwork >= 4.3], have_qt=yes, have_qt=no) |
| 170 | fi |
Roger Meier | 86e8986 | 2012-02-10 19:53:20 +0000 | [diff] [blame] | 171 | if test "$have_qt" = "yes"; then |
Jens Geyer | 2ac3a3c | 2014-12-23 18:18:58 +0100 | [diff] [blame] | 172 | AC_PATH_PROGS([QT_MOC], [moc-qt4 moc], "fail") |
| 173 | if test "$QT_MOC" = "fail"; then |
| 174 | have_qt=no |
| 175 | fi |
Roger Meier | 86e8986 | 2012-02-10 19:53:20 +0000 | [diff] [blame] | 176 | fi |
Nobuaki Sukegawa | 6622877 | 2014-12-07 21:45:33 +0900 | [diff] [blame] | 177 | |
| 178 | AX_THRIFT_LIB(qt5, [Qt5], yes) |
| 179 | have_qt5=no |
| 180 | qt_reduce_reloc="" |
| 181 | if test "$with_qt5" = "yes"; then |
| 182 | PKG_CHECK_MODULES([QT5], [Qt5Core >= 5.0, Qt5Network >= 5.0], |
| 183 | [have_qt5=yes;qt_reduce_reloc=`$PKG_CONFIG --variable=qt_config Qt5Core | grep "reduce_relocations"`], |
| 184 | [have_qt5=no]) |
| 185 | fi |
| 186 | if test "$have_qt5" = "yes"; then |
Jens Geyer | 2ac3a3c | 2014-12-23 18:18:58 +0100 | [diff] [blame] | 187 | AC_PATH_PROGS([QT5_MOC], [moc-qt5 moc], "fail") |
| 188 | if test "$QT5_MOC" = "fail"; then |
| 189 | have_qt5=no |
| 190 | fi |
Nobuaki Sukegawa | 6622877 | 2014-12-07 21:45:33 +0900 | [diff] [blame] | 191 | fi |
David Reiss | ea4c981 | 2010-08-31 16:51:21 +0000 | [diff] [blame] | 192 | fi |
| 193 | AM_CONDITIONAL([WITH_CPP], [test "$have_cpp" = "yes"]) |
| 194 | AM_CONDITIONAL([AMX_HAVE_LIBEVENT], [test "$have_libevent" = "yes"]) |
| 195 | AM_CONDITIONAL([AMX_HAVE_ZLIB], [test "$have_zlib" = "yes"]) |
Roger Meier | 86e8986 | 2012-02-10 19:53:20 +0000 | [diff] [blame] | 196 | AM_CONDITIONAL([AMX_HAVE_QT], [test "$have_qt" = "yes"]) |
Nobuaki Sukegawa | 6622877 | 2014-12-07 21:45:33 +0900 | [diff] [blame] | 197 | AM_CONDITIONAL([AMX_HAVE_QT5], [test "$have_qt5" = "yes"]) |
| 198 | AM_CONDITIONAL([QT5_REDUCE_RELOCATIONS], [test "x$qt_reduce_reloc" != "x"]) |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 199 | |
Roger Meier | 3217723 | 2012-05-01 11:19:53 +0000 | [diff] [blame] | 200 | AX_THRIFT_LIB(c_glib, [C (GLib)], yes) |
Roger Meier | 213a664 | 2010-10-27 12:30:11 +0000 | [diff] [blame] | 201 | if test "$with_c_glib" = "yes"; then |
| 202 | PKG_CHECK_MODULES([GLIB], [glib-2.0 >= 2.0], have_glib2=yes, have_glib2=no) |
| 203 | PKG_CHECK_MODULES([GOBJECT], [gobject-2.0 >= 2.0], have_gobject2=yes, have_gobject2=no) |
| 204 | if test "$have_glib2" = "yes" -a "$have_gobject2" = "yes" ; then |
| 205 | have_c_glib="yes" |
| 206 | fi |
| 207 | fi |
| 208 | AM_CONDITIONAL(WITH_C_GLIB, [test "$have_glib2" = "yes" -a "$have_gobject2" = "yes"]) |
| 209 | |
James E. King, III | 36628a2 | 2017-02-13 15:25:41 -0500 | [diff] [blame] | 210 | echo "OpenSSL check" |
| 211 | if test "$have_cpp" = "yes" -o "$have_c_glib" = "yes"; then |
James E. King, III | 43e959b | 2017-04-04 13:04:29 -0400 | [diff] [blame] | 212 | echo "Have cpp or c so we check for OpenSSL" |
| 213 | AX_CHECK_OPENSSL() |
James E. King, III | 36628a2 | 2017-02-13 15:25:41 -0500 | [diff] [blame] | 214 | fi |
| 215 | |
David Reiss | 520b5ee | 2008-03-02 07:00:26 +0000 | [diff] [blame] | 216 | AX_THRIFT_LIB(csharp, [C#], yes) |
| 217 | if test "$with_csharp" = "yes"; then |
Jens Geyer | 96d8020 | 2015-09-03 21:14:30 +0200 | [diff] [blame] | 218 | PKG_CHECK_MODULES(MONO, mono >= 2.11.0, mono_2_11=yes, mono_2_11=no) |
| 219 | if test "$mono_2_11" == "yes"; then |
| 220 | AC_PATH_PROG([MCS], [mcs]) |
| 221 | if test "x$MCS" != "x"; then |
| 222 | mono_mcs="yes" |
| 223 | fi |
| 224 | fi |
David Reiss | d831a21 | 2009-02-13 03:09:52 +0000 | [diff] [blame] | 225 | PKG_CHECK_MODULES(MONO, mono >= 2.0.0, net_3_5=yes, net_3_5=no) |
| 226 | PKG_CHECK_MODULES(MONO, mono >= 1.2.4, have_mono=yes, have_mono=no) |
David Reiss | 5cc3ba8 | 2010-08-31 16:51:20 +0000 | [diff] [blame] | 227 | if test "$have_mono" = "yes" ; then |
| 228 | have_csharp="yes" |
| 229 | fi |
David Reiss | 520b5ee | 2008-03-02 07:00:26 +0000 | [diff] [blame] | 230 | fi |
David Reiss | 5cc3ba8 | 2010-08-31 16:51:20 +0000 | [diff] [blame] | 231 | AM_CONDITIONAL(WITH_MONO, [test "$have_csharp" = "yes"]) |
David Reiss | d831a21 | 2009-02-13 03:09:52 +0000 | [diff] [blame] | 232 | AM_CONDITIONAL(NET_2_0, [test "$net_3_5" = "no"]) |
Jens Geyer | 96d8020 | 2015-09-03 21:14:30 +0200 | [diff] [blame] | 233 | AM_CONDITIONAL(MONO_MCS, [test "$mono_mcs" = "yes"]) |
David Reiss | 1fdb592 | 2008-02-06 22:10:12 +0000 | [diff] [blame] | 234 | |
David Reiss | 62d3981 | 2008-03-02 07:00:22 +0000 | [diff] [blame] | 235 | AX_THRIFT_LIB(java, [Java], yes) |
| 236 | if test "$with_java" = "yes"; then |
David Reiss | d9cdf42 | 2009-03-13 21:25:29 +0000 | [diff] [blame] | 237 | AX_JAVAC_AND_JAVA |
Bryan Duxbury | 38bab12 | 2010-08-12 00:27:14 +0000 | [diff] [blame] | 238 | AC_PATH_PROG([ANT], [ant]) |
Jake Farrell | 210d766 | 2011-05-25 21:07:29 +0000 | [diff] [blame] | 239 | AX_CHECK_ANT_VERSION($ANT, 1.7) |
David Reiss | fff84d1 | 2009-05-22 19:50:33 +0000 | [diff] [blame] | 240 | AC_SUBST(CLASSPATH) |
David Reiss | 4ca0c8e | 2009-05-12 23:16:55 +0000 | [diff] [blame] | 241 | AC_SUBST(ANT_FLAGS) |
Alex Volanis | 7004a61 | 2018-01-24 10:30:13 -0500 | [diff] [blame] | 242 | AC_SUBST(GRADLE_OPTS) |
jfarrell | ea2fbcf | 2014-11-21 10:06:01 -0500 | [diff] [blame] | 243 | if test "x$JAVA" != "x" && test "x$JAVAC" != "x" && test "x$ANT" != "x" ; then |
David Reiss | 5cc3ba8 | 2010-08-31 16:51:20 +0000 | [diff] [blame] | 244 | have_java="yes" |
| 245 | fi |
David Reiss | 62d3981 | 2008-03-02 07:00:22 +0000 | [diff] [blame] | 246 | fi |
David Reiss | 5cc3ba8 | 2010-08-31 16:51:20 +0000 | [diff] [blame] | 247 | AM_CONDITIONAL([WITH_JAVA], [test "$have_java" = "yes"]) |
David Reiss | 1fdb592 | 2008-02-06 22:10:12 +0000 | [diff] [blame] | 248 | |
Christopher Piro | b6f18c2 | 2008-03-04 07:09:12 +0000 | [diff] [blame] | 249 | AX_THRIFT_LIB(erlang, [Erlang], yes) |
| 250 | if test "$with_erlang" = "yes"; then |
David Reiss | 9e2fd79 | 2010-05-18 16:52:48 +0000 | [diff] [blame] | 251 | AC_ERLANG_PATH_ERL |
| 252 | AC_ERLANG_PATH_ERLC |
Roger Meier | c7b3086 | 2015-11-14 10:08:33 +0100 | [diff] [blame] | 253 | AC_PATH_PROG([REBAR], [rebar]) |
David Reiss | 31e1b6e | 2010-08-24 20:45:24 +0000 | [diff] [blame] | 254 | if test -n "$ERLC" ; then |
| 255 | AC_ERLANG_SUBST_LIB_DIR |
| 256 | # Install into the detected Erlang directory instead of $libdir/erlang/lib |
| 257 | ERLANG_INSTALL_LIB_DIR="$ERLANG_LIB_DIR" |
| 258 | AC_ERLANG_SUBST_INSTALL_LIB_SUBDIR(AC_PACKAGE_NAME, AC_PACKAGE_VERSION) |
| 259 | fi |
Roger Meier | c7b3086 | 2015-11-14 10:08:33 +0100 | [diff] [blame] | 260 | if test -n "$ERL" -a -n "$ERLC" && test "x$REBAR" != "x" ; then |
David Reiss | 5cc3ba8 | 2010-08-31 16:51:20 +0000 | [diff] [blame] | 261 | have_erlang="yes" |
Jens Geyer | 57ac33e | 2015-07-28 23:12:10 +0200 | [diff] [blame] | 262 | |
| 263 | # otp_release is simply a number (like "17") for OTP17+ while "R16..." for OTP16 or less. |
| 264 | # OTP version is currently only used for running tests. |
| 265 | if $ERL -eval 'erlang:display(erlang:system_info(otp_release)),halt().' -noshell | grep "^\"R" >/dev/null; then |
| 266 | erlang_otp16_or_less="yes" |
| 267 | fi |
David Reiss | 5cc3ba8 | 2010-08-31 16:51:20 +0000 | [diff] [blame] | 268 | fi |
Christopher Piro | b6f18c2 | 2008-03-04 07:09:12 +0000 | [diff] [blame] | 269 | fi |
David Reiss | 5cc3ba8 | 2010-08-31 16:51:20 +0000 | [diff] [blame] | 270 | AM_CONDITIONAL(WITH_ERLANG, [test "$have_erlang" = "yes"]) |
Jens Geyer | 57ac33e | 2015-07-28 23:12:10 +0200 | [diff] [blame] | 271 | AM_CONDITIONAL(ERLANG_OTP16, [test "$erlang_otp16_or_less" = "yes"]) |
Christopher Piro | b6f18c2 | 2008-03-04 07:09:12 +0000 | [diff] [blame] | 272 | |
Roger Meier | 8909cbd | 2014-01-26 11:44:27 +0100 | [diff] [blame] | 273 | AX_THRIFT_LIB(nodejs, [Nodejs], yes) |
| 274 | have_nodejs=no |
| 275 | if test "$with_nodejs" = "yes"; then |
| 276 | AC_PATH_PROGS([NODEJS], [nodejs node]) |
| 277 | AC_PATH_PROG([NPM], [npm]) |
| 278 | if test "x$NODEJS" != "x" -a "x$NPM" != "x"; then |
| 279 | have_nodejs="yes" |
| 280 | fi |
| 281 | fi |
| 282 | AM_CONDITIONAL(WITH_NODEJS, [test "$have_nodejs" = "yes"]) |
| 283 | AM_CONDITIONAL(HAVE_NPM, [test "x$NPM" != "x"]) |
| 284 | |
wilfrem | 2c69b5a | 2015-04-20 19:24:50 +0900 | [diff] [blame] | 285 | AX_THRIFT_LIB(nodets, [Nodets], yes) |
| 286 | have_nodets=no |
| 287 | if test "$with_nodets" = "yes"; then |
| 288 | AC_PATH_PROGS([NODETS], [nodets node]) |
| 289 | AC_PATH_PROG([NPM], [npm]) |
| 290 | if test "x$NODETS" != "x" -a "x$NPM" != "x"; then |
| 291 | have_nodets="yes" |
| 292 | fi |
| 293 | fi |
| 294 | AM_CONDITIONAL(WITH_NODETS, [test "$have_nodets" = "yes"]) |
| 295 | AM_CONDITIONAL(HAVE_NPM, [test "x$NPM" != "x"]) |
| 296 | |
Roger Meier | 6cf0ffc | 2014-04-05 00:45:42 +0200 | [diff] [blame] | 297 | AX_THRIFT_LIB(lua, [Lua], yes) |
| 298 | have_lua=no |
| 299 | if test "$with_lua" = "yes"; then |
Jens Geyer | 468e63b | 2015-02-08 14:43:15 +0100 | [diff] [blame] | 300 | AX_PROG_LUA(5.2,, have_lua="yes", have_lua="no") |
| 301 | if test "$have_lua" = "yes"; then |
| 302 | AX_LUA_HEADERS(, have_lua="no") |
| 303 | AX_LUA_LIBS(, have_lua="no") |
Roger Meier | 6cf0ffc | 2014-04-05 00:45:42 +0200 | [diff] [blame] | 304 | fi |
| 305 | fi |
| 306 | AM_CONDITIONAL(WITH_LUA, [test "$have_lua" = "yes"]) |
| 307 | |
Nobuaki Sukegawa | ffc2bb3 | 2016-01-12 19:20:05 +0900 | [diff] [blame] | 308 | # Find python regardless of with_python value, because it's needed by make cross |
| 309 | AM_PATH_PYTHON(2.6,, :) |
David Reiss | 5cc3ba8 | 2010-08-31 16:51:20 +0000 | [diff] [blame] | 310 | AX_THRIFT_LIB(python, [Python], yes) |
| 311 | if test "$with_python" = "yes"; then |
Nobuaki Sukegawa | bf9fa90 | 2016-09-04 18:49:21 +0900 | [diff] [blame] | 312 | if test -n "$PYTHON"; then |
David Reiss | 5cc3ba8 | 2010-08-31 16:51:20 +0000 | [diff] [blame] | 313 | have_python="yes" |
| 314 | fi |
Nobuaki Sukegawa | bf9fa90 | 2016-09-04 18:49:21 +0900 | [diff] [blame] | 315 | AC_PATH_PROG([TRIAL], [trial]) |
| 316 | if test -n "$TRIAL"; then |
| 317 | have_trial="yes" |
| 318 | fi |
David Reiss | 1a14091 | 2008-06-11 01:16:37 +0000 | [diff] [blame] | 319 | fi |
David Reiss | 5cc3ba8 | 2010-08-31 16:51:20 +0000 | [diff] [blame] | 320 | AM_CONDITIONAL(WITH_PYTHON, [test "$have_python" = "yes"]) |
Nobuaki Sukegawa | bf9fa90 | 2016-09-04 18:49:21 +0900 | [diff] [blame] | 321 | AM_CONDITIONAL(WITH_TWISTED_TEST, [test "$have_trial" = "yes"]) |
David Reiss | 1a14091 | 2008-06-11 01:16:37 +0000 | [diff] [blame] | 322 | |
Nobuaki Sukegawa | a185d7e | 2015-11-06 21:24:24 +0900 | [diff] [blame] | 323 | # Find "python3" executable. |
| 324 | # It's distro specific and far from ideal but needed to cross test py2-3 at once. |
Nobuaki Sukegawa | bf9fa90 | 2016-09-04 18:49:21 +0900 | [diff] [blame] | 325 | # TODO: find "python2" if it's 3.x |
James E. King, III | d7142b7 | 2017-09-01 13:00:36 -0700 | [diff] [blame] | 326 | have_py3="no" |
Nobuaki Sukegawa | bf9fa90 | 2016-09-04 18:49:21 +0900 | [diff] [blame] | 327 | if python --version 2>&1 | grep -q "Python 2"; then |
| 328 | AC_PATH_PROGS([PYTHON3], [python3 python3.5 python35 python3.4 python34]) |
| 329 | if test -n "$PYTHON3"; then |
| 330 | have_py3="yes" |
| 331 | fi |
Nobuaki Sukegawa | a185d7e | 2015-11-06 21:24:24 +0900 | [diff] [blame] | 332 | fi |
| 333 | AM_CONDITIONAL(WITH_PY3, [test "$have_py3" = "yes"]) |
| 334 | |
T Jake Luciani | 1952e54 | 2009-02-01 04:47:30 +0000 | [diff] [blame] | 335 | AX_THRIFT_LIB(perl, [Perl], yes) |
| 336 | if test "$with_perl" = "yes"; then |
| 337 | AC_PATH_PROG([PERL], [perl]) |
David Reiss | dcc7e9b | 2010-08-31 16:51:22 +0000 | [diff] [blame] | 338 | if test -n "$PERL" ; then |
| 339 | AC_PROG_PERL_MODULES([Bit::Vector], success="yes", success="no") |
| 340 | have_perl_bit_vector="$success" |
Roger Meier | aae8acb | 2014-01-15 13:55:09 +0100 | [diff] [blame] | 341 | AC_PROG_PERL_MODULES([Class::Accessor], success="yes", success="no") |
| 342 | have_perl_class_accessor="$success" |
Bryan Duxbury | 1237369 | 2010-08-19 05:23:59 +0000 | [diff] [blame] | 343 | fi |
David Reiss | dcc7e9b | 2010-08-31 16:51:22 +0000 | [diff] [blame] | 344 | if test -n "$PERL" -a "$have_perl_bit_vector" = "yes" ; then |
Roger Meier | aae8acb | 2014-01-15 13:55:09 +0100 | [diff] [blame] | 345 | if test -n "$PERL" -a "$have_perl_class_accessor" = "yes" ; then |
| 346 | have_perl="yes" |
| 347 | fi |
David Reiss | 5cc3ba8 | 2010-08-31 16:51:20 +0000 | [diff] [blame] | 348 | fi |
T Jake Luciani | 1952e54 | 2009-02-01 04:47:30 +0000 | [diff] [blame] | 349 | fi |
David Reiss | 5cc3ba8 | 2010-08-31 16:51:20 +0000 | [diff] [blame] | 350 | AM_CONDITIONAL(WITH_PERL, [test "$have_perl" = "yes"]) |
T Jake Luciani | 1952e54 | 2009-02-01 04:47:30 +0000 | [diff] [blame] | 351 | |
Bryan Duxbury | 6a68187 | 2010-05-02 22:39:31 +0000 | [diff] [blame] | 352 | AX_THRIFT_LIB(php, [PHP], yes) |
| 353 | if test "$with_php" = "yes"; then |
| 354 | AC_PATH_PROG([PHP], [php]) |
David Reiss | 5cc3ba8 | 2010-08-31 16:51:20 +0000 | [diff] [blame] | 355 | if test -n "$PHP" ; then |
| 356 | have_php="yes" |
| 357 | fi |
Bryan Duxbury | 6a68187 | 2010-05-02 22:39:31 +0000 | [diff] [blame] | 358 | fi |
David Reiss | 5cc3ba8 | 2010-08-31 16:51:20 +0000 | [diff] [blame] | 359 | AM_CONDITIONAL(WITH_PHP, [test "$have_php" = "yes"]) |
Bryan Duxbury | 6a68187 | 2010-05-02 22:39:31 +0000 | [diff] [blame] | 360 | |
Bryan Duxbury | 89200e1 | 2010-08-25 17:09:02 +0000 | [diff] [blame] | 361 | AX_THRIFT_LIB(php_extension, [PHP_EXTENSION], yes) |
| 362 | if test "$with_php_extension" = "yes"; then |
jfarrell | 30a472e | 2014-07-10 18:42:30 -0400 | [diff] [blame] | 363 | if test -f "lib/php/src/ext/thrift_protocol/configure"; then |
| 364 | AC_PATH_PROG([PHP_CONFIG], [php-config]) |
| 365 | if test -n "$PHP_CONFIG" ; then |
| 366 | AC_CONFIG_SUBDIRS([lib/php/src/ext/thrift_protocol]) |
| 367 | have_php_extension="yes" |
| 368 | fi |
Anthony F. Molinaro | ddcf32a | 2010-10-05 16:45:50 +0000 | [diff] [blame] | 369 | fi |
Bryan Duxbury | 89200e1 | 2010-08-25 17:09:02 +0000 | [diff] [blame] | 370 | fi |
Anthony F. Molinaro | ddcf32a | 2010-10-05 16:45:50 +0000 | [diff] [blame] | 371 | AM_CONDITIONAL(WITH_PHP_EXTENSION, [test "$have_php_extension" = "yes"]) |
Bryan Duxbury | 89200e1 | 2010-08-25 17:09:02 +0000 | [diff] [blame] | 372 | |
Mark Erickson | 932c470 | 2015-08-29 10:46:51 -0500 | [diff] [blame] | 373 | AX_THRIFT_LIB(dart, [DART], yes) |
| 374 | if test "$with_dart" = "yes"; then |
| 375 | AC_PATH_PROG([DART], [dart]) |
| 376 | AC_PATH_PROG([DARTPUB], [pub]) |
| 377 | if test "x$DART" != "x" -a "x$DARTPUB" != "x"; then |
| 378 | have_dart="yes" |
| 379 | fi |
| 380 | fi |
| 381 | AM_CONDITIONAL(WITH_DART, [test "$have_dart" = "yes"]) |
| 382 | |
Kevin Clark | 4bd8916 | 2008-07-08 00:47:49 +0000 | [diff] [blame] | 383 | AX_THRIFT_LIB(ruby, [Ruby], yes) |
David Reiss | 5cc3ba8 | 2010-08-31 16:51:20 +0000 | [diff] [blame] | 384 | have_ruby=no |
Kevin Clark | 4bd8916 | 2008-07-08 00:47:49 +0000 | [diff] [blame] | 385 | if test "$with_ruby" = "yes"; then |
| 386 | AC_PATH_PROG([RUBY], [ruby]) |
Jake Farrell | 9c39f77 | 2011-08-30 19:12:10 +0000 | [diff] [blame] | 387 | AC_PATH_PROG([BUNDLER], [bundle]) |
jfarrell | 507740c | 2014-01-22 22:20:21 -0500 | [diff] [blame] | 388 | if test "x$RUBY" != "x" -a "x$BUNDLER" != "x"; then |
David Reiss | 5cc3ba8 | 2010-08-31 16:51:20 +0000 | [diff] [blame] | 389 | have_ruby="yes" |
| 390 | fi |
Kevin Clark | 4bd8916 | 2008-07-08 00:47:49 +0000 | [diff] [blame] | 391 | fi |
David Reiss | 5cc3ba8 | 2010-08-31 16:51:20 +0000 | [diff] [blame] | 392 | AM_CONDITIONAL(WITH_RUBY, [test "$have_ruby" = "yes"]) |
Jake Farrell | 9c39f77 | 2011-08-30 19:12:10 +0000 | [diff] [blame] | 393 | AM_CONDITIONAL(HAVE_BUNDLER, [test "x$BUNDLER" != "x"]) |
Bryan Duxbury | ec47358 | 2009-04-07 16:31:04 +0000 | [diff] [blame] | 394 | |
Anthony F. Molinaro | a5df7c7 | 2010-09-27 17:22:17 +0000 | [diff] [blame] | 395 | AX_THRIFT_LIB(haskell, [Haskell], yes) |
| 396 | have_haskell=no |
| 397 | RUNHASKELL=true |
Bryan Duxbury | c657447 | 2010-10-06 00:12:33 +0000 | [diff] [blame] | 398 | CABAL=true |
Anthony F. Molinaro | a5df7c7 | 2010-09-27 17:22:17 +0000 | [diff] [blame] | 399 | if test "$with_haskell" = "yes"; then |
Bryan Duxbury | c657447 | 2010-10-06 00:12:33 +0000 | [diff] [blame] | 400 | AC_PATH_PROG([CABAL], [cabal]) |
Anthony F. Molinaro | a5df7c7 | 2010-09-27 17:22:17 +0000 | [diff] [blame] | 401 | AC_PATH_PROG([RUNHASKELL], [runhaskell]) |
Bryan Duxbury | c657447 | 2010-10-06 00:12:33 +0000 | [diff] [blame] | 402 | if test "x$CABAL" != "x" -a "x$RUNHASKELL" != "x"; then |
Anthony F. Molinaro | a5df7c7 | 2010-09-27 17:22:17 +0000 | [diff] [blame] | 403 | have_haskell="yes" |
| 404 | else |
| 405 | RUNHASKELL=true |
Bryan Duxbury | c657447 | 2010-10-06 00:12:33 +0000 | [diff] [blame] | 406 | CABAL=true |
Anthony F. Molinaro | a5df7c7 | 2010-09-27 17:22:17 +0000 | [diff] [blame] | 407 | fi |
| 408 | fi |
Bryan Duxbury | c657447 | 2010-10-06 00:12:33 +0000 | [diff] [blame] | 409 | AC_SUBST(CABAL) |
Anthony F. Molinaro | a5df7c7 | 2010-09-27 17:22:17 +0000 | [diff] [blame] | 410 | AC_SUBST(RUNHASKELL) |
| 411 | AM_CONDITIONAL(WITH_HASKELL, [test "$have_haskell" = "yes"]) |
Kevin Clark | 4bd8916 | 2008-07-08 00:47:49 +0000 | [diff] [blame] | 412 | |
Christian Lavoie | afc6d8f | 2011-02-20 02:39:19 +0000 | [diff] [blame] | 413 | AX_THRIFT_LIB(go, [Go], yes) |
| 414 | if test "$with_go" = "yes"; then |
Jens Geyer | 0e87c46 | 2013-06-18 22:25:07 +0200 | [diff] [blame] | 415 | AC_PATH_PROG([GO], [go]) |
| 416 | if [[ -x "$GO" ]] ; then |
Jens Geyer | 0cfdf7c | 2015-03-18 23:38:43 +0200 | [diff] [blame] | 417 | AS_IF([test -n "$GO"],[ |
taozle | c0d384a | 2017-07-17 18:40:42 +0200 | [diff] [blame] | 418 | ax_go_version="1.4" |
taozle | 5c302e0 | 2017-07-23 15:21:44 +0200 | [diff] [blame] | 419 | ax_go17_version="1.7" |
Jens Geyer | 0cfdf7c | 2015-03-18 23:38:43 +0200 | [diff] [blame] | 420 | |
| 421 | AC_MSG_CHECKING([for Go version]) |
| 422 | golang_version=`$GO version 2>&1 | $SED -e 's/\(go \)\(version \)\(go\)\(@<:@0-9@:>@.@<:@0-9@:>@.@<:@0-9@:>@\)\(@<:@\*@:>@*\).*/\4/'` |
| 423 | AC_MSG_RESULT($golang_version) |
| 424 | AC_SUBST([golang_version],[$golang_version]) |
| 425 | AX_COMPARE_VERSION([$ax_go_version],[le],[$golang_version],[ |
| 426 | : |
| 427 | have_go="yes" |
| 428 | ],[ |
| 429 | : |
| 430 | have_go="no" |
| 431 | ]) |
taozle | 5c302e0 | 2017-07-23 15:21:44 +0200 | [diff] [blame] | 432 | AX_COMPARE_VERSION([$golang_version],[lt],[$ax_go17_version],[ |
| 433 | : |
| 434 | go_version_lt_17="yes" |
| 435 | ],[ |
| 436 | : |
| 437 | go_version_lt_17="no" |
| 438 | ]) |
Jens Geyer | 0cfdf7c | 2015-03-18 23:38:43 +0200 | [diff] [blame] | 439 | ],[ |
| 440 | AC_MSG_WARN([could not find Go ]) |
| 441 | have_go="no" |
| 442 | ]) |
Christian Lavoie | afc6d8f | 2011-02-20 02:39:19 +0000 | [diff] [blame] | 443 | fi |
| 444 | fi |
| 445 | AM_CONDITIONAL(WITH_GO, [test "$have_go" = "yes"]) |
taozle | 5c302e0 | 2017-07-23 15:21:44 +0200 | [diff] [blame] | 446 | AM_CONDITIONAL([GOVERSION_LT_17], [test "$go_version_lt_17" = "yes"]) |
Christian Lavoie | afc6d8f | 2011-02-20 02:39:19 +0000 | [diff] [blame] | 447 | |
Allen George | 8b96bfb | 2016-11-02 08:01:08 -0400 | [diff] [blame] | 448 | AX_THRIFT_LIB(rs, [Rust], yes) |
| 449 | have_rs="no" |
| 450 | if test "$with_rs" = "yes"; then |
| 451 | AC_PATH_PROG([CARGO], [cargo]) |
| 452 | AC_PATH_PROG([RUSTC], [rustc]) |
| 453 | if [[ -x "$CARGO" ]] && [[ -x "$RUSTC" ]]; then |
| 454 | min_rustc_version="1.13" |
| 455 | |
| 456 | AC_MSG_CHECKING([for rustc version]) |
| 457 | rustc_version=`$RUSTC --version 2>&1 | $SED -e 's/\(rustc \)\([0-9]\)\.\([0-9][0-9]*\)\.\([0-9][0-9]*\).*/\2.\3/'` |
| 458 | AC_MSG_RESULT($rustc_version) |
| 459 | AC_SUBST([rustc_version],[$rustc_version]) |
| 460 | |
| 461 | AX_COMPARE_VERSION([$min_rustc_version],[le],[$rustc_version],[ |
| 462 | : |
| 463 | have_rs="yes" |
| 464 | ],[ |
| 465 | : |
| 466 | have_rs="no" |
| 467 | ]) |
| 468 | fi |
| 469 | fi |
| 470 | AM_CONDITIONAL(WITH_RS, [test "$have_rs" = "yes"]) |
Jake Farrell | b95b0ff | 2012-03-22 21:49:10 +0000 | [diff] [blame] | 471 | |
Tomek Kurcz | e93a901 | 2017-09-19 09:16:43 +0200 | [diff] [blame] | 472 | AX_THRIFT_LIB(cl, [Common Lisp], yes) |
| 473 | have_cl="no" |
| 474 | if test "$with_cl" = "yes"; then |
| 475 | AC_PATH_PROG([SBCL], [sbcl]) |
| 476 | if test "x$SBCL" != "x"; then |
| 477 | have_cl="yes" |
| 478 | fi |
| 479 | fi |
| 480 | AM_CONDITIONAL(WITH_CL, [test "$have_cl" = "yes"]) |
| 481 | |
Jens Geyer | bd52f1a | 2014-07-28 01:25:30 +0200 | [diff] [blame] | 482 | AX_THRIFT_LIB(haxe, [Haxe], yes) |
| 483 | if test "$with_haxe" = "yes"; then |
| 484 | AC_PATH_PROG([HAXE], [haxe]) |
| 485 | if [[ -x "$HAXE" ]] ; then |
Jens Geyer | 22dddc9 | 2015-02-11 02:14:14 +0100 | [diff] [blame] | 486 | AX_PROG_HAXE_VERSION( [3.1.3], have_haxe="yes", have_haxe="no") |
Jens Geyer | bd52f1a | 2014-07-28 01:25:30 +0200 | [diff] [blame] | 487 | fi |
| 488 | fi |
| 489 | AM_CONDITIONAL(WITH_HAXE, [test "$have_haxe" = "yes"]) |
| 490 | |
| 491 | |
Volodymyr Gotra | b587a12 | 2016-09-14 19:18:48 -0500 | [diff] [blame] | 492 | AX_THRIFT_LIB(dotnetcore, [.NET Core], yes) |
| 493 | if test "$with_dotnetcore" = "yes"; then |
| 494 | AC_PATH_PROG([DOTNETCORE], [dotnet]) |
| 495 | if [[ -x "$DOTNETCORE" ]] ; then |
James E. King, III | b628736 | 2017-09-28 11:57:42 +0000 | [diff] [blame] | 496 | AX_PROG_DOTNETCORE_VERSION( [2.0.0], have_dotnetcore="yes", have_dotnetcore="no") |
Volodymyr Gotra | b587a12 | 2016-09-14 19:18:48 -0500 | [diff] [blame] | 497 | fi |
| 498 | fi |
| 499 | AM_CONDITIONAL(WITH_DOTNETCORE, [test "$have_dotnetcore" = "yes"]) |
| 500 | |
| 501 | |
Jake Farrell | b95b0ff | 2012-03-22 21:49:10 +0000 | [diff] [blame] | 502 | AX_THRIFT_LIB(d, [D], yes) |
| 503 | if test "$with_d" = "yes"; then |
| 504 | AX_DMD |
| 505 | AC_SUBST(DMD) |
| 506 | if test "x$DMD" != "x"; then |
| 507 | have_d="yes" |
| 508 | fi |
| 509 | fi |
| 510 | |
| 511 | # Determine actual name of the generated D library for use in the command line |
| 512 | # when compiling tests. This is needed because the -l<lib> syntax doesn't work |
| 513 | # with OPTLINK (Windows). |
| 514 | lib_prefix=lib |
| 515 | lib_suffix=a |
| 516 | case "$host_os" in |
| 517 | cygwin* | mingw* | pw32* | cegcc*) |
| 518 | lib_prefix="" |
| 519 | lib_suffix=lib |
| 520 | ;; |
| 521 | esac |
| 522 | D_LIB_NAME="${lib_prefix}thriftd.${lib_suffix}" |
| 523 | AC_SUBST(D_LIB_NAME) |
| 524 | D_EVENT_LIB_NAME="${lib_prefix}thriftd-event.${lib_suffix}" |
| 525 | AC_SUBST(D_EVENT_LIB_NAME) |
| 526 | D_SSL_LIB_NAME="${lib_prefix}thriftd-ssl.${lib_suffix}" |
| 527 | AC_SUBST(D_SSL_LIB_NAME) |
| 528 | |
| 529 | if test "$have_d" = "yes"; then |
| 530 | AX_CHECK_D_MODULE(deimos.event2.event) |
| 531 | have_deimos_event2=$success |
| 532 | |
| 533 | with_d_event_tests="no" |
| 534 | if test "$have_deimos_event2" = "yes"; then |
| 535 | if test "x$DMD_LIBEVENT_FLAGS" = "x"; then |
| 536 | if test "$dmd_optlink" = "yes"; then |
| 537 | AC_MSG_WARN([D libevent interface found, but cannot auto-detect \ |
| 538 | linker flags for OPTLINK. Please set DMD_LIBEVENT_FLAGS manually.]) |
| 539 | else |
| 540 | AX_LIB_EVENT([2.0]) |
| 541 | if test "$success" = "yes"; then |
James E. King III | f338d57 | 2018-01-29 14:51:24 -0500 | [diff] [blame] | 542 | DMD_LIBEVENT_FLAGS=$(echo "-fuse-ld=gold $LIBEVENT_LDFLAGS $LIBEVENT_LIBS" | \ |
Jake Farrell | b95b0ff | 2012-03-22 21:49:10 +0000 | [diff] [blame] | 543 | sed -e 's/^ *//g;s/ *$//g;s/^\(.\)/-L\1/g;s/ */ -L/g') |
| 544 | with_d_event_tests="yes" |
| 545 | else |
| 546 | AC_MSG_WARN([D libevent interface present, but libevent library not found.]) |
| 547 | fi |
| 548 | fi |
| 549 | else |
| 550 | with_d_event_tests="yes" |
| 551 | fi |
| 552 | fi |
| 553 | |
| 554 | AX_CHECK_D_MODULE(deimos.openssl.ssl) |
| 555 | have_deimos_openssl=$success |
| 556 | |
| 557 | with_d_ssl_tests="no" |
| 558 | if test "$have_deimos_openssl" = "yes"; then |
| 559 | if test "x$DMD_OPENSSL_FLAGS" = "x"; then |
| 560 | if test "$dmd_optlink" = "yes"; then |
| 561 | AC_MSG_WARN([D OpenSSL interface found, but cannot auto-detect \ |
| 562 | linker flags for OPTLINK. Please set DMD_OPENSSL_FLAGS manually.]) |
| 563 | else |
| 564 | AX_CHECK_OPENSSL([with_d_ssl_tests="yes"]) |
| 565 | if test "$with_d_ssl_tests" = "yes"; then |
James E. King III | f338d57 | 2018-01-29 14:51:24 -0500 | [diff] [blame] | 566 | DMD_OPENSSL_FLAGS=$(echo "-fuse-ld=gold $OPENSSL_LDFLAGS $OPENSSL_LIBS" | \ |
Jake Farrell | b95b0ff | 2012-03-22 21:49:10 +0000 | [diff] [blame] | 567 | sed -e 's/^ *//g;s/ *$//g;s/^\(.\)/-L\1/g;s/ */ -L/g') |
| 568 | else |
| 569 | AC_MSG_WARN([D OpenSSL interface present, but OpenSSL library not found.]) |
| 570 | fi |
| 571 | fi |
| 572 | else |
| 573 | with_d_ssl_tests="yes" |
| 574 | fi |
| 575 | fi |
| 576 | fi |
| 577 | |
| 578 | AM_CONDITIONAL(WITH_D, [test "$have_d" = "yes"]) |
| 579 | AM_CONDITIONAL(DMD_OPTLINK, [test "$dmd_optlink" = "yes"]) |
| 580 | AC_SUBST(DMD_OF_DIRSEP, "$dmd_of_dirsep") |
| 581 | AM_CONDITIONAL(HAVE_DEIMOS_EVENT2, [test "$have_deimos_event2" = "yes"]) |
| 582 | AM_CONDITIONAL(WITH_D_EVENT_TESTS, [test "$with_d_event_tests" = "yes"]) |
| 583 | AC_SUBST(DMD_LIBEVENT_FLAGS) |
| 584 | AM_CONDITIONAL(HAVE_DEIMOS_OPENSSL, [test "$have_deimos_openssl" = "yes"]) |
| 585 | AM_CONDITIONAL(WITH_D_SSL_TESTS, [test "$with_d_ssl_tests" = "yes"]) |
| 586 | AC_SUBST(DMD_OPENSSL_FLAGS) |
| 587 | |
Roger Meier | c88d581 | 2014-01-26 11:51:26 +0100 | [diff] [blame] | 588 | AC_ARG_ENABLE([tests], |
| 589 | AS_HELP_STRING([--enable-tests], [build tests [default=yes]]), |
| 590 | [], enable_tests=yes |
| 591 | ) |
Jake Farrell | 627f1a0 | 2011-09-14 03:43:49 +0000 | [diff] [blame] | 592 | have_tests=yes |
Roger Meier | c88d581 | 2014-01-26 11:51:26 +0100 | [diff] [blame] | 593 | if test "$enable_tests" = "no"; then |
Jake Farrell | 627f1a0 | 2011-09-14 03:43:49 +0000 | [diff] [blame] | 594 | have_tests="no" |
| 595 | fi |
| 596 | AM_CONDITIONAL(WITH_TESTS, [test "$have_tests" = "yes"]) |
| 597 | |
Nobuaki Sukegawa | 11da87e | 2016-09-10 14:02:19 +0900 | [diff] [blame] | 598 | AC_ARG_ENABLE([plugin], |
James E. King, III | 71eba64 | 2017-01-25 20:41:06 -0500 | [diff] [blame] | 599 | AS_HELP_STRING([--enable-plugin], [build compiler plugin support [default=no]]), |
| 600 | [], enable_plugin=no |
Nobuaki Sukegawa | 11da87e | 2016-09-10 14:02:19 +0900 | [diff] [blame] | 601 | ) |
| 602 | have_plugin=yes |
| 603 | if test "$have_cpp" = "no" ; then |
| 604 | have_plugin="no" |
| 605 | fi |
| 606 | if test "$enable_plugin" = "no"; then |
| 607 | have_plugin="no" |
| 608 | fi |
James E. King, III | 71eba64 | 2017-01-25 20:41:06 -0500 | [diff] [blame] | 609 | AC_CONFIG_LINKS([compiler/cpp/test/plugin/t_cpp_generator.cc:compiler/cpp/src/thrift/generate/t_cpp_generator.cc]) |
Nobuaki Sukegawa | 11da87e | 2016-09-10 14:02:19 +0900 | [diff] [blame] | 610 | AM_CONDITIONAL(WITH_PLUGIN, [test "$have_plugin" = "yes"]) |
| 611 | |
Roger Meier | c88d581 | 2014-01-26 11:51:26 +0100 | [diff] [blame] | 612 | AC_ARG_ENABLE([tutorial], |
| 613 | AS_HELP_STRING([--enable-tutorial], [build tutorial [default=yes]]), |
| 614 | [], enable_tutorial=yes |
| 615 | ) |
| 616 | have_tutorial=yes |
| 617 | if test "$enable_tutorial" = "no"; then |
| 618 | have_tutorial="no" |
| 619 | fi |
| 620 | AM_CONDITIONAL(WITH_TUTORIAL, [test "$have_tutorial" = "yes"]) |
| 621 | |
Roger Meier | 6e96965 | 2011-12-13 00:36:01 +0000 | [diff] [blame] | 622 | AM_CONDITIONAL(MINGW, false) |
| 623 | case "${host_os}" in |
| 624 | *mingw*) |
| 625 | mingw32_support="yes" |
| 626 | AC_CHECK_HEADER(windows.h) |
| 627 | AM_CONDITIONAL(MINGW, true) |
| 628 | ;; |
| 629 | *) |
| 630 | AC_ISC_POSIX |
| 631 | ;; |
| 632 | esac |
| 633 | |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 634 | AC_C_CONST |
| 635 | AC_C_INLINE |
| 636 | AC_C_VOLATILE |
| 637 | |
| 638 | AC_HEADER_STDBOOL |
| 639 | AC_HEADER_STDC |
| 640 | AC_HEADER_TIME |
Christian Lavoie | afc6d8f | 2011-02-20 02:39:19 +0000 | [diff] [blame] | 641 | AC_HEADER_SYS_WAIT |
| 642 | AC_TYPE_SIGNAL |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 643 | AC_CHECK_HEADERS([arpa/inet.h]) |
Bryan Duxbury | 184d262 | 2010-08-17 17:43:58 +0000 | [diff] [blame] | 644 | AC_CHECK_HEADERS([sys/param.h]) |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 645 | AC_CHECK_HEADERS([fcntl.h]) |
| 646 | AC_CHECK_HEADERS([inttypes.h]) |
David Reiss | 7ed4b98 | 2008-02-11 23:24:47 +0000 | [diff] [blame] | 647 | AC_CHECK_HEADERS([limits.h]) |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 648 | AC_CHECK_HEADERS([netdb.h]) |
| 649 | AC_CHECK_HEADERS([netinet/in.h]) |
| 650 | AC_CHECK_HEADERS([pthread.h]) |
James E. King III | 9bea32f | 2018-03-16 16:07:42 -0400 | [diff] [blame] | 651 | AC_CHECK_HEADERS([signal.h]) |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 652 | AC_CHECK_HEADERS([stddef.h]) |
David Reiss | d7a16f4 | 2008-02-19 22:47:29 +0000 | [diff] [blame] | 653 | AC_CHECK_HEADERS([stdlib.h]) |
Bugra Gedik | 8bcb7ac | 2018-01-21 09:43:49 -0800 | [diff] [blame] | 654 | AC_CHECK_HEADERS([sys/ioctl.h]) |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 655 | AC_CHECK_HEADERS([sys/socket.h]) |
| 656 | AC_CHECK_HEADERS([sys/time.h]) |
Roger Meier | 2fa9c31 | 2011-09-05 19:15:53 +0000 | [diff] [blame] | 657 | AC_CHECK_HEADERS([sys/un.h]) |
st0ke | 961fa70 | 2018-10-12 18:37:40 +0700 | [diff] [blame] | 658 | AC_CHECK_HEADERS([poll.h]) |
Roger Meier | 2fa9c31 | 2011-09-05 19:15:53 +0000 | [diff] [blame] | 659 | AC_CHECK_HEADERS([sys/poll.h]) |
| 660 | AC_CHECK_HEADERS([sys/resource.h]) |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 661 | AC_CHECK_HEADERS([unistd.h]) |
| 662 | AC_CHECK_HEADERS([libintl.h]) |
| 663 | AC_CHECK_HEADERS([malloc.h]) |
Roger Meier | 9d9c4b9 | 2011-02-23 20:27:54 +0000 | [diff] [blame] | 664 | AC_CHECK_HEADERS([openssl/ssl.h]) |
| 665 | AC_CHECK_HEADERS([openssl/rand.h]) |
| 666 | AC_CHECK_HEADERS([openssl/x509v3.h]) |
Roger Meier | 12d7053 | 2011-12-14 23:35:28 +0000 | [diff] [blame] | 667 | AC_CHECK_HEADERS([sched.h]) |
Roger Meier | 9357636 | 2013-03-15 19:49:23 +0100 | [diff] [blame] | 668 | AC_CHECK_HEADERS([wchar.h]) |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 669 | |
| 670 | AC_CHECK_LIB(pthread, pthread_create) |
David Reiss | e4ca179 | 2009-05-21 02:28:19 +0000 | [diff] [blame] | 671 | dnl NOTE(dreiss): I haven't been able to find any really solid docs |
| 672 | dnl on what librt is and how it fits into various Unix systems. |
| 673 | dnl My best guess is that it is where glibc stashes its implementation |
| 674 | dnl of the POSIX Real-Time Extensions. This seems necessary on Linux, |
| 675 | dnl and we haven't yet found a system where this is a problem. |
| 676 | AC_CHECK_LIB(rt, clock_gettime) |
David Reiss | 9b90344 | 2009-10-21 05:51:28 +0000 | [diff] [blame] | 677 | AC_CHECK_LIB(socket, setsockopt) |
Roger Meier | 6869112 | 2011-09-09 06:19:35 +0000 | [diff] [blame] | 678 | |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 679 | AC_TYPE_INT16_T |
| 680 | AC_TYPE_INT32_T |
| 681 | AC_TYPE_INT64_T |
| 682 | AC_TYPE_INT8_T |
| 683 | AC_TYPE_MODE_T |
| 684 | AC_TYPE_OFF_T |
| 685 | AC_TYPE_SIZE_T |
David Reiss | 847a294 | 2008-04-21 18:07:43 +0000 | [diff] [blame] | 686 | AC_TYPE_SSIZE_T |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 687 | AC_TYPE_UINT16_T |
| 688 | AC_TYPE_UINT32_T |
| 689 | AC_TYPE_UINT64_T |
| 690 | AC_TYPE_UINT8_T |
James E. King, III | d7142b7 | 2017-09-01 13:00:36 -0700 | [diff] [blame] | 691 | AC_CHECK_TYPES([ptrdiff_t], [], [echo "ptrdiff_t not found or g++ not installed - cannot continue" && exit 1]) |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 692 | |
David Reiss | 7ed4b98 | 2008-02-11 23:24:47 +0000 | [diff] [blame] | 693 | AC_STRUCT_TM |
| 694 | |
David Reiss | 85a8f7b | 2009-05-21 02:28:16 +0000 | [diff] [blame] | 695 | dnl NOTE(dreiss): AI_ADDRCONFIG is not defined on OpenBSD. |
| 696 | AC_CHECK_DECL([AI_ADDRCONFIG], [], |
| 697 | [AC_DEFINE([AI_ADDRCONFIG], 0, |
| 698 | [Define if the AI_ADDRCONFIG symbol is unavailable])], |
| 699 | [ |
| 700 | #include <sys/types.h> |
| 701 | #include <sys/socket.h> |
| 702 | #include <netdb.h> |
| 703 | ]) |
| 704 | |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 705 | AC_FUNC_ALLOCA |
Roger Meier | 213a664 | 2010-10-27 12:30:11 +0000 | [diff] [blame] | 706 | AC_FUNC_FORK |
James E. King, III | ab8ff1a | 2017-02-15 14:12:37 -0500 | [diff] [blame] | 707 | AC_FUNC_MALLOC |
David Reiss | 7ed4b98 | 2008-02-11 23:24:47 +0000 | [diff] [blame] | 708 | AC_FUNC_MEMCMP |
James E. King, III | ab8ff1a | 2017-02-15 14:12:37 -0500 | [diff] [blame] | 709 | AC_FUNC_REALLOC |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 710 | AC_FUNC_SELECT_ARGTYPES |
| 711 | AC_FUNC_STAT |
| 712 | AC_FUNC_STRERROR_R |
David Reiss | 7ed4b98 | 2008-02-11 23:24:47 +0000 | [diff] [blame] | 713 | AC_FUNC_STRFTIME |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 714 | AC_FUNC_VPRINTF |
| 715 | AC_CHECK_FUNCS([strtoul]) |
| 716 | AC_CHECK_FUNCS([bzero]) |
David Reiss | 7ed4b98 | 2008-02-11 23:24:47 +0000 | [diff] [blame] | 717 | AC_CHECK_FUNCS([ftruncate]) |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 718 | AC_CHECK_FUNCS([gethostbyname]) |
Roger Meier | bea3144 | 2014-04-08 23:52:01 +0200 | [diff] [blame] | 719 | AC_CHECK_FUNCS([gethostbyname_r]) |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 720 | AC_CHECK_FUNCS([gettimeofday]) |
| 721 | AC_CHECK_FUNCS([memmove]) |
| 722 | AC_CHECK_FUNCS([memset]) |
| 723 | AC_CHECK_FUNCS([mkdir]) |
| 724 | AC_CHECK_FUNCS([realpath]) |
| 725 | AC_CHECK_FUNCS([select]) |
Jens Geyer | 4aa95df | 2015-04-03 12:37:03 +0200 | [diff] [blame] | 726 | AC_CHECK_FUNCS([setlocale]) |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 727 | AC_CHECK_FUNCS([socket]) |
| 728 | AC_CHECK_FUNCS([strchr]) |
| 729 | AC_CHECK_FUNCS([strdup]) |
David Reiss | 7ed4b98 | 2008-02-11 23:24:47 +0000 | [diff] [blame] | 730 | AC_CHECK_FUNCS([strerror]) |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 731 | AC_CHECK_FUNCS([strstr]) |
| 732 | AC_CHECK_FUNCS([strtol]) |
| 733 | AC_CHECK_FUNCS([sqrt]) |
David Reiss | e4ca179 | 2009-05-21 02:28:19 +0000 | [diff] [blame] | 734 | dnl The following functions are optional. |
Roger Meier | 213a664 | 2010-10-27 12:30:11 +0000 | [diff] [blame] | 735 | AC_CHECK_FUNCS([alarm]) |
David Reiss | e4ca179 | 2009-05-21 02:28:19 +0000 | [diff] [blame] | 736 | AC_CHECK_FUNCS([clock_gettime]) |
| 737 | AC_CHECK_FUNCS([sched_get_priority_min]) |
| 738 | AC_CHECK_FUNCS([sched_get_priority_max]) |
Jens Geyer | 0cf802a | 2014-05-27 23:10:11 +0200 | [diff] [blame] | 739 | AC_CHECK_FUNCS([inet_ntoa]) |
| 740 | AC_CHECK_FUNCS([pow]) |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 741 | |
David Reiss | 79db3e1 | 2010-08-31 16:51:31 +0000 | [diff] [blame] | 742 | if test "$cross_compiling" = "no" ; then |
| 743 | AX_SIGNED_RIGHT_SHIFT |
| 744 | fi |
David Reiss | e4d4ea0 | 2009-04-02 21:37:17 +0000 | [diff] [blame] | 745 | |
David Reiss | 5ddabb8 | 2010-10-06 17:09:37 +0000 | [diff] [blame] | 746 | dnl autoscan thinks we need this macro because we have a member function |
| 747 | dnl called "error". Invoke the macro but don't run the check so autoscan |
| 748 | dnl thinks we are in the clear. It's highly unlikely that we will ever |
| 749 | dnl actually use the function that this checks for. |
| 750 | if false ; then |
| 751 | AC_FUNC_ERROR_AT_LINE |
| 752 | fi |
| 753 | |
Roger Meier | 213a664 | 2010-10-27 12:30:11 +0000 | [diff] [blame] | 754 | # --- Coverage hooks --- |
| 755 | |
| 756 | AC_ARG_ENABLE(coverage, |
| 757 | [ --enable-coverage turn on -fprofile-arcs -ftest-coverage], |
| 758 | [case "${enableval}" in |
| 759 | yes) ENABLE_COVERAGE=1 ;; |
| 760 | no) ENABLE_COVERAGE=0 ;; |
| 761 | *) AC_MSG_ERROR(bad value ${enableval} for --enable-cov) ;; |
| 762 | esac], |
| 763 | [ENABLE_COVERAGE=2]) |
| 764 | |
| 765 | if test "x[$]ENABLE_COVERAGE" = "x1"; then |
| 766 | AC_MSG_WARN(enable coverage) |
| 767 | GCOV_CFLAGS="`echo \"[$]CFLAGS\" | perl -pe 's/-O\d+//g;'` -fprofile-arcs -ftest-coverage" |
| 768 | GCOV_CXXFLAGS="`echo \"[$]CXXFLAGS\" | perl -pe 's/-O\d+//g;'` -fprofile-arcs -ftest-coverage" |
| 769 | GCOV_LDFLAGS="-XCClinker -fprofile-arcs -XCClinker -ftest-coverage" |
| 770 | fi |
| 771 | |
| 772 | AC_SUBST(ENABLE_COVERAGE) |
| 773 | AC_SUBST(GCOV_CFLAGS) |
| 774 | AC_SUBST(GCOV_CXXFLAGS) |
| 775 | AC_SUBST(GCOV_LDFLAGS) |
| 776 | |
Roger Meier | 3faaedf | 2011-10-02 10:51:45 +0000 | [diff] [blame] | 777 | AC_ARG_ENABLE(boostthreads, |
| 778 | [ --enable-boostthreads use boost threads, instead of POSIX pthread (experimental) ], |
| 779 | [case "${enableval}" in |
| 780 | yes) ENABLE_BOOSTTHREADS=1 ;; |
| 781 | no) ENABLE_BOOSTTHREADS=0 ;; |
| 782 | *) AC_MSG_ERROR(bad value ${enableval} for --enable-cov) ;; |
| 783 | esac], |
| 784 | [ENABLE_BOOSTTHREADS=2]) |
| 785 | |
| 786 | |
| 787 | if test "x[$]ENABLE_BOOSTTHREADS" = "x1"; then |
| 788 | AC_MSG_WARN(enable boostthreads) |
| 789 | AC_DEFINE([USE_BOOST_THREAD], [1], [experimental --enable-boostthreads that replaces POSIX pthread by boost::thread]) |
Roger Meier | 3831578 | 2011-11-06 11:29:41 +0000 | [diff] [blame] | 790 | LIBS="-lboost_thread $LIBS" |
Roger Meier | 3faaedf | 2011-10-02 10:51:45 +0000 | [diff] [blame] | 791 | fi |
| 792 | |
| 793 | AM_CONDITIONAL([WITH_BOOSTTHREADS], [test "x[$]ENABLE_BOOSTTHREADS" = "x1"]) |
| 794 | |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 795 | AC_CONFIG_HEADERS(config.h:config.hin) |
Roger Meier | 58fe536 | 2013-06-22 22:05:22 +0200 | [diff] [blame] | 796 | AC_CONFIG_HEADERS(lib/cpp/src/thrift/config.h:config.hin) |
Chandler May | ccd998a | 2016-01-10 06:01:10 +0000 | [diff] [blame] | 797 | AC_CONFIG_HEADERS(lib/c_glib/src/thrift/config.h:config.hin) |
Jake Farrell | 240df17 | 2013-06-04 23:59:34 -0400 | [diff] [blame] | 798 | # gruard against pre defined config.h |
| 799 | AH_TOP([ |
| 800 | #ifndef CONFIG_H |
Roger Meier | 8909cbd | 2014-01-26 11:44:27 +0100 | [diff] [blame] | 801 | #define CONFIG_H |
Jake Farrell | 240df17 | 2013-06-04 23:59:34 -0400 | [diff] [blame] | 802 | ]) |
| 803 | AH_BOTTOM([ |
| 804 | #endif |
| 805 | ]) |
| 806 | |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 807 | |
| 808 | AC_CONFIG_FILES([ |
| 809 | Makefile |
| 810 | compiler/cpp/Makefile |
Nobuaki Sukegawa | 11da87e | 2016-09-10 14:02:19 +0900 | [diff] [blame] | 811 | compiler/cpp/src/Makefile |
dtmuller | 052abc3 | 2016-07-26 11:58:28 +0200 | [diff] [blame] | 812 | compiler/cpp/src/thrift/plugin/Makefile |
Nobuaki Sukegawa | 11da87e | 2016-09-10 14:02:19 +0900 | [diff] [blame] | 813 | compiler/cpp/test/Makefile |
dtmuller | 052abc3 | 2016-07-26 11:58:28 +0200 | [diff] [blame] | 814 | compiler/cpp/src/thrift/version.h |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 815 | lib/Makefile |
Tomek Kurcz | e93a901 | 2017-09-19 09:16:43 +0200 | [diff] [blame] | 816 | lib/cl/Makefile |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 817 | lib/cpp/Makefile |
David Reiss | 351e22b | 2010-08-31 16:51:19 +0000 | [diff] [blame] | 818 | lib/cpp/test/Makefile |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 819 | lib/cpp/thrift-nb.pc |
| 820 | lib/cpp/thrift-z.pc |
Roger Meier | 86e8986 | 2012-02-10 19:53:20 +0000 | [diff] [blame] | 821 | lib/cpp/thrift-qt.pc |
Nobuaki Sukegawa | 6622877 | 2014-12-07 21:45:33 +0900 | [diff] [blame] | 822 | lib/cpp/thrift-qt5.pc |
Bryan Duxbury | c657447 | 2010-10-06 00:12:33 +0000 | [diff] [blame] | 823 | lib/cpp/thrift.pc |
Roger Meier | 213a664 | 2010-10-27 12:30:11 +0000 | [diff] [blame] | 824 | lib/c_glib/Makefile |
| 825 | lib/c_glib/thrift_c_glib.pc |
| 826 | lib/c_glib/test/Makefile |
David Reiss | 1fdb592 | 2008-02-06 22:10:12 +0000 | [diff] [blame] | 827 | lib/csharp/Makefile |
Nobuaki Sukegawa | 88c5ee7 | 2016-09-04 18:49:18 +0900 | [diff] [blame] | 828 | lib/csharp/test/Multiplex/Makefile |
Jake Farrell | b95b0ff | 2012-03-22 21:49:10 +0000 | [diff] [blame] | 829 | lib/d/Makefile |
| 830 | lib/d/test/Makefile |
Bryan Duxbury | 7173bd9 | 2010-05-02 22:54:22 +0000 | [diff] [blame] | 831 | lib/erl/Makefile |
Jens Geyer | 0e87c46 | 2013-06-18 22:25:07 +0200 | [diff] [blame] | 832 | lib/go/Makefile |
Jens Geyer | a7da488 | 2013-07-18 00:33:05 +0200 | [diff] [blame] | 833 | lib/go/test/Makefile |
Jens Geyer | fea00ac | 2014-10-01 02:22:48 +0200 | [diff] [blame] | 834 | lib/haxe/test/Makefile |
Anthony F. Molinaro | a5df7c7 | 2010-09-27 17:22:17 +0000 | [diff] [blame] | 835 | lib/hs/Makefile |
David Reiss | f8dcf03 | 2008-02-23 22:07:39 +0000 | [diff] [blame] | 836 | lib/java/Makefile |
Nobuaki Sukegawa | 4b7dbe3 | 2016-05-25 12:09:02 +0900 | [diff] [blame] | 837 | lib/js/Makefile |
Roger Meier | f249576 | 2011-03-17 19:13:36 +0000 | [diff] [blame] | 838 | lib/js/test/Makefile |
Stig Bakken | ae3775a | 2014-12-02 09:21:24 +0100 | [diff] [blame] | 839 | lib/json/Makefile |
| 840 | lib/json/test/Makefile |
Volodymyr Gotra | b587a12 | 2016-09-14 19:18:48 -0500 | [diff] [blame] | 841 | lib/netcore/Makefile |
Roger Meier | 8909cbd | 2014-01-26 11:44:27 +0100 | [diff] [blame] | 842 | lib/nodejs/Makefile |
wilfrem | 2c69b5a | 2015-04-20 19:24:50 +0900 | [diff] [blame] | 843 | lib/nodets/Makefile |
T Jake Luciani | 1952e54 | 2009-02-01 04:47:30 +0000 | [diff] [blame] | 844 | lib/perl/Makefile |
| 845 | lib/perl/test/Makefile |
Bryan Duxbury | 6a68187 | 2010-05-02 22:39:31 +0000 | [diff] [blame] | 846 | lib/php/Makefile |
Roger Meier | 33b720a | 2012-01-24 18:42:46 +0000 | [diff] [blame] | 847 | lib/php/test/Makefile |
Mark Erickson | 932c470 | 2015-08-29 10:46:51 -0500 | [diff] [blame] | 848 | lib/dart/Makefile |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 849 | lib/py/Makefile |
Kevin Clark | 4bd8916 | 2008-07-08 00:47:49 +0000 | [diff] [blame] | 850 | lib/rb/Makefile |
Allen George | 8b96bfb | 2016-11-02 08:01:08 -0400 | [diff] [blame] | 851 | lib/rs/Makefile |
| 852 | lib/rs/test/Makefile |
Roger Meier | 6cf0ffc | 2014-04-05 00:45:42 +0200 | [diff] [blame] | 853 | lib/lua/Makefile |
BCG | de0b4b5 | 2015-12-28 01:15:00 -0500 | [diff] [blame] | 854 | lib/xml/Makefile |
| 855 | lib/xml/test/Makefile |
David Reiss | 8180c0c | 2008-02-04 21:14:14 +0000 | [diff] [blame] | 856 | test/Makefile |
Nobuaki Sukegawa | bd16530 | 2016-01-19 11:10:07 +0900 | [diff] [blame] | 857 | test/features/Makefile |
Roger Meier | b3c8409 | 2014-09-01 21:53:40 +0200 | [diff] [blame] | 858 | test/c_glib/Makefile |
Tomek Kurcz | e93a901 | 2017-09-19 09:16:43 +0200 | [diff] [blame] | 859 | test/cl/Makefile |
Roger Meier | d3b9dca | 2011-06-24 14:01:10 +0000 | [diff] [blame] | 860 | test/cpp/Makefile |
Nobuaki Sukegawa | 88c5ee7 | 2016-09-04 18:49:18 +0900 | [diff] [blame] | 861 | test/csharp/Makefile |
alisdair sullivan | 06d0fa0 | 2014-08-05 19:54:57 -0700 | [diff] [blame] | 862 | test/erl/Makefile |
Jens Geyer | f459868 | 2014-05-08 23:18:44 +0200 | [diff] [blame] | 863 | test/go/Makefile |
Jens Geyer | bd52f1a | 2014-07-28 01:25:30 +0200 | [diff] [blame] | 864 | test/haxe/Makefile |
Bryan Duxbury | c657447 | 2010-10-06 00:12:33 +0000 | [diff] [blame] | 865 | test/hs/Makefile |
Nobuaki Sukegawa | d094e79 | 2016-02-01 21:47:49 +0900 | [diff] [blame] | 866 | test/lua/Makefile |
Volodymyr Gotra | b587a12 | 2016-09-14 19:18:48 -0500 | [diff] [blame] | 867 | test/netcore/Makefile |
Roger Meier | b33967b | 2012-01-21 09:18:05 +0000 | [diff] [blame] | 868 | test/php/Makefile |
Mark Erickson | 932c470 | 2015-08-29 10:46:51 -0500 | [diff] [blame] | 869 | test/dart/Makefile |
Roger Meier | 01b568c | 2012-01-10 21:30:02 +0000 | [diff] [blame] | 870 | test/perl/Makefile |
David Reiss | 9ff3b9d | 2008-02-15 01:10:23 +0000 | [diff] [blame] | 871 | test/py/Makefile |
Roger Meier | 50e4349 | 2010-10-08 17:46:06 +0000 | [diff] [blame] | 872 | test/py.twisted/Makefile |
Chris Piro | 20c81ad | 2013-03-07 11:32:48 -0500 | [diff] [blame] | 873 | test/py.tornado/Makefile |
Kevin Clark | 4bd8916 | 2008-07-08 00:47:49 +0000 | [diff] [blame] | 874 | test/rb/Makefile |
Allen George | 8b96bfb | 2016-11-02 08:01:08 -0400 | [diff] [blame] | 875 | test/rs/Makefile |
Roger Meier | fa89932 | 2012-10-22 19:27:38 +0000 | [diff] [blame] | 876 | tutorial/Makefile |
Roger Meier | 2814c2e | 2014-07-29 23:28:46 +0200 | [diff] [blame] | 877 | tutorial/c_glib/Makefile |
Tomek Kurcz | e93a901 | 2017-09-19 09:16:43 +0200 | [diff] [blame] | 878 | tutorial/cl/Makefile |
Roger Meier | 18a90d1 | 2012-10-24 18:40:06 +0000 | [diff] [blame] | 879 | tutorial/cpp/Makefile |
Nobuaki Sukegawa | 402f641 | 2016-02-22 22:41:25 +0900 | [diff] [blame] | 880 | tutorial/d/Makefile |
Jens Geyer | 0e87c46 | 2013-06-18 22:25:07 +0200 | [diff] [blame] | 881 | tutorial/go/Makefile |
Jens Geyer | bd52f1a | 2014-07-28 01:25:30 +0200 | [diff] [blame] | 882 | tutorial/haxe/Makefile |
Roger Meier | 303eb1b | 2014-05-14 00:49:41 +0200 | [diff] [blame] | 883 | tutorial/hs/Makefile |
Roger Meier | fa89932 | 2012-10-22 19:27:38 +0000 | [diff] [blame] | 884 | tutorial/java/Makefile |
| 885 | tutorial/js/Makefile |
Volodymyr Gotra | b587a12 | 2016-09-14 19:18:48 -0500 | [diff] [blame] | 886 | tutorial/netcore/Makefile |
Roger Meier | 64998e2 | 2014-01-27 21:15:56 +0100 | [diff] [blame] | 887 | tutorial/nodejs/Makefile |
Mark Erickson | 932c470 | 2015-08-29 10:46:51 -0500 | [diff] [blame] | 888 | tutorial/dart/Makefile |
Roger Meier | 1d66d06 | 2012-10-26 21:46:18 +0000 | [diff] [blame] | 889 | tutorial/py/Makefile |
| 890 | tutorial/py.twisted/Makefile |
Chris Piro | 20c81ad | 2013-03-07 11:32:48 -0500 | [diff] [blame] | 891 | tutorial/py.tornado/Makefile |
Roger Meier | ed817d0 | 2013-06-09 23:10:06 +0200 | [diff] [blame] | 892 | tutorial/rb/Makefile |
Allen George | 8b96bfb | 2016-11-02 08:01:08 -0400 | [diff] [blame] | 893 | tutorial/rs/Makefile |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 894 | ]) |
Marc Slemko | b09f588 | 2006-08-23 22:03:34 +0000 | [diff] [blame] | 895 | |
Nobuaki Sukegawa | 03f0e18 | 2015-05-09 18:33:42 +0900 | [diff] [blame] | 896 | if test "$have_cpp" = "yes" ; then MAYBE_CPP="cpp" ; else MAYBE_CPP="" ; fi |
| 897 | AC_SUBST([MAYBE_CPP]) |
| 898 | if test "$have_c_glib" = "yes" ; then MAYBE_C_GLIB="c_glib" ; else MAYBE_C_GLIB="" ; fi |
| 899 | AC_SUBST([MAYBE_C_GLIB]) |
Nobuaki Sukegawa | 8b791b2 | 2016-03-05 13:40:25 +0900 | [diff] [blame] | 900 | if test "$have_d" = "yes" -a "$have_deimos_event2" = "yes" -a "$have_deimos_openssl" = "yes"; then MAYBE_D="d" ; else MAYBE_D="" ; fi |
| 901 | AC_SUBST([MAYBE_D]) |
Nobuaki Sukegawa | 03f0e18 | 2015-05-09 18:33:42 +0900 | [diff] [blame] | 902 | if test "$have_java" = "yes" ; then MAYBE_JAVA="java" ; else MAYBE_JAVA="" ; fi |
| 903 | AC_SUBST([MAYBE_JAVA]) |
| 904 | if test "$have_csharp" = "yes" ; then MAYBE_CSHARP="csharp" ; else MAYBE_CSHARP="" ; fi |
| 905 | AC_SUBST([MAYBE_CSHARP]) |
Randy Abernethy | 983bf7d | 2015-10-09 12:28:57 -0700 | [diff] [blame] | 906 | if test "$have_python" = "yes" ; then MAYBE_PYTHON="py" ; else MAYBE_PYTHON="" ; fi |
Nobuaki Sukegawa | 03f0e18 | 2015-05-09 18:33:42 +0900 | [diff] [blame] | 907 | AC_SUBST([MAYBE_PYTHON]) |
Nobuaki Sukegawa | a185d7e | 2015-11-06 21:24:24 +0900 | [diff] [blame] | 908 | if test "$have_py3" = "yes" ; then MAYBE_PY3="py3" ; else MAYBE_PY3="" ; fi |
| 909 | AC_SUBST([MAYBE_PY3]) |
Nobuaki Sukegawa | 03f0e18 | 2015-05-09 18:33:42 +0900 | [diff] [blame] | 910 | if test "$have_ruby" = "yes" ; then MAYBE_RUBY="rb" ; else MAYBE_RUBY="" ; fi |
| 911 | AC_SUBST([MAYBE_RUBY]) |
Randy Abernethy | 983bf7d | 2015-10-09 12:28:57 -0700 | [diff] [blame] | 912 | if test "$have_haskell" = "yes" ; then MAYBE_HASKELL="hs" ; else MAYBE_HASKELL="" ; fi |
Nobuaki Sukegawa | 03f0e18 | 2015-05-09 18:33:42 +0900 | [diff] [blame] | 913 | AC_SUBST([MAYBE_HASKELL]) |
| 914 | if test "$have_perl" = "yes" ; then MAYBE_PERL="perl" ; else MAYBE_PERL="" ; fi |
| 915 | AC_SUBST([MAYBE_PERL]) |
| 916 | if test "$have_php" = "yes" ; then MAYBE_PHP="php" ; else MAYBE_PHP="" ; fi |
| 917 | AC_SUBST([MAYBE_PHP]) |
Mark Erickson | 932c470 | 2015-08-29 10:46:51 -0500 | [diff] [blame] | 918 | if test "$have_dart" = "yes" ; then MAYBE_DART="dart" ; else MAYBE_DART="" ; fi |
| 919 | AC_SUBST([MAYBE_DART]) |
Nobuaki Sukegawa | 03f0e18 | 2015-05-09 18:33:42 +0900 | [diff] [blame] | 920 | if test "$have_go" = "yes" ; then MAYBE_GO="go" ; else MAYBE_GO="" ; fi |
| 921 | AC_SUBST([MAYBE_GO]) |
| 922 | if test "$have_nodejs" = "yes" ; then MAYBE_NODEJS="nodejs" ; else MAYBE_NODEJS="" ; fi |
| 923 | AC_SUBST([MAYBE_NODEJS]) |
wilfrem | 2c69b5a | 2015-04-20 19:24:50 +0900 | [diff] [blame] | 924 | if test "$have_nodets" = "yes" ; then MAYBE_NODETS="nodets" ; else MAYBE_NODETS="" ; fi |
| 925 | AC_SUBST([MAYBE_NODETS]) |
Nobuaki Sukegawa | 826ea99 | 2015-10-28 22:19:45 +0900 | [diff] [blame] | 926 | if test "$have_erlang" = "yes" ; then MAYBE_ERLANG="erl" ; else MAYBE_ERLANG="" ; fi |
| 927 | AC_SUBST([MAYBE_ERLANG]) |
Nobuaki Sukegawa | d094e79 | 2016-02-01 21:47:49 +0900 | [diff] [blame] | 928 | if test "$have_lua" = "yes" ; then MAYBE_LUA="lua" ; else MAYBE_LUA="" ; fi |
| 929 | AC_SUBST([MAYBE_LUA]) |
Allen George | 8b96bfb | 2016-11-02 08:01:08 -0400 | [diff] [blame] | 930 | if test "$have_rs" = "yes" ; then MAYBE_RS="rs" ; else MAYBE_RS="" ; fi |
| 931 | AC_SUBST([MAYBE_RS]) |
James E. King, III | b628736 | 2017-09-28 11:57:42 +0000 | [diff] [blame] | 932 | if test "$have_dotnetcore" = "yes" ; then MAYBE_DOTNETCORE="netcore" ; else MAYBE_DOTNETCORE="" ; fi |
| 933 | AC_SUBST([MAYBE_DOTNETCORE]) |
Tomek Kurcz | e93a901 | 2017-09-19 09:16:43 +0200 | [diff] [blame] | 934 | if test "$have_cl" = "yes" ; then MAYBE_CL="cl" ; else MAYBE_CL="" ; fi |
| 935 | AC_SUBST([MAYBE_CL]) |
Nobuaki Sukegawa | 03f0e18 | 2015-05-09 18:33:42 +0900 | [diff] [blame] | 936 | |
Marc Slemko | b09f588 | 2006-08-23 22:03:34 +0000 | [diff] [blame] | 937 | AC_OUTPUT |
David Reiss | 5cc3ba8 | 2010-08-31 16:51:20 +0000 | [diff] [blame] | 938 | |
| 939 | |
| 940 | echo |
| 941 | echo "$PACKAGE $VERSION" |
| 942 | echo |
Roger Meier | 213a664 | 2010-10-27 12:30:11 +0000 | [diff] [blame] | 943 | echo "Building C (GLib) Library .... : $have_c_glib" |
James E. King, III | d7142b7 | 2017-09-01 13:00:36 -0700 | [diff] [blame] | 944 | echo "Building C# (Mono) Library ... : $have_csharp" |
| 945 | echo "Building C++ Library ......... : $have_cpp" |
Tomek Kurcz | e93a901 | 2017-09-19 09:16:43 +0200 | [diff] [blame] | 946 | echo "Building Common Lisp Library.. : $have_cl" |
James E. King, III | d7142b7 | 2017-09-01 13:00:36 -0700 | [diff] [blame] | 947 | echo "Building D Library ........... : $have_d" |
Mark Erickson | 932c470 | 2015-08-29 10:46:51 -0500 | [diff] [blame] | 948 | echo "Building Dart Library ........ : $have_dart" |
James E. King, III | d7142b7 | 2017-09-01 13:00:36 -0700 | [diff] [blame] | 949 | echo "Building dotnetcore Library .. : $have_dotnetcore" |
David Reiss | 5cc3ba8 | 2010-08-31 16:51:20 +0000 | [diff] [blame] | 950 | echo "Building Erlang Library ...... : $have_erlang" |
Christian Lavoie | afc6d8f | 2011-02-20 02:39:19 +0000 | [diff] [blame] | 951 | echo "Building Go Library .......... : $have_go" |
James E. King, III | d7142b7 | 2017-09-01 13:00:36 -0700 | [diff] [blame] | 952 | echo "Building Haskell Library ..... : $have_haskell" |
| 953 | echo "Building Haxe Library ........ : $have_haxe" |
| 954 | echo "Building Java Library ........ : $have_java" |
Roger Meier | 6cf0ffc | 2014-04-05 00:45:42 +0200 | [diff] [blame] | 955 | echo "Building Lua Library ......... : $have_lua" |
James E. King, III | d7142b7 | 2017-09-01 13:00:36 -0700 | [diff] [blame] | 956 | echo "Building NodeJS Library ...... : $have_nodejs" |
| 957 | echo "Building Perl Library ........ : $have_perl" |
| 958 | echo "Building PHP Library ......... : $have_php" |
| 959 | echo "Building Plugin Support ...... : $have_plugin" |
| 960 | echo "Building Python Library ...... : $have_python" |
| 961 | echo "Building Py3 Library ......... : $have_py3" |
| 962 | echo "Building Ruby Library ........ : $have_ruby" |
Allen George | 8b96bfb | 2016-11-02 08:01:08 -0400 | [diff] [blame] | 963 | echo "Building Rust Library ........ : $have_rs" |
Jake Farrell | c9c972b | 2012-07-24 17:28:24 +0000 | [diff] [blame] | 964 | |
David Reiss | 5cc3ba8 | 2010-08-31 16:51:20 +0000 | [diff] [blame] | 965 | if test "$have_csharp" = "yes" ; then |
| 966 | echo |
Roger Meier | 86e8986 | 2012-02-10 19:53:20 +0000 | [diff] [blame] | 967 | echo "C# Library:" |
| 968 | echo " Using .NET 3.5 ............ : $net_3_5" |
James E. King, III | d7142b7 | 2017-09-01 13:00:36 -0700 | [diff] [blame] | 969 | echo " Using mono version ........ : $($MCS --version | head -1)" |
David Reiss | 5cc3ba8 | 2010-08-31 16:51:20 +0000 | [diff] [blame] | 970 | fi |
James E. King, III | d7142b7 | 2017-09-01 13:00:36 -0700 | [diff] [blame] | 971 | if test "$have_cpp" = "yes" ; then |
Volodymyr Gotra | b587a12 | 2016-09-14 19:18:48 -0500 | [diff] [blame] | 972 | echo |
James E. King, III | d7142b7 | 2017-09-01 13:00:36 -0700 | [diff] [blame] | 973 | echo "C++ Library:" |
| 974 | echo " C++ compiler .............. : $CXX" |
| 975 | echo " Build TZlibTransport ...... : $have_zlib" |
| 976 | echo " Build TNonblockingServer .. : $have_libevent" |
| 977 | echo " Build TQTcpServer (Qt4) ... : $have_qt" |
| 978 | echo " Build TQTcpServer (Qt5) ... : $have_qt5" |
| 979 | echo " C++ compiler version ...... : $($CXX --version | head -1)" |
Christian Lavoie | afc6d8f | 2011-02-20 02:39:19 +0000 | [diff] [blame] | 980 | fi |
Tomek Kurcz | e93a901 | 2017-09-19 09:16:43 +0200 | [diff] [blame] | 981 | if test "$have_cl" = "yes" ; then |
| 982 | echo |
| 983 | echo "Common Lisp Library:" |
| 984 | echo " Using Common Lisp ......... : $SBCL" |
| 985 | echo " Using Common Lisp version . : $($SBCL --version)" |
| 986 | fi |
Jake Farrell | b95b0ff | 2012-03-22 21:49:10 +0000 | [diff] [blame] | 987 | if test "$have_d" = "yes" ; then |
| 988 | echo |
Jens Geyer | bcca1d9 | 2013-12-26 19:24:30 +0100 | [diff] [blame] | 989 | echo "D Library:" |
| 990 | echo " Using D Compiler .......... : $DMD" |
| 991 | echo " Building D libevent tests . : $with_d_event_tests" |
| 992 | echo " Building D SSL tests ...... : $with_d_ssl_tests" |
James E. King, III | d7142b7 | 2017-09-01 13:00:36 -0700 | [diff] [blame] | 993 | echo " Using D version ........... : $($DMD --version | head -1)" |
| 994 | fi |
| 995 | if test "$have_dart" = "yes" ; then |
| 996 | echo |
| 997 | echo "Dart Library:" |
| 998 | echo " Using Dart ................ : $DART" |
| 999 | echo " Using Pub ................. : $DARTPUB" |
| 1000 | echo " Using Dart version ........ : $($DART --version 2>&1)" |
| 1001 | fi |
| 1002 | if test "$have_dotnetcore" = "yes" ; then |
| 1003 | echo |
| 1004 | echo ".NET Core Library:" |
| 1005 | echo " Using .NET Core ........... : $DOTNETCORE" |
| 1006 | echo " Using .NET Core version ... : $DOTNETCORE_VERSION" |
| 1007 | fi |
| 1008 | if test "$have_erlang" = "yes" ; then |
| 1009 | echo |
| 1010 | echo "Erlang Library:" |
| 1011 | echo " Using erlc ................ : $ERLC" |
| 1012 | echo " Using rebar ............... : $REBAR" |
| 1013 | echo " Using erlc version ........ : $($ERL -eval 'erlang:display(erlang:system_info(otp_release)), halt().' -noshell | tr -d '\"')" |
| 1014 | fi |
| 1015 | if test "$have_go" = "yes" ; then |
| 1016 | echo |
| 1017 | echo "Go Library:" |
| 1018 | echo " Using Go................... : $GO" |
| 1019 | echo " Using Go version........... : $($GO version)" |
| 1020 | fi |
| 1021 | if test "$have_haskell" = "yes" ; then |
| 1022 | echo |
| 1023 | echo "Haskell Library:" |
| 1024 | echo " Using Cabal ............... : $CABAL" |
| 1025 | echo " Using Haskell ............. : $RUNHASKELL" |
| 1026 | echo " Using Haskell version ..... : $($RUNHASKELL --version)" |
| 1027 | fi |
| 1028 | if test "$have_haxe" = "yes" ; then |
| 1029 | echo |
| 1030 | echo "Haxe Library:" |
| 1031 | echo " Using Haxe ................ : $HAXE" |
| 1032 | echo " Using Haxe version ........ : $HAXE_VERSION" |
| 1033 | fi |
| 1034 | if test "$have_java" = "yes" ; then |
| 1035 | echo |
| 1036 | echo "Java Library:" |
Alex Volanis | 7004a61 | 2018-01-24 10:30:13 -0500 | [diff] [blame] | 1037 | echo " Using gradlew ............. : lib/java/gradlew" |
James E. King, III | d7142b7 | 2017-09-01 13:00:36 -0700 | [diff] [blame] | 1038 | echo " Using java ................ : $JAVA" |
| 1039 | echo " Using javac ............... : $JAVAC" |
Alex Volanis | 7004a61 | 2018-01-24 10:30:13 -0500 | [diff] [blame] | 1040 | echo " Using Gradle version ...... : $(lib/java/gradlew --version --quiet | grep Gradle 2>&1)" |
James E. King, III | d7142b7 | 2017-09-01 13:00:36 -0700 | [diff] [blame] | 1041 | echo " Using java version ........ : $($JAVA -version 2>&1 | grep 'version ')" |
| 1042 | fi |
| 1043 | if test "$have_lua" = "yes" ; then |
| 1044 | echo |
| 1045 | echo "Lua Library:" |
| 1046 | echo " Using Lua ................. : $LUA" |
| 1047 | echo " Using Lua version.......... : $($LUA -v)" |
Jake Farrell | b95b0ff | 2012-03-22 21:49:10 +0000 | [diff] [blame] | 1048 | fi |
Roger Meier | 8909cbd | 2014-01-26 11:44:27 +0100 | [diff] [blame] | 1049 | if test "$have_nodejs" = "yes" ; then |
| 1050 | echo |
| 1051 | echo "NodeJS Library:" |
| 1052 | echo " Using NodeJS .............. : $NODEJS" |
| 1053 | echo " Using NodeJS version....... : $($NODEJS --version)" |
| 1054 | fi |
James E. King, III | d7142b7 | 2017-09-01 13:00:36 -0700 | [diff] [blame] | 1055 | if test "$have_perl" = "yes" ; then |
Roger Meier | 6cf0ffc | 2014-04-05 00:45:42 +0200 | [diff] [blame] | 1056 | echo |
James E. King, III | d7142b7 | 2017-09-01 13:00:36 -0700 | [diff] [blame] | 1057 | echo "Perl Library:" |
| 1058 | echo " Using Perl ................ : $PERL" |
| 1059 | echo " Using Perl version ........ : $($PERL -v | grep 'version ')" |
| 1060 | fi |
| 1061 | if test "$have_php" = "yes" ; then |
| 1062 | echo |
| 1063 | echo "PHP Library:" |
| 1064 | echo " Using php-config .......... : $PHP_CONFIG" |
| 1065 | echo " Using php version ......... : $($PHP --version | head -1)" |
| 1066 | fi |
| 1067 | if test "$have_python" = "yes" ; then |
| 1068 | echo |
| 1069 | echo "Python Library:" |
| 1070 | echo " Using Python .............. : $PYTHON" |
| 1071 | echo " Using Python version ...... : $($PYTHON --version 2>&1)" |
| 1072 | if test "$have_py3" = "yes" ; then |
| 1073 | echo " Using Python3 ............. : $PYTHON3" |
| 1074 | echo " Using Python3 version ..... : $($PYTHON3 --version)" |
| 1075 | fi |
| 1076 | if test "$have_trial" = "yes"; then |
| 1077 | echo " Using trial ............... : $TRIAL" |
| 1078 | fi |
| 1079 | fi |
| 1080 | if test "$have_ruby" = "yes" ; then |
| 1081 | echo |
| 1082 | echo "Ruby Library:" |
| 1083 | echo " Using Ruby ................ : $RUBY" |
| 1084 | echo " Using Ruby version ........ : $($RUBY --version)" |
Roger Meier | 6cf0ffc | 2014-04-05 00:45:42 +0200 | [diff] [blame] | 1085 | fi |
Allen George | 8b96bfb | 2016-11-02 08:01:08 -0400 | [diff] [blame] | 1086 | if test "$have_rs" = "yes" ; then |
| 1087 | echo |
| 1088 | echo "Rust Library:" |
| 1089 | echo " Using Cargo................ : $CARGO" |
| 1090 | echo " Using rustc................ : $RUSTC" |
| 1091 | echo " Using Rust version......... : $($RUSTC --version)" |
| 1092 | fi |
David Reiss | 5cc3ba8 | 2010-08-31 16:51:20 +0000 | [diff] [blame] | 1093 | echo |
| 1094 | echo "If something is missing that you think should be present," |
| 1095 | echo "please skim the output of configure to find the missing" |
| 1096 | echo "component. Details are present in config.log." |
James E. King, III | d7142b7 | 2017-09-01 13:00:36 -0700 | [diff] [blame] | 1097 | echo |