Mercurial > octave
comparison configure.ac @ 30531:492a37a18b81 stable
Guard usage of non-standard pragmas.
* configure.ac (HAVE_PRAGMA_GCC_VISIBILITY): Add new test for
"#pragma GCC visibility".
(HAVE_PRAGMA_GCC_DIAGNOSTIC): Fix typo in test.
* libinterp/template-inst/Array-tc.cc: Use HAVE_PRAGMA_GCC_VISIBILITY.
* liboctave/util/blaswrap.c: Use HAVE_PRAGMA_GCC_DIAGNOSTIC.
* liboctave/wrappers/stat-wrappers.c, liboctave/wrappers/wait-wrappers.c: Fix
indentation.
author | Markus Mützel <markus.muetzel@gmx.de> |
---|---|
date | Thu, 23 Dec 2021 11:55:09 +0100 |
parents | 9b41aba64c12 |
children | 5ff87e646505 c94757297640 |
comparison
equal
deleted
inserted
replaced
30530:332e5cbe3fa6 | 30531:492a37a18b81 |
---|---|
2840 AC_SUBST(WARN_LDFLAGS) | 2840 AC_SUBST(WARN_LDFLAGS) |
2841 | 2841 |
2842 ### Check for GCC-specific pragmas to control warnings. | 2842 ### Check for GCC-specific pragmas to control warnings. |
2843 | 2843 |
2844 AC_LANG_PUSH(C++) | 2844 AC_LANG_PUSH(C++) |
2845 AC_CACHE_CHECK([for @%:@pragma GCC diagnostic push/pop/ignore], | 2845 AC_CACHE_CHECK([for @%:@pragma GCC diagnostic push/pop/ignored], |
2846 [octave_cv_gcc_has_pragma_GCC_diagnostic], | 2846 [octave_cv_gcc_has_pragma_GCC_diagnostic], |
2847 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[ | 2847 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[ |
2848 #pragma GCC diagnostic push | 2848 #pragma GCC diagnostic push |
2849 #pragma GCC diagnostic ignore "-Wold-style-cast" | 2849 #pragma GCC diagnostic ignored "-Wold-style-cast" |
2850 int three = (int) 3.1415926; | 2850 int three = (int) 3.1415926; |
2851 #pragma GCC diagnostic pop | 2851 #pragma GCC diagnostic pop |
2852 ]])], | 2852 ]])], |
2853 [octave_cv_gcc_has_pragma_GCC_diagnostic=yes], | 2853 [octave_cv_gcc_has_pragma_GCC_diagnostic=yes], |
2854 [octave_cv_gcc_has_pragma_GCC_diagnostic=no])], | 2854 [octave_cv_gcc_has_pragma_GCC_diagnostic=no])], |
2855 ]) | 2855 ]) |
2856 AC_LANG_POP(C++) | 2856 AC_LANG_POP(C++) |
2857 | 2857 |
2858 if test $octave_cv_gcc_has_pragma_GCC_diagnostic = yes; then | 2858 if test $octave_cv_gcc_has_pragma_GCC_diagnostic = yes; then |
2859 AC_DEFINE(HAVE_PRAGMA_GCC_DIAGNOSTIC, 1, | 2859 AC_DEFINE(HAVE_PRAGMA_GCC_DIAGNOSTIC, 1, |
2860 [Define to 1 if GCC supports @%:@pragma GCC diagnostic ...]) | 2860 [Define to 1 if compiler supports @%:@pragma GCC diagnostic ...]) |
2861 fi | |
2862 | |
2863 AC_CACHE_CHECK([for @%:@pragma GCC visibility push/pop], | |
2864 [octave_cv_gcc_has_pragma_GCC_visiblity], | |
2865 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[ | |
2866 #pragma GCC visibility push(default) | |
2867 int three = 3; | |
2868 #pragma GCC visiblity pop(default) | |
2869 ]])], | |
2870 [octave_cv_gcc_has_pragma_GCC_visiblity=yes], | |
2871 [octave_cv_gcc_has_pragma_GCC_visiblity=no])], | |
2872 ]) | |
2873 | |
2874 if test $octave_cv_gcc_has_pragma_GCC_visiblity = yes; then | |
2875 AC_DEFINE(HAVE_PRAGMA_GCC_VISIBILITY, 1, | |
2876 [Define to 1 if compiler supports @%:@pragma GCC visiblity ...]) | |
2861 fi | 2877 fi |
2862 | 2878 |
2863 ## Check for one unusual warning used in pragmas that is not always available | 2879 ## Check for one unusual warning used in pragmas that is not always available |
2864 if test $octave_cv_gcc_has_pragma_GCC_diagnostic = yes; then | 2880 if test $octave_cv_gcc_has_pragma_GCC_diagnostic = yes; then |
2865 OCTAVE_CC_FLAG([-Wimplicit-fallthrough], | 2881 OCTAVE_CC_FLAG([-Wimplicit-fallthrough], |
2866 [AC_DEFINE(HAVE_WARN_IMPLICIT_FALLTHROUGH, 1, | 2882 [AC_DEFINE(HAVE_WARN_IMPLICIT_FALLTHROUGH, 1, |
2867 [Define to 1 if GCC supports -Wimplicit-fallthrough warning])]) | 2883 [Define to 1 if compiler supports -Wimplicit-fallthrough warning])]) |
2868 fi | 2884 fi |
2869 | 2885 |
2870 ### These are recommended by the gnulib bootstrap script: | 2886 ### These are recommended by the gnulib bootstrap script: |
2871 | 2887 |
2872 GNULIB_LINK_DEPS="$FREXPF_LIBM $FREXP_LIBM $GETHOSTNAME_LIB $LIBSOCKET $LIB_CLOCK_GETTIME $LIB_CRYPTO $LIB_GETLOGIN $LIB_NANOSLEEP $LIB_SELECT $LTLIBICONV $LTLIBINTL $LTLIBTHREAD $INTL_MACOSX_LIBS" | 2888 GNULIB_LINK_DEPS="$FREXPF_LIBM $FREXP_LIBM $GETHOSTNAME_LIB $LIBSOCKET $LIB_CLOCK_GETTIME $LIB_CRYPTO $LIB_GETLOGIN $LIB_NANOSLEEP $LIB_SELECT $LTLIBICONV $LTLIBINTL $LTLIBTHREAD $INTL_MACOSX_LIBS" |