Diff for /embedaddon/libiconv/srcm4/visibility.m4 between versions 1.1 and 1.1.1.3

version 1.1, 2012/02/21 22:57:49 version 1.1.1.3, 2021/03/17 13:38:46
Line 1 Line 1
# visibility.m4 serial 2 (gettext-0.18)# visibility.m4 serial 6
dnl Copyright (C) 2005, 2008 Free Software Foundation, Inc.dnl Copyright (C) 2005, 2008, 2010-2019 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation  dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,  dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.  dnl with or without modifications, as long as this notice is preserved.
Line 12  dnl __attribute__((__visibility__("hidden"))) and Line 12  dnl __attribute__((__visibility__("hidden"))) and
 dnl __attribute__((__visibility__("default"))).  dnl __attribute__((__visibility__("default"))).
 dnl Does *not* test for __visibility__("protected") - which has tricky  dnl Does *not* test for __visibility__("protected") - which has tricky
 dnl semantics (see the 'vismain' test in glibc) and does not exist e.g. on  dnl semantics (see the 'vismain' test in glibc) and does not exist e.g. on
dnl MacOS X.dnl Mac OS X.
 dnl Does *not* test for __visibility__("internal") - which has processor  dnl Does *not* test for __visibility__("internal") - which has processor
 dnl dependent semantics.  dnl dependent semantics.
 dnl Does *not* test for #pragma GCC visibility push(hidden) - which is  dnl Does *not* test for #pragma GCC visibility push(hidden) - which is
Line 26  AC_DEFUN([gl_VISIBILITY], Line 26  AC_DEFUN([gl_VISIBILITY],
   CFLAG_VISIBILITY=    CFLAG_VISIBILITY=
   HAVE_VISIBILITY=0    HAVE_VISIBILITY=0
   if test -n "$GCC"; then    if test -n "$GCC"; then
    AC_MSG_CHECKING([for simple visibility declarations])    dnl First, check whether -Werror can be added to the command line, or
    AC_CACHE_VAL([gl_cv_cc_visibility], [    dnl whether it leads to an error because of some other option that the
      gl_save_CFLAGS="$CFLAGS"    dnl user has put into $CC $CFLAGS $CPPFLAGS.
      CFLAGS="$CFLAGS -fvisibility=hidden"    AC_CACHE_CHECK([whether the -Werror option is usable],
      AC_TRY_COMPILE(      [gl_cv_cc_vis_werror],
        [extern __attribute__((__visibility__("hidden"))) int hiddenvar;      [gl_save_CFLAGS="$CFLAGS"
         extern __attribute__((__visibility__("default"))) int exportedvar;       CFLAGS="$CFLAGS -Werror"
         extern __attribute__((__visibility__("hidden"))) int hiddenfunc (void);       AC_COMPILE_IFELSE(
         extern __attribute__((__visibility__("default"))) int exportedfunc (void);],         [AC_LANG_PROGRAM([[]], [[]])],
        [],         [gl_cv_cc_vis_werror=yes],
        [gl_cv_cc_visibility=yes],         [gl_cv_cc_vis_werror=no])
        [gl_cv_cc_visibility=no])       CFLAGS="$gl_save_CFLAGS"
      CFLAGS="$gl_save_CFLAGS"])      ])
    AC_MSG_RESULT([$gl_cv_cc_visibility])    dnl Now check whether visibility declarations are supported.
     AC_CACHE_CHECK([for simple visibility declarations],
       [gl_cv_cc_visibility],
       [gl_save_CFLAGS="$CFLAGS"
        CFLAGS="$CFLAGS -fvisibility=hidden"
        dnl We use the option -Werror and a function dummyfunc, because on some
        dnl platforms (Cygwin 1.7) the use of -fvisibility triggers a warning
        dnl "visibility attribute not supported in this configuration; ignored"
        dnl at the first function definition in every compilation unit, and we
        dnl don't want to use the option in this case.
        if test $gl_cv_cc_vis_werror = yes; then
          CFLAGS="$CFLAGS -Werror"
        fi
        AC_COMPILE_IFELSE(
          [AC_LANG_PROGRAM(
             [[extern __attribute__((__visibility__("hidden"))) int hiddenvar;
               extern __attribute__((__visibility__("default"))) int exportedvar;
               extern __attribute__((__visibility__("hidden"))) int hiddenfunc (void);
               extern __attribute__((__visibility__("default"))) int exportedfunc (void);
               void dummyfunc (void) {}
             ]],
             [[]])],
          [gl_cv_cc_visibility=yes],
          [gl_cv_cc_visibility=no])
        CFLAGS="$gl_save_CFLAGS"
       ])
     if test $gl_cv_cc_visibility = yes; then      if test $gl_cv_cc_visibility = yes; then
       CFLAG_VISIBILITY="-fvisibility=hidden"        CFLAG_VISIBILITY="-fvisibility=hidden"
       HAVE_VISIBILITY=1        HAVE_VISIBILITY=1

Removed from v.1.1  
changed lines
  Added in v.1.1.1.3


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>