Skip to content

Commit 3344a8e

Browse files
emersonknappnuclearsandwich
authored andcommitted
Pass through CXX flags to OGRE vendor build (#381)
* Pass through CXX flags Signed-off-by: Emerson Knapp <[email protected]> * fixup Signed-off-by: William Woodall <[email protected]> * re-add removed libc++ flag, because OSX build always needs it Signed-off-by: Emerson Knapp <[email protected]>
1 parent b5227d7 commit 3344a8e

File tree

1 file changed

+22
-5
lines changed

1 file changed

+22
-5
lines changed

rviz_ogre_vendor/CMakeLists.txt

Lines changed: 22 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,15 +22,20 @@ endif()
2222

2323
macro(build_freetype)
2424
set(extra_cmake_args)
25+
set(FREETYPE_CXX_FLAGS ${CMAKE_CXX_FLAGS})
2526

2627
if(WIN32)
27-
list(APPEND extra_cmake_args "-DCMAKE_CXX_FLAGS=/w")
28+
list(APPEND FREETYPE_CXX_FLAGS "/w")
2829
list(APPEND extra_cmake_args "-DCMAKE_C_FLAGS=/w")
2930
endif()
3031

3132
if(DEFINED CMAKE_TOOLCHAIN_FILE)
3233
list(APPEND extra_cmake_args "-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}")
34+
else()
35+
list(APPEND extra_cmake_args "-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}")
36+
list(APPEND extra_cmake_args "-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}")
3337
endif()
38+
list(APPEND extra_cmake_args "-DCMAKE_CXX_FLAGS=${FREETYPE_CXX_FLAGS}")
3439

3540
include(ExternalProject)
3641
ExternalProject_Add(freetype-2.8.1
@@ -55,15 +60,20 @@ endmacro()
5560

5661
macro(build_zlib)
5762
set(extra_cmake_args)
63+
set(ZLIB_CXX_FLAGS ${CMAKE_CXX_FLAGS})
5864

5965
if(WIN32)
60-
list(APPEND extra_cmake_args "-DCMAKE_CXX_FLAGS=/w")
66+
list(APPEND ZLIB_CXX_FLAGS "/w")
6167
list(APPEND extra_cmake_args "-DCMAKE_C_FLAGS=/w")
6268
endif()
6369

6470
if(DEFINED CMAKE_TOOLCHAIN_FILE)
6571
list(APPEND extra_cmake_args "-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}")
72+
else()
73+
list(APPEND extra_cmake_args "-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}")
74+
list(APPEND extra_cmake_args "-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}")
6675
endif()
76+
list(APPEND extra_cmake_args "-DCMAKE_CXX_FLAGS=${ZLIB_CXX_FLAGS}")
6777

6878
include(ExternalProject)
6979
ExternalProject_Add(zlib-1.2.11
@@ -88,22 +98,26 @@ endmacro()
8898

8999
macro(build_ogre)
90100
set(extra_cmake_args)
101+
set(OGRE_CXX_FLAGS ${CMAKE_CXX_FLAGS})
102+
91103
if(DEFINED CMAKE_BUILD_TYPE)
92104
list(APPEND extra_cmake_args -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE})
93105
endif()
106+
94107
if(WIN32)
95-
list(APPEND extra_cmake_args "-DCMAKE_CXX_FLAGS=/w /EHsc")
108+
list(APPEND OGRE_CXX_FLAGS "/w /EHsc")
96109
list(APPEND extra_cmake_args "-DCMAKE_C_FLAGS=/w /EHsc")
97110
elseif(APPLE)
98-
list(APPEND extra_cmake_args "-DCMAKE_CXX_FLAGS=-std=c++14 -stdlib=libc++ -w")
111+
list(APPEND OGRE_CXX_FLAGS "-std=c++14 -stdlib=libc++ -w")
99112
list(APPEND extra_cmake_args "-DCMAKE_OSX_ARCHITECTURES='x86_64'")
100113
else()
101-
list(APPEND extra_cmake_args "-DCMAKE_CXX_FLAGS=-std=c++14 -w")
114+
list(APPEND OGRE_CXX_FLAGS "-std=c++14 -w")
102115
list(APPEND extra_cmake_args "-DCMAKE_C_FLAGS=-w")
103116
endif()
104117
list(APPEND extra_cmake_args "-DOGRE_BUILD_RENDERSYSTEM_GL:BOOL=TRUE")
105118
list(APPEND extra_cmake_args "-DOGRE_BUILD_RENDERSYSTEM_D3D11:BOOL=OFF")
106119
list(APPEND extra_cmake_args "-DOGRE_BUILD_RENDERSYSTEM_D3D9:BOOL=OFF")
120+
list(APPEND extra_cmake_args "-DCMAKE_CXX_FLAGS=${OGRE_CXX_FLAGS}")
107121

108122
# Uncomment this line to enable the GL3PLUS render engine
109123
# list(APPEND extra_cmake_args "-DOGRE_BUILD_RENDERSYSTEM_GL3PLUS:BOOL=TRUE")
@@ -130,6 +144,9 @@ macro(build_ogre)
130144

131145
if(DEFINED CMAKE_TOOLCHAIN_FILE)
132146
list(APPEND extra_cmake_args "-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}")
147+
else()
148+
list(APPEND extra_cmake_args "-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}")
149+
list(APPEND extra_cmake_args "-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}")
133150
endif()
134151

135152
include(ExternalProject)

0 commit comments

Comments
 (0)