The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/libsodium/m4/ax_tls.m4

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 # ===========================================================================
    2 #          https://www.gnu.org/software/autoconf-archive/ax_tls.html
    3 # ===========================================================================
    4 #
    5 # SYNOPSIS
    6 #
    7 #   AX_TLS([action-if-found], [action-if-not-found])
    8 #
    9 # DESCRIPTION
   10 #
   11 #   Provides a test for the compiler support of thread local storage (TLS)
   12 #   extensions. Defines TLS if it is found. Currently knows about C++11,
   13 #   GCC/ICC, and MSVC. I think SunPro uses the same as GCC, and Borland
   14 #   apparently supports either.
   15 #
   16 # LICENSE
   17 #
   18 #   Copyright (c) 2008 Alan Woodland <ajw05@aber.ac.uk>
   19 #   Copyright (c) 2010 Diego Elio Petteno` <flameeyes@gmail.com>
   20 #
   21 #   This program is free software: you can redistribute it and/or modify it
   22 #   under the terms of the GNU General Public License as published by the
   23 #   Free Software Foundation, either version 3 of the License, or (at your
   24 #   option) any later version.
   25 #
   26 #   This program is distributed in the hope that it will be useful, but
   27 #   WITHOUT ANY WARRANTY; without even the implied warranty of
   28 #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
   29 #   Public License for more details.
   30 #
   31 #   You should have received a copy of the GNU General Public License along
   32 #   with this program. If not, see <https://www.gnu.org/licenses/>.
   33 #
   34 #   As a special exception, the respective Autoconf Macro's copyright owner
   35 #   gives unlimited permission to copy, distribute and modify the configure
   36 #   scripts that are the output of Autoconf when processing the Macro. You
   37 #   need not follow the terms of the GNU General Public License when using
   38 #   or distributing such scripts, even though portions of the text of the
   39 #   Macro appear in them. The GNU General Public License (GPL) does govern
   40 #   all other use of the material that constitutes the Autoconf Macro.
   41 #
   42 #   This special exception to the GPL applies to versions of the Autoconf
   43 #   Macro released by the Autoconf Archive. When you make and distribute a
   44 #   modified version of the Autoconf Macro, you may extend this special
   45 #   exception to the GPL to apply to your modified version as well.
   46 
   47 #serial 14
   48 
   49 AC_DEFUN([AX_TLS], [
   50   AC_MSG_CHECKING([for thread local storage (TLS) class])
   51   AC_CACHE_VAL([ac_cv_tls],
   52    [for ax_tls_keyword in thread_local _Thread_local __thread '__declspec(thread)' none; do
   53        AS_CASE([$ax_tls_keyword],
   54           [none], [ac_cv_tls=none ; break],
   55           [AC_TRY_COMPILE(
   56               [#include <stdlib.h>
   57                static void
   58                foo(void) {
   59                static ] $ax_tls_keyword [ int bar;
   60                exit(1);
   61                }],
   62                [],
   63                [ac_cv_tls=$ax_tls_keyword ; break],
   64                ac_cv_tls=none
   65            )])
   66     done
   67   ])
   68   AC_MSG_RESULT([$ac_cv_tls])
   69 
   70   AS_IF([test "$ac_cv_tls" != "none"],
   71     [AC_DEFINE_UNQUOTED([TLS],[$ac_cv_tls],[If the compiler supports a TLS storage class define it to that here])
   72      m4_ifnblank([$1],[$1])],
   73     [m4_ifnblank([$2],[$2])])
   74 ])

Cache object: 8419d60ed4383c77575e68dec8b4dbda


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.