Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix compile issues with Qt5.15 and Boost 1.75 #287

Open
wants to merge 120 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
120 commits
Select commit Hold shift + click to select a range
bad7cd1
fix deprecation warnings with qt5.15
Murmele Jan 15, 2021
96c3d38
fix boost compile issue with version 1.75
Murmele Jan 15, 2021
fe0088a
do not create new tab if the tab already exists
Murmele Mar 7, 2022
d1fa0fc
use custom message box which is able to resize its size
Murmele Mar 7, 2022
e32885c
show error message if not fault tree name is set
Murmele Mar 7, 2022
eda715c
make zoomtoolbar movable
Murmele Mar 7, 2022
7fecf52
Use GUI_ASSERT
Murmele Mar 7, 2022
fadf96e
use default property, because AllDockWidgetFeatures is deprecated
Murmele Mar 7, 2022
9120e60
add more clear message
Murmele Mar 7, 2022
a22c5b4
use combobox instead of a lineedit, so all elements are visible which…
Murmele Mar 7, 2022
9adc038
show ui files in qtcreator
Murmele Mar 7, 2022
9c64a9a
add github action to build for windows
Feb 23, 2022
e9ce553
fix yaml
Feb 23, 2022
f46b3c1
ignore dependencies for now
Feb 23, 2022
7d7ee0c
install libxml2
Feb 23, 2022
338d7c9
move libxml2 to the beginning so building is earlier
Feb 23, 2022
fd48e60
ninja must be before
Feb 23, 2022
6fb7239
add boost building
Feb 23, 2022
5f764ea
add jemalloc as comment
Feb 23, 2022
8893455
remove id
Feb 23, 2022
e3c8548
disable not needed stuff
Feb 23, 2022
f47eef7
try to build boost
Feb 23, 2022
206d965
fix build
Feb 23, 2022
19f6329
fix build
Feb 23, 2022
5665c79
fix
Feb 23, 2022
beddea2
fix
Feb 23, 2022
1a74ef8
use context
Feb 23, 2022
0a2bdcc
use correct boost version
Feb 23, 2022
06eb560
action does not support versions below 1.69.0
Feb 23, 2022
617aeb4
no x64 build for boost 1.69..0 with this action
Feb 23, 2022
3f0f4ce
build for win32, because action does not support win64 yet
Feb 23, 2022
7d57f82
use different action
Feb 23, 2022
f89c631
specify libraries, so not all libraries of boost are build
Feb 23, 2022
8d2f39f
fix
Feb 23, 2022
7d95f5d
vs must be used
Feb 23, 2022
01e3229
try newer boost version
Feb 23, 2022
50e904c
align platform version
Feb 23, 2022
2dfe074
fix
Feb 23, 2022
d2420bd
vs must be setup before building boost
Feb 23, 2022
2c4eb5d
set pkg config path
Feb 23, 2022
37e6160
use windows style to set environment variable
Feb 23, 2022
e2af1ec
echo pkg config path
Feb 23, 2022
150fdb7
fix
Feb 23, 2022
922f6ea
fix
Feb 23, 2022
86eab15
test
Feb 23, 2022
a3b4ef3
set boost paths
Feb 23, 2022
93033d0
try to use the paths shown in the CI
Feb 23, 2022
9079b2d
use / instead of \
Feb 23, 2022
b5b5c7a
wrong location. Use / instead of \
Feb 23, 2022
698d3f6
use variables again
Feb 23, 2022
4bbc7a5
Revert "use variables again"
Feb 23, 2022
e5ab093
remove gcc flags for now
Feb 23, 2022
5f7af9d
try to build with mingw
Feb 23, 2022
7e0d2c1
Revert "try to build with mingw"
Feb 23, 2022
272f4b0
WIP
Feb 23, 2022
52ecee0
update visual studio and qt version
Feb 23, 2022
6bad751
enable linux build
Feb 23, 2022
8131209
fix
Feb 23, 2022
49405a0
set path also for linux
Feb 23, 2022
380c869
set install prefix
Feb 23, 2022
3c80ead
set pkg config path
Feb 23, 2022
508279d
enable jemalloc for linux
Feb 23, 2022
ce01f5c
no need to set PKG_CONFIG_PATH
Feb 23, 2022
dffcecc
upload artifacts
Feb 23, 2022
2d699c4
set prefix only for linux
Feb 23, 2022
da85957
try mingw again
Feb 23, 2022
77e976a
autogen must be used
Feb 23, 2022
dee0132
must be uppercase
Feb 23, 2022
8728432
remove cmake env
Feb 23, 2022
a961841
hmm does not work with a variable
Feb 23, 2022
5f11f23
disable jemalloc again
Feb 24, 2022
0483526
work/scram/scram is already included in the workspace
Feb 24, 2022
b657550
change install directory for libxml2
Feb 24, 2022
a121361
publish only executables and not the complete build files
Feb 28, 2022
164916b
enable packaging
Feb 28, 2022
df8d335
try to have only one libxml step not one for windows and one for linux
Feb 28, 2022
e9b0fb6
install boost libraries
Feb 28, 2022
7de8263
component must be specified, because only specific components are ins…
Feb 28, 2022
96b9221
install libxml library
Feb 28, 2022
c7055f4
install qt libraries
Feb 28, 2022
2a802f2
change destination of the libraries to subfolder
Feb 28, 2022
bb7dfa8
add missing bracket
Feb 28, 2022
8ff45c7
disable installing qt libraries again
Feb 28, 2022
c2052f6
set rpath
Mar 1, 2022
3bea105
install qt libraries
Mar 1, 2022
c7ad4a8
rpath exists only on unix systems
Mar 1, 2022
604f42b
must be in the same as the executable
Mar 1, 2022
8c0cd82
echo library names
Mar 1, 2022
eed7493
runtime must be installed, because the libraries only contain to .dll…
Mar 2, 2022
e48cd85
target is named differently
Mar 2, 2022
d1748c5
install using directly target
Mar 2, 2022
4d30ec9
for some reason LIB_XML2_RUNTIME_OUTPUT_NAME is not found
Mar 2, 2022
4c46fe8
different method for installing
Mar 2, 2022
e20c701
use IMPORTED_RUNTIME_ARTIFACTS to install artifacts
Mar 2, 2022
8c07bf0
variable does not exist anymore so no need to isntall anything
Mar 2, 2022
bfd7aad
install also boost like libxml2
Mar 2, 2022
30bebb9
fix missed bracket
Mar 2, 2022
2d64dc6
check if this is working
Mar 2, 2022
8eddb70
another approach for installing library
Mar 2, 2022
1a8666b
try also for boost
Mar 2, 2022
6c7547b
syntax error
Mar 2, 2022
eededad
add debug echos
Mar 2, 2022
9d84c26
target is LibXml2::libxml2 not only libxml2
Mar 3, 2022
02b218e
test get_runtime_dependencies
Mar 3, 2022
5a41a8a
try generator expression for LibXml2
Mar 4, 2022
6aabe61
check property imported location
Mar 4, 2022
02ba2e0
try to replace to find manually the dll
Mar 4, 2022
49ba28c
do it also for boost
Mar 4, 2022
d0931b5
boost dll seems not to be in the bin folder, try directly the lib
Mar 4, 2022
8177cd2
show directory content
Mar 4, 2022
ae89507
the dll is in the same directory as the .dll.a
Mar 4, 2022
6daae49
forgotten to install boost
Mar 4, 2022
76b10f1
add message
Mar 31, 2022
2187c83
wrong brackets
Mar 31, 2022
49d6bed
skip boost and libxml2 libraries, because they will be installed manu…
Mar 31, 2022
8f48abb
align windows and linux
Mar 31, 2022
6140847
directory seems not to work
Mar 31, 2022
5d42584
work missing
Mar 31, 2022
4ac4b6c
cleanup
Murmele Mar 31, 2022
95903e6
WIP
Murmele Apr 4, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
205 changes: 205 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,205 @@
---
name: Scram
on:
push:
pull_request:
page_build:
workflow_dispatch:

env:
# choose boost version carefully, because it might be that the version is not supported
# by the windows version (https://stackoverflow.com/questions/12484894/what-do-i-do-about-batch-recursion-exceeds-stack-limits-when-running-boost-bui)
BOOST_VERSION: 1.78.0
BOOST_PATH: ${{github.workspace}}/boost/boost
WIN_PLATFORM_VERSION: 2019

jobs:
build:
runs-on: ${{ matrix.env.os }}
strategy:
fail-fast: false
matrix:
env:
- name: linux
os: ubuntu-latest
ninja_platform: linux
qt_platform: linux
openssl_arch: linux-x86_64
cmake_env: {}
boost_toolset: gcc
pack: 1
CMAKE_FLAGS: -DCMAKE_INSTALL_PREFIX=/home/runner/scram_install
libxml2_install_path: /home/runner/scram_install
boost_install_path: /home/runner/work/scram

#- name: mac
#os: macos-latest
#ninja_platform: mac
#qt_platform: mac
#openssl_arch: darwin64-x86_64-cc
#cmake_env: {}
#pack: 1
#boost_toolset: clang

- name: win64
os: windows-latest
ninja_platform: win
qt_platform: windows
qt_arch: win64_mingw81
openssl_arch: VC-WIN64A
msvc_arch: x64
cmake_env: {}
# CC: cl
# CXX: cl
pack: 1
boost_toolset: mingw
libxml2_install_path: D:/a/scram/libxml2
boost_install_path: D:/a/scram

steps:
- name: Configure development build
if: github.ref_type != 'tag'
uses: allenevans/set-env@c4f231179ef63887be707202a295d9cb1c687eb9
with:
CMAKE_FLAGS: "-DDEV_BUILD=${{ github.ref_name }}"

- name: Checkout repository
uses: actions/checkout@v1

- name: Initialize Submodules
uses: snickerbockers/submodules-init@v4

# - name: Install Perl
# if: matrix.env.ninja_platform == 'win'
# uses: shogo82148/actions-setup-perl@v1
# with:
# perl-version: '5.30'

- name: Install Ninja
uses: seanmiddleditch/gha-setup-ninja@v3
with:
version: 1.9.0
platform: ${{ matrix.env.ninja_platform }}
destination: ninja

- name: Set up MinGW
if: matrix.env.ninja_platform == 'win'
uses: egor-tensin/setup-mingw@v2
with:
platform: ${{ matrix.env.msvc_arch }}

- name: Cache Boost
uses: actions/cache@v2
with:
path: '${{ runner.workspace }}/boost_*.tar.gz'
key: 'boost-${{env.BOOST_VERSION}}'

- name: Build Boost
# This won't re-download the archive unnecessarily:
uses: egor-tensin/build-boost@v1
with:
version: ${{env.BOOST_VERSION}}
libraries: program_options filesystem system random
toolset: ${{ matrix.env.boost_toolset}}
#directory: ${{ matrix.env.boost_install_path }}

- name: Install libxml2
run: |
git clone https://github.com/GNOME/libxml2.git
cd libxml2
mkdir -p build
cd build
cmake -G Ninja -D CMAKE_BUILD_TYPE=Release -D LIBXML2_WITH_PYTHON=OFF -D LIBXML2_WITH_ICONV=OFF -D LIBXML2_WITH_LZMA=OFF -D LIBXML2_WITH_ZLIB=OFF -DCMAKE_INSTALL_PREFIX=${{ matrix.env.libxml2_install_path }} ..
ninja install

- name: Install Qt
uses: jurplel/[email protected]
timeout-minutes: 10
with:
version: 5.15.2
target: desktop
host: ${{ matrix.env.qt_platform }}
arch: ${{ matrix.env.qt_arch }}
install-deps: true
#modules: qtwebengine

# - name: Build Jemalloc
# if: matrix.env.ninja_platform == 'linux'
# run: |
# git clone https://github.com/jemalloc/jemalloc.git
# cd jemalloc
# ./autogen.sh
# make
# make install
- name: Build Information
run: |
echo "ninja version: $(ninja --version)"
git --version
qmake --version
cmake --version

- name: Configure Release
if: matrix.env.ninja_platform == 'win'
env: ${{ matrix.env.cmake_env }}
# only windows!!!
run: |
$Env:PKG_CONFIG_PATH += ";D:/a/scram/libxml2/lib/pkgconfig"
mkdir -p build/release
cd build/release
cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DBUILD_GUI=ON -DWITH_TCMALLOC=OFF -DWITH_JEMALLOC=OFF -DWITH_COVERAGE=OFF -DWITH_PROFILE=OFF -DPACKAGE=ON -D "BOOST_ROOT=${{ matrix.env.boost_install_path }}/boost" -D "BOOST_LIBRARYDIR=${{ matrix.env.boost_install_path }}/boost/stage/x64/Release/lib" ${{ env.CMAKE_FLAGS }} ../..

- name: Configure Release
if: matrix.env.ninja_platform == 'linux'
env: ${{ matrix.env.cmake_env }}
# only linux!!!
run: |
mkdir -p build/release
cd build/release
cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DBUILD_GUI=ON -DWITH_TCMALLOC=OFF -DWITH_JEMALLOC=OFF -DWITH_COVERAGE=OFF -DWITH_PROFILE=OFF -DPACKAGE=ON -D "BOOST_ROOT=${{ matrix.env.boost_install_path }}/boost" -D "BOOST_LIBRARYDIR=${{ matrix.env.boost_install_path }}/boost/stage/x64/Release/lib" ${{ env.CMAKE_FLAGS }} ../..

- name: Build
run: |
cd build/release
ninja
cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DBUILD_GUI=ON -DWITH_TCMALLOC=OFF -DWITH_JEMALLOC=OFF -DWITH_COVERAGE=OFF -DWITH_PROFILE=OFF -DPACKAGE=ON -D "BOOST_ROOT=${{ matrix.env.boost_install_path }}/boost" -D "BOOST_LIBRARYDIR=${{ matrix.env.boost_install_path }}/boost/stage/x64/Release/lib" ${{ env.CMAKE_FLAGS }} ../..
ninja package

- name: Publish build artifacts
if: matrix.env.pack
uses: actions/upload-artifact@v2
with:
path: ${{github.workspace}}/build/release/SCRAM*
name: Scram ${{ matrix.env.name }}

# - name: Test
# # TODO: Re-Enable this when https://github.com/actions/runner/issues/1206 gets resolved
# if: matrix.env.ninja_platform != 'win'
# continue-on-error: true
# run: |
# cd build/release
# ninja check

prerelease:
# https://github.com/marvinpinto/actions/issues/177
needs: [build] # flatpak
runs-on: ubuntu-latest # does not matter which
if: ${{ github.ref == 'refs/heads/master' }}

steps:
- name: Download artifacts
uses: actions/download-artifact@v2
with:
path: artifacts

- name: Update GitHub prerelease
if: ${{ github.ref == 'refs/heads/master' }}
uses: marvinpinto/action-automatic-releases@latest
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
automatic_release_tag: latest
prerelease: true
title: "Latest Build"
files: |
**/artifacts/Scram win64/Scram*.exe
**/artifacts/Scram win32/Scram*.exe
...
18 changes: 15 additions & 3 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# vim: set foldmarker={{{,}}} foldlevel=0 foldmethod=marker:
cmake_minimum_required(VERSION 3.8)
cmake_minimum_required(VERSION 3.21) # IMPORTED_RUNTIME_ARTIFACTS used to install

# In-source build prevention.
set(CMAKE_DISABLE_SOURCE_CHANGES ON)
Expand Down Expand Up @@ -40,7 +40,7 @@ endfunction()
add_definitions(-DPROJECT_SOURCE_DIR="${PROJECT_SOURCE_DIR}") # Needed to print file paths.

# Proactively disable warnings in case Wall/Wextra are enabled outside.
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-sign-compare -Wno-missing-field-initializers")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")

# Strict debug flags for SCRAM targets (opt-in, must subscribe to quality checks explicitly).
# NOTE: This is a list unlike CMAKE_CXX_FLAGS.
Expand Down Expand Up @@ -158,8 +158,9 @@ if(NOT WIN32)
set(Boost_USE_MULTITHREADED OFF)
endif()

set(BOOST_COMPONENTS program_options filesystem system random)
find_package(Boost ${BOOST_MIN_VERSION} REQUIRED COMPONENTS
program_options filesystem system random
${BOOST_COMPONENTS}
)
message(STATUS "Boost Include directory: ${Boost_INCLUDE_DIR}")
message(STATUS "Boost Library directories: ${Boost_LIBRARY_DIRS}")
Expand Down Expand Up @@ -218,6 +219,7 @@ if(PACKAGE)
# The following configuration assumes MinGW64 is setup specifically for this project.
get_filename_component(MINGW_DLL_DIR "${CMAKE_CXX_COMPILER}" PATH)
message(STATUS "MinGW bin location: ${MINGW_DLL_DIR}")
message(STATUS "CMAKE_RUNTIME_OUTPUT_DIRECTORY: ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}")
include(ScramBundle)
get_scram_prerequisites(SCRAM_PREREQUISITES
"${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/scram.exe" "${MINGW_DLL_DIR}")
Expand All @@ -231,6 +233,16 @@ if(PACKAGE)
${SCRAM_GUI_PREREQUISITES}
DESTINATION bin COMPONENT libraries
)

get_target_property(libxml2_imported_location LibXml2::LibXml2 IMPORTED_LOCATION)
message(STATUS "XX libxml2_imported_location ${libxml2_imported_location}")
string(REPLACE "/lib/" "/bin/" libxml2_imported_location ${libxml2_imported_location})
message(STATUS "XX libxml2_imported_location2 ${libxml2_imported_location}")
string(REPLACE ".dll.a" ".dll" libxml2_imported_location ${libxml2_imported_location})
message(STATUS "XX libxml2_imported_location3 ${libxml2_imported_location}")

install(FILES ${libxml2_imported_location} DESTINATION bin COMPONENT libraries)

endif()
endif()

Expand Down
21 changes: 9 additions & 12 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,19 +1,16 @@
FROM ubuntu:18.04
ENV BUILD_PACKAGES \
make cmake g++ libxml2-dev \
libgoogle-perftools-dev libboost-program-options-dev \
libboost-math-dev libboost-random-dev libboost-filesystem-dev \
libboost-date-time-dev
make cmake g++ libxml2-dev libgoogle-perftools-dev libboost-program-options-dev libboost-math-dev libboost-random-dev libboost-filesystem-dev libboost-date-time-dev qt5-default libqt5gui5 libqt5opengl5 libqt5concurrent5 libqt5printsupport5 libqt5svg5-dev qttools5-dev-tools qttools5-dev libqt5opengl5-dev
ENV RUNTIME_PACKAGES \
libxml2 libboost-filesystem1.65.1 libboost-program-options1.65.1 \
libtcmalloc-minimal4
ADD . scram/
RUN apt-get update && \
apt-get install -y --no-install-recommends $BUILD_PACKAGES && \
cd scram && mkdir -p build && cd build && \
cmake .. -DCMAKE_BUILD_TYPE=Release -DBUILD_GUI=OFF && make install && \
cd ../.. && rm -rf ./scram && \
apt-get remove --purge -y $BUILD_PACKAGES $(apt-mark showauto) && \
apt-get install -y --no-install-recommends $RUNTIME_PACKAGES && \
rm -rf /var/lib/apt/lists/*
ENTRYPOINT ["scram"]
apt-get install -y --no-install-recommends $BUILD_PACKAGES
RUN cd scram && mkdir -p build && cd build
RUN cmake .. -DCMAKE_BUILD_TYPE=Release -DBUILD_GUI=ON && make install
RUN cd ../.. && rm -rf ./scram
RUN apt-get remove --purge -y $BUILD_PACKAGES $(apt-mark showauto) && \
apt-get install -y --no-install-recommends $RUNTIME_PACKAGES
RUN rm -rf /var/lib/apt/lists/*
#ENTRYPOINT ["scram"]
6 changes: 4 additions & 2 deletions cmake/ScramBundle.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,10 @@ macro(get_scram_prerequisites _output _executable _search_path)
message(STATUS "${_executable} dependency libs:\n${_all_prerequisites}")
foreach(item ${_all_prerequisites})
string(REGEX MATCH "scram" is_scram "${item}")
if(NOT is_scram)
gp_resolve_item("${_search_path}" "${item}" "" "" item)
string(REGEX MATCH "libboost" is_boost "${item}")
string(REGEX MATCH "libxml2" is_libxml2 "${item}")
if(NOT is_scram AND NOT is_boost AND NOT is_libxml2)
gp_resolve_item("${_search_path}" "${item}" "" "" item)
list(APPEND ${_output} ${item})
endif()
endforeach()
Expand Down
64 changes: 62 additions & 2 deletions gui/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -90,12 +90,26 @@ set(SCRAM_GUI_SRC
diagramview.cpp
diagram.cpp
mainwindow.cpp
messagebox.cpp
)

# To show the ui files in qtcreator
qt_wrap_ui(SCRAM_GUI_UI
eventdialog.ui
mainwindow.ui
messagebox.ui
namedialog.ui
preferencesdialog.ui
settingsdialog.ui
startpage.ui
)

### End SCRAM GUI source list ### }}}
add_library(scram-gui STATIC ${SCRAM_GUI_SRC})
add_library(scram-gui STATIC ${SCRAM_GUI_SRC} ${SCRAM_GUI_UI})
set(QT_MODULES Qt5::Core Qt5::Gui Qt5::Widgets Qt5::Svg Qt5::OpenGL Qt5::PrintSupport Qt5::Concurrent)
target_link_libraries(scram-gui
${LIBS} scram
Qt5::Core Qt5::Gui Qt5::Widgets Qt5::Svg Qt5::OpenGL Qt5::PrintSupport Qt5::Concurrent)
${QT_MODULES})
target_compile_options(scram-gui PUBLIC $<$<CONFIG:DEBUG>:${SCRAM_CXX_FLAGS_DEBUG} -Wno-useless-cast>) # TODO: MOC failure.
# Prevent implicit QString(const char*), string concat with "+", and other anti-patterns.
target_compile_definitions(scram-gui PRIVATE
Expand Down Expand Up @@ -157,6 +171,52 @@ if(PACKAGE)
FILES "${CMAKE_CURRENT_BINARY_DIR}/qt.conf"
DESTINATION bin
COMPONENT gui)


#set_target_properties(scram-gui PROPERTIES INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib")
# Rpath exists only on Unix systems. The libraries must be in the same location than the binary
#message(STATUS "XX BOOST LIBRARIES ${Boost_LIBRARIES}")
#install(
# FILES ${Boost_LIBRARIES}
# DESTINATION bin
# COMPONENT gui)
#foreach(boost_component ${BOOST_COMPONENTS})
# install(IMPORTED_RUNTIME_ARTIFACTS Boost::${boost_component})
#endforeach()

foreach(BOOST_COMPONENT ${BOOST_COMPONENTS})
get_target_property(BOOST_LIB Boost::${BOOST_COMPONENT} LOCATION_${CMAKE_BUILD_TYPE})

get_target_property(boost_imported_location Boost::${BOOST_COMPONENT} IMPORTED_LOCATION)
message(STATUS "XX boost_imported_location ${boost_imported_location}")
#string(REPLACE "/lib/" "/bin/" boost_imported_location ${boost_imported_location})
#message(STATUS "XX boost_imported_location2 ${boost_imported_location}")
string(REPLACE ".dll.a" ".dll" boost_imported_location ${boost_imported_location})
message(STATUS "XX boost_imported_location ${boost_imported_location}")

message(STATUS "XX Boost::${BOOST_COMPONENT} LIB: ${BOOST_LIB}")
install(FILES ${boost_imported_location}
DESTINATION bin
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE
GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
COMPONENT gui
#RENAME ${TARGET_NAME}
)
endforeach()

foreach(QT_MODULE ${QT_MODULES})
get_target_property(QT_LIBRARY ${QT_MODULE} LOCATION_${CMAKE_BUILD_TYPE})

install(FILES ${QT_LIBRARY}
DESTINATION bin
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE
GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
COMPONENT gui
#RENAME ${TARGET_NAME}
)
endforeach()


endif()
endif()
###################### End CPACK configurations ############################# }}}
Expand Down
Loading