feat(src/misc): moved macros to misc
This commit is contained in:
11
src/misc/macros/debug.h
Normal file
11
src/misc/macros/debug.h
Normal file
@@ -0,0 +1,11 @@
|
||||
#ifdef __GNUC__ // GCC and Clang
|
||||
#define BREAKPOINT() __builtin_debugtrap()
|
||||
#elif defined(_MSC_VER) // MSVC
|
||||
#define BREAKPOINT() __debugbreak()
|
||||
#elif defined(__APPLE__) && defined(__MACH__) // macOS with Clang and LLDB
|
||||
#include <signal.h>
|
||||
#define BREAKPOINT() raise(SIGTRAP)
|
||||
#else
|
||||
#include <csignal>
|
||||
#define BREAKPOINT() std::raise(SIGTRAP)
|
||||
#endif
|
||||
21
src/misc/macros/meson.build
Normal file
21
src/misc/macros/meson.build
Normal file
@@ -0,0 +1,21 @@
|
||||
# ***********************************************************************
|
||||
#
|
||||
# Copyright (C) 2025 -- The 4D-STAR Collaboration
|
||||
# File Author: Emily Boudreaux
|
||||
# Last Modified: March 19, 2025
|
||||
#
|
||||
# 4DSSE is free software; you can use it and/or modify
|
||||
# it under the terms and restrictions the GNU General Library Public
|
||||
# License version 3 (GPLv3) as published by the Free Software Foundation.
|
||||
#
|
||||
# 4DSSE is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
# See the GNU Library General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Library General Public License
|
||||
# along with this software; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
#
|
||||
# *********************************************************************** #
|
||||
macros_dep = declare_dependency(include_directories: include_directories('.'))
|
||||
16
src/misc/macros/warning_control.h
Normal file
16
src/misc/macros/warning_control.h
Normal file
@@ -0,0 +1,16 @@
|
||||
#ifndef WARNING_CONTROL_H
|
||||
#define WARNING_CONTROL_H
|
||||
|
||||
#if defined(__GNUC__) || defined(__clang__)
|
||||
#define DEPRECATION_WARNING_OFF _Pragma("GCC diagnostic push") \
|
||||
_Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"")
|
||||
#define DEPRECATION_WARNING_ON _Pragma("GCC diagnostic pop")
|
||||
#elif defined(_MSC_VER)
|
||||
#define DEPRECATION_WARNING_OFF __pragma(warning(push)) __pragma(warning(disable: 4996))
|
||||
#define DEPRECATION_WARNING_ON __pragma(warning(pop))
|
||||
#else
|
||||
#define DEPRECATION_WARNING_OFF
|
||||
#define DEPRECATION_WARNING_ON
|
||||
#endif
|
||||
|
||||
#endif // WARNING_CONTROL_H
|
||||
2
src/misc/meson.build
Normal file
2
src/misc/meson.build
Normal file
@@ -0,0 +1,2 @@
|
||||
# IMPORTANT: DO NOT MAKE MISC DEPEND ON ANY OTHER MODULE AS IT IS THE FIRST MODULE TO BE BUILT
|
||||
subdir('macros')
|
||||
Reference in New Issue
Block a user