Fix possible fail to check for dependencies
authorblogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Tue, 3 Feb 2015 10:11:06 +0000 (10:11 +0000)
committerblogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Tue, 3 Feb 2015 10:11:06 +0000 (10:11 +0000)
Few characters in filenames (a plus sign, a dot) can be interpreted
specially by grep. This can lead to the omission of missing package
dependency. For example if we would have "some.file.so" then it
matches also "some2file.so". -F switch off special meaning
of any character and -x match against whole line.

Signed-off-by: SÅ‚awomir Demeszko <s.demeszko@wireless-instruments.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44247 3c298f89-4303-0410-b956-a3cf2f4a3e73

include/package-ipkg.mk

index 11edb9a..b7dc0ad 100644 (file)
@@ -66,7 +66,7 @@ ifneq ($(PKG_NAME),toolchain)
                                XARGS="$(XARGS)"; \
                        $(SCRIPT_DIR)/gen-dependencies.sh "$$(IDIR_$(1))"; \
                ) | while read FILE; do \
-                       grep -q "^$$$$FILE$$$$" $(PKG_INFO_DIR)/$(1).provides || \
+                       grep -qxF "$$$$FILE" $(PKG_INFO_DIR)/$(1).provides || \
                                echo "$$$$FILE" >> $(PKG_INFO_DIR)/$(1).missing; \
                done; \
                if [ -f "$(PKG_INFO_DIR)/$(1).missing" ]; then \