This was referenced
Jul 13, 2026Merged
Merged
th0ma7 added a commit to th0ma7/spksrc that referenced this pull request
Jul 13, 2026A curated, rationale-first log of notable framework (mk/) changes with a link to each pull request, so contributors can follow how and why the build framework evolves. Covers the recent build-variable standardization series (CONFIGURE_ARGS SynoCommunity#7279, COMPILE_ARGS/INSTALL_ARGS SynoCommunity#7280, BUILD_DIR SynoCommunity#7282) plus a few earlier milestones (mk reorganization, the meta cross-dependency environment, toolchain bootstrap and downloads). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
th0ma7 added a commit to th0ma7/spksrc that referenced this pull request
Jul 13, 2026A curated, rationale-first log of notable framework (mk/) changes with a link to each pull request, so contributors can follow how and why the build framework evolves. Covers the recent build-variable standardization series (CONFIGURE_ARGS SynoCommunity#7279, COMPILE_ARGS/INSTALL_ARGS SynoCommunity#7280, BUILD_DIR SynoCommunity#7282) plus a few earlier milestones (mk reorganization, the meta cross-dependency environment, toolchain bootstrap and downloads). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
th0ma7 added a commit to th0ma7/spksrc that referenced this pull request
Jul 13, 2026A curated, rationale-first log of notable framework (mk/) changes with a link to each pull request, so contributors can follow how and why the build framework evolves. Covers the recent build-variable standardization series (CONFIGURE_ARGS SynoCommunity#7279, COMPILE_ARGS/INSTALL_ARGS SynoCommunity#7280, BUILD_DIR SynoCommunity#7282) plus a few earlier milestones (mk reorganization, the meta cross-dependency environment, toolchain bootstrap and downloads). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
COMPILE_ARGS is a single package-facing variable for the compile step: - autotools / plain GNU make: it is the make command (replaces the old COMPILE_MAKE_OPTIONS, which is removed - it had no framework default); - CMake: appended as-is to 'cmake --build'; - Meson / Ninja: appended as-is to 'ninja'. All 32 packages that set COMPILE_MAKE_OPTIONS are converted. Docs updated. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Mirror of the COMPILE_ARGS change for the install step. INSTALL_ARGS is a single package-facing variable: - autotools / plain GNU make: it is the make command, replacing the old INSTALL_MAKE_OPTIONS (removed). Its default (install DESTDIR= prefix=) now lives inline in install_target, applied only when INSTALL_ARGS is unset; - CMake: appended as-is to 'cmake --install'; - Meson / Ninja: appended as-is to 'ninja install'. The inline default means install.mk only ever reads INSTALL_ARGS, never assigns it, so it does not collide with the INSTALL_ARGS already used by the python build paths (pip install / meson -Cinstall-args); python packages override INSTALL_TARGET and never reach this make path anyway. All 39 packages that set INSTALL_MAKE_OPTIONS are converted. Docs updated. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
haproxy, libvpx-1.14, libvpx-latest and postgis each overrode INSTALL_TARGET with a phony target whose sole recipe was a single 'make install <vars>'. With package-facing INSTALL_ARGS that override is redundant: express the install command directly and drop the custom target. Behaviour is identical (same make install invocation). Only packages whose custom install does nothing beyond 'make install' qualify; those doing extra work (he853's mkdir, mutt's file copy) or a manual install/cp because upstream has no 'make install' are left as-is. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
On the classic gnu-make build path only, default COMPILE_ARGS to -j$(NCPUS) and INSTALL_ARGS to the standard 'install DESTDIR= prefix=' command when a package leaves them unset. This lets package-specific make routines reference $(COMPILE_ARGS)/$(INSTALL_ARGS) directly and inherit sensible behaviour. Scoped with DEFAULT_ENV so the defaults never reach the CMake/Meson append (which keeps their own parallelism and install logic), and skipped when INSTALL_TARGET is a *_python_* target so the python pip/meson-python installers - which read INSTALL_ARGS themselves - are not disturbed. compile_target avoids a duplicate -j when COMPILE_ARGS already carries one. Since INSTALL_ARGS now always has a value on the make path, install_target drops its now-redundant inline default and just runs 'make $(INSTALL_ARGS)'. The native cmake/meson env files now declare DEFAULT_ENV (cmake / meson), mirroring the cross ones, so the guard also excludes native cmake/meson builds - otherwise their 'make install $(INSTALL_ARGS)' would pick up the default and run 'make install install DESTDIR= prefix='. Packages using the defaults: glibc-2.28 / glibc-latest drop their explicit -j; cairo-1.16's split src/util build inherits -j at compile and uses $(INSTALL_ARGS) at install. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
th0ma7 added a commit to th0ma7/spksrc that referenced this pull request
Jul 13, 2026A curated, rationale-first log of notable framework (mk/) changes with a link to each pull request, so contributors can follow how and why the build framework evolves. Covers the recent build-variable standardization series (CONFIGURE_ARGS SynoCommunity#7279, COMPILE_ARGS/INSTALL_ARGS SynoCommunity#7280, BUILD_DIR SynoCommunity#7282) plus a few earlier milestones (mk reorganization, the meta cross-dependency environment, toolchain bootstrap and downloads). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This was referenced
Jul 13, 2026Open
Open
th0ma7 deleted the standardize-compile-install-args branch
July 14, 2026 10:39th0ma7 added a commit to th0ma7/spksrc that referenced this pull request
Jul 14, 2026A curated, rationale-first log of notable framework (mk/) changes with a link to each pull request, so contributors can follow how and why the build framework evolves. Covers the recent build-variable standardization series (CONFIGURE_ARGS SynoCommunity#7279, COMPILE_ARGS/INSTALL_ARGS SynoCommunity#7280, BUILD_DIR SynoCommunity#7282) plus a few earlier milestones (mk reorganization, the meta cross-dependency environment, toolchain bootstrap and downloads). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Merged
6 tasks
hgy59 added a commit that referenced this pull request
Jul 27, 2026- adjust build to changes in #7280
hgy59 added a commit to hgy59/spksrc that referenced this pull request
Jul 29, 2026- adjustments for framework changes in SynoCommunity#7280 - rename patch from upgrade to downgrade - use identical patches for agent and hub