1/*
2Copyright Rene Rivera 2012-2015
3Distributed under the Boost Software License, Version 1.0.
4(See accompanying file LICENSE_1_0.txt or copy at
5http://www.boost.org/LICENSE_1_0.txt)
6*/
7
8#ifndef BOOST_PREDEF_OS_BSD_FREE_H
9#define BOOST_PREDEF_OS_BSD_FREE_H
10
11#include <boost/predef/os/bsd.h>
12
13/*`
14[heading `BOOST_OS_BSD_FREE`]
15
16[@http://en.wikipedia.org/wiki/Freebsd FreeBSD] operating system.
17
18[table
19 [[__predef_symbol__] [__predef_version__]]
20
21 [[`__FreeBSD__`] [__predef_detection__]]
22
23 [[`__FreeBSD_version`] [V.R.P]]
24 ]
25 */
26
27#define BOOST_OS_BSD_FREE BOOST_VERSION_NUMBER_NOT_AVAILABLE
28
29#if !defined(BOOST_PREDEF_DETAIL_OS_DETECTED) && ( \
30 defined(__FreeBSD__) \
31 )
32# ifndef BOOST_OS_BSD_AVAILABLE
33# define BOOST_OS_BSD BOOST_VERSION_NUMBER_AVAILABLE
34# define BOOST_OS_BSD_AVAILABLE
35# endif
36# undef BOOST_OS_BSD_FREE
37# include <sys/param.h>
38# if defined(__FreeBSD_version)
39# if __FreeBSD_version == 491000
40# define BOOST_OS_BSD_FREE \
41 BOOST_VERSION_NUMBER(4, 10, 0)
42# elif __FreeBSD_version == 492000
43# define BOOST_OS_BSD_FREE \
44 BOOST_VERSION_NUMBER(4, 11, 0)
45# elif __FreeBSD_version < 500000
46# define BOOST_OS_BSD_FREE \
47 BOOST_PREDEF_MAKE_10_VRPPPP(__FreeBSD_version)
48# else
49# define BOOST_OS_BSD_FREE \
50 BOOST_PREDEF_MAKE_10_VVRRPPP(__FreeBSD_version)
51# endif
52# else
53# define BOOST_OS_BSD_FREE BOOST_VERSION_NUMBER_AVAILABLE
54# endif
55#endif
56
57#if BOOST_OS_BSD_FREE
58# define BOOST_OS_BSD_FREE_AVAILABLE
59# include <boost/predef/detail/os_detected.h>
60#endif
61
62#define BOOST_OS_BSD_FREE_NAME "Free BSD"
63
64#endif
65
66#include <boost/predef/detail/test.h>
67BOOST_PREDEF_DECLARE_TEST(BOOST_OS_BSD_FREE,BOOST_OS_BSD_FREE_NAME)
68