1 /*
2 Copyright Rene Rivera 2008-2015
3 Distributed under the Boost Software License, Version 1.0.
4 (See accompanying file LICENSE_1_0.txt or copy at
5 http://www.boost.org/LICENSE_1_0.txt)
6 */
7 
8 #ifndef BOOST_PREDEF_LIBRARY_C_ZOS_H
9 #define BOOST_PREDEF_LIBRARY_C_ZOS_H
10 
11 #include <boost/predef/library/c/_prefix.h>
12 
13 #include <boost/predef/version_number.h>
14 #include <boost/predef/make.h>
15 
16 /* tag::reference[]
17 = `BOOST_LIB_C_ZOS`
18 
19 z/OS libc Standard C library.
20 Version number available as major, minor, and patch.
21 
22 [options="header"]
23 |===
24 | {predef_symbol} | {predef_version}
25 
26 | `+__LIBREL__+` | {predef_detection}
27 
28 | `+__LIBREL__+` | V.R.P
29 | `+__TARGET_LIB__+` | V.R.P
30 |===
31 */ // end::reference[]
32 
33 #define BOOST_LIB_C_ZOS BOOST_VERSION_NUMBER_NOT_AVAILABLE
34 
35 #if defined(__LIBREL__)
36 #   undef BOOST_LIB_C_ZOS
37 #   if !defined(BOOST_LIB_C_ZOS) && defined(__LIBREL__)
38 #       define BOOST_LIB_C_ZOS BOOST_PREDEF_MAKE_0X_VRRPPPP(__LIBREL__)
39 #   endif
40 #   if !defined(BOOST_LIB_C_ZOS) && defined(__TARGET_LIB__)
41 #       define BOOST_LIB_C_ZOS BOOST_PREDEF_MAKE_0X_VRRPPPP(__TARGET_LIB__)
42 #   endif
43 #   if !defined(BOOST_LIB_C_ZOS)
44 #       define BOOST_LIB_C_ZOS BOOST_VERSION_NUMBER_AVAILABLE
45 #   endif
46 #endif
47 
48 #if BOOST_LIB_C_ZOS
49 #   define BOOST_LIB_C_ZOS_AVAILABLE
50 #endif
51 
52 #define BOOST_LIB_C_ZOS_NAME "z/OS"
53 
54 #endif
55 
56 #include <boost/predef/detail/test.h>
57 BOOST_PREDEF_DECLARE_TEST(BOOST_LIB_C_ZOS,BOOST_LIB_C_ZOS_NAME)
58