From 5a9fc1118b0ad371bc351cca7f597432780f95c6 Mon Sep 17 00:00:00 2001 From: Nils Wentzell Date: Tue, 14 Jul 2020 18:29:39 -0400 Subject: [PATCH] [cmake] In extract_flags.cmake, protect extraction of -L/usr/lib and fix filtering -I/usr/include --- share/cmake/extract_flags.cmake | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/share/cmake/extract_flags.cmake b/share/cmake/extract_flags.cmake index b6d11483..e00ee628 100644 --- a/share/cmake/extract_flags.cmake +++ b/share/cmake/extract_flags.cmake @@ -76,14 +76,10 @@ macro(extract_flags) list(REMOVE_ITEM sys_inc_dirs ${inc_dirs}) endif() foreach(dir ${inc_dirs}) - if(NOT dir STREQUAL "/usr/include") - set(${target}_CXXFLAGS "${${target}_CXXFLAGS} -I${dir}") - endif() + set(${target}_CXXFLAGS "${${target}_CXXFLAGS} -I${dir}") endforeach() foreach(dir ${sys_inc_dirs}) - if(NOT dir STREQUAL "/usr/include") - set(${target}_CXXFLAGS "${${target}_CXXFLAGS} -isystem${dir}") - endif() + set(${target}_CXXFLAGS "${${target}_CXXFLAGS} -isystem${dir}") endforeach() get_property_recursive(libs TARGET ${target} PROPERTY INTERFACE_LINK_LIBRARIES) @@ -117,4 +113,10 @@ macro(extract_flags) # Remove all remaining generator expressions string(REGEX REPLACE " [^ ]*\\$<[^ ]*:[^>]*>" "" ${target}_LDFLAGS "${${target}_LDFLAGS}") string(REGEX REPLACE " [^ ]*\\$<[^ ]*:[^>]*>" "" ${target}_CXXFLAGS "${${target}_CXXFLAGS}") + + # Filter out system directories from LDFLAGS and CXXFLAGS + string(REGEX REPLACE " -L/usr/lib " " " ${target}_LDFLAGS "${${target}_LDFLAGS}") + string(REGEX REPLACE " -I/usr/include " " " ${target}_CXXFLAGS "${${target}_CXXFLAGS}") + string(REGEX REPLACE " -isystem/usr/include " " " ${target}_CXXFLAGS "${${target}_CXXFLAGS}") + endmacro()