179 lines
4.1 KiB
CMake
179 lines
4.1 KiB
CMake
function(echo_target_property tgt prop)
|
|
# v for value, d for defined, s for set
|
|
get_property(v TARGET ${tgt} PROPERTY ${prop})
|
|
get_property(d TARGET ${tgt} PROPERTY ${prop} DEFINED)
|
|
get_property(s TARGET ${tgt} PROPERTY ${prop} SET)
|
|
|
|
# only produce output for values that are set
|
|
if(s)
|
|
message("tgt='${tgt}' prop='${prop}'")
|
|
message(" value='${v}'")
|
|
message(" defined='${d}'")
|
|
message(" set='${s}'")
|
|
message("")
|
|
endif()
|
|
endfunction()
|
|
|
|
function(echo_target tgt)
|
|
if(NOT TARGET ${tgt})
|
|
message("There is no target named '${tgt}'")
|
|
return()
|
|
endif()
|
|
|
|
set(props
|
|
DEBUG_OUTPUT_NAME
|
|
RELEASE_OUTPUT_NAME
|
|
DEBUG_POSTFIX
|
|
RELEASE_POSTFIX
|
|
ARCHIVE_OUTPUT_DIRECTORY
|
|
ARCHIVE_OUTPUT_DIRECTORY_DEBUG
|
|
ARCHIVE_OUTPUT_DIRECTORY_RELEASE
|
|
ARCHIVE_OUTPUT_NAME
|
|
ARCHIVE_OUTPUT_NAME_DEBUG
|
|
ARCHIVE_OUTPUT_NAME_RELEASE
|
|
AUTOMOC
|
|
AUTOMOC_MOC_OPTIONS
|
|
BUILD_WITH_INSTALL_RPATH
|
|
BUNDLE
|
|
BUNDLE_EXTENSION
|
|
COMPILE_DEFINITIONS
|
|
COMPILE_DEFINITIONS_DEBUG
|
|
COMPILE_DEFINITIONS_RELEASE
|
|
COMPILE_FLAGS
|
|
DEBUG_POSTFIX
|
|
DEFINE_SYMBOL
|
|
ENABLE_EXPORTS
|
|
EXCLUDE_FROM_ALL
|
|
EchoString
|
|
FOLDER
|
|
FRAMEWORK
|
|
Fortran_FORMAT
|
|
Fortran_MODULE_DIRECTORY
|
|
GENERATOR_FILE_NAME
|
|
GNUtoMS
|
|
HAS_CXX
|
|
IMPLICIT_DEPENDS_INCLUDE_TRANSFORM
|
|
IMPORTED
|
|
IMPORTED_CONFIGURATIONS
|
|
IMPORTED_IMPLIB
|
|
IMPORTED_IMPLIB_RELEASE
|
|
IMPORTED_IMPLIB_RELEASE
|
|
IMPORTED_LINK_DEPENDENT_LIBRARIES
|
|
IMPORTED_LINK_DEPENDENT_LIBRARIES_DEBUG
|
|
IMPORTED_LINK_DEPENDENT_LIBRARIES_RELEASE
|
|
IMPORTED_LINK_INTERFACE_LANGUAGES
|
|
IMPORTED_LINK_INTERFACE_LANGUAGES_DEBUG
|
|
IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE
|
|
IMPORTED_LINK_INTERFACE_LIBRARIES
|
|
IMPORTED_LINK_INTERFACE_LIBRARIES_DEBUG
|
|
IMPORTED_LINK_INTERFACE_LIBRARIES_RELEASE
|
|
IMPORTED_LINK_INTERFACE_MULTIPLICITY
|
|
IMPORTED_LINK_INTERFACE_MULTIPLICITY_DEBUG
|
|
IMPORTED_LINK_INTERFACE_MULTIPLICITY_RELEASE
|
|
IMPORTED_LOCATION
|
|
IMPORTED_LOCATION_DEBUG
|
|
IMPORTED_LOCATION_RELEASE
|
|
IMPORTED_NO_SONAME
|
|
IMPORTED_NO_SONAME_DEBUG
|
|
IMPORTED_NO_SONAME_RELEASE
|
|
IMPORTED_SONAME
|
|
IMPORTED_SONAME_DEBUG
|
|
IMPORTED_SONAME_RELEASE
|
|
IMPORT_PREFIX
|
|
IMPORT_SUFFIX
|
|
INCLUDE_DIRECTORIES
|
|
INSTALL_NAME_DIR
|
|
INSTALL_RPATH
|
|
INSTALL_RPATH_USE_LINK_PATH
|
|
INTERPROCEDURAL_OPTIMIZATION
|
|
INTERPROCEDURAL_OPTIMIZATION_DEBUG
|
|
INTERPROCEDURAL_OPTIMIZATION_RELEASE
|
|
LABELS
|
|
LIBRARY_OUTPUT_DIRECTORY
|
|
LIBRARY_OUTPUT_DIRECTORY_DEBUG
|
|
LIBRARY_OUTPUT_DIRECTORY_RELEASE
|
|
LIBRARY_OUTPUT_NAME
|
|
LIBRARY_OUTPUT_NAME_DEBUG
|
|
LIBRARY_OUTPUT_NAME_RELEASE
|
|
LINKER_LANGUAGE
|
|
LINK_DEPENDS
|
|
LINK_LIBRARIES
|
|
LINK_FLAGS
|
|
LINK_FLAGS_DEBUG
|
|
LINK_FLAGS_RELEASE
|
|
LINK_INTERFACE_LIBRARIES
|
|
LINK_INTERFACE_LIBRARIES_DEBUG
|
|
LINK_INTERFACE_LIBRARIES_RELEASE
|
|
LINK_INTERFACE_MULTIPLICITY
|
|
LINK_INTERFACE_MULTIPLICITY_DEBUG
|
|
LINK_INTERFACE_MULTIPLICITY_RELEASE
|
|
LINK_SEARCH_END_STATIC
|
|
LINK_SEARCH_START_STATIC
|
|
LOCATION
|
|
LOCATION_DEBUG
|
|
LOCATION_RELEASE
|
|
MACOSX_BUNDLE
|
|
MACOSX_BUNDLE_INFO_PLIST
|
|
MACOSX_FRAMEWORK_INFO_PLIST
|
|
MAP_IMPORTED_CONFIG_DEBUG
|
|
MAP_IMPORTED_CONFIG_RELEASE
|
|
OSX_ARCHITECTURES
|
|
OSX_ARCHITECTURES_DEBUG
|
|
OSX_ARCHITECTURES_RELEASE
|
|
OUTPUT_NAME
|
|
OUTPUT_NAME_DEBUG
|
|
OUTPUT_NAME_RELEASE
|
|
POST_INSTALL_SCRIPT
|
|
PREFIX
|
|
PRE_INSTALL_SCRIPT
|
|
PRIVATE_HEADER
|
|
PROJECT_LABEL
|
|
PUBLIC_HEADER
|
|
RESOURCE
|
|
RULE_LAUNCH_COMPILE
|
|
RULE_LAUNCH_CUSTOM
|
|
RULE_LAUNCH_LINK
|
|
RUNTIME_OUTPUT_DIRECTORY
|
|
RUNTIME_OUTPUT_DIRECTORY_DEBUG
|
|
RUNTIME_OUTPUT_DIRECTORY_RELEASE
|
|
RUNTIME_OUTPUT_NAME
|
|
RUNTIME_OUTPUT_NAME_DEBUG
|
|
RUNTIME_OUTPUT_NAME_RELEASE
|
|
SKIP_BUILD_RPATH
|
|
SOURCES
|
|
SOVERSION
|
|
STATIC_LIBRARY_FLAGS
|
|
STATIC_LIBRARY_FLAGS_DEBUG
|
|
STATIC_LIBRARY_FLAGS_RELEASE
|
|
SUFFIX
|
|
TYPE
|
|
VERSION
|
|
VS_DOTNET_REFERENCES
|
|
VS_GLOBAL_KEYWORD
|
|
VS_GLOBAL_PROJECT_TYPES
|
|
VS_KEYWORD
|
|
VS_SCC_AUXPATH
|
|
VS_SCC_LOCALPATH
|
|
VS_SCC_PROJECTNAME
|
|
VS_SCC_PROVIDER
|
|
VS_WINRT_EXTENSIONS
|
|
VS_WINRT_REFERENCES
|
|
WIN32_EXECUTABLE
|
|
)
|
|
|
|
message("======================== ${tgt} ========================")
|
|
foreach(p ${props})
|
|
echo_target_property("${tgt}" "${p}")
|
|
endforeach()
|
|
message("")
|
|
|
|
endfunction()
|
|
|
|
function(echo_targets)
|
|
set(tgts ${ARGV})
|
|
foreach(t ${tgts})
|
|
echo_target("${t}")
|
|
endforeach()
|
|
endfunction()
|
|
|