You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Five real findings:
1. scripts/gen-version-h.sh: shebang said #!/usr/bin/env bash but the
script is pure POSIX sh. Switched to /usr/bin/env sh so it runs
in environments without bash. Updated the header comment to
describe the actual call sites (Makefile parse-time $(shell),
Android.mk, c89-lint, install-hooks pre-commit, msvc-check).
2. scripts/c89-lint.sh: now invokes the generator via \`sh\`, not
\`bash\` -- so the C89 lint hook works on POSIX-only environments.
3. jni/Android.mk: ndk-build doesn't go through the project Makefile,
so the parse-time version.h gen there didn't fire for local
Android builds (only c-cpp.yml's CI step had it). Added the
\`$(shell sh ... gen-version-h.sh ...)\` invocation to Android.mk.
Also dropped the now-redundant -DGIT_VERSION wiring (handled by
the generated header).
4. scripts/install-hooks.sh header comment: corrected dist/info/.info
path reference to "anything under dist/info/ or Makefile".
5. Makefile \`make benchmark\` target: -ldl is Linux-specific and was
hard-coded. macOS clang accepts it as a no-op but other linkers
may not. Now conditional via \`$(if $(filter Linux,$(uname)),-ldl)\`.
Local sanity: sh scripts/gen-version-h.sh runs clean, c89-lint passes,
make benchmark on Apple Silicon produces expected ~240 FPS without
spurious -ldl warnings.
Co-Authored-By: Claude Opus 4.7 <[email protected]>
0 commit comments