From e21d40148ae6801c0337c78026d75de6affc5cfd Mon Sep 17 00:00:00 2001 From: Sergey Nazarov Date: Fri, 26 Sep 2025 17:20:06 +0300 Subject: [PATCH 1/6] Run build.bat on windows --- .github/workflows/publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 4641cde..7365801 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -46,7 +46,7 @@ jobs: cmd: CC='gcc-9 -m32' CXX='g++-9 -m32' ./build.sh && mv supranational/blst/Linux/{amd64,x86} - platform: win32 os: windows-2022 - cmd: bash -c './build.sh' + cmd: ..\..\build.bat & bash -c './build.sh' steps: - uses: actions/checkout@v4 From 60280bd776027935e544bde0d8912c091cd362c2 Mon Sep 17 00:00:00 2001 From: Sergey Nazarov Date: Mon, 29 Sep 2025 10:58:40 +0300 Subject: [PATCH 2/6] wip --- .github/workflows/publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 7365801..c998b42 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -46,7 +46,7 @@ jobs: cmd: CC='gcc-9 -m32' CXX='g++-9 -m32' ./build.sh && mv supranational/blst/Linux/{amd64,x86} - platform: win32 os: windows-2022 - cmd: ..\..\build.bat & bash -c './build.sh' + cmd: bash -c './build.sh -D__BLST_PORTABLE__' steps: - uses: actions/checkout@v4 From 6496af5eda4c46fb3f304c54c4a229a81870ecef Mon Sep 17 00:00:00 2001 From: Sergey Nazarov Date: Mon, 29 Sep 2025 11:42:47 +0300 Subject: [PATCH 3/6] wip --- .github/workflows/publish.yml | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index c998b42..17e26af 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -46,7 +46,11 @@ jobs: cmd: CC='gcc-9 -m32' CXX='g++-9 -m32' ./build.sh && mv supranational/blst/Linux/{amd64,x86} - platform: win32 os: windows-2022 - cmd: bash -c './build.sh -D__BLST_PORTABLE__' + cmd: | + cmd /c ..\..\build.bat + mkdir supranational\blst\Windows\amd64 + swig -c++ -java -package supranational.blst -outdir supranational\blst -o blst_wrap.cpp ..\blst.swg + cl /nologo /MT /LD /O2 /W3 /wd4267 /EHsc /D_CRT_SECURE_NO_WARNINGS /I "$env:JAVA_HOME\include" /I ..\ /I "$env:JAVA_HOME\include\win32" blst_wrap.cpp blst.lib /link /OUT:supranational/blst/Windows/amd64/blst.dll steps: - uses: actions/checkout@v4 @@ -57,12 +61,14 @@ jobs: with: distribution: 'temurin' java-version: '11' - - if: ${{ matrix.extra-packages }} + - if: matrix.extra-packages != '' run: | sudo apt-get update sudo apt-get install -y ${{ matrix.extra-packages }} - - if: ${{ matrix.brew-packages }} + - if: matrix.brew-packages != '' run: brew install ${{ matrix.brew-packages }} + - if: matrix.os == 'windows-2022' + uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 - name: Build native image run: | cd bindings/java From 82a356cc12360be83eec95b22a2c3d3903545010 Mon Sep 17 00:00:00 2001 From: Sergey Nazarov Date: Wed, 8 Oct 2025 15:42:19 +0300 Subject: [PATCH 4/6] build release version --- .github/workflows/publish.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 17e26af..4458c68 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -4,8 +4,11 @@ on: workflow_dispatch: inputs: version: - description: Version + description: blst version default: 0.3.15 + suffix: + description: version suffix + default: -SNAPSHOT jobs: build-native: @@ -107,5 +110,5 @@ jobs: mkdir -p src/main/{resources,java}/supranational/blst mv artifacts/*.java src/main/java/supranational/blst mv artifacts/* src/main/resources/supranational/blst/ - mvn versions:set -DnewVersion=${{ inputs.version }}-SNAPSHOT -DgenerateBackupPoms=false + mvn versions:set -DnewVersion=${{ inputs.version }}${{ inputs.suffix }} -DgenerateBackupPoms=false mvn -B deploy From 325b8f58ec7f745471fe5926db7a3bf430b1c3e0 Mon Sep 17 00:00:00 2001 From: Sergey Nazarov Date: Thu, 19 Mar 2026 14:21:37 +0300 Subject: [PATCH 5/6] portable build --- .github/workflows/publish.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 4458c68..a603a99 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -29,8 +29,8 @@ jobs: include: - platform: darwin os: macos-14 - brew-packages: swig - cmd: ./build.sh + brew-packages: https://raw.githubusercontent.com/Homebrew/homebrew-core/d68a6bc0fa0fe84d4ab40a7df228a2b9bc48bc37/Formula/s/swig.rb + cmd: ./run.me - platform: darwin arch: x86-64 # https://github.com/openjdk/jdk/commit/5b1baa3d10d9ef3f07f133ece8a5f1d40311c74d#diff-6078ab1e47c6bb312b7f41e7539b4849189260c38f9b359c205a5aa0f633533dR278 @@ -38,15 +38,15 @@ jobs: - platform: linux os: ubuntu-22.04 extra-packages: gcc-9 g++-9 - cmd: CC=gcc-9 CXX=g++-9 ./build.sh + cmd: CC=gcc-9 CXX=g++-9 ./build.sh -D__BLST_PORTABLE__ - platform: linux arch: aarch64 extra-packages: gcc-9-aarch64-linux-gnu g++-9-aarch64-linux-gnu - cmd: CC=aarch64-linux-gnu-gcc-9 CXX=aarch64-linux-gnu-g++-9 ./build.sh && mv supranational/blst/Linux/{amd64,aarch64} + cmd: CC=aarch64-linux-gnu-gcc-9 CXX=aarch64-linux-gnu-g++-9 ./build.sh -D__BLST_PORTABLE__ && mv supranational/blst/Linux/{amd64,aarch64} - platform: linux arch: x86 extra-packages: gcc-9-multilib g++-9-multilib - cmd: CC='gcc-9 -m32' CXX='g++-9 -m32' ./build.sh && mv supranational/blst/Linux/{amd64,x86} + cmd: CC='gcc-9 -m32' CXX='g++-9 -m32' ./build.sh -D__BLST_PORTABLE__ && mv supranational/blst/Linux/{amd64,x86} - platform: win32 os: windows-2022 cmd: | @@ -56,11 +56,11 @@ jobs: cl /nologo /MT /LD /O2 /W3 /wd4267 /EHsc /D_CRT_SECURE_NO_WARNINGS /I "$env:JAVA_HOME\include" /I ..\ /I "$env:JAVA_HOME\include\win32" blst_wrap.cpp blst.lib /link /OUT:supranational/blst/Windows/amd64/blst.dll steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 with: repository: supranational/blst ref: v${{ inputs.version }} - - uses: actions/setup-java@v4 + - uses: actions/setup-java@v5 with: distribution: 'temurin' java-version: '11' From 7dd06ba4b8d04abd86290fb4c407ea4d6da832db Mon Sep 17 00:00:00 2001 From: Sergey Nazarov Date: Thu, 19 Mar 2026 16:18:33 +0300 Subject: [PATCH 6/6] build swig --- .github/workflows/publish.yml | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index a603a99..8dcebf6 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -29,14 +29,14 @@ jobs: include: - platform: darwin os: macos-14 - brew-packages: https://raw.githubusercontent.com/Homebrew/homebrew-core/d68a6bc0fa0fe84d4ab40a7df228a2b9bc48bc37/Formula/s/swig.rb + brew-packages: swig cmd: ./run.me - platform: darwin arch: x86-64 # https://github.com/openjdk/jdk/commit/5b1baa3d10d9ef3f07f133ece8a5f1d40311c74d#diff-6078ab1e47c6bb312b7f41e7539b4849189260c38f9b359c205a5aa0f633533dR278 cmd: CC='cc -target x86_64-apple-darwin20.1.0' CXX='c++ -std=c++11 -target x86_64-apple-darwin20.1.0' ./build.sh && mv supranational/blst/Mac/{aarch64,x86_64} - platform: linux - os: ubuntu-22.04 + os: ubuntu-24.04 extra-packages: gcc-9 g++-9 cmd: CC=gcc-9 CXX=g++-9 ./build.sh -D__BLST_PORTABLE__ - platform: linux @@ -56,10 +56,14 @@ jobs: cl /nologo /MT /LD /O2 /W3 /wd4267 /EHsc /D_CRT_SECURE_NO_WARNINGS /I "$env:JAVA_HOME\include" /I ..\ /I "$env:JAVA_HOME\include\win32" blst_wrap.cpp blst.lib /link /OUT:supranational/blst/Windows/amd64/blst.dll steps: + - if: matrix.platform == 'darwin' + run: echo "SDKROOT=$(xcrun --sdk macosx --show-sdk-path)" >> $GITHUB_ENV + - if: matrix.brew-packages != '' + run: brew install ${{ matrix.brew-packages }} + - run: swig -version - uses: actions/checkout@v6 with: repository: supranational/blst - ref: v${{ inputs.version }} - uses: actions/setup-java@v5 with: distribution: 'temurin' @@ -68,8 +72,6 @@ jobs: run: | sudo apt-get update sudo apt-get install -y ${{ matrix.extra-packages }} - - if: matrix.brew-packages != '' - run: brew install ${{ matrix.brew-packages }} - if: matrix.os == 'windows-2022' uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 - name: Build native image