diff --git a/CMakeLists.txt b/CMakeLists.txt index 17cb947d..a995da80 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -9,8 +9,7 @@ set(CMAKE_CXX_STANDARD 20) set(ENABLE_SANITIZERS off) set(CMAKE_AUTOMOC ON) -set(AUTOGEN_BUILD_DIR ../build/) -set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/build/bin") +set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin") find_package(yaml-cpp 0.7.0 REQUIRED) find_package(Qt6Core REQUIRED) @@ -22,15 +21,9 @@ find_package(Qt6UiTools REQUIRED) find_package(Qt6SvgWidgets REQUIRED) find_package(Qt6Network REQUIRED) -# Bloom is distributed with some third-party dependencies (in the form of shared objects). These dependencies are -# distributed with Bloom for various reasons (licensing, availability in some package managers, etc). -# -# The shared objects are located in bin/lib (relative to Bloom's installation directory). For this reason, we instruct -# the dynamic linker to look for any of Bloom's shared object dependencies in that location first. We do this by -# including '$ORIGIN/lib' in the RPATH of Bloom's binary executable. set(CMAKE_SKIP_BUILD_RPATH false) set(CMAKE_BUILD_RPATH_USE_ORIGIN true) -set(CMAKE_INSTALL_RPATH "\$ORIGIN/lib:/usr/local/lib") +set(CMAKE_INSTALL_RPATH "\$ORIGIN/../lib:/usr/local/lib") set(CMAKE_BUILD_RPATH ${CMAKE_INSTALL_RPATH}) add_compile_definitions(BLOOM_VERSION="${CMAKE_PROJECT_VERSION}") @@ -172,25 +165,7 @@ add_custom_command( ${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 -) - -# 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 + php ${CMAKE_CURRENT_SOURCE_DIR}/build/scripts/Avr8TargetDescriptionFiles.php ${CMAKE_BINARY_DIR} ) include(./cmake/Installing.cmake) diff --git a/build/bin/lib/libQt6Core.so.6 b/build/distributed/bin/lib/libQt6Core.so.6 similarity index 100% rename from build/bin/lib/libQt6Core.so.6 rename to build/distributed/bin/lib/libQt6Core.so.6 diff --git a/build/bin/lib/libQt6Core.so.6.2.4 b/build/distributed/bin/lib/libQt6Core.so.6.2.4 similarity index 100% rename from build/bin/lib/libQt6Core.so.6.2.4 rename to build/distributed/bin/lib/libQt6Core.so.6.2.4 diff --git a/build/bin/lib/libQt6DBus.so.6 b/build/distributed/bin/lib/libQt6DBus.so.6 similarity index 100% rename from build/bin/lib/libQt6DBus.so.6 rename to build/distributed/bin/lib/libQt6DBus.so.6 diff --git a/build/bin/lib/libQt6DBus.so.6.2.4 b/build/distributed/bin/lib/libQt6DBus.so.6.2.4 similarity index 100% rename from build/bin/lib/libQt6DBus.so.6.2.4 rename to build/distributed/bin/lib/libQt6DBus.so.6.2.4 diff --git a/build/bin/lib/libQt6Gui.so b/build/distributed/bin/lib/libQt6Gui.so similarity index 100% rename from build/bin/lib/libQt6Gui.so rename to build/distributed/bin/lib/libQt6Gui.so diff --git a/build/bin/lib/libQt6Gui.so.6 b/build/distributed/bin/lib/libQt6Gui.so.6 similarity index 100% rename from build/bin/lib/libQt6Gui.so.6 rename to build/distributed/bin/lib/libQt6Gui.so.6 diff --git a/build/bin/lib/libQt6Gui.so.6.2.4 b/build/distributed/bin/lib/libQt6Gui.so.6.2.4 similarity index 100% rename from build/bin/lib/libQt6Gui.so.6.2.4 rename to build/distributed/bin/lib/libQt6Gui.so.6.2.4 diff --git a/build/bin/lib/libQt6Network.so.6 b/build/distributed/bin/lib/libQt6Network.so.6 similarity index 100% rename from build/bin/lib/libQt6Network.so.6 rename to build/distributed/bin/lib/libQt6Network.so.6 diff --git a/build/bin/lib/libQt6Network.so.6.2.4 b/build/distributed/bin/lib/libQt6Network.so.6.2.4 similarity index 100% rename from build/bin/lib/libQt6Network.so.6.2.4 rename to build/distributed/bin/lib/libQt6Network.so.6.2.4 diff --git a/build/bin/lib/libQt6OpenGL.so.6 b/build/distributed/bin/lib/libQt6OpenGL.so.6 similarity index 100% rename from build/bin/lib/libQt6OpenGL.so.6 rename to build/distributed/bin/lib/libQt6OpenGL.so.6 diff --git a/build/bin/lib/libQt6OpenGL.so.6.2.4 b/build/distributed/bin/lib/libQt6OpenGL.so.6.2.4 similarity index 100% rename from build/bin/lib/libQt6OpenGL.so.6.2.4 rename to build/distributed/bin/lib/libQt6OpenGL.so.6.2.4 diff --git a/build/bin/lib/libQt6OpenGLWidgets.so.6 b/build/distributed/bin/lib/libQt6OpenGLWidgets.so.6 similarity index 100% rename from build/bin/lib/libQt6OpenGLWidgets.so.6 rename to build/distributed/bin/lib/libQt6OpenGLWidgets.so.6 diff --git a/build/bin/lib/libQt6OpenGLWidgets.so.6.2.4 b/build/distributed/bin/lib/libQt6OpenGLWidgets.so.6.2.4 similarity index 100% rename from build/bin/lib/libQt6OpenGLWidgets.so.6.2.4 rename to build/distributed/bin/lib/libQt6OpenGLWidgets.so.6.2.4 diff --git a/build/bin/lib/libQt6Svg.so b/build/distributed/bin/lib/libQt6Svg.so similarity index 100% rename from build/bin/lib/libQt6Svg.so rename to build/distributed/bin/lib/libQt6Svg.so diff --git a/build/bin/lib/libQt6Svg.so.6 b/build/distributed/bin/lib/libQt6Svg.so.6 similarity index 100% rename from build/bin/lib/libQt6Svg.so.6 rename to build/distributed/bin/lib/libQt6Svg.so.6 diff --git a/build/bin/lib/libQt6Svg.so.6.2.4 b/build/distributed/bin/lib/libQt6Svg.so.6.2.4 similarity index 100% rename from build/bin/lib/libQt6Svg.so.6.2.4 rename to build/distributed/bin/lib/libQt6Svg.so.6.2.4 diff --git a/build/bin/lib/libQt6SvgWidgets.so.6 b/build/distributed/bin/lib/libQt6SvgWidgets.so.6 similarity index 100% rename from build/bin/lib/libQt6SvgWidgets.so.6 rename to build/distributed/bin/lib/libQt6SvgWidgets.so.6 diff --git a/build/bin/lib/libQt6SvgWidgets.so.6.2.4 b/build/distributed/bin/lib/libQt6SvgWidgets.so.6.2.4 similarity index 100% rename from build/bin/lib/libQt6SvgWidgets.so.6.2.4 rename to build/distributed/bin/lib/libQt6SvgWidgets.so.6.2.4 diff --git a/build/bin/lib/libQt6UiTools.so.6 b/build/distributed/bin/lib/libQt6UiTools.so.6 similarity index 100% rename from build/bin/lib/libQt6UiTools.so.6 rename to build/distributed/bin/lib/libQt6UiTools.so.6 diff --git a/build/bin/lib/libQt6UiTools.so.6.2.4 b/build/distributed/bin/lib/libQt6UiTools.so.6.2.4 similarity index 100% rename from build/bin/lib/libQt6UiTools.so.6.2.4 rename to build/distributed/bin/lib/libQt6UiTools.so.6.2.4 diff --git a/build/bin/lib/libQt6Widgets.so b/build/distributed/bin/lib/libQt6Widgets.so similarity index 100% rename from build/bin/lib/libQt6Widgets.so rename to build/distributed/bin/lib/libQt6Widgets.so diff --git a/build/bin/lib/libQt6Widgets.so.6 b/build/distributed/bin/lib/libQt6Widgets.so.6 similarity index 100% rename from build/bin/lib/libQt6Widgets.so.6 rename to build/distributed/bin/lib/libQt6Widgets.so.6 diff --git a/build/bin/lib/libQt6Widgets.so.6.2.4 b/build/distributed/bin/lib/libQt6Widgets.so.6.2.4 similarity index 100% rename from build/bin/lib/libQt6Widgets.so.6.2.4 rename to build/distributed/bin/lib/libQt6Widgets.so.6.2.4 diff --git a/build/bin/lib/libQt6XcbQpa.so b/build/distributed/bin/lib/libQt6XcbQpa.so similarity index 100% rename from build/bin/lib/libQt6XcbQpa.so rename to build/distributed/bin/lib/libQt6XcbQpa.so diff --git a/build/bin/lib/libQt6XcbQpa.so.6 b/build/distributed/bin/lib/libQt6XcbQpa.so.6 similarity index 100% rename from build/bin/lib/libQt6XcbQpa.so.6 rename to build/distributed/bin/lib/libQt6XcbQpa.so.6 diff --git a/build/bin/lib/libQt6XcbQpa.so.6.2.4 b/build/distributed/bin/lib/libQt6XcbQpa.so.6.2.4 similarity index 100% rename from build/bin/lib/libQt6XcbQpa.so.6.2.4 rename to build/distributed/bin/lib/libQt6XcbQpa.so.6.2.4 diff --git a/build/bin/lib/libQt6Xml.so b/build/distributed/bin/lib/libQt6Xml.so similarity index 100% rename from build/bin/lib/libQt6Xml.so rename to build/distributed/bin/lib/libQt6Xml.so diff --git a/build/bin/lib/libQt6Xml.so.6 b/build/distributed/bin/lib/libQt6Xml.so.6 similarity index 100% rename from build/bin/lib/libQt6Xml.so.6 rename to build/distributed/bin/lib/libQt6Xml.so.6 diff --git a/build/bin/lib/libQt6Xml.so.6.2.4 b/build/distributed/bin/lib/libQt6Xml.so.6.2.4 similarity index 100% rename from build/bin/lib/libQt6Xml.so.6.2.4 rename to build/distributed/bin/lib/libQt6Xml.so.6.2.4 diff --git a/build/bin/lib/libhidapi-libusb.so.0 b/build/distributed/bin/lib/libhidapi-libusb.so.0 similarity index 100% rename from build/bin/lib/libhidapi-libusb.so.0 rename to build/distributed/bin/lib/libhidapi-libusb.so.0 diff --git a/build/bin/lib/libicudata.so.56 b/build/distributed/bin/lib/libicudata.so.56 similarity index 100% rename from build/bin/lib/libicudata.so.56 rename to build/distributed/bin/lib/libicudata.so.56 diff --git a/build/bin/lib/libicudata.so.56.1 b/build/distributed/bin/lib/libicudata.so.56.1 similarity index 100% rename from build/bin/lib/libicudata.so.56.1 rename to build/distributed/bin/lib/libicudata.so.56.1 diff --git a/build/bin/lib/libicui18n.so.56 b/build/distributed/bin/lib/libicui18n.so.56 similarity index 100% rename from build/bin/lib/libicui18n.so.56 rename to build/distributed/bin/lib/libicui18n.so.56 diff --git a/build/bin/lib/libicui18n.so.56.1 b/build/distributed/bin/lib/libicui18n.so.56.1 similarity index 100% rename from build/bin/lib/libicui18n.so.56.1 rename to build/distributed/bin/lib/libicui18n.so.56.1 diff --git a/build/bin/lib/libicuuc.so.56 b/build/distributed/bin/lib/libicuuc.so.56 similarity index 100% rename from build/bin/lib/libicuuc.so.56 rename to build/distributed/bin/lib/libicuuc.so.56 diff --git a/build/bin/lib/libicuuc.so.56.1 b/build/distributed/bin/lib/libicuuc.so.56.1 similarity index 100% rename from build/bin/lib/libicuuc.so.56.1 rename to build/distributed/bin/lib/libicuuc.so.56.1 diff --git a/build/bin/lib/libpng12.so.0 b/build/distributed/bin/lib/libpng12.so.0 similarity index 100% rename from build/bin/lib/libpng12.so.0 rename to build/distributed/bin/lib/libpng12.so.0 diff --git a/build/bin/lib/libpng12.so.0.54.0 b/build/distributed/bin/lib/libpng12.so.0.54.0 similarity index 100% rename from build/bin/lib/libpng12.so.0.54.0 rename to build/distributed/bin/lib/libpng12.so.0.54.0 diff --git a/build/bin/lib/libprocps.so.6 b/build/distributed/bin/lib/libprocps.so.6 similarity index 100% rename from build/bin/lib/libprocps.so.6 rename to build/distributed/bin/lib/libprocps.so.6 diff --git a/build/bin/lib/libprocps.so.6.0.0 b/build/distributed/bin/lib/libprocps.so.6.0.0 similarity index 100% rename from build/bin/lib/libprocps.so.6.0.0 rename to build/distributed/bin/lib/libprocps.so.6.0.0 diff --git a/build/bin/lib/libstdc++.so.6 b/build/distributed/bin/lib/libstdc++.so.6 similarity index 100% rename from build/bin/lib/libstdc++.so.6 rename to build/distributed/bin/lib/libstdc++.so.6 diff --git a/build/bin/lib/libstdc++.so.6.0.29 b/build/distributed/bin/lib/libstdc++.so.6.0.29 similarity index 100% rename from build/bin/lib/libstdc++.so.6.0.29 rename to build/distributed/bin/lib/libstdc++.so.6.0.29 diff --git a/build/bin/lib/libusb-1.0.so.0 b/build/distributed/bin/lib/libusb-1.0.so.0 similarity index 100% rename from build/bin/lib/libusb-1.0.so.0 rename to build/distributed/bin/lib/libusb-1.0.so.0 diff --git a/build/bin/lib/libxcb-xinput.so b/build/distributed/bin/lib/libxcb-xinput.so similarity index 100% rename from build/bin/lib/libxcb-xinput.so rename to build/distributed/bin/lib/libxcb-xinput.so diff --git a/build/bin/lib/libxcb-xinput.so.0 b/build/distributed/bin/lib/libxcb-xinput.so.0 similarity index 100% rename from build/bin/lib/libxcb-xinput.so.0 rename to build/distributed/bin/lib/libxcb-xinput.so.0 diff --git a/build/bin/lib/libxcb-xinput.so.0.1.0 b/build/distributed/bin/lib/libxcb-xinput.so.0.1.0 similarity index 100% rename from build/bin/lib/libxcb-xinput.so.0.1.0 rename to build/distributed/bin/lib/libxcb-xinput.so.0.1.0 diff --git a/build/bin/lib/libyaml-cpp.so b/build/distributed/bin/lib/libyaml-cpp.so similarity index 100% rename from build/bin/lib/libyaml-cpp.so rename to build/distributed/bin/lib/libyaml-cpp.so diff --git a/build/bin/lib/libyaml-cpp.so.0.7 b/build/distributed/bin/lib/libyaml-cpp.so.0.7 similarity index 100% rename from build/bin/lib/libyaml-cpp.so.0.7 rename to build/distributed/bin/lib/libyaml-cpp.so.0.7 diff --git a/build/bin/lib/libyaml-cpp.so.0.7.0 b/build/distributed/bin/lib/libyaml-cpp.so.0.7.0 similarity index 100% rename from build/bin/lib/libyaml-cpp.so.0.7.0 rename to build/distributed/bin/lib/libyaml-cpp.so.0.7.0 diff --git a/build/bin/platforms/libqxcb.so b/build/distributed/bin/platforms/libqxcb.so similarity index 100% rename from build/bin/platforms/libqxcb.so rename to build/distributed/bin/platforms/libqxcb.so diff --git a/build/bin/plugins/iconengines/libqsvgicon.so b/build/distributed/bin/plugins/iconengines/libqsvgicon.so similarity index 100% rename from build/bin/plugins/iconengines/libqsvgicon.so rename to build/distributed/bin/plugins/iconengines/libqsvgicon.so diff --git a/build/bin/plugins/imageformats/libqgif.so b/build/distributed/bin/plugins/imageformats/libqgif.so similarity index 100% rename from build/bin/plugins/imageformats/libqgif.so rename to build/distributed/bin/plugins/imageformats/libqgif.so diff --git a/build/bin/plugins/imageformats/libqicns.so b/build/distributed/bin/plugins/imageformats/libqicns.so similarity index 100% rename from build/bin/plugins/imageformats/libqicns.so rename to build/distributed/bin/plugins/imageformats/libqicns.so diff --git a/build/bin/plugins/imageformats/libqico.so b/build/distributed/bin/plugins/imageformats/libqico.so similarity index 100% rename from build/bin/plugins/imageformats/libqico.so rename to build/distributed/bin/plugins/imageformats/libqico.so diff --git a/build/bin/plugins/imageformats/libqjpeg.so b/build/distributed/bin/plugins/imageformats/libqjpeg.so similarity index 100% rename from build/bin/plugins/imageformats/libqjpeg.so rename to build/distributed/bin/plugins/imageformats/libqjpeg.so diff --git a/build/bin/plugins/imageformats/libqsvg.so b/build/distributed/bin/plugins/imageformats/libqsvg.so similarity index 100% rename from build/bin/plugins/imageformats/libqsvg.so rename to build/distributed/bin/plugins/imageformats/libqsvg.so diff --git a/build/bin/plugins/imageformats/libqtga.so b/build/distributed/bin/plugins/imageformats/libqtga.so similarity index 100% rename from build/bin/plugins/imageformats/libqtga.so rename to build/distributed/bin/plugins/imageformats/libqtga.so diff --git a/build/bin/plugins/imageformats/libqtiff.so b/build/distributed/bin/plugins/imageformats/libqtiff.so similarity index 100% rename from build/bin/plugins/imageformats/libqtiff.so rename to build/distributed/bin/plugins/imageformats/libqtiff.so diff --git a/build/bin/plugins/imageformats/libqwbmp.so b/build/distributed/bin/plugins/imageformats/libqwbmp.so similarity index 100% rename from build/bin/plugins/imageformats/libqwbmp.so rename to build/distributed/bin/plugins/imageformats/libqwbmp.so diff --git a/build/bin/plugins/imageformats/libqwebp.so b/build/distributed/bin/plugins/imageformats/libqwebp.so similarity index 100% rename from build/bin/plugins/imageformats/libqwebp.so rename to build/distributed/bin/plugins/imageformats/libqwebp.so diff --git a/build/bin/plugins/xcbglintegrations/libqxcb-glx-integration.so b/build/distributed/bin/plugins/xcbglintegrations/libqxcb-glx-integration.so similarity index 100% rename from build/bin/plugins/xcbglintegrations/libqxcb-glx-integration.so rename to build/distributed/bin/plugins/xcbglintegrations/libqxcb-glx-integration.so diff --git a/resources/fonts/Ubuntu/LICENCE.txt b/build/distributed/fonts/Ubuntu/LICENCE.txt similarity index 100% rename from resources/fonts/Ubuntu/LICENCE.txt rename to build/distributed/fonts/Ubuntu/LICENCE.txt diff --git a/resources/fonts/Ubuntu/TRADEMARKS.txt b/build/distributed/fonts/Ubuntu/TRADEMARKS.txt similarity index 100% rename from resources/fonts/Ubuntu/TRADEMARKS.txt rename to build/distributed/fonts/Ubuntu/TRADEMARKS.txt diff --git a/resources/fonts/Ubuntu/Ubuntu-B.ttf b/build/distributed/fonts/Ubuntu/Ubuntu-B.ttf similarity index 100% rename from resources/fonts/Ubuntu/Ubuntu-B.ttf rename to build/distributed/fonts/Ubuntu/Ubuntu-B.ttf diff --git a/resources/fonts/Ubuntu/Ubuntu-BI.ttf b/build/distributed/fonts/Ubuntu/Ubuntu-BI.ttf similarity index 100% rename from resources/fonts/Ubuntu/Ubuntu-BI.ttf rename to build/distributed/fonts/Ubuntu/Ubuntu-BI.ttf diff --git a/resources/fonts/Ubuntu/Ubuntu-C.ttf b/build/distributed/fonts/Ubuntu/Ubuntu-C.ttf similarity index 100% rename from resources/fonts/Ubuntu/Ubuntu-C.ttf rename to build/distributed/fonts/Ubuntu/Ubuntu-C.ttf diff --git a/resources/fonts/Ubuntu/Ubuntu-L.ttf b/build/distributed/fonts/Ubuntu/Ubuntu-L.ttf similarity index 100% rename from resources/fonts/Ubuntu/Ubuntu-L.ttf rename to build/distributed/fonts/Ubuntu/Ubuntu-L.ttf diff --git a/resources/fonts/Ubuntu/Ubuntu-LI.ttf b/build/distributed/fonts/Ubuntu/Ubuntu-LI.ttf similarity index 100% rename from resources/fonts/Ubuntu/Ubuntu-LI.ttf rename to build/distributed/fonts/Ubuntu/Ubuntu-LI.ttf diff --git a/resources/fonts/Ubuntu/Ubuntu-M.ttf b/build/distributed/fonts/Ubuntu/Ubuntu-M.ttf similarity index 100% rename from resources/fonts/Ubuntu/Ubuntu-M.ttf rename to build/distributed/fonts/Ubuntu/Ubuntu-M.ttf diff --git a/resources/fonts/Ubuntu/Ubuntu-MI.ttf b/build/distributed/fonts/Ubuntu/Ubuntu-MI.ttf similarity index 100% rename from resources/fonts/Ubuntu/Ubuntu-MI.ttf rename to build/distributed/fonts/Ubuntu/Ubuntu-MI.ttf diff --git a/resources/fonts/Ubuntu/Ubuntu-R.ttf b/build/distributed/fonts/Ubuntu/Ubuntu-R.ttf similarity index 100% rename from resources/fonts/Ubuntu/Ubuntu-R.ttf rename to build/distributed/fonts/Ubuntu/Ubuntu-R.ttf diff --git a/resources/fonts/Ubuntu/Ubuntu-RI.ttf b/build/distributed/fonts/Ubuntu/Ubuntu-RI.ttf similarity index 100% rename from resources/fonts/Ubuntu/Ubuntu-RI.ttf rename to build/distributed/fonts/Ubuntu/Ubuntu-RI.ttf diff --git a/resources/fonts/Ubuntu/Ubuntu-Th.ttf b/build/distributed/fonts/Ubuntu/Ubuntu-Th.ttf similarity index 100% rename from resources/fonts/Ubuntu/Ubuntu-Th.ttf rename to build/distributed/fonts/Ubuntu/Ubuntu-Th.ttf diff --git a/resources/fonts/Ubuntu/UbuntuMono-B.ttf b/build/distributed/fonts/Ubuntu/UbuntuMono-B.ttf similarity index 100% rename from resources/fonts/Ubuntu/UbuntuMono-B.ttf rename to build/distributed/fonts/Ubuntu/UbuntuMono-B.ttf diff --git a/resources/fonts/Ubuntu/UbuntuMono-BI.ttf b/build/distributed/fonts/Ubuntu/UbuntuMono-BI.ttf similarity index 100% rename from resources/fonts/Ubuntu/UbuntuMono-BI.ttf rename to build/distributed/fonts/Ubuntu/UbuntuMono-BI.ttf diff --git a/resources/fonts/Ubuntu/UbuntuMono-R.ttf b/build/distributed/fonts/Ubuntu/UbuntuMono-R.ttf similarity index 100% rename from resources/fonts/Ubuntu/UbuntuMono-R.ttf rename to build/distributed/fonts/Ubuntu/UbuntuMono-R.ttf diff --git a/resources/fonts/Ubuntu/UbuntuMono-RI.ttf b/build/distributed/fonts/Ubuntu/UbuntuMono-RI.ttf similarity index 100% rename from resources/fonts/Ubuntu/UbuntuMono-RI.ttf rename to build/distributed/fonts/Ubuntu/UbuntuMono-RI.ttf diff --git a/resources/fonts/Ubuntu/copyright.txt b/build/distributed/fonts/Ubuntu/copyright.txt similarity index 100% rename from resources/fonts/Ubuntu/copyright.txt rename to build/distributed/fonts/Ubuntu/copyright.txt diff --git a/resources/udevrules/99-bloom.rules b/build/distributed/udevrules/99-bloom.rules similarity index 100% rename from resources/udevrules/99-bloom.rules rename to build/distributed/udevrules/99-bloom.rules diff --git a/build/scripts/Avr8TargetDescriptionFiles.php b/build/scripts/Avr8TargetDescriptionFiles.php index 43bf47f0..79a03366 100644 --- a/build/scripts/Avr8TargetDescriptionFiles.php +++ b/build/scripts/Avr8TargetDescriptionFiles.php @@ -9,11 +9,17 @@ namespace Bloom\BuildScripts; +$buildPath = $argv[1] ?? null; +if (empty($buildPath)) { + print "Missing build path. Aborting\n"; + die; +} + require_once __DIR__ . "/TargetDescriptionFiles/Factory.php"; -CONST AVR_TDF_DEST_FILE_PATH = __DIR__ . "/../resources/TargetDescriptionFiles/AVR"; -CONST AVR_TDF_DEST_RELATIVE_FILE_PATH = "../resources/TargetDescriptionFiles/AVR"; -CONST AVR_TDF_MAPPING_FILE_PATH = AVR_TDF_DEST_FILE_PATH . "/Mapping.json"; +define("AVR_TDF_DEST_FILE_PATH", $buildPath . "/resources/TargetDescriptionFiles/AVR"); +define("AVR_TDF_DEST_RELATIVE_FILE_PATH", "../resources/TargetDescriptionFiles/AVR"); +define("AVR_TDF_MAPPING_FILE_PATH", AVR_TDF_DEST_FILE_PATH . "/Mapping.json"); // Empty destination directory if (file_exists(AVR_TDF_DEST_FILE_PATH)) { @@ -43,19 +49,19 @@ foreach ($avrTdfs as $avrTdf) { $id = strtolower($strippedTargetName); if (in_array($id, $processedTargetIds)) { - print "\033[31m" . PHP_EOL; - print "FATAL ERROR: duplicate AVR8 target ID detected: " . $id . PHP_EOL . PHP_EOL + print "\033[31m" . "\n"; + print "FATAL ERROR: duplicate AVR8 target ID detected: " . $id . "\n\n" . "TDF Path: " . realpath($avrTdf->filePath); - print "\033[0m" . PHP_EOL; + print "\033[0m" . "\n"; exit(1); } if (!empty(($validationFailures = $avrTdf->validate()))) { - print "\033[31m" . PHP_EOL; - print "FATAL ERROR: AVR8 TDF failed validation - failure reasons:" . PHP_EOL - . implode(PHP_EOL, $validationFailures) . PHP_EOL . PHP_EOL . "TDF Path: " + print "\033[31m" . "\n"; + print "FATAL ERROR: AVR8 TDF failed validation - failure reasons:" . "\n" + . implode("\n", $validationFailures) . "\n\n" . "TDF Path: " . realpath($avrTdf->filePath); - print "\033[0m" . PHP_EOL; + print "\033[0m" . "\n"; exit(1); } diff --git a/cmake/Installing.cmake b/cmake/Installing.cmake index f272d2e0..e56dd8bc 100644 --- a/cmake/Installing.cmake +++ b/cmake/Installing.cmake @@ -1,31 +1,49 @@ # Installation configuration -# -# When running the Install step, we don't actually install Bloom on the user's machine. We install it in a release -# directory, to be used for packaging. -set(CMAKE_INSTALL_PREFIX "${CMAKE_CURRENT_SOURCE_DIR}/release/") -install(TARGETS Bloom DESTINATION bin PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ) +if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) + set(CMAKE_INSTALL_PREFIX "/opt/bloom" CACHE PATH "..." FORCE) +endif() install( - DIRECTORY build/bin/plugins + TARGETS Bloom DESTINATION "bin" - DIRECTORY_PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ FILE_PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ + PERMISSIONS + OWNER_EXECUTE OWNER_READ OWNER_WRITE + GROUP_EXECUTE GROUP_READ + WORLD_EXECUTE WORLD_READ ) install( - DIRECTORY build/bin/platforms - DESTINATION "bin" - DIRECTORY_PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ FILE_PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ -) - -install( - DIRECTORY build/resources + DIRECTORY ${CMAKE_BINARY_DIR}/resources DESTINATION "." - DIRECTORY_PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ FILE_PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ + DIRECTORY_PERMISSIONS + OWNER_EXECUTE OWNER_READ OWNER_WRITE + GROUP_EXECUTE GROUP_READ + WORLD_EXECUTE WORLD_READ + FILE_PERMISSIONS + OWNER_EXECUTE OWNER_READ OWNER_WRITE + GROUP_EXECUTE GROUP_READ + WORLD_EXECUTE WORLD_READ ) install( - DIRECTORY build/bin/lib - DESTINATION "bin" - DIRECTORY_PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ FILE_PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ + DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/build/distributed/fonts + DESTINATION "resources" + DIRECTORY_PERMISSIONS + OWNER_EXECUTE OWNER_READ OWNER_WRITE + GROUP_EXECUTE GROUP_READ + WORLD_EXECUTE WORLD_READ + FILE_PERMISSIONS + OWNER_READ OWNER_WRITE + GROUP_EXECUTE GROUP_READ + WORLD_EXECUTE WORLD_READ +) + +install( + FILES ${CMAKE_CURRENT_SOURCE_DIR}/build/distributed/udevrules/99-bloom.rules + DESTINATION "/usr/lib/udev/rules.d/" + PERMISSIONS + OWNER_READ OWNER_WRITE + GROUP_READ + WORLD_READ ) diff --git a/src/Insight/Insight.cpp b/src/Insight/Insight.cpp index 03d70d66..a5de6e0f 100644 --- a/src/Insight/Insight.cpp +++ b/src/Insight/Insight.cpp @@ -39,7 +39,7 @@ namespace Bloom ( QCoreApplication::setAttribute(Qt::AA_ShareOpenGLContexts, true), #ifndef BLOOM_DEBUG_BUILD - QCoreApplication::addLibraryPath(QString::fromStdString(Paths::applicationDirPath() + "/plugins")), + QCoreApplication::addLibraryPath(QString::fromStdString(Paths::applicationDirPath() + "/../plugins")), #endif QApplication(this->qtApplicationArgc, this->qtApplicationArgv.data()) )