@@ -85,14 +85,14 @@ jobs:
8585 LATEST_TAG=$(git tag -l 'v*' --sort=-version:refname | head -n1 || true)
8686 if [[ -n "$LATEST_TAG" ]]; then
8787 TAG_VERSION="${LATEST_TAG#v}"
88- if [[ "$NEW_VERSION" == "$TAG_VERSION" ]]; then
88+ if [[ "$NEW_VERSION" == "$TAG_VERSION" && "$EVENT_NAME" != "workflow_dispatch" ]]; then
8989 echo "Version $NEW_VERSION already released as $LATEST_TAG, skipping"
9090 echo "should_release=false" >> "$GITHUB_OUTPUT"
9191 echo "version=$NEW_VERSION" >> "$GITHUB_OUTPUT"
9292 exit 0
9393 fi
9494 HIGHER=$(printf '%s\n%s' "$TAG_VERSION" "$NEW_VERSION" | sort -V | tail -1)
95- if [[ "$HIGHER" == "$TAG_VERSION" ]]; then
95+ if [[ "$HIGHER" == "$TAG_VERSION" && "$NEW_VERSION" != "$TAG_VERSION" ]]; then
9696 echo "::error::Version $NEW_VERSION is lower than existing release $TAG_VERSION"
9797 exit 1
9898 fi
@@ -116,8 +116,13 @@ jobs:
116116 run : |
117117 git config user.name "github-actions[bot]"
118118 git config user.email "github-actions[bot]@users.noreply.github.com"
119- git tag -a "v${{ needs.version-check.outputs.version }}" -m "Release v${{ needs.version-check.outputs.version }}"
120- git push origin "v${{ needs.version-check.outputs.version }}"
119+ TAG="v${{ needs.version-check.outputs.version }}"
120+ if git rev-parse "$TAG" >/dev/null 2>&1; then
121+ echo "Tag $TAG already exists, skipping"
122+ else
123+ git tag -a "$TAG" -m "Release $TAG"
124+ git push origin "$TAG"
125+ fi
121126
122127 - name : ' 📦 Create GitHub Release'
123128 uses : softprops/action-gh-release@v2
@@ -143,18 +148,20 @@ jobs:
143148 - name : ' 📦 Install dependencies'
144149 run : |
145150 pacman -Syu --noconfirm
146- pacman -S --noconfirm cmake make gcc flex bison pkgconf gtest \
151+ pacman -S --noconfirm cmake make gcc flex bison pkgconf \
147152 cairo pango fontconfig freetype2 harfbuzz libxml2 zlib libpng libjpeg-turbo \
153+ mesa libx11 python \
148154 git
149155
150156 - name : ' 🛠️ Configure to generate PKGBUILD'
151157 run : |
152- cmake -B build -DCMAKE_BUILD_TYPE=Release -DAEONGUI_BACKEND=Cairo
158+ cmake -B build -DCMAKE_BUILD_TYPE=Release -DAEONGUI_BACKEND=Cairo -DBUILD_UNIT_TESTS=OFF
153159 cp build/PKGBUILD-arch PKGBUILD
154160
155161 - name : ' 📦 Build package'
156162 run : |
157163 useradd -m builder
164+ echo 'builder ALL=(ALL) NOPASSWD: ALL' > /etc/sudoers.d/builder
158165 chown -R builder: .
159166 su builder -c "makepkg -s --noconfirm --skippgpcheck"
160167
@@ -199,21 +206,19 @@ jobs:
199206 bison
200207 base-devel
201208 pacboy : >-
202- toolchain:p
203209 cmake:p
204210 make:p
205211 cairo:p
206212 pango:p
207213 libxml2:p
208- gtest:p
209214 pkg-config:p
210215 zlib:p
211216 libpng:p
212217 libjpeg-turbo:p
213218
214219 - name : ' 🛠️ Configure to generate PKGBUILD'
215220 run : |
216- cmake -G "MSYS Makefiles" -B build -DCMAKE_BUILD_TYPE=Release -DAEONGUI_BACKEND=Cairo
221+ cmake -G "MSYS Makefiles" -B build -DCMAKE_BUILD_TYPE=Release -DAEONGUI_BACKEND=Cairo -DBUILD_UNIT_TESTS=OFF
217222 cp build/PKGBUILD-msys2 PKGBUILD
218223
219224 - name : ' 📦 Build package'
@@ -245,7 +250,7 @@ jobs:
245250 run : |
246251 export PATH="/opt/homebrew/opt/bison/bin:$PATH"
247252 export PKG_CONFIG_PATH="/opt/homebrew/lib/pkgconfig:$PKG_CONFIG_PATH"
248- cmake -B build -DCMAKE_BUILD_TYPE=Release -DAEONGUI_BACKEND=Cairo
253+ cmake -B build -DCMAKE_BUILD_TYPE=Release -DAEONGUI_BACKEND=Cairo -DBUILD_UNIT_TESTS=OFF
249254
250255 - name : ' 🔑 Compute source tarball sha256'
251256 id : sha
@@ -287,10 +292,11 @@ jobs:
287292 run : |
288293 sudo apt-get update
289294 sudo apt-get install -y cmake build-essential pkg-config libcairo-dev \
290- libpango1.0-dev libxml2-dev zlib1g-dev libpng-dev libjpeg-dev
295+ libpango1.0-dev libxml2-dev zlib1g-dev libpng-dev libjpeg-dev \
296+ libgl-dev libx11-dev
291297
292298 - name : ' 🛠️ Configure to generate port files'
293- run : cmake -B build -DCMAKE_BUILD_TYPE=Release -DAEONGUI_BACKEND=Cairo
299+ run : cmake -B build -DCMAKE_BUILD_TYPE=Release -DAEONGUI_BACKEND=Cairo -DBUILD_UNIT_TESTS=OFF
294300
295301 - name : ' 🔑 Compute source SHA512'
296302 id : sha
0 commit comments