CMake: Use string/list(APPEND foo ...) instead of set(foo ${foo} ...)

This commit is contained in:
Sam Edwards 2019-01-19 17:01:36 -07:00
parent 8c4dfd7a70
commit d961514892
5 changed files with 26 additions and 26 deletions

View File

@ -21,9 +21,9 @@ function(add_bison_target output_cxx input_yxx)
set(keyword "PREFIX")
elseif(keyword STREQUAL "PREFIX")
set(arguments ${arguments} -p "${arg}")
list(APPEND arguments -p "${arg}")
elseif(keyword STREQUAL "DEFINES")
set(arguments ${arguments} --defines="${arg}")
list(APPEND arguments --defines="${arg}")
list(APPEND outputs "${arg}")
else()
@ -61,7 +61,7 @@ function(add_bison_target output_cxx input_yxx)
endif()
list(APPEND depends "${prebuilt_file}")
set(commands ${commands} COMMAND ${CMAKE_COMMAND} -E copy ${prebuilt_file} ${output})
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E copy ${prebuilt_file} ${output})
endforeach()
add_custom_command(

View File

@ -20,12 +20,12 @@ function(add_flex_target output_cxx input_lxx)
elseif(arg STREQUAL "PREFIX")
set(keyword "PREFIX")
elseif(arg STREQUAL "CASE_INSENSITIVE")
set(arguments ${arguments} -i)
list(APPEND arguments -i)
elseif(keyword STREQUAL "PREFIX")
set(arguments ${arguments} -P "${arg}")
list(APPEND arguments -P "${arg}")
elseif(keyword STREQUAL "DEFINES")
set(arguments ${arguments} --header-file="${arg}")
list(APPEND arguments --header-file="${arg}")
list(APPEND outputs "${arg}")
else()
@ -63,7 +63,7 @@ function(add_flex_target output_cxx input_lxx)
endif()
list(APPEND depends "${prebuilt_file}")
set(commands ${commands} COMMAND ${CMAKE_COMMAND} -E copy ${prebuilt_file} ${output})
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E copy ${prebuilt_file} ${output})
endforeach()
add_custom_command(

View File

@ -288,10 +288,10 @@ function(export_packages filename)
set(exports "# Exports for Panda3D PKG:: packages\n")
foreach(pkg ${_ALL_PACKAGE_OPTIONS})
set(exports "${exports}\n# Create imported target PKG::${pkg}\n")
set(exports "${exports}add_library(PKG::${pkg} INTERFACE IMPORTED)\n\n")
string(APPEND exports "\n# Create imported target PKG::${pkg}\n")
string(APPEND exports "add_library(PKG::${pkg} INTERFACE IMPORTED)\n\n")
set(exports "${exports}set_target_properties(PKG::${pkg} PROPERTIES\n")
string(APPEND exports "set_target_properties(PKG::${pkg} PROPERTIES\n")
foreach(prop
INTERFACE_COMPILE_DEFINITIONS
INTERFACE_COMPILE_FEATURES
@ -304,7 +304,7 @@ function(export_packages filename)
#INTERFACE_SYSTEM_INCLUDE_DIRECTORIES # Let the consumer dictate this
INTERFACE_SOURCES)
set(prop_ex "$<TARGET_PROPERTY:PKG::${pkg},${prop}>")
set(exports "${exports}$<$<BOOL:${prop_ex}>: ${prop} \"${prop_ex}\"\n>")
string(APPEND exports "$<$<BOOL:${prop_ex}>: ${prop} \"${prop_ex}\"\n>")
endforeach(prop)
# Ugh, INTERFACE_LINK_LIBRARIES isn't transitive. Fine. Take care of it
@ -382,9 +382,9 @@ function(export_packages filename)
endif()
endwhile(stack)
set(exports "${exports} INTERFACE_LINK_LIBRARIES \"${libraries}\"\n")
string(APPEND exports " INTERFACE_LINK_LIBRARIES \"${libraries}\"\n")
set(exports "${exports})\n")
string(APPEND exports ")\n")
endforeach(pkg)
file(GENERATE OUTPUT "${filename}" CONTENT "${exports}")

View File

@ -122,7 +122,7 @@ if(NOT CG_LIBRARY_DIR OR NOT CG_INCLUDE_DIRS)
cmake_find_frameworks(Cg)
if(Cg_FRAMEWORKS)
foreach(dir ${Cg_FRAMEWORKS})
set(CG_INCLUDES ${CG_INCLUDES} ${dir}/Headers ${dir}/PrivateHeaders)
list(APPEND CG_INCLUDES ${dir}/Headers ${dir}/PrivateHeaders)
endforeach(dir)
unset(Cg_FRAMEWORKS)

View File

@ -13,9 +13,9 @@ include(CheckCXXCompilerFlag)
if(CMAKE_VERSION VERSION_LESS "3.1")
check_cxx_compiler_flag("-std=gnu++11" COMPILER_SUPPORTS_CXX11)
if(COMPILER_SUPPORTS_CXX11)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++11")
string(APPEND CMAKE_CXX_FLAGS " -std=gnu++11")
else()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++0x")
string(APPEND CMAKE_CXX_FLAGS " -std=gnu++0x")
endif()
else()
set(CMAKE_CXX_STANDARD 11)
@ -50,23 +50,23 @@ endif()
# Set warning levels
if(MSVC)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /W3")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W3")
string(APPEND CMAKE_C_FLAGS " /W3")
string(APPEND CMAKE_CXX_FLAGS " /W3")
else()
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall")
string(APPEND CMAKE_C_FLAGS " -Wall")
string(APPEND CMAKE_CXX_FLAGS " -Wall")
endif()
if(NOT "x${CMAKE_CXX_COMPILER_ID}" STREQUAL "xMSVC")
set(disable_flags "-Wno-unused-function -Wno-unused-parameter")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${disable_flags}")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${disable_flags} -Wno-reorder")
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -Wno-unused-variable")
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -Wno-unused-variable")
set(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} -Wno-unused-variable")
string(APPEND CMAKE_C_FLAGS " ${disable_flags}")
string(APPEND CMAKE_CXX_FLAGS " ${disable_flags} -Wno-reorder")
string(APPEND CMAKE_CXX_FLAGS_RELEASE " -Wno-unused-variable")
string(APPEND CMAKE_CXX_FLAGS_RELWITHDEBINFO " -Wno-unused-variable")
string(APPEND CMAKE_CXX_FLAGS_MINSIZEREL " -Wno-unused-variable")
if(MSVC)
# Clang behaving as MSVC
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-unused-command-line-argument")
string(APPEND CMAKE_C_FLAGS " -Wno-unused-command-line-argument")
set(CMAKE_CXX_FLAGS
"${CMAKE_CXX_FLAGS} -Wno-microsoft-template -Wno-unused-command-line-argument")
endif()