Message ID | 1422876285-17918-1-git-send-email-s.demeszko@wireless-instruments.com |
---|---|
State | Superseded |
Headers | show |
On Mon, Feb 2, 2015 at 6:24 AM, Sławomir Demeszko <s.demeszko@wireless-instruments.com> wrote: > Compilation of packages written in C++, like smartmontools, unrar, etc. > fail with message: > > Package smartmontools is missing dependencies for the following libraries: > libuClibc++.so.0 > > This is due unescaped "++" in argument for grep command. This may have been fixed by: <http://git.openwrt.org/?p=openwrt.git;a=commit;h=ff9be1ce29f457e018bbb64c7427ddcadcb93d5e> -John
On 02.02.2015 at 14:00, John Szakmeister wrote: > On Mon, Feb 2, 2015 at 6:24 AM, Sławomir Demeszko > <s.demeszko@wireless-instruments.com> wrote: >> Compilation of packages written in C++, like smartmontools, unrar, etc. >> fail with message: >> >> Package smartmontools is missing dependencies for the following libraries: >> libuClibc++.so.0 >> >> This is due unescaped "++" in argument for grep command. > This may have been fixed by: > <http://git.openwrt.org/?p=openwrt.git;a=commit;h=ff9be1ce29f457e018bbb64c7427ddcadcb93d5e> Yes, that fix works too, I didn't notice it. As side note -qxF is a bit better, it does not count "\+" and few other characters preceded with backslash as special characters, but of course these combinations are rarely used in filenames.
W dniu 02.02.2015 o 14:47, Sławomir Demeszko pisze: > On 02.02.2015 at 14:00, John Szakmeister wrote: >> On Mon, Feb 2, 2015 at 6:24 AM, Sławomir Demeszko >> <s.demeszko@wireless-instruments.com> wrote: >>> Compilation of packages written in C++, like smartmontools, unrar, etc. >>> fail with message: >>> >>> Package smartmontools is missing dependencies for the following libraries: >>> libuClibc++.so.0 >>> >>> This is due unescaped "++" in argument for grep command. >> This may have been fixed by: >> <http://git.openwrt.org/?p=openwrt.git;a=commit;h=ff9be1ce29f457e018bbb64c7427ddcadcb93d5e> > > Yes, that fix works too, I didn't notice it. As side note -qxF is a bit better, it does > not count "\+" and few other characters preceded with backslash as special characters, > but of course these combinations are rarely used in filenames. I just tested and found that also a dot in filenames can be a problem. For example if we would have "some.file.so" then it matches also "some2file.so" and it could not detect missing dependency. So -qxF is a more than bit better.
On Mon, Feb 2, 2015 at 9:07 AM, Sławomir Demeszko <s.demeszko@wireless-instruments.com> wrote: [snip] > I just tested and found that also a dot in filenames can be a problem. For > example if we would have "some.file.so" then it matches also "some2file.so" > and it could not detect missing dependency. So -qxF is a more than bit > better. Perhaps you can update your patch then so that it applies cleanly to master? I cannot apply it, but you'll have a better chance of getting it accepted if it applies cleanly. :-) You'll also need to sign off on it. The Submitted Patches details what they look for: <https://dev.openwrt.org/wiki/SubmittingPatches> Section 10 talks about the sign off. -John
I just updated working tree and created new patch "Fix possible fail to check for dependencies": https://patchwork.ozlabs.org/patch/435525/ This one can be cancelled.
diff --git a/include/package-ipkg.mk b/include/package-ipkg.mk index 815aef0..b7dc0ad 100644 --- a/include/package-ipkg.mk +++ b/include/package-ipkg.mk @@ -66,7 +66,7 @@ ifneq ($(PKG_NAME),toolchain) XARGS="$(XARGS)"; \ $(SCRIPT_DIR)/gen-dependencies.sh "$$(IDIR_$(1))"; \ ) | while read FILE; do \ - grep -qE "^$$$$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 \