-
Notifications
You must be signed in to change notification settings - Fork 0
52 lines (41 loc) · 1.56 KB
/
Copy pathrelease.yml
File metadata and controls
52 lines (41 loc) · 1.56 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
name: Release
on:
push:
tags:
- "v*"
permissions:
contents: write
jobs:
release:
name: Publish header-only release
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Package release artifacts
run: |
TAG="${GITHUB_REF_NAME}"
PKG="bitcal-${TAG}"
mkdir -p "dist/${PKG}/include"
cp -r include/bitcal "dist/${PKG}/include/"
cp LICENSE README.md README.zh-CN.md CHANGELOG.md CHANGELOG.zh-CN.md CMakeLists.txt "dist/${PKG}/"
cp -r cmake "dist/${PKG}/"
(cd dist && zip -r "${PKG}.zip" "${PKG}" >/dev/null)
(cd dist && tar czf "${PKG}.tar.gz" "${PKG}")
- name: Publish GitHub release
uses: softprops/action-gh-release@v2
with:
files: |
dist/*.zip
dist/*.tar.gz
body: |
## BitCal ${{ github.ref_name }}
BitCal is a header-only C++23 bit manipulation library. This release publishes the canonical source bundle only:
- `bitcal-${{ github.ref_name }}.zip`
- `bitcal-${{ github.ref_name }}.tar.gz`
**BitCal 4.x contract:** bit_block, bit_view/const_bit_view, and free algorithms. x86-64 is the primary optimization and validation target.
Included contents:
- `include/bitcal/`
- `cmake/`
- `CMakeLists.txt`
- License, README, and changelog files
Validation follows retained CI and docs verification paths. No platform-specific binary archives are produced.