Shared Boost in distribution packages (#2813)

* shared boost for artifacts
enable shared boost for windows tests

* .deb support via cmake

reorganized nix packages
This commit is contained in:
Russel Waters 2020-06-16 10:37:37 -04:00 committed by GitHub
commit 5e952f3040
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
9 changed files with 36 additions and 13 deletions

View file

@ -616,9 +616,11 @@ if (NANO_GUI OR RAIBLOCKS_GUI)
install (FILES ${Qt5_bin_DIR}/Qt5WinExtras.dll DESTINATION .)
install (FILES ${Qt5WindowsPlugin} DESTINATION platforms)
else ()
set(CPACK_GENERATOR "TBZ2")
set(CPACK_GENERATOR "TBZ2;DEB")
set(CPACK_DEBIAN_PACKAGE_DEPENDS qt5-default)
set(CPACK_DEBIAN_PACKAGE_MAINTAINER "russel@nano.org")
install(TARGETS nano_wallet
RUNTIME DESTINATION .
RUNTIME DESTINATION ./bin
)
if (NANO_SHARED_BOOST)
get_filename_component(Boost_LIB_DIR ${BOOST_ROOT}/lib ABSOLUTE)
@ -634,8 +636,8 @@ if (NANO_GUI OR RAIBLOCKS_GUI)
install (FILES ${Boost_LIB_DIR}/libboost_atomic.so.${Boost_VERSION_STRING} DESTINATION ./lib)
endif()
if (NANO_POW_SERVER)
install (TARGETS nano_pow_server DESTINATION .)
install (DIRECTORY ${PROJECT_SOURCE_DIR}/nano-pow-server/public DESTINATION .)
install (TARGETS nano_pow_server DESTINATION ./bin)
install (DIRECTORY ${PROJECT_SOURCE_DIR}/nano-pow-server/public DESTINATION ./bin)
endif ()
endif ()
endif ()

View file

@ -13,8 +13,11 @@ fi
if [[ "$OS" == 'Linux' ]]; then
sha256sum $GITHUB_WORKSPACE/build/nano-node-*-Linux.tar.bz2 | cut -f1 -d' ' > $GITHUB_WORKSPACE/nano-node-$TAG-Linux.tar.bz2.sha256
sha256sum $GITHUB_WORKSPACE/build/nano-node-*-Linux.deb | cut -f1 -d' ' > $GITHUB_WORKSPACE/nano-node-$TAG-Linux.deb.sha256
aws s3 cp $GITHUB_WORKSPACE/build/nano-node-*-Linux.tar.bz2 s3://repo.nano.org/$BUILD/binaries/nano-node-$TAG-Linux.tar.bz2 --grants read=uri=http://acs.amazonaws.com/groups/global/AllUsers
aws s3 cp $GITHUB_WORKSPACE/nano-node-$TAG-Linux.tar.bz2.sha256 s3://repo.nano.org/$BUILD/binaries/nano-node-$TAG-Linux.tar.bz2.sha256 --grants read=uri=http://acs.amazonaws.com/groups/global/AllUsers
aws s3 cp $GITHUB_WORKSPACE/build/nano-node-*-Linux.deb s3://repo.nano.org/$BUILD/binaries/nano-node-$TAG-Linux.deb --grants read=uri=http://acs.amazonaws.com/groups/global/AllUsers
aws s3 cp $GITHUB_WORKSPACE/nano-node-$TAG-Linux.deb.sha256 s3://repo.nano.org/$BUILD/binaries/nano-node-$TAG-Linux.deb.sha256 --grants read=uri=http://acs.amazonaws.com/groups/global/AllUsers
else
sha256sum $GITHUB_WORKSPACE/build/nano-node-*-Darwin.dmg | cut -f1 -d' ' > $GITHUB_WORKSPACE/build/nano-node-$TAG-Darwin.dmg.sha256
aws s3 cp $GITHUB_WORKSPACE/build/nano-node-*-Darwin.dmg s3://repo.nano.org/$BUILD/binaries/nano-node-$TAG-Darwin.dmg --grants read=uri=http://acs.amazonaws.com/groups/global/AllUsers

View file

@ -9,7 +9,7 @@ if (${env:artifact} -eq 1) {
$env:NETWORK_CFG = "live"
$env:BUILD_TYPE = "Release"
}
$env:NANO_SHARED_BOOST = "OFF"
$env:NANO_SHARED_BOOST = "ON"
$env:ROCKS_LIB = '-DROCKSDB_LIBRARIES="c:\vcpkg\installed\x64-windows-static\lib\rocksdb.lib"'
$env:NANO_TEST = "-DNANO_TEST=OFF"
$env:TRAVIS_TAG = ${env:TAG}
@ -37,6 +37,9 @@ mkdir build
Push-Location build
$env:BOOST_ROOT = ${env:BOOST_ROOT_1_69_0}
#accessibility of Boost dlls for generating config samples
$ENV:PATH = "$ENV:PATH;$ENV:BOOST_ROOT\lib"
& ..\ci\actions\windows\configure.bat
if (${LastExitCode} -ne 0) {
throw "Failed to configure"

View file

@ -30,6 +30,7 @@ cmake \
-DCMAKE_BUILD_TYPE=${CONFIGURATION} \
-DCMAKE_VERBOSE_MAKEFILE=ON \
-DBOOST_ROOT=/tmp/boost/ \
-DNANO_SHARED_BOOST=ON \
-DQt5_DIR=${qt_dir} \
-DCI_BUILD=true \
..

View file

@ -9,7 +9,7 @@ RUN mkdir /tmp/build && \
cd /tmp/build && \
cmake /tmp/src -DCI_BUILD=${CI_BUILD} -DBOOST_ROOT=${BOOST_ROOT} -DACTIVE_NETWORK=nano_${NETWORK}_network \
-DNANO_ROCKSDB=ON -DNANO_POW_SERVER=ON -DROCKSDB_LIBRARIES=/tmp/rocksdb/lib/librocksdb.a \
-DROCKSDB_INCLUDE_DIRS=/tmp/rocksdb/include && \
-DROCKSDB_INCLUDE_DIRS=/tmp/rocksdb/include -DNANO_SHARED_BOOST=ON && \
make nano_node -j $(nproc) && \
make nano_rpc -j $(nproc) && \
make nano_pow_server -j $(nproc) && \
@ -28,8 +28,10 @@ COPY --from=0 /tmp/src/api/ /usr/bin/api/
COPY --from=0 /etc/nano-network /etc
COPY docker/node/entry.sh /usr/bin/entry.sh
COPY docker/node/config /usr/share/nano/config
COPY --from=0 /tmp/boost/lib/* /usr/local/lib/
RUN chmod +x /usr/bin/entry.sh
RUN ln -s /usr/bin/nano_node /usr/bin/rai_node
RUN ldconfig
WORKDIR /root
USER root

@ -1 +1 @@
Subproject commit 1279afc2b6a5382c708d642d8c190bf0f68d340e
Subproject commit 00591aeae94bc52d2f087bcb1bf255396f59b42f

View file

@ -25,6 +25,8 @@ add_subdirectory(../../flatbuffers ${CMAKE_CURRENT_BINARY_DIR}/flatbuffers-build
file(MAKE_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/generated/flatbuffers)
if (APPLE)
install (DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/../../api/flatbuffers/ DESTINATION Nano.app/Contents/MacOS/api/flatbuffers)
elseif(LINUX)
install (DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/../../api/flatbuffers/ DESTINATION ./bin/api/flatbuffers)
else()
install (DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/../../api/flatbuffers/ DESTINATION ./api/flatbuffers)
endif()

View file

@ -33,7 +33,12 @@ add_custom_command(TARGET nano_node
COMMAND nano_node --generate_config rpc > ${PROJECT_BINARY_DIR}/config-rpc.toml.sample)
if ((NANO_GUI OR RAIBLOCKS_GUI) AND NOT APPLE)
install(TARGETS nano_node
RUNTIME DESTINATION .
)
if (WIN32)
install(TARGETS nano_node
RUNTIME DESTINATION .
)
else ()
install(TARGETS nano_node
RUNTIME DESTINATION ./bin)
endif()
endif()

View file

@ -20,7 +20,12 @@ target_compile_definitions(nano_rpc
-DGIT_COMMIT_HASH=${GIT_COMMIT_HASH})
if ((NANO_GUI OR RAIBLOCKS_GUI) AND NOT APPLE)
install(TARGETS nano_rpc
RUNTIME DESTINATION .
)
if (WIN32)
install(TARGETS nano_rpc
RUNTIME DESTINATION .
)
else ()
install(TARGETS nano_rpc
RUNTIME DESTINATION ./bin)
endif()
endif()