Add the missing build stuff
Some checks failed
Build / Build openSUSE (leap:15.6) (push) Has been cancelled
Build / Build openSUSE (leap:16.0) (push) Has been cancelled
Build / Build openSUSE (tumbleweed) (push) Has been cancelled
Build / Build Fedora (42) (push) Has been cancelled
Build / Build Fedora (43) (push) Has been cancelled
Build / Build Fedora (44) (push) Has been cancelled
Build / Build OpenMandriva (cooker) (push) Has been cancelled
Build / Build Mageia (9) (push) Has been cancelled
Build / Build Debian (bookworm) (push) Has been cancelled
Build / Build Debian (forky) (push) Has been cancelled
Build / Build Debian (trixie) (push) Has been cancelled
Build / Build Ubuntu (noble) (push) Has been cancelled
Build / Build Ubuntu (questing) (push) Has been cancelled
Build / Build Ubuntu (resolute) (push) Has been cancelled
Build / Upload Ubuntu PPA (noble) (push) Has been cancelled
Build / Upload Ubuntu PPA (questing) (push) Has been cancelled
Build / Upload Ubuntu PPA (resolute) (push) Has been cancelled
Build / Build FreeBSD (push) Has been cancelled
Build / Build OpenBSD (push) Has been cancelled
Build / Build macOS Public (release, macos-15) (push) Has been cancelled
Build / Build macOS Public (release, macos-15-intel) (push) Has been cancelled
Build / Build macOS Private (release, macos-arm64) (push) Has been cancelled
Build / Build Windows MinGW (i686, debug) (push) Has been cancelled
Build / Build Windows MinGW (i686, release) (push) Has been cancelled
Build / Build Windows MinGW (x86_64, debug) (push) Has been cancelled
Build / Build Windows MinGW (x86_64, release) (push) Has been cancelled
Build / Build Windows MSVC (arm64, debug, arm64 debug, windows-11-arm) (push) Has been cancelled
Build / Build Windows MSVC (arm64, release, arm64 release, windows-11-arm) (push) Has been cancelled
Build / Build Windows MSVC (x86, debug, x86 debug, windows-2022) (push) Has been cancelled
Build / Build Windows MSVC (x86, release, x86 release, windows-2022) (push) Has been cancelled
Build / Build Windows MSVC (x86_64, debug, x86_64 debug, windows-2022) (push) Has been cancelled
Build / Build Windows MSVC (x86_64, release, x86_64 release, windows-2022) (push) Has been cancelled
Build / Upload (push) Has been cancelled
Build / Attach to release (push) Has been cancelled

This commit is contained in:
2026-01-22 15:24:11 +09:00
parent ef1ac290cd
commit 010e18ba91
5 changed files with 524 additions and 1 deletions

64
build/README.md Normal file
View File

@@ -0,0 +1,64 @@
# Build helper scripts
This `build/` directory contains **helper scripts and notes** for building Strawberry.
- It is **not** intended to be your CMake build output directory.
- Recommended CMake build output directories: `cmake-build/`, `build-release/`, etc.
## macOS
- Install dependencies via Homebrew:
```bash
./build/macos/install_brew_deps.sh
```
- Build Strawberry:
```bash
./build/macos/build_app.sh --release
open ./cmake-build-macos-release/strawberry.app
```
## macOS signing + notarization (Developer ID distribution)
This repo includes `build/macos/build_sign_notarize.sh` to automate:
- build → (optional deploy) → codesign → notarize → staple → verify
### One-time setup (Apple Developer)
- **Install certificates**:
- In the Apple Developer portal, create (or download) a **Developer ID Application** certificate.
- Install it into your login keychain (Xcode can manage this via **Xcode → Settings → Accounts**).
- **Provisioning profiles**:
- For **Developer ID distribution (outside the Mac App Store)**, you typically **do not need a provisioning profile**.
- You *do* need profiles if you are building a **Mac App Store**-signed app (not what this repos scripts target).
- **Notarization credentials**:
- Create a `notarytool` keychain profile (recommended) so you dont have to pass secrets on the command line:
```bash
xcrun notarytool store-credentials \
--keychain-profile "<profile-name>" \
--apple-id "<your-apple-id>" \
--team-id "<TEAMID>" \
--password "<app-specific-password>"
```
### Listing whats installed locally
Run with no args to list local signing identities + notarytool profiles:
```bash
./build/macos/build_sign_notarize.sh
```
### Build + sign + notarize
```bash
./build/macos/build_sign_notarize.sh --run --release --clean --deploy \
--identity "Developer ID Application: Your Name (TEAMID)" \
--notary-profile "<profile-name>"
```