Sharg 1.1.2-rc.1
The argument parser for bio-c++ tools.
Loading...
Searching...
No Matches
platform.hpp
Go to the documentation of this file.
1// SPDX-FileCopyrightText: 2006-2024, Knut Reinert & Freie Universität Berlin
2// SPDX-FileCopyrightText: 2016-2024, Knut Reinert & MPI für molekulare Genetik
3// SPDX-License-Identifier: BSD-3-Clause
4
5#pragma once
6
12// ============================================================================
13// C++ standard and features
14// ============================================================================
15
16// C++ standard [required]
17#ifdef __cplusplus
18static_assert(__cplusplus >= 201709L, "SHARG requires C++20, make sure that you have set -std=c++20.");
19#else
20# error "This is not a C++ compiler."
21#endif
22
23#include <version>
24
25// ============================================================================
26// Dependencies
27// ============================================================================
28
29// SHARG [required]
30#if __has_include(<sharg/version.hpp>)
31# include <sharg/version.hpp>
32#else
33# error SHARG include directory not set correctly. Forgot to add -I ${INSTALLDIR}/include to your CXXFLAGS?
34#endif
35
36// ============================================================================
37// Documentation
38// ============================================================================
39
40// Doxygen related
41// this macro is a NO-OP unless doxygen parses it, in which case it resolves to the argument
42#ifndef SHARG_DOXYGEN_ONLY
43# define SHARG_DOXYGEN_ONLY(x)
44#endif
Provides SHARG version macros and global variables.
Hide me