X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=acinclude.m4;h=42e9ac891069240dc334a4dc6d10264ece56c155;hb=refs%2Fheads%2Fspv3;hp=6141edd26782b69aa759919489cce281b44e16d3;hpb=77dc491d3b0c1429801ec839e7afab0fbef6a7fc;p=pspp diff --git a/acinclude.m4 b/acinclude.m4 index 6141edd267..42e9ac8910 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -1,4 +1,4 @@ -dnl Copyright (C) 2005, 2006, 2007, 2009 Free Software Foundation, Inc. +dnl Copyright (C) 2005, 2006, 2007, 2009, 2014, 2015 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -34,8 +34,20 @@ AC_DEFUN([PSPP_PERL], if test "$PERL" != no && $PERL -e 'require 5.005_03;'; then :; else PSPP_REQUIRED_PREREQ([Perl 5.005_03 (or later)]) fi + + # The PSPP autobuilder appends a build number to the PSPP version number, + # e.g. "0.7.2-build40". But Perl won't parse version numbers that contain + # anything other than digits and periods, so "-build" causes an error. So we + # define $(VERSION_FOR_PERL) that drops everything from the hyphen onward. + VERSION_FOR_PERL=`echo "$VERSION" | sed 's/-.*//'` + AC_SUBST([VERSION_FOR_PERL]) ]) +dnl Check that Python 2 or 3 is available. +AC_DEFUN([PSPP_PYTHON], + [AC_ARG_VAR([PYTHON], [Python 2 or 3 interpreter]) + AC_CHECK_PROGS([PYTHON], [python python2 python3], [none])]) + dnl PSPP_CHECK_CC_OPTION([OPTION], [ACTION-IF-ACCEPTED], [ACTION-IF-REJECTED]) dnl Check whether the given C compiler OPTION is accepted. dnl If so, execute ACTION-IF-ACCEPTED, otherwise ACTION-IF-REJECTED. @@ -54,13 +66,6 @@ AC_DEFUN([PSPP_CHECK_CC_OPTION], fi ]) -dnl PSPP_ENABLE_OPTION([OPTION]) -dnl Check whether the given C compiler OPTION is accepted. -dnl If so, add it to CFLAGS. -dnl Example: PSPP_ENABLE_OPTION([-Wdeclaration-after-statement]) -AC_DEFUN([PSPP_ENABLE_OPTION], - [PSPP_CHECK_CC_OPTION([$1], [CFLAGS="$CFLAGS $1"])]) - dnl Check for readline and history libraries. dnl Modified for PSPP, based on readline.m4 serial 3 from @@ -116,6 +121,10 @@ AC_DEFUN([PSPP_READLINE], AC_DEFINE(HAVE_READLINE, 1, [Define if you have the readline library.]) AC_MSG_CHECKING([how to link with libreadline]) AC_MSG_RESULT([$LIBREADLINE]) + AC_SEARCH_LIBS([rl_echo_signal_char], [readline], + AC_DEFINE(HAVE_RL_ECHO_SIGNAL_CHAR, 1, [Define if the readline library provides rl_echo_signal_char.]),[],[$LIBREADLINE]) + AC_SEARCH_LIBS([rl_outstream], [readline], + AC_DEFINE(HAVE_RL_OUTSTREAM, 1, [Define if the readline library provides rl_outstream.]),[],[$LIBREADLINE]) else dnl If $LIBREADLINE didn't lead to a usable library, we don't dnl need $INCREADLINE either. @@ -248,4 +257,97 @@ AC_DEFUN([PSPP_GSL_NEEDS_FGNU89_INLINE], CFLAGS="$CFLAGS -fgnu89-inline" fi]) ]) -dnl acinclude.m4 ends here + +AC_DEFUN([PSPP_CHECK_CLICKSEQUENCE], + [AC_REQUIRE([AM_INIT_AUTOMAKE]) # Defines MAKEINFO + AC_CACHE_CHECK([whether makeinfo supports @clicksequence], + [pspp_cv_have_clicksequence], + [cat > conftest.texi <&AS_MESSAGE_LOG_FD" >&AS_MESSAGE_LOG_FD + eval "$MAKEINFO conftest.texi >&AS_MESSAGE_LOG_FD 2>&1" + retval=$? + echo "configure:__oline__: \$? = $retval" >&AS_MESSAGE_LOG_FD + if test $retval = 0; then + pspp_cv_have_clicksequence=yes + else + pspp_cv_have_clicksequence=no + fi + rm -f conftest.texi conftest.info]) + if test $pspp_cv_have_clicksequence = no; then + AM_MAKEINFOFLAGS="$AM_MAKEINFOFLAGS -DMISSING_CLICKSEQUENCE" + AC_SUBST([AM_MAKEINFOFLAGS]) + fi]) + +dnl Texinfo 4.13 generates broken DocBook XML. Probably other old +dnl versions do too, but that's the one that causes problems. +AC_DEFUN([PSPP_CHECK_MAKEINFO_DOCBOOK_XML], + [AC_REQUIRE([AM_INIT_AUTOMAKE]) # Defines MAKEINFO + AC_CACHE_CHECK( + [whether makeinfo generates broken DocBook XML], + [pspp_cv_broken_docbook_xml], + [AS_CASE( + [$(eval "$MAKEINFO --version | head -1")], + [*texinfo*4.13*], [pspp_cv_broken_docbook_xml=yes], + [*texinfo*], [pspp_cv_broken_docbook_xml=no], + [*], [pspp_cv_broken_docbook_xml=yes])]) + AM_CONDITIONAL( + [BROKEN_DOCBOOK_XML], [test "$pspp_cv_broken_docbook_xml" = yes])]) + +# The following comes from Open vSwitch: +# ---------------------------------------------------------------------- +# Copyright (c) 2008, 2009, 2010, 2011 Nicira Networks. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +dnl PSPP_ENABLE_WERROR +AC_DEFUN([PSPP_ENABLE_WERROR], + [AC_ARG_ENABLE( + [Werror], + [AC_HELP_STRING([--enable-Werror], [Add -Werror to CFLAGS])], + [], [enable_Werror=no]) + AC_CONFIG_COMMANDS_PRE( + [if test "X$enable_Werror" = Xyes; then + CFLAGS="$CFLAGS -Werror -Wno-error=deprecated-declarations" + fi])]) + +# The following comes from Open vSwitch: +# ---------------------------------------------------------------------- +# Copyright (c) 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015 Nicira, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +dnl Checks for dot. +AC_DEFUN([PSPP_CHECK_DOT], + [AC_CACHE_CHECK( + [for dot], + [pspp_cv_dot], + [dnl "dot" writes -V output to stderr: + if (dot -V) 2>&1 | grep '^dot - [[gG]]raphviz version' >/dev/null 2>&1; then + pspp_cv_dot=yes + else + pspp_cv_dot=no + fi]) + AM_CONDITIONAL([HAVE_DOT], [test "$pspp_cv_dot" = yes])])