This commit is contained in:
Nav
2022-04-03 22:55:22 +01:00
parent 1940940712
commit e3beea6b40

View File

@@ -1,6 +1,6 @@
cmake_minimum_required(VERSION 3.12) cmake_minimum_required(VERSION 3.22)
project(Bloom LANGUAGES CXX VERSION 0.8.3)
project(Bloom LANGUAGES CXX VERSION 0.8.3)
set(CMAKE_PROJECT_HOMEPAGE_URL "https://bloom.oscillate.io") set(CMAKE_PROJECT_HOMEPAGE_URL "https://bloom.oscillate.io")
set(CMAKE_VERBOSE_MAKEFILE off) set(CMAKE_VERBOSE_MAKEFILE off)
@@ -73,48 +73,6 @@ if (${CMAKE_BUILD_TYPE} MATCHES "Debug")
target_include_directories(Bloom PUBLIC /opt/Qt/6.1.2/Src) target_include_directories(Bloom PUBLIC /opt/Qt/6.1.2/Src)
endif() endif()
# Copy AVR8 TDFs to build directory and construct JSON mapping of AVR8 target signatures to TDF paths.
add_custom_command(
OUTPUT
${CMAKE_CURRENT_SOURCE_DIR}/build/resources/TargetDescriptionFiles/AVR/Mapping.json
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/build/scripts/Avr8TargetDescriptionFiles.php
COMMAND echo 'Processing AVR target description files.'
COMMAND
php ${CMAKE_CURRENT_SOURCE_DIR}/build/scripts/Avr8TargetDescriptionFiles.php
)
# Compile resources
add_custom_command(
OUTPUT
${CMAKE_CURRENT_SOURCE_DIR}/src/Generated/resources.cpp
${CMAKE_CURRENT_SOURCE_DIR}/src/Generated/resources_fake.cpp
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/src/resources.qrc
COMMAND echo 'Compiling QT resources. |${CMAKE_BUILD_TYPE}|'
COMMAND
rcc -o ${CMAKE_CURRENT_SOURCE_DIR}/src/Generated/resources.cpp
${CMAKE_CURRENT_SOURCE_DIR}/src/resources.qrc
)
# Copy resources/fonts into build/resources/Fonts
add_custom_command(
TARGET Bloom
POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_directory
${CMAKE_CURRENT_SOURCE_DIR}/resources/fonts
${CMAKE_CURRENT_SOURCE_DIR}/build/resources/Fonts
)
# Copy resources/udevrules/99-bloom.rules to build/resources/UDevRules/99-bloom.rules
add_custom_command(
TARGET Bloom
POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_SOURCE_DIR}/resources/udevrules/99-bloom.rules
${CMAKE_CURRENT_SOURCE_DIR}/build/resources/UDevRules/99-bloom.rules
)
target_link_libraries(Bloom -static-libgcc -static-libstdc++) target_link_libraries(Bloom -static-libgcc -static-libstdc++)
target_link_libraries(Bloom -lstdc++fs) target_link_libraries(Bloom -lstdc++fs)
target_link_libraries(Bloom -lpthread) target_link_libraries(Bloom -lpthread)
@@ -189,6 +147,48 @@ if (${ENABLE_SANITIZERS})
) )
endif() endif()
# Copy AVR8 TDFs to build directory and construct JSON mapping of AVR8 target signatures to TDF paths.
add_custom_command(
OUTPUT
${CMAKE_CURRENT_SOURCE_DIR}/build/resources/TargetDescriptionFiles/AVR/Mapping.json
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/build/scripts/Avr8TargetDescriptionFiles.php
COMMAND echo 'Processing AVR target description files.'
COMMAND
php ${CMAKE_CURRENT_SOURCE_DIR}/build/scripts/Avr8TargetDescriptionFiles.php
)
# Compile resources
add_custom_command(
OUTPUT
${CMAKE_CURRENT_SOURCE_DIR}/src/Generated/resources.cpp
${CMAKE_CURRENT_SOURCE_DIR}/src/Generated/resources_fake.cpp
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/src/resources.qrc
COMMAND echo 'Compiling QT resources. |${CMAKE_BUILD_TYPE}|'
COMMAND
rcc -o ${CMAKE_CURRENT_SOURCE_DIR}/src/Generated/resources.cpp
${CMAKE_CURRENT_SOURCE_DIR}/src/resources.qrc
)
# Copy resources/fonts into build/resources/Fonts
add_custom_command(
TARGET Bloom
POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_directory
${CMAKE_CURRENT_SOURCE_DIR}/resources/fonts
${CMAKE_CURRENT_SOURCE_DIR}/build/resources/Fonts
)
# Copy resources/udevrules/99-bloom.rules to build/resources/UDevRules/99-bloom.rules
add_custom_command(
TARGET Bloom
POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_SOURCE_DIR}/resources/udevrules/99-bloom.rules
${CMAKE_CURRENT_SOURCE_DIR}/build/resources/UDevRules/99-bloom.rules
)
# Installation configuration # Installation configuration
set(CMAKE_INSTALL_PREFIX "${CMAKE_CURRENT_SOURCE_DIR}/release/") set(CMAKE_INSTALL_PREFIX "${CMAKE_CURRENT_SOURCE_DIR}/release/")