X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=acinclude.m4;h=2f38997ff0b85920cb8180d50e78c6207605de70;hb=3d1b9636b27ee256f91e03aa3c9bbf526ef6719f;hp=498196b307d646159aa7c24a3e3d17387f104051;hpb=064af42167bf4fc9aaea2702d80ce08074b889c0;p=sliver-openvswitch.git diff --git a/acinclude.m4 b/acinclude.m4 index 498196b30..2f38997ff 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -2,31 +2,17 @@ # Copyright (c) 2008, 2009 Nicira Networks. # -# Permission to use, copy, modify, and/or distribute this software for any -# purpose with or without fee is hereby granted, provided that the above -# copyright notice and this permission notice appear in all copies. +# 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: # -# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR -# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF -# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - -dnl Checks for --disable-userspace. -AC_DEFUN([OVS_CHECK_USERSPACE], - [AC_ARG_ENABLE( - [userspace], - [AC_HELP_STRING([--disable-userspace], - [Disable building userspace components.])], - [case "${enableval}" in - (yes) build_userspace=true ;; - (no) build_userspace=false ;; - (*) AC_MSG_ERROR([bad value ${enableval} for --enable-userspace]) ;; - esac], - [build_userspace=true]) - AM_CONDITIONAL([ENABLE_USERSPACE], [$build_userspace])]) +# 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 OVS_CHECK_LINUX(OPTION, VERSION, VARIABLE, CONDITIONAL) dnl @@ -154,12 +140,36 @@ AC_DEFUN([OVS_CHECK_IF_PACKET], [Define to 1 if net/if_packet.h is available.]) fi]) -dnl Checks for dpkg-buildpackage. If this is available then we check -dnl that the Debian packaging is functional at "make distcheck" time. -AC_DEFUN([OVS_CHECK_DPKG_BUILDPACKAGE], - [AC_CHECK_PROG([HAVE_DPKG_BUILDPACKAGE], [dpkg-buildpackage], [yes], [no]) - AM_CONDITIONAL([HAVE_DPKG_BUILDPACKAGE], - [test $HAVE_DPKG_BUILDPACKAGE = yes])]) +dnl Checks for buggy strtok_r. +dnl +dnl Some versions of glibc 2.7 has a bug in strtok_r when compiling +dnl with optimization that can cause segfaults: +dnl +dnl http://sources.redhat.com/bugzilla/show_bug.cgi?id=5614. +AC_DEFUN([OVS_CHECK_STRTOK_R], + [AC_CACHE_CHECK( + [whether strtok_r macro segfaults on some inputs], + [ovs_cv_strtok_r_bug], + [AC_RUN_IFELSE( + [AC_LANG_PROGRAM([#include + #include + ], + [[char string[] = ":::"; + char *save_ptr = (char *) 0xc0ffee; + char *token1, *token2; + token1 = strtok_r(string, ":", &save_ptr); + token2 = strtok_r(NULL, ":", &save_ptr); + printf ("%s %s\n", token1, token2); + return 0; + ]])], + [ovs_cv_strtok_r_bug=no], + [ovs_cv_strtok_r_bug=yes], + [ovs_cv_strtok_r_bug=yes])]) + if test $ovs_cv_strtok_r_bug = yes; then + AC_DEFINE([HAVE_STRTOK_R_BUG], [1], + [Define if strtok_r macro segfaults on some inputs]) + fi +]) dnl ---------------------------------------------------------------------- dnl These macros are from GNU PSPP, with the following original license: