mirror of
https://github.com/upx/upx.git
synced 2024-11-26 22:20:52 +00:00
63 lines
2.9 KiB
CMake
63 lines
2.9 KiB
CMake
#
|
|
# UPX "CMake" build file; see https://cmake.org/
|
|
# Copyright (C) Markus Franz Xaver Johannes Oberhumer
|
|
#
|
|
|
|
#***********************************************************************
|
|
# summary section
|
|
# print some info about the build configuration
|
|
#***********************************************************************
|
|
|
|
function(upx_print_info)
|
|
get_property(PROPERTY_GENERATOR_IS_MULTI_CONFIG GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG)
|
|
get_property(PROPERTY_TARGET_SUPPORTS_SHARED_LIBS GLOBAL PROPERTY TARGET_SUPPORTS_SHARED_LIBS)
|
|
|
|
# generator
|
|
upx_print_var(CMAKE_GENERATOR_TOOLSET CMAKE_GENERATOR_PLATFORM)
|
|
upx_print_var(PROPERTY_GENERATOR_IS_MULTI_CONFIG)
|
|
|
|
# directories
|
|
if(NOT ",${CMAKE_BINARY_DIR}," STREQUAL ",${CMAKE_CURRENT_BINARY_DIR}," OR NOT ",${CMAKE_SOURCE_DIR}," STREQUAL ",${CMAKE_CURRENT_SOURCE_DIR},")
|
|
upx_print_var(CMAKE_BINARY_DIR CMAKE_SOURCE_DIR CMAKE_CURRENT_BINARY_DIR CMAKE_CURRENT_SOURCE_DIR)
|
|
endif()
|
|
|
|
# system
|
|
upx_print_var(CMAKE_HOST_SYSTEM_NAME CMAKE_HOST_SYSTEM_VERSION CMAKE_HOST_SYSTEM_PROCESSOR)
|
|
upx_print_var(CMAKE_SYSTEM_NAME CMAKE_SYSTEM_VERSION CMAKE_SYSTEM_PROCESSOR)
|
|
upx_print_var(CMAKE_ANDROID_NDK CMAKE_ANDROID_NDK_VERSION CMAKE_ANDROID_STANDALONE_TOOLCHAIN)
|
|
upx_print_var(CMAKE_APPLE_SILICON_PROCESSOR CMAKE_OSX_DEPLOYMENT_TARGET CMAKE_OSX_SYSROOT)
|
|
upx_print_var(CMAKE_VS_PLATFORM_TOOLSET CMAKE_VS_PLATFORM_TOOLSET_HOST_ARCHITECTURE CMAKE_VS_PLATFORM_TOOLSET_VERSION)
|
|
upx_print_var(CMAKE_CROSSCOMPILING CMAKE_CROSSCOMPILING_EMULATOR)
|
|
upx_print_var(CMAKE_SIZEOF_VOID_P)
|
|
|
|
# binutils
|
|
upx_print_var(CMAKE_EXECUTABLE_FORMAT CMAKE_EXECUTABLE_SUFFIX UPX_CONFIG_CMAKE_EXECUTABLE_SUFFIX)
|
|
upx_print_var(CMAKE_AR CMAKE_RANLIB)
|
|
|
|
# compilers
|
|
foreach(lang IN ITEMS ASM C CXX)
|
|
upx_print_var(CMAKE_${lang}_COMPILER_LAUNCHER)
|
|
upx_print_var(CMAKE_${lang}_COMPILER)
|
|
upx_print_var(CMAKE_${lang}_COMPILER_ARG1)
|
|
upx_print_var(CMAKE_${lang}_COMPILER_ID)
|
|
upx_print_var(CMAKE_${lang}_SIMULATE_ID)
|
|
upx_print_var(CMAKE_${lang}_COMPILER_VERSION)
|
|
upx_print_var(CMAKE_${lang}_COMPILER_FRONTEND_VARIANT )
|
|
upx_print_var(CMAKE_${lang}_COMPILER_ARCHITECTURE_ID)
|
|
upx_print_var(CMAKE_${lang}_PLATFORM_ID)
|
|
upx_print_var(CMAKE_${lang}_COMPILER_ABI)
|
|
upx_print_var(CMAKE_${lang}_COMPILER_TARGET)
|
|
endforeach()
|
|
|
|
# misc
|
|
upx_print_var(CMAKE_BUILD_WITH_INSTALL_RPATH CMAKE_SKIP_RPATH CMAKE_SKIP_BUILD_RPATH CMAKE_SKIP_INSTALL_RPATH)
|
|
upx_print_var(CMAKE_INTERPROCEDURAL_OPTIMIZATION CMAKE_POSITION_INDEPENDENT_CODE)
|
|
upx_print_var(PROPERTY_TARGET_SUPPORTS_SHARED_LIBS)
|
|
upx_print_var(UPX_CONFIG_SANITIZE_FLAGS_DEBUG UPX_CONFIG_SANITIZE_FLAGS_RELEASE)
|
|
|
|
# shortcuts
|
|
upx_print_var(APPLE CLANG CYGWIN GNU_FRONTEND GNUC MINGW MSVC MSVC_FRONTEND MSVC_IDE MSVC_SIMULATE MSVC_TOOLSET_VERSION MSVC_VERSION MSYS UNIX WIN32 WIN64)
|
|
endfunction()
|
|
|
|
# vim:set ft=cmake ts=4 sw=4 tw=0 et:
|