iproute2: Avoid unnecessary package rebuilds
authorEneas U de Queiroz <cotequeiroz@gmail.com>
Thu, 21 Oct 2021 13:35:41 +0000 (10:35 -0300)
committerFelix Fietkau <nbd@nbd.name>
Mon, 1 Nov 2021 19:18:55 +0000 (20:18 +0100)
Build the tc-mod-iptables before the tc-tiny and tc-full packages.

This avoids unnecessary package rebuild when calling make back to back.
Before this change, tc-mod-iptables will be built after the main tc
binary packages.

Both tc-tiny and tc-full depend on tc-mod-ipables.  If make is called
after the packages are already built, it will check the timestamps of
both packages, and will rebuild the main binaries, since the module
package will be newer than the tc package.

Calling BuildPackage,mod-iptables first ensures that its variant gets
built before the other packages' variants.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
package/network/utils/iproute2/Makefile

index cfcdb8cc53b73856794b3107a9f522af60b5a4fe..ca3cb4753ad13132c129574f6dddddd29f4c836f 100644 (file)
@@ -232,9 +232,11 @@ endef
 
 $(eval $(call BuildPackage,ip-tiny))
 $(eval $(call BuildPackage,ip-full))
+# build tc-mod-iptables before its dependents, to avoid
+# spurious rebuilds when building multiple variants.
+$(eval $(call BuildPackage,tc-mod-iptables))
 $(eval $(call BuildPackage,tc-tiny))
 $(eval $(call BuildPackage,tc-full))
-$(eval $(call BuildPackage,tc-mod-iptables))
 $(eval $(call BuildPackage,genl))
 $(eval $(call BuildPackage,ip-bridge))
 $(eval $(call BuildPackage,ss))