Skip to content

Fix fresh-checkout builds - #1

Open
onionviolet wants to merge 3 commits into
Selectively11:mainfrom
onionviolet:codex/pr-build-fix
Open

Fix fresh-checkout builds#1
onionviolet wants to merge 3 commits into
Selectively11:mainfrom
onionviolet:codex/pr-build-fix

Conversation

@onionviolet

Copy link
Copy Markdown

What this fixes

Fresh checkouts could not reliably build the native library or config app without
manually preparing dependencies and package paths.

This change:

  • centralizes Dobby setup in the Makefile and pins its revision;
  • rebuilds and relinks Dobby when the recorded revision is stale;
  • removes duplicate dependency setup from scripts/build.sh;
  • declares the Swift test target only when its local test sources exist; and
  • drops an SDK-only corner treatment so the config app builds with the current
    toolchain.

It does not change injection, hook, or feature behavior.

Testing

Run from a clean detached worktree based on current upstream main:

  • swift package resolve --package-path macsteam-app passed and resolved Sparkle 2.9.6.
  • make test passed by taking the repository's existing clean-checkout no-local-tests path.
  • make -j2 passed and produced an ad-hoc-signed universal out/macsteam.dylib.
  • bash macsteam-app/make_app.sh passed and produced an ad-hoc-signed arm64 app bundle.
  • A deliberately stale build/.dobby-revision caused Dobby to rebuild and the arm64
    library to relink.
  • git diff --check upstream/main...HEAD passed.

Known upstream warnings remain: Dobby's CMake deprecation/assert warnings and the
existing dynamic Selector warning in AppDelegate.swift.

AI assistance

I am the sole human contributor to this pull request. AI assisted substantially through
OpenAI Codex, including GPT-5.6 Sol for an independent final-diff and test review. The
review found two build-cache and empty-test-target problems, which were fixed before this
PR was opened. The clean-build commands and results above were then rerun. I have not
added any AI identity as a commit author or co-author.

This PR addresses fresh checkouts failing before the project and config app can build.
I'm happy to adapt the implementation or have portions rewritten to better fit the
project.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant