mirror of
https://gitee.com/openharmony/third_party_libsnd
synced 2024-11-23 01:49:53 +00:00
configure.ac: Remove stack smash protection (#778)
* This is something deployers should enable if they want it.
This commit is contained in:
parent
3ead8d2266
commit
d5a036e11a
@ -141,9 +141,6 @@ AC_DEFINE_UNQUOTED([ENABLE_EXPERIMENTAL_CODE], [${EXPERIMENTAL_CODE}], [Set to 1
|
|||||||
AC_ARG_ENABLE([werror],
|
AC_ARG_ENABLE([werror],
|
||||||
[AS_HELP_STRING([--enable-werror], [enable -Werror in all Makefiles])])
|
[AS_HELP_STRING([--enable-werror], [enable -Werror in all Makefiles])])
|
||||||
|
|
||||||
AC_ARG_ENABLE([stack-smash-protection],
|
|
||||||
[AS_HELP_STRING([--enable-stack-smash-protection], [Enable GNU GCC stack smash protection])])
|
|
||||||
|
|
||||||
AC_ARG_ENABLE([cpu-clip],
|
AC_ARG_ENABLE([cpu-clip],
|
||||||
[AS_HELP_STRING([--disable-cpu-clip], [disable tricky cpu specific clipper])])
|
[AS_HELP_STRING([--disable-cpu-clip], [disable tricky cpu specific clipper])])
|
||||||
|
|
||||||
@ -643,11 +640,6 @@ AC_LANG_PUSH([C++])
|
|||||||
AX_APPEND_COMPILE_FLAGS([${common_flags} -Wctor-dtor-privacy -Wnon-virtual-dtor -Woverloaded-virtual -Wreorder -Wsign-promo], [CXXFLAGS])
|
AX_APPEND_COMPILE_FLAGS([${common_flags} -Wctor-dtor-privacy -Wnon-virtual-dtor -Woverloaded-virtual -Wreorder -Wsign-promo], [CXXFLAGS])
|
||||||
AC_LANG_POP([C++])
|
AC_LANG_POP([C++])
|
||||||
|
|
||||||
AS_IF([test "x$enable_stack_smash_protection" = "xyes"], [
|
|
||||||
XIPH_GCC_STACK_PROTECTOR
|
|
||||||
XIPH_GXX_STACK_PROTECTOR
|
|
||||||
])
|
|
||||||
|
|
||||||
AS_IF([test "x$enable_test_coverage" = "xyes"], [
|
AS_IF([test "x$enable_test_coverage" = "xyes"], [
|
||||||
AX_APPEND_COMPILE_FLAGS([-coverage], [CFLAGS])
|
AX_APPEND_COMPILE_FLAGS([-coverage], [CFLAGS])
|
||||||
])
|
])
|
||||||
@ -795,7 +787,6 @@ AC_MSG_RESULT([
|
|||||||
CXX Compiler Vendor is : .............. ${ax_cv_cxx_compiler_vendor} (${ax_cv_cxx_compiler_version})
|
CXX Compiler Vendor is : .............. ${ax_cv_cxx_compiler_vendor} (${ax_cv_cxx_compiler_version})
|
||||||
|
|
||||||
Sanitizer enabled : ................... ${enable_sanitizer:-no}
|
Sanitizer enabled : ................... ${enable_sanitizer:-no}
|
||||||
Stack smash protection : .............. ${enable_stack_smash_protection:-no}
|
|
||||||
|
|
||||||
Installation directories :
|
Installation directories :
|
||||||
|
|
||||||
|
@ -1,73 +0,0 @@
|
|||||||
dnl Copyright (C) 2013 Xiph.org Foundation
|
|
||||||
dnl
|
|
||||||
dnl Redistribution and use in source and binary forms, with or without
|
|
||||||
dnl modification, are permitted provided that the following conditions
|
|
||||||
dnl are met:
|
|
||||||
dnl
|
|
||||||
dnl - Redistributions of source code must retain the above copyright
|
|
||||||
dnl notice, this list of conditions and the following disclaimer.
|
|
||||||
dnl
|
|
||||||
dnl - Redistributions in binary form must reproduce the above copyright
|
|
||||||
dnl notice, this list of conditions and the following disclaimer in the
|
|
||||||
dnl documentation and/or other materials provided with the distribution.
|
|
||||||
dnl
|
|
||||||
dnl - Neither the name of the Xiph.org Foundation nor the names of its
|
|
||||||
dnl contributors may be used to endorse or promote products derived from
|
|
||||||
dnl this software without specific prior written permission.
|
|
||||||
dnl
|
|
||||||
dnl THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
dnl ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
dnl LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
||||||
dnl A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR
|
|
||||||
dnl CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
|
||||||
dnl EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
|
||||||
dnl PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
|
||||||
dnl PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
|
||||||
dnl LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
|
||||||
dnl NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
|
||||||
dnl SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
|
|
||||||
dnl Want to know of GCC stack protector works, botfor the C and for the C++
|
|
||||||
dnl compiler.
|
|
||||||
dnl
|
|
||||||
dnl Just checking if the compiler accepts the required CFLAGSs is not enough
|
|
||||||
dnl because we have seen at least one instance where this check was
|
|
||||||
dnl in-sufficient.
|
|
||||||
dnl
|
|
||||||
dnl Instead, try to compile and link a test program with the stack protector
|
|
||||||
dnl flags. If that works, we use it.
|
|
||||||
|
|
||||||
AC_DEFUN([XIPH_GCC_STACK_PROTECTOR],
|
|
||||||
[AC_LANG_ASSERT(C)
|
|
||||||
AC_MSG_CHECKING([if $CC supports stack smash protection])
|
|
||||||
xiph_stack_check_old_cflags="$CFLAGS"
|
|
||||||
SSP_FLAGS="-fstack-protector --param ssp-buffer-size=4"
|
|
||||||
CFLAGS=$SSP_FLAGS
|
|
||||||
AC_TRY_LINK([
|
|
||||||
#include <stdio.h>
|
|
||||||
],
|
|
||||||
[puts("Hello, World!"); return 0;],
|
|
||||||
AC_MSG_RESULT([yes])
|
|
||||||
CFLAGS="$xiph_stack_check_old_cflags $SSP_FLAGS",
|
|
||||||
AC_MSG_RESULT([no])
|
|
||||||
CFLAGS="$xiph_stack_check_old_cflags"
|
|
||||||
)
|
|
||||||
])# XIPH_GCC_STACK_PROTECTOR
|
|
||||||
|
|
||||||
AC_DEFUN([XIPH_GXX_STACK_PROTECTOR],
|
|
||||||
[AC_LANG_PUSH([C++])
|
|
||||||
AC_MSG_CHECKING([if $CXX supports stack smash protection])
|
|
||||||
xiph_stack_check_old_cflags="$CFLAGS"
|
|
||||||
SSP_FLAGS="-fstack-protector --param ssp-buffer-size=4"
|
|
||||||
CFLAGS=$SSP_FLAGS
|
|
||||||
AC_TRY_LINK([
|
|
||||||
#include <cstdio>
|
|
||||||
],
|
|
||||||
[puts("Hello, World!"); return 0;],
|
|
||||||
AC_MSG_RESULT([yes])
|
|
||||||
CFLAGS="$xiph_stack_check_old_cflags $SSP_FLAGS",
|
|
||||||
AC_MSG_RESULT([no])
|
|
||||||
CFLAGS="$xiph_stack_check_old_cflags"
|
|
||||||
)
|
|
||||||
AC_LANG_POP([C++])
|
|
||||||
])# XIPH_GXX_STACK_PROTECTOR
|
|
Loading…
Reference in New Issue
Block a user