source: trunk/yat/utility/config_public.h.in @ 3601

Last change on this file since 3601 was 3601, checked in by Peter, 6 years ago

introduce two macros, YAT_WITH_CXX11 and YAT_WITHOUT_CXX11, very much like GSL_RANGE_CHECK and GSL_RANGE_CHECK_OFF. If one of them is set, follow user's wish; if both are set, error out; if neither is set, c++11 is off. refs #878

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
  • Property svndigest:ignore set to 1496
File size: 2.9 KB
Line 
1#ifndef _theplu_yat_utility_config_public_
2#define _theplu_yat_utility_config_public_
3
4// $Id: config_public.h.in 3601 2017-01-22 13:16:21Z peter $
5
6/*
7  Copyright (C) 2008 Jari Häkkinen, Peter Johansson
8  Copyright (C) 2009, 2011, 2013, 2014, 2015 Peter Johansson
9
10  This file is part of the yat library, http://dev.thep.lu.se/yat
11
12  The yat library is free software; you can redistribute it and/or
13  modify it under the terms of the GNU General Public License as
14  published by the Free Software Foundation; either version 3 of the
15  License, or (at your option) any later version.
16
17  The yat library is distributed in the hope that it will be useful,
18  but WITHOUT ANY WARRANTY; without even the implied warranty of
19  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20  General Public License for more details.
21
22  You should have received a copy of the GNU General Public License
23  along with yat. If not, see <http://www.gnu.org/licenses/>.
24*/
25
26///
27/// \file utility/config_public.h
28///
29
30
31/// Define to 1 if you have the <bam/bam.h> header file.
32#undef YAT_HAVE_BAM_BAM_H
33
34/// Define to 1 if you have the <bam.h> header file.
35#undef YAT_HAVE_BAM_H
36
37/// Define to 1 if HTS is available
38#undef YAT_HAVE_HTSLIB
39
40/// Define to 1 if you have the <htslib/hts.h> header file.
41#undef YAT_HAVE_HTSLIB_HTS_H
42
43/// Define to 1 if you have the <hts.h> header file.
44#undef YAT_HAVE_HTS_H
45
46/// Define to 1 if yat is built with bam support
47#undef YAT_HAVE_LIBBAM
48
49/// Define to 1 if you have the <samtools/bam.h> header file.
50#undef YAT_HAVE_SAMTOOLS_BAM_H
51
52/// Define if compiler supports deprecated attribute, as in g++ 4.0
53#undef YAT_HAVE_GCC_DEPRECATED
54
55/// Define if compiler supports boost concept with constructor
56#undef YAT_HAVE_BOOST_CONCEPT_WITH_CONSTRUCTOR
57
58/// Let the user turn on/off c++11 features with YAT_WITH_CXX11 and
59/// YAT_WITHOUT_CXX11, respectively.
60#ifndef YAT_WITH_CXX11
61#  ifndef YAT_WITHOUT_CXX11
62#    define YAT_WITH_CXX11 0 // default is off for now
63#  else
64#    define YAT_WITH_CXX11 0
65#  endif
66#else
67#  ifdef YAT_WITHOUT_CXX11
68#    error "cannot set both YAT_WITH_CXX11 and YAT_WITHOUT_CXX11"
69#  endif
70#endif
71
72
73// Depending on whether YAT_WITH_CXX11 and YAT_WITHOUT_CXX11 are
74// defined (see logic above), define specific features if found during
75// configuration.
76#if YAT_HAVE_CXX11__
77/// Define if compiler supports rvalues */
78#undef YAT_HAVE_RVALUE
79/// Define if compiler supports atomic */
80#undef YAT_HAVE_ATOMIC
81#endif
82
83/// Define to 1 if boost::exception_ptr works
84#undef YAT_HAVE_WORKING_BOOST_EXCEPTION_PTR
85
86/// Define to 1 if boost::iterator_facade::operator-> works
87#undef YAT_HAVE_BOOST_ITERATOR_FACADE_PROXY_PTR
88
89/// Version of yat in string format
90#undef YAT_VERSION
91/// First digit in VERSION triplet
92#undef YAT_MAJOR_VERSION
93/// Second digit in VERSION triplet
94#undef YAT_MINOR_VERSION
95/// Third digit in VERSION triplet or zero if VERSION is MAJOR.MINOR
96#undef YAT_PATCH_VERSION
97/// true if dev build (version ends with pre
98#undef YAT_DEV_BUILD
99
100#endif
Note: See TracBrowser for help on using the repository browser.