10 Commits

Author SHA1 Message Date
43004b19c3 updated build system
Some checks failed
BlockStorage/repertory_linux_builds/pipeline/head There was a failure building this commit
2024-07-11 14:10:43 -05:00
4044d95aaa updated build system 2024-07-11 13:56:36 -05:00
c6024c06ce fix 2024-07-11 13:01:06 -05:00
e56bcb6489 updated build system 2024-07-11 12:31:50 -05:00
d9e0164080 updated build system 2024-07-11 11:42:06 -05:00
b588cd645e updated build system 2024-07-11 09:28:07 -05:00
2c163d7219 updated build system 2024-07-11 09:25:32 -05:00
39c53fe903 updated public key 2024-07-11 09:12:49 -05:00
7b12d8f9e9 updated build system 2024-07-11 07:42:28 -05:00
4649f66c00 updated build system 2024-07-11 07:35:44 -05:00
9 changed files with 94 additions and 60 deletions

View File

@ -19,7 +19,8 @@ pipeline {
steps { steps {
retry(2) { retry(2) {
sleep time: 5, unit: 'SECONDS' sleep time: 5, unit: 'SECONDS'
sh 'scripts/make_unix.sh x86_64' sh 'scripts/make_unix.sh'
sh 'scripts/make_package.sh'
} }
} }
} }
@ -31,6 +32,7 @@ pipeline {
retry(2) { retry(2) {
sleep time: 5, unit: 'SECONDS' sleep time: 5, unit: 'SECONDS'
sh 'scripts/make_win32.sh' sh 'scripts/make_win32.sh'
sh 'scripts/make_package.sh "" "" "" "" 1 0'
} }
} }
} }
@ -42,6 +44,7 @@ pipeline {
retry(2) { retry(2) {
sleep time: 5, unit: 'SECONDS' sleep time: 5, unit: 'SECONDS'
sh 'scripts/make_unix.sh aarch64' sh 'scripts/make_unix.sh aarch64'
sh 'scripts/make_package.sh "" aarch64'
} }
} }
} }

View File

@ -77,39 +77,39 @@ endif()
-DPROJECT_BUILD_SHARED_LIBS=${PROJECT_BUILD_SHARED_LIBS} -DPROJECT_BUILD_SHARED_LIBS=${PROJECT_BUILD_SHARED_LIBS}
-DPROJECT_CMAKE_BUILD_TYPE=${PROJECT_CMAKE_BUILD_TYPE} -DPROJECT_CMAKE_BUILD_TYPE=${PROJECT_CMAKE_BUILD_TYPE}
-DPROJECT_DIST_DIR=${PROJECT_DIST_DIR} -DPROJECT_DIST_DIR=${PROJECT_DIST_DIR}
-DPROJECT_ENABLE_WXWIDGETS=${PROJECT_ENABLE_WXWIDGETS}
-DPROJECT_ENABLE_WINFSP=${PROJECT_ENABLE_WINFSP}
-DPROJECT_ENABLE_VORBIS=${PROJECT_ENABLE_VORBIS}
-DPROJECT_ENABLE_TPL=${PROJECT_ENABLE_TPL}
-DPROJECT_ENABLE_TESTING=${PROJECT_ENABLE_TESTING}
-DPROJECT_ENABLE_STDUUID=${PROJECT_ENABLE_STDUUID}
-DPROJECT_ENABLE_SQLITE=${PROJECT_ENABLE_SQLITE}
-DPROJECT_ENABLE_SPDLOG=${PROJECT_ENABLE_SPDLOG}
-DPROJECT_ENABLE_SFML=${PROJECT_ENABLE_SFML}
-DPROJECT_ENABLE_SECP256K1=${PROJECT_ENABLE_SECP256K1}
-DPROJECT_ENABLE_SAGO_PLATFORM_FOLDERS=${PROJECT_ENABLE_SAGO_PLATFORM_FOLDERS}
-DPROJECT_ENABLE_ROCKSDB=${PROJECT_ENABLE_ROCKSDB}
-DPROJECT_ENABLE_PUGIXML=${PROJECT_ENABLE_PUGIXML}
-DPROJECT_ENABLE_OPENSSL=${PROJECT_ENABLE_OPENSSL}
-DPROJECT_ENABLE_OPENAL=${PROJECT_ENABLE_OPENAL}
-DPROJECT_ENABLE_OGG=${PROJECT_ENABLE_OGG}
-DPROJECT_ENABLE_NUSPELL=${PROJECT_ENABLE_NUSPELL}
-DPROJECT_ENABLE_LIBSODIUM=${PROJECT_ENABLE_LIBSODIUM}
-DPROJECT_ENABLE_LIBEVENT=${PROJECT_ENABLE_LIBEVENT}
-DPROJECT_ENABLE_LIBBITCOIN_SYSTEM=${PROJECT_ENABLE_LIBBITCOIN_SYSTEM}
-DPROJECT_ENABLE_JSON=${PROJECT_ENABLE_JSON}
-DPROJECT_ENABLE_GTKMM=${PROJECT_ENABLE_GTKMM}
-DPROJECT_ENABLE_FZF=${PROJECT_ENABLE_FZF}
-DPROJECT_ENABLE_FUSE=${PROJECT_ENABLE_FUSE}
-DPROJECT_ENABLE_FREETYPE2=${PROJECT_ENABLE_FREETYPE2}
-DPROJECT_ENABLE_FONTCONFIG=${PROJECT_ENABLE_FONTCONFIG}
-DPROJECT_ENABLE_FMT=${PROJECT_ENABLE_FMT}
-DPROJECT_ENABLE_FLAC=${PROJECT_ENABLE_FLAC}
-DPROJECT_ENABLE_DTL=${PROJECT_ENABLE_DTL}
-DPROJECT_ENABLE_CURL=${PROJECT_ENABLE_CURL}
-DPROJECT_ENABLE_CPP_HTTPLIB=${PROJECT_ENABLE_CPP_HTTPLIB}
-DPROJECT_ENABLE_CLI11=${PROJECT_ENABLE_CLI11}
-DPROJECT_ENABLE_BOOST=${PROJECT_ENABLE_BOOST} -DPROJECT_ENABLE_BOOST=${PROJECT_ENABLE_BOOST}
-DPROJECT_ENABLE_CLI11=${PROJECT_ENABLE_CLI11}
-DPROJECT_ENABLE_CPP_HTTPLIB=${PROJECT_ENABLE_CPP_HTTPLIB}
-DPROJECT_ENABLE_CURL=${PROJECT_ENABLE_CURL}
-DPROJECT_ENABLE_DTL=${PROJECT_ENABLE_DTL}
-DPROJECT_ENABLE_FLAC=${PROJECT_ENABLE_FLAC}
-DPROJECT_ENABLE_FMT=${PROJECT_ENABLE_FMT}
-DPROJECT_ENABLE_FONTCONFIG=${PROJECT_ENABLE_FONTCONFIG}
-DPROJECT_ENABLE_FREETYPE2=${PROJECT_ENABLE_FREETYPE2}
-DPROJECT_ENABLE_FUSE=${PROJECT_ENABLE_FUSE}
-DPROJECT_ENABLE_FZF=${PROJECT_ENABLE_FZF}
-DPROJECT_ENABLE_GTKMM=${PROJECT_ENABLE_GTKMM}
-DPROJECT_ENABLE_JSON=${PROJECT_ENABLE_JSON}
-DPROJECT_ENABLE_LIBBITCOIN_SYSTEM=${PROJECT_ENABLE_LIBBITCOIN_SYSTEM}
-DPROJECT_ENABLE_LIBEVENT=${PROJECT_ENABLE_LIBEVENT}
-DPROJECT_ENABLE_LIBSODIUM=${PROJECT_ENABLE_LIBSODIUM}
-DPROJECT_ENABLE_NUSPELL=${PROJECT_ENABLE_NUSPELL}
-DPROJECT_ENABLE_OGG=${PROJECT_ENABLE_OGG}
-DPROJECT_ENABLE_OPENAL=${PROJECT_ENABLE_OPENAL}
-DPROJECT_ENABLE_OPENSSL=${PROJECT_ENABLE_OPENSSL}
-DPROJECT_ENABLE_PUGIXML=${PROJECT_ENABLE_PUGIXML}
-DPROJECT_ENABLE_ROCKSDB=${PROJECT_ENABLE_ROCKSDB}
-DPROJECT_ENABLE_SAGO_PLATFORM_FOLDERS=${PROJECT_ENABLE_SAGO_PLATFORM_FOLDERS}
-DPROJECT_ENABLE_SECP256K1=${PROJECT_ENABLE_SECP256K1}
-DPROJECT_ENABLE_SFML=${PROJECT_ENABLE_SFML}
-DPROJECT_ENABLE_SPDLOG=${PROJECT_ENABLE_SPDLOG}
-DPROJECT_ENABLE_SQLITE=${PROJECT_ENABLE_SQLITE}
-DPROJECT_ENABLE_STDUUID=${PROJECT_ENABLE_STDUUID}
-DPROJECT_ENABLE_TESTING=${PROJECT_ENABLE_TESTING}
-DPROJECT_ENABLE_TPL=${PROJECT_ENABLE_TPL}
-DPROJECT_ENABLE_VORBIS=${PROJECT_ENABLE_VORBIS}
-DPROJECT_ENABLE_WINFSP=${PROJECT_ENABLE_WINFSP}
-DPROJECT_ENABLE_WXWIDGETS=${PROJECT_ENABLE_WXWIDGETS}
-DPROJECT_EXTERNAL_BUILD_ROOT=${PROJECT_EXTERNAL_BUILD_ROOT} -DPROJECT_EXTERNAL_BUILD_ROOT=${PROJECT_EXTERNAL_BUILD_ROOT}
-DPROJECT_FUSE=${PROJECT_FUSE} -DPROJECT_FUSE=${PROJECT_FUSE}
-DPROJECT_FUSE_INCLUDE_DIRS=${PROJECT_FUSE_INCLUDE_DIRS} -DPROJECT_FUSE_INCLUDE_DIRS=${PROJECT_FUSE_INCLUDE_DIRS}

View File

@ -52,28 +52,17 @@ on Windows.
```text ```text
-----BEGIN PUBLIC KEY----- -----BEGIN PUBLIC KEY-----
MIIEIjANBgkqhkiG9w0BAQEFAAOCBA8AMIIECgKCBAEKfZmq5mMAtD4kSt2Gc/5J MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAqXedleDOugdk9sBpgFOA
H+HHTYtUZE6YYvsvz8TNG/bNL67ZtNRyaoMyhLTfIN4rPBNLUfD+owNS+u5Yk+lS 0+MogIbBF7+iXIIHv8CRBbrrf8nxLSgQvbHQIP0EklebDgLZRgyGI3SSQYj7D957
ZLYyOuhoCZIFefayYqKLr42G8EeuRbx0IMzXmJtN0a4rqxlWhkYufJubpdQ+V4DF uNf1//dpkELNzfuezgAyFer9+iH4Svq46HADp5k+ugaK0mMDZM7OLOgo7415/+z4
oeupcPdIATaadCKVeZC7A0G0uaSwoiAVMG5dZqjQW7F2LoQm3PhNkPvAybIJ6vBy NIQopv8prMFdxkShr4e4dpR+S6LYMYMVjsi1gnYWaZJMWgzeZouXFSscS1/XDXSE
LqdBegS1JrDn43x/pvQHzLO+l+FIG23D1F7iF+yZm3DkzBdcmi/mOMYs/rXZpBym vr1Jfqme+RmB4Q2QqGcDrY2ijumCJYJzQqlwG6liJ4FNg0U3POTCQDhQmuUoEJe0
2/kTuSGh5buuJCeyOwR8N3WdvXw6+KHMU/wWU8qTCTT87mYbzH4YR8HgkjkLHxAO /dyiWlo48WQbBu6gUDHbTCCUSZPs2Lc9l65MqOCpX76+VXPYetZgqpMF4GVzb2y9
5waHK6vMu0TxugCdJmVV6BSbiarJsh66VRosn7+6hlq6AdgksxqCeNELZBS+LBki kETxFNpiMYBlOBZk0I1G33wqVmw46MI5IZMQ2z2F8Mzt1hByUNTgup2IQELCv1a5
tb5hKyL+jNZnaHiR0U7USWtmnqZG6FVVRzlCnxP7tZo5O5Ex9AAFGz5JzOzsFNbv a2ACs2TBRuAy1REeHhjLgiA/MpoGX7TpoHCGyo8jBChJVpP9ZHltKoChwDC+bIyx
xwQ0zqaTQOze+MJbkda7JfRoC6TncD0+3hoXsiaF4mCn8PqUCn0DwhglcRucZlST rgYH3jYDkl2FFuAUJ8zAZl8U1kjqZb9HGq9ootMk34Dbo3IVkc2azB2orEP9F8QV
ZvDNDo1WAtxPJebb3aS6uymNhBIquQbVAWxVO4eTrOYEgutxwkHE3yO3is+ogp8d KxvZZDA9FAFEthSiNf5soJ6mZGLi0es5EWPoKMUEd9tG5bP980DySAWSSRK0AOfE
xot7f/+vzlbsbIDyuZBDe0fFkbTIMTU48QuUUVZpRKmKZTHQloz4EHqminbfX1sh QShT/z7oG79Orxyomwrb8ZJCi7wEfcCuK1NWgqLVUgXhpi2J9WYS6DAbF3Oh3Hhl
M7wvDkpJEtqbc0VnG/BukUzP6e7Skvgc7eF1sI3+8jH8du2rivZeZAl7Q2f+L9JA DYSHlcfFBteqNDlR2uFInIECAwEAAQ==
BY9pjaxttxsud7V5jeFi4tKuDHi21/XhSjlJK2c2C4AiUEK5/WhtGbQ5JjmcOjRq
yXFRqLlerzOcop2kbtU3Ar230wOx3Dj23Wg8++lV3LU4U9vMR/t0qnSbCSGJys7m
ax2JpFlTwj/0wYuTlVFoNQHZJ1cdfyRiRBY4Ou7XO0W5hcBBKiYsC+neEeMMHdCe
iTDIW/ojcVTdFovl+sq3n1u4SBknE90JC/3H+TPE1s2iB+fwORVg0KPosQSNDS0A
7iK6AZCDC3YooFo+OzHkYMt9uLkXiXMSLx70az+qlIwOzVHKxCo7W/QpeKCXUCRZ
MMdlYEUs1PC8x2qIRUEVHuJ0XMTKNyOHmzVLuLK93wUWbToh+rdDxnbhX+emuESn
XH6aKiUwX4olEVKSylRUQw8nVckZGVWXzLDlgpzDrLHC8J8qHzFt7eCqOdiqsxhZ
x1U5LtugxwSWncTZ7vlKl0DuC/AWB7SuDi7bGRMSVp2n+MnD1VLKlsCclHXjIciE
W29n3G3lJ/sOta2sxqLd0j1XBQddrFXl5b609sIY81ocHqu8P2hRu5CpqJ/sGZC5
mMH3segHBkRj0xJcfOxceRLj1a+ULIIR3xL/3f8s5Id25TDo/nqBoCvu5PeCpo6L
9wIDAQAB
-----END PUBLIC KEY----- -----END PUBLIC KEY-----
``` ```

View File

@ -1,6 +1,10 @@
#!/bin/bash #!/bin/bash
PROJECT_APP_NAME="repertory" PROJECT_APP_NAME="repertory"
PROJECT_APP_LIST=(${PROJECT_APP_NAME})
PROJECT_PRIVATE_KEY=${DEVELOPER_PRIVATE_KEY}
PROJECT_PUBLIC_KEY=${DEVELOPER_PUBLIC_KEY}
PROJECT_ENABLE_BOOST=ON PROJECT_ENABLE_BOOST=ON
PROJECT_ENABLE_CPP_HTTPLIB=ON PROJECT_ENABLE_CPP_HTTPLIB=ON
@ -20,7 +24,6 @@ PROJECT_STATIC_LINK=ON
PROJECT_MINGW64_COPY_DEPENDENCIES+=() PROJECT_MINGW64_COPY_DEPENDENCIES+=()
PROJECT_MSYS2_PACKAGE_LIST+=() PROJECT_MSYS2_PACKAGE_LIST+=()
PROJECT_APP_LIST=(${PROJECT_APP_NAME})
if [ "${PROJECT_ENABLE_TESTING}" == "ON" ]; then if [ "${PROJECT_ENABLE_TESTING}" == "ON" ]; then
PROJECT_APP_LIST+=(${PROJECT_APP_NAME}_test) PROJECT_APP_LIST+=(${PROJECT_APP_NAME}_test)
fi fi

14
developer.pub Normal file
View File

@ -0,0 +1,14 @@
-----BEGIN PUBLIC KEY-----
MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAqXedleDOugdk9sBpgFOA
0+MogIbBF7+iXIIHv8CRBbrrf8nxLSgQvbHQIP0EklebDgLZRgyGI3SSQYj7D957
uNf1//dpkELNzfuezgAyFer9+iH4Svq46HADp5k+ugaK0mMDZM7OLOgo7415/+z4
NIQopv8prMFdxkShr4e4dpR+S6LYMYMVjsi1gnYWaZJMWgzeZouXFSscS1/XDXSE
vr1Jfqme+RmB4Q2QqGcDrY2ijumCJYJzQqlwG6liJ4FNg0U3POTCQDhQmuUoEJe0
/dyiWlo48WQbBu6gUDHbTCCUSZPs2Lc9l65MqOCpX76+VXPYetZgqpMF4GVzb2y9
kETxFNpiMYBlOBZk0I1G33wqVmw46MI5IZMQ2z2F8Mzt1hByUNTgup2IQELCv1a5
a2ACs2TBRuAy1REeHhjLgiA/MpoGX7TpoHCGyo8jBChJVpP9ZHltKoChwDC+bIyx
rgYH3jYDkl2FFuAUJ8zAZl8U1kjqZb9HGq9ootMk34Dbo3IVkc2azB2orEP9F8QV
KxvZZDA9FAFEthSiNf5soJ6mZGLi0es5EWPoKMUEd9tG5bP980DySAWSSRK0AOfE
QShT/z7oG79Orxyomwrb8ZJCi7wEfcCuK1NWgqLVUgXhpi2J9WYS6DAbF3Oh3Hhl
DYSHlcfFBteqNDlR2uFInIECAwEAAQ==
-----END PUBLIC KEY-----

View File

@ -22,6 +22,8 @@
#ifndef LIBREPERTORY_INCLUDE_VERSION_HPP_ #ifndef LIBREPERTORY_INCLUDE_VERSION_HPP_
#define LIBREPERTORY_INCLUDE_VERSION_HPP_ #define LIBREPERTORY_INCLUDE_VERSION_HPP_
#include <string_view>
namespace repertory { namespace repertory {
[[nodiscard]] auto project_get_git_rev() -> std::string_view; [[nodiscard]] auto project_get_git_rev() -> std::string_view;

View File

@ -308,5 +308,7 @@ echo "-=[Libraries]=-"
for PROJECT_LIBRARY in "${PROJECT_LIBRARIES[@]}"; do for PROJECT_LIBRARY in "${PROJECT_LIBRARIES[@]}"; do
ENABLE_NAME=PROJECT_ENABLE_${PROJECT_LIBRARY} ENABLE_NAME=PROJECT_ENABLE_${PROJECT_LIBRARY}
KEEP_NAME=PROJECT_KEEP_${PROJECT_LIBRARY} KEEP_NAME=PROJECT_KEEP_${PROJECT_LIBRARY}
echo " ${ENABLE_NAME}=${!ENABLE_NAME},${!KEEP_NAME}" if [ "${!ENABLE_NAME}" == "ON" ] || [ "${!KEEP_NAME}" == "1" ]; then
echo " ${ENABLE_NAME}: Enable[${!ENABLE_NAME}] Keep[${!KEEP_NAME}]"
fi
done done

View File

@ -84,3 +84,18 @@ ln -sf "${PROJECT_BUILD_DIR}/build/compile_commands.json" "${SOURCE_DIR}/compile
if [ -f "${SOURCE_DIR}/post_build.sh" ]; then if [ -f "${SOURCE_DIR}/post_build.sh" ]; then
"${SOURCE_DIR}/post_build.sh" "${SOURCE_DIR}/post_build.sh"
fi fi
pushd "${PROJECT_DIST_DIR}"
IFS=$'\n'
set -f
FILE_LIST=$(find . -type f)
for FILE in ${FILE_LIST}; do
sha256sum ${FILE} >${FILE}.sha256
if [ "${PROJECT_PRIVATE_KEY}" != "" ]; then
openssl dgst -sha256 -sign "${PROJECT_PRIVATE_KEY}" -out "${FILE}.sig" "${FILE}"
openssl dgst -sha256 -verify "${PROJECT_PUBLIC_KEY}" -signature "${FILE}.sig" "${FILE}" || exit 1
fi
done
unset IFS
set +f
popd

View File

@ -50,10 +50,16 @@ fi
PACKAGE_ROOT="${PROJECT_DIST_DIR}/.." PACKAGE_ROOT="${PROJECT_DIST_DIR}/.."
PACKAGE_ROOT=$(realpath "${PACKAGE_ROOT}") PACKAGE_ROOT=$(realpath "${PACKAGE_ROOT}")
rsync -av --progress ${PACKAGE_ROOT}/ ${TEMP_DIR}/ || exit_and_clean "Failed to rsync" 1 rsync -av --progress ${PROJECT_DIST_DIR}/ ${TEMP_DIR}/${PROJECT_APP_NAME}/ || exit_and_clean "Failed to rsync" 1
pushd "${DEST_DIR}" pushd "${DEST_DIR}"
tar cvzf ${PROJECT_APP_NAME}_${PROJECT_VERSION}_${PROJECT_GIT_REV}_${PROJECT_BUILD_ARCH}_${PROJECT_OS}.tar.gz -C ${TEMP_DIR} . || exit_and_clean "Failed to create archive" 1 OUT_FILE=${PROJECT_APP_NAME}_${PROJECT_VERSION}_${PROJECT_GIT_REV}_${PROJECT_BUILD_ARCH}_${PROJECT_OS}.tar.gz
tar cvzf "${OUT_FILE}" -C ${TEMP_DIR} . || exit_and_clean "Failed to create archive" 1
sha256sum "${OUT_FILE}" >"${OUT_FILE}.sha256" || exit_and_clean "Failed to create sha256 file" 1
if [ "${PROJECT_PRIVATE_KEY}" != "" ]; then
openssl dgst -sha256 -sign "${PROJECT_PRIVATE_KEY}" -out "${OUT_FILE}.sig" "${OUT_FILE}" || exit_and_clean "Failed to create signature file" 1
openssl dgst -sha256 -verify "${PROJECT_PUBLIC_KEY}" -signature "${OUT_FILE}.sig" "${OUT_FILE}" || exit_and_clean "Failed to validate signature file" 1
fi
popd popd
exit_and_clean "Created package successfully" 0 exit_and_clean "Created package successfully" 0