From b53fdd2fea75aadcebf87bcc5bc70210f7519a56 Mon Sep 17 00:00:00 2001 From: Jan Lindemann Date: Thu, 9 Jul 2026 06:57:03 +0200 Subject: [PATCH] rules.mk / defs.mk: Disable BUILD_MAKEDIR BUILD_MAKEDIR is a variable which exists for consistency's sake. On the other hand, nor jw-pkg nor any downstream package ever copies makefile snippets during build time. The rule introduced by BUILD_MAKEDIR is quite costly in terms of performance and makes caching harder to understand. This commit disables the variable. Signed-off-by: Jan Lindemann --- make/defs.mk | 3 ++- make/rules.mk | 2 ++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/make/defs.mk b/make/defs.mk index 5127b63b..2e497b86 100644 --- a/make/defs.mk +++ b/make/defs.mk @@ -405,7 +405,8 @@ INSTALLED_INIT += $(addprefix $(INSTALL_INITDIR)/,$(INIT_SCRIPTS)) # -- MAKE INSTALLATION_FILE_TYPES += MAKE -BUILD_MAKEDIR = $(TOPDIR)/make +#BUILD_MAKEDIR is currently not used anywhere and costs performance. Disabled for the time being. +#BUILD_MAKEDIR = $(TOPDIR)/make MKFILES += $(filter-out pckg-defs.mk pckg-deps.mk local.mk,$(filter-out $(DONT_INSTALL),$(wildcard *.mk))) INSTALL_MAKEDIR ?= $(PREFIX)/make INSTALLED_MAKE += $(addprefix $(INSTALL_MAKEDIR)/,$(MKFILES)) diff --git a/make/rules.mk b/make/rules.mk index bbdadda3..0179fbbb 100644 --- a/make/rules.mk +++ b/make/rules.mk @@ -390,12 +390,14 @@ $$(TOPDIR)/dir_install_$(1).done: mkdir -p $$(INSTALL_$(1)DIR) touch $$@ +ifneq ($$(BUILD_$(1)DIR),) $$(BUILD_$(1)DIR)/%: % | $$(TOPDIR)/dir_build_$(1).done $(Q)if [ ! $$< -ef $$@ -a "`echo $$< | $(SED) 's/\..*//'`" != local ]; then \ echo $(BIN_INSTALL) -D -p -m $($(1)MODE) $$< $$@ ;\ $(BIN_INSTALL) -D -p -m $($(1)MODE) $$< $$@ ;\ $(RM) -f $$(TOPDIR)/dirs-*.done ;\ fi +endif $$(INSTALL_$(1)DIR): ifeq ($(PACKAGE_INSTALL_DIR),true)