mirror of
https://github.com/openwrt/openwrt.git
synced 2026-10-13 17:38:48 +04:00
version_filter calls package-metadata.pl for every list that contains a versioned item such as "foo@ge6.18". Parsing package/kernel/linux runs it about 40 times, which takes 1.3 s of 2.2 s, and this parse is on the critical path of every build. Filter items of the form <name>@<op><version> in make. The version comparison stays in package-metadata.pl, but runs only once per version. Other forms are passed to package-metadata.pl as before. The only difference in the output: items without a version condition are no longer passed through the shell, so quotes in a KCONFIG value are kept. That list is only used for variable names, so the result is the same. All kmod packages and images are identical. Signed-off-by: John Crispin <john@phrozen.org>