@@ -5,24 +5,24 @@ This document describes how GPUBench builds and publishes releases for different
55## Release Architecture
66
77GPUBench uses a hybrid release process:
8- 1 . ** Windows Binaries** : Built and published automatically in the cloud via GitHub Actions.
8+ 1 . ** Windows & macOS Binaries** : Built and published automatically in the cloud via GitHub Actions.
992 . ** Linux Packages** : Built locally on the development machine and uploaded manually using the GitHub CLI (` gh ` ).
1010
1111---
1212
13- ## 1. Windows Releases (Automated)
13+ ## 1. Windows & macOS Releases (Automated)
1414
15- Windows binaries are handled by the GitHub Actions workflow in ` .github/workflows/release.yml ` .
15+ Windows and macOS binaries are handled by the GitHub Actions workflow in ` .github/workflows/release.yml ` .
1616
17- - ** Trigger** : Pushing a tag matching ` v* ` (e.g. ` v1.1.0.1 ` ).
17+ - ** Trigger** : Pushing a tag matching ` v* ` (e.g. ` v1.1.0.2 ` ).
1818- ** Generated Assets** :
19- - ` GPUBench-*-win64.zip ` (Portable ZIP)
20- - ` GPUBench-*-win64.exe ` (NSIS Installer)
19+ - Windows: ` GPUBench-*-win64.zip ` and ` GPUBench-*-win64.exe `
20+ - macOS: ` GPUBench-*-Darwin.dmg ` and ` GPUBench-*-Darwin.tar.gz `
2121- ** Workflow** :
2222 1 . Commit changes and update the ` BUILD_NUMBER ` in ` CMakeLists.txt ` .
23- 2 . Tag the commit (e.g., ` git tag v1.1.0.1 ` ).
24- 3 . Push the tag to remote (` git push origin v1.1.0.1 ` ).
25- 4 . The GitHub Actions runner will automatically build, package, and publish the Windows binaries to the release page.
23+ 2 . Tag the commit (e.g., ` git tag v1.1.0.2 ` ).
24+ 3 . Push the tag to remote (` git push origin v1.1.0.2 ` ).
25+ 4 . The GitHub Actions runner will automatically build, package, and publish the Windows and macOS binaries to the release page.
2626
2727---
2828
@@ -55,38 +55,9 @@ Upload the generated assets directly to the existing GitHub release page using t
5555
5656``` bash
5757# Upload assets to the corresponding tag
58- gh release upload v1.1.0.1 \
59- build/GPUBench-1.1.0.1-Linux.deb \
60- build/GPUBench-1.1.0.1-Linux.rpm \
61- build/GPUBench-1.1.0.1-Linux.tar.gz \
62- --clobber
63- ```
64-
65- ---
66-
67- ## 3. macOS Releases (Local macOS Machine)
68-
69- If you compile for macOS, those packages (DMG, Tarball) are built locally on a macOS machine and uploaded manually using the GitHub CLI.
70-
71- ### Step 1: Build and Package Locally
72- ``` bash
73- # Navigate to the build directory
74- cd build
75-
76- # Configure and compile release targets
77- cmake .. -DCMAKE_BUILD_TYPE=Release
78- cmake --build . --parallel $( sysctl -n hw.ncpu)
79-
80- # Generate DMG installer and tarball
81- cpack -G DragNDrop
82- cpack -G TGZ
83- ```
84-
85- ### Step 2: Upload to GitHub Release
86- ``` bash
87- # Upload assets to the corresponding tag
88- gh release upload v1.1.0.1 \
89- build/GPUBench-1.1.0.1-Darwin.dmg \
90- build/GPUBench-1.1.0.1-Darwin.tar.gz \
58+ gh release upload v1.1.0.2 \
59+ build/GPUBench-1.1.0.2-Linux.deb \
60+ build/GPUBench-1.1.0.2-Linux.rpm \
61+ build/GPUBench-1.1.0.2-Linux.tar.gz \
9162 --clobber
9263```
0 commit comments