* macOS: package the game as a proper SpaghettiKart.app bundle
Turns the bare Spaghettify executable into a self-contained SpaghettiKart.app:
- cmake/macos/apple_bundle.cmake: bundle metadata (using the existing
Info.plist, which already described a bundle), app icon, runtime resources
(config.yml, yamls, meta, spaghetti.o2r) into Contents/Resources, dylib
relinking for local Homebrew builds (no-op with static vcpkg deps), and
ad-hoc codesigning so the app launches without 'damaged app' warnings
- App icon: on Xcode 26+ the Icon Composer package (SpaghettiKartIcon.icon,
drawn from the existing HM ship-kart icon.png art) compiles with actool
into an Assets.car, giving the native Liquid Glass look on macOS 26+, plus
a flattened icns for older systems; older Xcode falls back to the previous
sips/iconutil flat icon. Supersedes the CreateOSXIcons target.
- Game.cpp: default SHIP_HOME to ~/Library/Application Support/SpaghettiKart
on macOS so first-run extraction, saves, config, and mods land there
instead of scattering into the user's home folder; a user-set SHIP_HOME
still wins
- Info.plist: NSHighResolutionCapable for proper Retina rendering
- CI: mac jobs now ship the .app (ditto zip so the executable bit survives
artifact upload)
- the yamls-next-to-exe copy is scoped to non-Darwin; on macOS those files
live in Contents/Resources instead
* macOS: ship prebuilt icon artifacts instead of compiling them at build time
Commits the compiled Assets.car (Liquid Glass icon for macOS 26+) and the
flattened SpaghettiKart.icns, both built from the in-repo Icon Composer
package. The build now just copies them into the bundle, which removes the
actool machinery and the Xcode 26 requirement entirely: every build on any
machine, including CI, gets the real icon.
Also adds a staleness guard: the artifacts carry a hash stamp of the
icon.png they were made from, and if icon.png ever changes without them
being regenerated, the build automatically generates a flat icns from the
current icon.png instead, so updating the logo never requires any macOS
work and an outdated icon can never ship. Regeneration steps are documented
in apple_bundle.cmake.
* Rename the icon layer to ship-kart-layer.png
Group 2.png was the design tool's default layer name; name it for what it
is. Verified the Icon Composer package still compiles with actool after the
rename; the committed Assets.car is unaffected (compiled, self-contained).
---------
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* some start of refactor
* Update SetFlags.cmake
* Update SetCmakeVar.cmake
* Update SetFlags.cmake
* Fix error int-convertion
* more refactor
* clean up include and source file
* fix link of lib
* fix a warning
* fix include in src/actors
* fix include in src/debug
* fix include in src/ending
* fix include in src/engine/actors
* fix include in src/engine/cameras
* fix include in src/engine/editor
* fix include in src/engine/objects
* fix include in src/engine/tracks
* fix include in src/port/ui
* fix include in src/racing
* fix include in src/engine/vehicles
* fix include in subfolder of src/engine
* fix include in src/engine
* fix include in src/enhancements
* fix include in src
* fix switch
* invert common and findlib
* Update SetFlags.cmake
* clean up some workflow
* some splification
* Update build.sh
* Update Game.h
* add header back
* Delete test_check.cmake
* continue
* Update common.cmake
* cmake: Correctly set PROJECT_VERSION
This needs CI to adjust
Signed-off-by: Thomas Rohloff <v10lator@myway.de>
* Log version
Signed-off-by: Thomas Rohloff <v10lator@myway.de>
* Show version and debug state
Signed-off-by: Thomas Rohloff <v10lator@myway.de>
* Log debug mode toggling
Signed-off-by: Thomas Rohloff <v10lator@myway.de>
* Finish version string
Signed-off-by: Thomas Rohloff <v10lator@myway.de>
* Update CMakeLists.txt
* Update CMakeLists.txt
* Try to fix execute_process() from within CI
Signed-off-by: Thomas Rohloff <v10lator@myway.de>
* CI: Checkout with tags
Signed-off-by: Thomas Rohloff <v10lator@myway.de>
* Fix PR CIs, too
Signed-off-by: Thomas Rohloff <v10lator@myway.de>
* Add config button for version
Signed-off-by: Thomas Rohloff <v10lator@myway.de>
---------
Signed-off-by: Thomas Rohloff <v10lator@myway.de>
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* add vcpkg support for installing dependencies
* Change macos CI to use vcpkg for dependencies
* actually fix CI for macos
* fix SDL_net linking
SDL_net was being linked twice
* update baseline