CMake: Add sigaction, sigaltstack, self dbg

This commit is contained in:
Jonathan G Rennison
2020-06-27 14:50:59 +01:00
parent 10626baaf2
commit 6b7668dc83
4 changed files with 87 additions and 0 deletions

26
cmake/FindSigaction.cmake Normal file
View File

@@ -0,0 +1,26 @@
include(CheckCXXSourceCompiles)
check_cxx_source_compiles("
#include <signal.h>
void *addr;
int code;
void handler(int sig, siginfo_t *si, void *context) {
addr = si->si_addr;
code = si->si_code;
}
int main() {
struct sigaction sa;
sa.sa_flags = SA_SIGINFO;
sigemptyset(&sa.sa_mask);
sa.sa_sigaction = handler;
sigaction(SIGSEGV, &sa, 0);
return 0;
}"
SIGACTION_FOUND
)
if (SIGACTION_FOUND)
add_compile_options(
-DWITH_SIGACTION
)
endif (SIGACTION_FOUND)