Skip to content

Commit 3c1e12a

Browse files
committed
Allow override of prefix-map build flag
By placing it before user supplied flags from the environment variables.
1 parent 2dd008d commit 3c1e12a

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

CMakeLists.txt

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,8 @@ configure_file(
5050
${CMAKE_BINARY_DIR}/git_revision.h
5151
)
5252

53+
# Custom flags that we'll put in front to allow override from ENV
54+
set(PREFIX_FLAGS_COMMON "")
5355
set(FLAGS_COMMON "-D__USE_LARGEFILE64 -pthread")
5456
set(supports32bit true)
5557
set(x86ish false)
@@ -71,18 +73,18 @@ configure_file(src/preload/rr_page.ld.in src/preload/rr_page.ld @ONLY)
7173
include(CheckCCompilerFlag)
7274
CHECK_C_COMPILER_FLAG("-fmacro-prefix-map=foo=bar" SUPPORTS_MACRO_PREFIX_MAP)
7375
if (SUPPORTS_MACRO_PREFIX_MAP)
74-
set(FLAGS_COMMON "${FLAGS_COMMON} -fmacro-prefix-map=${CMAKE_SOURCE_DIR}/=")
76+
set(PREFIX_FLAGS_COMMON "${PREFIX_FLAGS_COMMON} -fmacro-prefix-map=${CMAKE_SOURCE_DIR}/=")
7577
endif()
7678

77-
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${FLAGS_COMMON} -Wstrict-prototypes -std=gnu11")
79+
set(CMAKE_C_FLAGS "${PREFIX_FLAGS_COMMON} ${CMAKE_C_FLAGS} ${FLAGS_COMMON} -Wstrict-prototypes -std=gnu11")
7880
# Define __STDC_LIMIT_MACROS so |#include <stdint.h>| works as expected.
7981
# Define __STDC_FORMAT_MACROS so |#include <inttypes.h>| works as expected.
8082
include(CheckCXXCompilerFlag)
8183
CHECK_CXX_COMPILER_FLAG("-std=c++14" SUPPORTS_CXX14)
8284
if (SUPPORTS_CXX14)
83-
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${FLAGS_COMMON} -D__STDC_LIMIT_MACROS -D__STDC_FORMAT_MACROS -std=c++14")
85+
set(CMAKE_CXX_FLAGS "${PREFIX_FLAGS_COMMON} ${CMAKE_CXX_FLAGS} ${FLAGS_COMMON} -D__STDC_LIMIT_MACROS -D__STDC_FORMAT_MACROS -std=c++14")
8486
else()
85-
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${FLAGS_COMMON} -D__STDC_LIMIT_MACROS -D__STDC_FORMAT_MACROS -std=c++11")
87+
set(CMAKE_CXX_FLAGS "${PREFIX_FLAGS_COMMON} ${CMAKE_CXX_FLAGS} ${FLAGS_COMMON} -D__STDC_LIMIT_MACROS -D__STDC_FORMAT_MACROS -std=c++11")
8688
endif()
8789

8890
# We support three build types:

0 commit comments

Comments
 (0)