blob: bf7de57c9576dd9cb1655bf4b6bbc597d6c7eab2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
dnl
dnl Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
dnl Copyright (C) S/E - 2013/2013 - Sylvestre Ledru
dnl Copyright (C) Scilab Enterprises - 2014 - Clement DAVID
dnl
dnl This file must be used under the terms of the CeCILL.
dnl This source file is licensed as described in the file COPYING, which
dnl you should have received as part of this distribution. The terms
dnl are also available at
dnl http://www.cecill.info/licences/Licence_CeCILL_V2.1-en.txt
dnl CHECK_COMPILER_ARG(LANG, ARG, ACTION-IF-NOT_FOUND)
AC_DEFUN([CHECK_COMPILER_ARG],[
AC_LANG_PUSH([$1])
AC_MSG_CHECKING([if the $1 compiler accepts $2])
ac_save_$3="$$3"
$3="$$3 $$2"
AC_COMPILE_IFELSE([AC_LANG_PROGRAM()],
[AC_MSG_RESULT([yes])
$4="$2"
],
[AC_MSG_RESULT([no])]
)
$3="$ac_save_$3";
AC_LANG_POP([$1])
])
AC_DEFUN([AC_CHECK_STDCPP_STATIC],[
AC_ARG_ENABLE(static-system-lib,
AC_HELP_STRING([--disable-static-system-lib],[Disable the usage of the static stdc++ and libgcc libs]))
# Check if -static-libstdc++ and -static-libgcc are supported.
saved_LDFLAGS="$LDFLAGS"
compiler_manage_static_libs=no
USE_STATIC_SYSTEM_LIB=yes
if test "x$enable_static_system_lib" == "xno"; then
# The user ask for an explicit disable.
USE_STATIC_SYSTEM_LIB=no
fi
LDFLAGS="$LDFLAGS -static-libstdc++ -static-libgcc"
AC_MSG_CHECKING([whether g++ accepts -static-libstdc++ -static-libgcc])
AC_LANG_PUSH(C++)
AC_LINK_IFELSE([AC_LANG_SOURCE([
#if (__GNUC__ < 4) || (__GNUC__ == 4 && __GNUC_MINOR__ < 5)
#error -static-libstdc++ not implemented
#endif
int main() {return 0;}])],
[AC_MSG_RESULT([yes]); compiler_manage_static_libs=yes],
[AC_MSG_RESULT([no])])
AC_LANG_POP(C++)
LDFLAGS="$saved_LDFLAGS"
if test "x$compiler_manage_static_libs" == "xno" -a "x$enable_static_system_lib" != "xno"; then
AC_MSG_ERROR([The $CC compiler does not support the options -static-libstdc++/-static-libgcc. Update your compiler or use the option --disable-static-system-lib])
fi
if test "x$compiler_manage_static_libs" == "xno"; then
echo "-static-libstdc++ -static-libgcc unsupported by the compiler. Skipped"
USE_STATIC_SYSTEM_LIB=no
fi
AM_CONDITIONAL(USE_STATIC_SYSTEM_LIB, test "$USE_STATIC_SYSTEM_LIB" == yes)
])
|