From: Jonas Gorski Date: Fri, 3 Nov 2017 09:59:00 +0000 (+0100) Subject: build: fix module symbol collection if build_dir is a symlink X-Git-Tag: v18.06.0-rc1~1810 X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=e26ffb31dfa30d498b963a86d231835e3af7d3df;p=openwrt%2Fopenwrt.git build: fix module symbol collection if build_dir is a symlink If PKG_BUILD_DIR contains symlinks, the generated Module.symvers will contain the resolved paths, not the virtual path with the symlink name. This breaks the filter for the module's own symbols, so to fix this ensure we also grep for the resolved path. Reported-by: Roman Yeryomin Tested-by: Roman Yeryomin Signed-off-by: Jonas Gorski --- diff --git a/include/kernel.mk b/include/kernel.mk index 92136f407a..8cb0defcb5 100644 --- a/include/kernel.mk +++ b/include/kernel.mk @@ -135,7 +135,7 @@ endef define collect_module_symvers for subdir in $(PKG_EXTMOD_SUBDIRS); do \ - grep -F $(PKG_BUILD_DIR) $(PKG_BUILD_DIR)/$$$$subdir/Module.symvers >> $(PKG_BUILD_DIR)/Module.symvers.tmp; \ + grep -F $$$$(readlink -f $(PKG_BUILD_DIR)) $(PKG_BUILD_DIR)/$$$$subdir/Module.symvers >> $(PKG_BUILD_DIR)/Module.symvers.tmp; \ done; \ sort -u $(PKG_BUILD_DIR)/Module.symvers.tmp > $(PKG_BUILD_DIR)/Module.symvers; \ mv $(PKG_BUILD_DIR)/Module.symvers $(PKG_INFO_DIR)/$(PKG_NAME).symvers