X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;ds=sidebyside;f=include%2Fcompat.h;h=8fbd2acad05d8ddb3e530489e83d33b167e38127;hb=c7b938502295ddc5b2c89e0854d8c5c19ede32dc;hp=fa75cd75434b228d8d96ed350acc509d7142cc51;hpb=e244cb2c63b1ac1d85bdbb4691f7b1bd940ae804;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/include/compat.h b/include/compat.h index fa75cd754..8fbd2acad 100644 --- a/include/compat.h +++ b/include/compat.h @@ -1,9 +1,8 @@ /* * InspIRCd -- Internet Relay Chat Daemon * - * Copyright (C) 2013 Peter Powell - * Copyright (C) 2008 Thomas Stagner - * Copyright (C) 2007 Robin Burchell + * Copyright (C) 2013-2014, 2017, 2021 Sadie Powell + * Copyright (C) 2013-2014, 2016 Attila Molnar * * This file is part of InspIRCd. InspIRCd is free software: you can * redistribute it and/or modify it under the terms of the GNU General Public @@ -25,12 +24,18 @@ * Some implementations of the C++11 standard library are incomplete so we use * the implementation of the same types from C++ Technical Report 1 instead. */ -#if defined _LIBCPP_VERSION || defined _WIN32 +#if defined _LIBCPP_VERSION || defined _WIN32 || __cplusplus >= 201103L # define TR1NS std +# include +# include # include +# include #else # define TR1NS std::tr1 +# include +# include # include +# include #endif /** @@ -70,24 +75,6 @@ # define CXX11_OVERRIDE #endif -/** - * These macros enable the detection of the C++11 variadic templates in - * compilers which support them. - */ -#if __cplusplus >= 201103L -# define HAS_CXX11_VARIADIC_TEMPLATES -#elif defined __clang__ -# if __has_feature(cxx_variadic_templates) -# define HAS_CXX11_VARIADIC_TEMPLATES -# endif -#elif (__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4) -# if defined __GXX_EXPERIMENTAL_CXX0X__ -# define HAS_CXX11_VARIADIC_TEMPLATES -# endif -#elif _MSC_FULL_VER >= 170051025 -# define HAS_CXX11_VARIADIC_TEMPLATES -#endif - /** * This macro allows methods to be marked as deprecated. To use this, wrap the * method declaration in the header file with the macro. @@ -106,9 +93,11 @@ */ #if defined _WIN32 # include "inspircd_win32wrapper.h" +# include "threadengines/threadengine_win32.h" #else -# include # define ENTRYPOINT int main(int argc, char** argv) # define DllExport __attribute__ ((visibility ("default"))) # define CoreExport __attribute__ ((visibility ("default"))) +# include +# include "threadengines/threadengine_pthread.h" #endif