From 51f2b24daa71dc8182740a35521ac156083d7087 Mon Sep 17 00:00:00 2001 From: WerWolv Date: Mon, 18 Jul 2022 20:02:12 +0200 Subject: [PATCH] git: Create new ImHex-Patterns release on new ImHex release --- .github/workflows/build.yml | 14 +++++++++----- .github/workflows/release.yml | 33 ++++++++++++++++++++++----------- CMakeLists.txt | 1 + cmake/build_helpers.cmake | 5 +++++ 4 files changed, 37 insertions(+), 16 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 7ae9d1a46..f06325c4f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -96,6 +96,7 @@ jobs: -DCMAKE_OBJC_COMPILER_LAUNCHER=ccache \ -DCMAKE_OBJCXX_COMPILER_LAUNCHER=ccache \ -DRUST_PATH="$USERPROFILE/.cargo/bin/" \ + -DIMHEX_PATTERNS_PULL_MASTER=ON \ .. mingw32-make -j4 install cpack @@ -163,6 +164,7 @@ jobs: -DCMAKE_CXX_COMPILER_LAUNCHER=ccache \ -DCMAKE_OBJC_COMPILER_LAUNCHER=ccache \ -DCMAKE_OBJCXX_COMPILER_LAUNCHER=ccache \ + -DIMHEX_PATTERNS_PULL_MASTER \ .. make -j4 package @@ -227,14 +229,15 @@ jobs: cd build CC=gcc-12 CXX=g++-12 cmake \ -DCMAKE_BUILD_TYPE=$BUILD_TYPE \ - -DCMAKE_INSTALL_PREFIX="/usr" \ + -DCMAKE_INSTALL_PREFIX="/usr" \ -DCMAKE_C_COMPILER_LAUNCHER=ccache \ -DCMAKE_CXX_COMPILER_LAUNCHER=ccache \ -DCMAKE_C_FLAGS="-fuse-ld=lld" \ -DCMAKE_CXX_FLAGS="-fuse-ld=lld" \ - -DCMAKE_OBJC_COMPILER_LAUNCHER=ccache \ - -DCMAKE_OBJCXX_COMPILER_LAUNCHER=ccache \ + -DCMAKE_OBJC_COMPILER_LAUNCHER=ccache \ + -DCMAKE_OBJCXX_COMPILER_LAUNCHER=ccache \ -DRUST_PATH="$HOME/.cargo/bin/" \ + -DIMHEX_PATTERNS_PULL_MASTER=ON \ .. make -j 4 install DESTDIR=AppDir @@ -328,14 +331,15 @@ jobs: run: | mkdir -p build cd build - CC=gcc CXX=g++ cmake \ + CC=gcc CXX=g++ cmake \ -DCMAKE_BUILD_TYPE=$BUILD_TYPE \ - -DCMAKE_INSTALL_PREFIX="/usr" \ + -DCMAKE_INSTALL_PREFIX="/usr" \ -DCMAKE_C_COMPILER_LAUNCHER=ccache \ -DCMAKE_CXX_COMPILER_LAUNCHER=ccache \ -DCMAKE_C_FLAGS="-fuse-ld=lld" \ -DCMAKE_CXX_FLAGS="-fuse-ld=lld" \ -DRUST_PATH="$HOME/.cargo/bin/" \ + -DIMHEX_PATTERNS_PULL_MASTER \ .. make -j 4 install DESTDIR=installDir diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index f62ed8fae..fe7a3b9c7 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -29,7 +29,7 @@ jobs: exit 1 fi - echo "version=$project_version" >> $GITHUB_ENV + echo "IMHEX_VERSION=$project_version" >> $GITHUB_ENV - name: 🗜️ Create tarball from sources with dependencies run: tar --exclude-vcs -czvf Full.Sources.tar.gz ImHex @@ -58,7 +58,7 @@ jobs: done - name: 🟩 Rename Windows Portable Zip - run: mv "Windows Portable.zip" imhex-${{env.version}}-Windows-Portable.zip + run: mv "Windows Portable.zip" imhex-${{env.IMHEX_VERSION}}-Windows-Portable.zip - name: ⬆️ Upload everything to release uses: softprops/action-gh-release@v1 @@ -69,17 +69,17 @@ jobs: run: | cp ImHex/dist/Arch/PKGBUILD . - hash=`md5sum imhex-${{env.version}}-ArchLinux.pkg.tar.zst | cut -d ' ' -f 1` + hash=`md5sum imhex-${{env.IMHEX_VERSION}}-ArchLinux.pkg.tar.zst | cut -d ' ' -f 1` - sed -i 's/%version%/${{env.version}}/g' PKGBUILD + sed -i 's/%version%/${{env.IMHEX_VERSION}}/g' PKGBUILD sed -i "s/(SKIP)/($hash)/g" PKGBUILD - name: ⬆️ Publish AUR package # I couldn't make the condition in the env directly for some reason env: - MY_KEY: ${{ secrets.AUR_SSH_PRIVATE_KEY }} - if: "${{ env.MY_KEY != '' }}" + AUR_SSH_PRIVATE_KEY: ${{ secrets.AUR_SSH_PRIVATE_KEY }} + if: "${{ env.AUR_SSH_PRIVATE_KEY != '' }}" uses: KSXGitHub/github-actions-deploy-aur@v2 with: @@ -88,14 +88,25 @@ jobs: commit_username: iTrooz commit_email: itrooz@protonmail.com ssh_private_key: ${{ secrets.AUR_SSH_PRIVATE_KEY }} - commit_message: Bump to version ${{env.version}} + commit_message: Bump to version ${{env.IMHEX_VERSION}} ssh_keyscan_types: rsa,dsa,ecdsa,ed25519 - - uses: ncipollo/release-action@v1 + - name: 🎫 Create PatternLanguage release + uses: ncipollo/release-action@v1 env: - MY_KEY: ${{ secrets.RELEASE_TOKEN }} - if: "${{ env.MY_KEY != '' }}" + RELEASE_TOKEN: ${{ secrets.RELEASE_TOKEN }} + if: "${{ env.RELEASE_TOKEN != '' }}" with: - tag: ImHex-v${{env.version}} + tag: ImHex-v${{env.IMHEX_VERSION}} repo: PatternLanguage token: ${{ secrets.RELEASE_TOKEN }} + + - name: 🎫 Create ImHex-Patterns release + uses: ncipollo/release-action@v1 + env: + RELEASE_TOKEN: ${{ secrets.RELEASE_TOKEN }} + if: "${{ env.RELEASE_TOKEN != '' }}" + with: + tag: ImHex-v${{env.IMHEX_VERSION}} + repo: ImHex-Patterns + token: ${{ secrets.RELEASE_TOKEN }} diff --git a/CMakeLists.txt b/CMakeLists.txt index 47ab66faf..7cba0c6b2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -11,6 +11,7 @@ set(CMAKE_MODULE_PATH "${IMHEX_BASE_FOLDER}/cmake/modules") include("${IMHEX_BASE_FOLDER}/cmake/build_helpers.cmake") option(IMHEX_OFFLINE_BUILD "Enable offline build" OFF) +option(IMHEX_PATTERNS_PULL_MASTER "Download latest files from master branch of the ImHex-Patterns repo" OFF) # Make sure project is configured correctly setDefaultBuiltTypeIfUnset() diff --git a/cmake/build_helpers.cmake b/cmake/build_helpers.cmake index 366aba891..245f9871b 100644 --- a/cmake/build_helpers.cmake +++ b/cmake/build_helpers.cmake @@ -291,6 +291,11 @@ endmacro() function(downloadImHexPatternsFiles dest) if (NOT IMHEX_OFFLINE_BUILD) + if (IMHEX_PATTERNS_PULL_MASTER) + set(PATTERNS_BRANCH master) + else () + set(PATTERNS_BRANCH ImHex-v${IMHEX_VERSION}) + FetchContent_Declare( imhex_patterns GIT_REPOSITORY https://github.com/WerWolv/ImHex-Patterns.git