From 356521e176e4a8e02f5d3e27f1cb538ce873360e Mon Sep 17 00:00:00 2001 From: "Scott E. Graves" Date: Thu, 25 Jul 2024 09:26:32 -0500 Subject: [PATCH] updated build system --- repertory/version.rc.in | 8 ++++---- scripts/deliver.sh | 9 ++++----- scripts/env.sh | 17 ++++++++++++++++- scripts/make_package.sh | 21 +++++++++------------ 4 files changed, 33 insertions(+), 22 deletions(-) diff --git a/repertory/version.rc.in b/repertory/version.rc.in index 7e40e538..be5b7fdd 100644 --- a/repertory/version.rc.in +++ b/repertory/version.rc.in @@ -1,18 +1,18 @@ #include #define VER_FILEVERSION @PROJECT_MAJOR_VERSION@,@PROJECT_MINOR_VERSION@,@PROJECT_REVISION_VERSION@,@PROJECT_RELEASE_NUM@ -#define VER_FILEVERSION_STR "@PROJECT_MAJOR_VERSION@.@PROJECT_MINOR_VERSION@.@PROJECT_REVISION_VERSION@-@PROJECT_RELEASE_ITER@-@PROJECT_GIT_REV@\0" +#define VER_FILEVERSION_STR "@PROJECT_MAJOR_VERSION@.@PROJECT_MINOR_VERSION@.@PROJECT_REVISION_VERSION@-@PROJECT_RELEASE_ITER@_@PROJECT_GIT_REV@\0" #define VER_PRODUCTVERSION @PROJECT_MAJOR_VERSION@,@PROJECT_MINOR_VERSION@,@PROJECT_REVISION_VERSION@,@PROJECT_RELEASE_NUM@ -#define VER_PRODUCTVERSION_STR "@PROJECT_MAJOR_VERSION@.@PROJECT_MINOR_VERSION@.@PROJECT_REVISION_VERSION@-@PROJECT_RELEASE_ITER@-@PROJECT_GIT_REV@\0" +#define VER_PRODUCTVERSION_STR "@PROJECT_MAJOR_VERSION@.@PROJECT_MINOR_VERSION@.@PROJECT_REVISION_VERSION@-@PROJECT_RELEASE_ITER@_@PROJECT_GIT_REV@\0" #define VER_COMPANYNAME_STR "@PROJECT_COMPANY_NAME@\0" -#define VER_INTERNALNAME_STR "@PROJECT_NAME@ @PROJECT_MAJOR_VERSION@.@PROJECT_MINOR_VERSION@.@PROJECT_REVISION_VERSION@-@PROJECT_RELEASE_ITER@-@PROJECT_GIT_REV@\0" +#define VER_INTERNALNAME_STR "@PROJECT_NAME@ @PROJECT_MAJOR_VERSION@.@PROJECT_MINOR_VERSION@.@PROJECT_REVISION_VERSION@-@PROJECT_RELEASE_ITER@_@PROJECT_GIT_REV@\0" #define VER_LEGALCOPYRIGHT_STR "@PROJECT_COPYRIGHT@\0" #define VER_ORIGINALFILENAME_STR "@PROJECT_NAME@.exe\0" #define VER_LEGALTRADEMARKS1_STR "\0" #define VER_LEGALTRADEMARKS2_STR "\0" #define VER_FILEDESCRIPTION_STR "@PROJECT_DESC@\0" -#define VER_PRODUCTNAME_STR "@PROJECT_NAME@ @PROJECT_MAJOR_VERSION@.@PROJECT_MINOR_VERSION@.@PROJECT_REVISION_VERSION@-@PROJECT_RELEASE_ITER@-@PROJECT_GIT_REV@\0" +#define VER_PRODUCTNAME_STR "@PROJECT_NAME@ @PROJECT_MAJOR_VERSION@.@PROJECT_MINOR_VERSION@.@PROJECT_REVISION_VERSION@-@PROJECT_RELEASE_ITER@_@PROJECT_GIT_REV@\0" #ifdef DEBUG #define VER_DEBUG VS_FF_DEBUG diff --git a/scripts/deliver.sh b/scripts/deliver.sh index 8a952179..a4427c2e 100755 --- a/scripts/deliver.sh +++ b/scripts/deliver.sh @@ -48,15 +48,14 @@ else DEST_DIR=${DEST_DIR}/nightly fi -FILE_PART=${PROJECT_NAME}_${PROJECT_MAJOR_VERSION}.${PROJECT_MINOR_VERSION}.${PROJECT_REVISION_VERSION}-${PROJECT_RELEASE_ITER}-${PROJECT_GIT_REV}_${PROJECT_BUILD_ARCH}_${PROJECT_OS} echo ${DEST_DIR} pushd "${DIST_DIR}" -cp -f ./${FILE_PART}.tar.gz ${DEST_DIR} || error_exit "failed to deliver file: ${FILE_PART}.tar.gz" 1 -cp -f ./${FILE_PART}.tar.gz.sha256 ${DEST_DIR} || error_exit "failed to deliver file: ${FILE_PART}.tar.gz.sha256" 1 +cp -f ./${PROJECT_OUT_FILE} ${DEST_DIR} || error_exit "failed to deliver file: ${PROJECT_OUT_FILE}" 1 +cp -f ./${PROJECT_OUT_FILE}.sha256 ${DEST_DIR} || error_exit "failed to deliver file: ${PROJECT_OUT_FILE}.sha256" 1 if [ "${PROJECT_PRIVATE_KEY}" != "" ]; then - cp -f ./${FILE_PART}.tar.gz.sig ${DEST_DIR} || error_exit "failed to deliver file: ${FILE_PART}.tar.gz.sig" 1 + cp -f ./${PROJECT_OUT_FILE}.sig ${DEST_DIR} || error_exit "failed to deliver file: ${PROJECT_OUT_FILE}.sig" 1 fi popd -error_exit "delivered ${FILE_PART}" 0 +error_exit "delivered ${PROJECT_FILE_PART}" 0 diff --git a/scripts/env.sh b/scripts/env.sh index 49a18e25..94fd38ef 100755 --- a/scripts/env.sh +++ b/scripts/env.sh @@ -120,6 +120,12 @@ elif [ "${PROJECT_BUILD_ARCH}" == "aarch64" ]; then PROJECT_IS_ARM64=1 fi +if [ "${PROJECT_BUILD_ARCH}" == "x86_64" ]; then + PROJECT_BUILD_ARCH2="amd64" +else + PROJECT_BUILD_ARCH2="${PROJECT_BUILD_ARCH}" +fi + if [ "${PROJECT_IS_MINGW}" == "1" ] && [ "${PROJECT_IS_MINGW_UNIX}" != "1" ]; then MSYS=winsymlinks:nativestrict fi @@ -242,11 +248,14 @@ fi PATH="${PROJECT_EXTERNAL_BUILD_ROOT}/bin:${PATH}" if [ "${PROJECT_IS_MINGW}" == "1" ]; then - PROJECT_OS=win32 + PROJECT_OS=windows else PROJECT_OS=linux fi +PROJECT_FILE_PART=${PROJECT_NAME}_${PROJECT_MAJOR_VERSION}.${PROJECT_MINOR_VERSION}.${PROJECT_REVISION_VERSION}-${PROJECT_RELEASE_ITER}_${PROJECT_GIT_REV}_${PROJECT_OS}_${PROJECT_BUILD_ARCH2} +PROJECT_OUT_FILE=${PROJECT_FILE_PART}.tar.gz + export MSYS export NUM_JOBS export OPENSSL_ROOT_DIR @@ -255,6 +264,7 @@ export PKG_CONFIG_PATH export PROJECT_3RD_PARTY_DIR export PROJECT_APP_LIST export PROJECT_BUILD_ARCH +export PROJECT_BUILD_ARCH2 export PROJECT_BUILD_CLEAN export PROJECT_BUILD_DIR export PROJECT_BUILD_SHARED_LIBS @@ -265,6 +275,7 @@ export PROJECT_COMPANY_NAME export PROJECT_COPYRIGHT export PROJECT_DESC export PROJECT_DIST_DIR +export PROJECT_FILE_PART export PROJECT_GIT_REV export PROJECT_IS_ALPINE export PROJECT_IS_ARM64 @@ -278,6 +289,7 @@ export PROJECT_MINOR_VERSION export PROJECT_MSYS2_PACKAGE_LIST export PROJECT_NAME export PROJECT_OS +export PROJECT_OUT_FILE export PROJECT_PRIVATE_KEY export PROJECT_PUBLIC_KEY export PROJECT_RELEASE_ITER @@ -300,6 +312,7 @@ done echo "-=[Settings]=-" echo " App list: ${PROJECT_APP_LIST[*]}" echo " Build arch: ${PROJECT_BUILD_ARCH}" +echo " Build arch2: ${PROJECT_BUILD_ARCH2}" echo " Build clean: ${PROJECT_BUILD_CLEAN}" echo " Build dir: ${PROJECT_BUILD_DIR}" echo " Build shared libraries: ${PROJECT_BUILD_SHARED_LIBS}" @@ -311,6 +324,7 @@ echo " Copyright: ${PROJECT_COPYRIGHT}" echo " Description: ${PROJECT_DESC}" echo " Dist dir: ${PROJECT_DIST_DIR}" echo " External build root: ${PROJECT_EXTERNAL_BUILD_ROOT}" +echo " File part: ${PROJECT_FILE_PART}" echo " Is ARM64: ${PROJECT_IS_ARM64}" echo " Is Alpine: ${PROJECT_IS_ALPINE}" echo " Is MINGW on Unix: ${PROJECT_IS_MINGW_UNIX}" @@ -322,6 +336,7 @@ if [ "${PROJECT_IS_MINGW}" == "1" ] && [ "${PROJECT_IS_MINGW_UNIX}" == "1" ]; th echo " MinGW docker build args: ${PROJECT_MINGW64_DOCKER_BUILD_ARGS}" fi echo " OPENSSL_ROOT_DIR: ${OPENSSL_ROOT_DIR}" +echo " Out file: ${PROJECT_OUT_FILE}" echo " PATH: ${PATH}" echo " PKG_CONFIG_PATH: ${PKG_CONFIG_PATH}" echo " Require Alpine: ${PROJECT_REQUIRE_ALPINE}" diff --git a/scripts/make_package.sh b/scripts/make_package.sh index 07c52a2b..cc0faf88 100755 --- a/scripts/make_package.sh +++ b/scripts/make_package.sh @@ -36,18 +36,15 @@ if [ ! -d "${DEST_DIR}" ]; then error_exit "dest directory not found: ${DEST_DIR}" 1 fi -FILE_PART=${PROJECT_NAME}_${PROJECT_MAJOR_VERSION}.${PROJECT_MINOR_VERSION}.${PROJECT_REVISION_VERSION}-${PROJECT_RELEASE_ITER}-${PROJECT_GIT_REV}_${PROJECT_BUILD_ARCH}_${PROJECT_OS} - -OUT_FILE=${FILE_PART}.tar.gz pushd "${DEST_DIR}" -if [ -f "${OUT_FILE}" ]; then - rm -f "${OUT_FILE}" || error_exit "failed to delete file: ${OUT_FILE}" 1 +if [ -f "${PROJECT_OUT_FILE}" ]; then + rm -f "${PROJECT_OUT_FILE}" || error_exit "failed to delete file: ${PROJECT_OUT_FILE}" 1 fi -if [ -f "${OUT_FILE}.sha256" ]; then - rm -f "${OUT_FILE}.sha256" || error_exit "failed to delete file: ${OUT_FILE}.sha256" 1 +if [ -f "${PROJECT_OUT_FILE}.sha256" ]; then + rm -f "${PROJECT_OUT_FILE}.sha256" || error_exit "failed to delete file: ${PROJECT_OUT_FILE}.sha256" 1 fi -if [ -f "${OUT_FILE}.sig" ]; then - rm -f "${OUT_FILE}.sig" || error_exit "failed to delete file: ${OUT_FILE}.sig" 1 +if [ -f "${PROJECT_OUT_FILE}.sig" ]; then + rm -f "${PROJECT_OUT_FILE}.sig" || error_exit "failed to delete file: ${PROJECT_OUT_FILE}.sig" 1 fi popd @@ -65,8 +62,8 @@ set +f popd pushd "${DEST_DIR}" -tar cvzf "${OUT_FILE}" -C ${TEMP_DIR} . || error_exit "failed to create archive: ${OUT_FILE}" 1 -create_file_validations "${OUT_FILE}" +tar cvzf "${PROJECT_OUT_FILE}" -C ${TEMP_DIR} . || error_exit "failed to create archive: ${PROJECT_OUT_FILE}" 1 +create_file_validations "${PROJECT_OUT_FILE}" popd -error_exit "created package ${FILE_PART}" 0 +error_exit "created package ${PROJECT_FILE_PART}" 0