Merge pull request 'Add workflow that publishes docs/wiki to the Gitea wiki' (#2) from docs/wiki-and-dist-build into main
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Successful in 6s

Reviewed-on: #2
This commit was merged in pull request #2.
This commit is contained in:
2026-10-19 19:33:19 +02:00
2 changed files with 86 additions and 0 deletions
+38
View File
@@ -0,0 +1,38 @@
# Publish the project's wiki pages to the git host's wiki.
#
# On a push to main that changes docs/wiki/, this workflow calls the reusable
# workflow of TirSystem/github-action, which copies the Markdown pages of
# docs/wiki/ to the wiki of this repository (framework/process/wiki.md says
# what the folder holds: English and the PO language as a minimum).
#
# INSTALLING THIS FILE IS THE OPT-IN. There is no marker file. A project that
# does not copy it publishes nothing.
#
# Copy it to .gitea/workflows/publish-wiki.yml. Then:
# 1. Create the secret TOKEN_FOR_GITEA_WIKI in the organization of the
# repository: a Gitea token with scope write:repository for a user that
# can write this repository (see guides/credentials.md of github-action).
# 2. Enable the wiki in the repository settings.
# 3. Keep @v2, or pin the exact release tag together with tools-ref.
# A runner must be registered for the repository (or its organization).
#
# prune: "true" deletes wiki pages that are not in docs/wiki/, so the wiki
# always equals the folder. Leave it "false" to keep hand-written pages.
name: Publish wiki
on:
push:
branches: [ main ]
paths:
- "docs/wiki/**"
workflow_dispatch:
jobs:
wiki:
uses: TirSystem/github-action/.gitea/workflows/publish-wiki-pages.yml@v2
with:
wiki_dir: docs/wiki
prune: "true"
secrets:
TOKEN_FOR_GITEA_WIKI: ${{ secrets.TOKEN_FOR_GITEA_WIKI }}
+48
View File
@@ -1,2 +1,50 @@
# prime-numbers-c
Lists every prime number from 0 to 1,000,000 and reports how long the search
took. It shows how fast a CPU is, but the result depends on how the program is
written: algorithm, instruction set (here AVX2), compiler and flags.
Example result on a 13th Gen Intel(R) Core(TM) i5-13600K:
```text
Found 78498 primes from 0 to 1000000 in 20.977 ms
```
## Build and run
Needs `gcc` (Linux, or MinGW-w64 / MSYS2 on Windows), `make` and a CPU with AVX2.
```bash
make
```
```bash
make run
```
```bash
make clean
```
The executable is built into `dist/`. The primes go to standard output and the
timing line to standard error, so this saves the list and still shows the time:
```bash
./dist/prime_avx2 > primes.txt
```
## Layout
| Path | Content |
| --- | --- |
| `src/prime_avx2.c` | the program |
| `Makefile` | build rules |
| `docs/wiki/` | wiki pages, published to the Gitea wiki by `.gitea/workflows/publish-wiki.yml` |
## Documentation
See the wiki: Description, Results and Build and run.
## License
See [LICENSE](LICENSE).