Skip to content

Commit 5cf4e2b

Browse files
committed
Disable the use of getloadavg, my_fpe, feenableexcept and -rdynamic in AIX
1 parent 4c0c68f commit 5cf4e2b

3 files changed

Lines changed: 13 additions & 5 deletions

File tree

cli/processexecutor.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -276,7 +276,7 @@ bool ProcessExecutor::handleRead(int rpipe, unsigned int &result, const std::str
276276

277277
bool ProcessExecutor::checkLoadAverage(size_t nchildren)
278278
{
279-
#if defined(__QNX__) || defined(__HAIKU__) // getloadavg() is unsupported on Qnx, Haiku.
279+
#if defined(__QNX__) || defined(__HAIKU__) || defined(_AIX)// getloadavg() is unsupported on Qnx, Haiku, AIX.
280280
(void)nchildren;
281281
return true;
282282
#else

test/signal/CMakeLists.txt

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,11 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU" OR CMAKE_CXX_COMPILER_ID MATCHES "Clang"
88
target_compile_options_safe(test-signalhandler -Wno-missing-declarations)
99
target_compile_options_safe(test-signalhandler -Wno-missing-prototypes)
1010
# required for backtrace() to produce function names
11-
target_link_options(test-signalhandler PRIVATE -rdynamic)
11+
if(CMAKE_SYSTEM_NAME MATCHES AIX)
12+
target_link_options(test-signalhandler PRIVATE)
13+
else()
14+
target_link_options(test-signalhandler PRIVATE -rdynamic)
15+
endif()
1216
endif()
1317

1418
add_executable(test-stacktrace
@@ -20,5 +24,9 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU" OR CMAKE_CXX_COMPILER_ID MATCHES "Clang"
2024
target_compile_options_safe(test-stacktrace -Wno-missing-declarations)
2125
target_compile_options_safe(test-stacktrace -Wno-missing-prototypes)
2226
# required for backtrace() to produce function names
23-
target_link_options(test-stacktrace PRIVATE -rdynamic)
27+
if(CMAKE_SYSTEM_NAME MATCHES AIX)
28+
target_link_options(test-signalhandler PRIVATE)
29+
else()
30+
target_link_options(test-stacktrace PRIVATE -rdynamic)
31+
endif()
2432
endif()

test/signal/test-signalhandler.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@
5454
++*static_cast<int*>(nullptr); // NOLINT(clang-analyzer-core.NullDereference)
5555
}
5656

57-
#if !defined(__APPLE__)
57+
#if !defined(__APPLE__) && !defined(_AIX)
5858
/*static*/ int my_fpe() // NOLINT(misc-use-internal-linkage)
5959
{
6060
if (feenableexcept(FE_ALL_EXCEPT) == -1)
@@ -80,7 +80,7 @@ int main(int argc, const char * const argv[])
8080
my_abort();
8181
else if (strcmp(argv[1], "segv") == 0)
8282
my_segv();
83-
#if !defined(__APPLE__)
83+
#if !defined(__APPLE__) && !defined(_AIX)
8484
else if (strcmp(argv[1], "fpe") == 0)
8585
return my_fpe();
8686
#endif

0 commit comments

Comments
 (0)