[Buildroot] [PATCH v4 0/3] Cleanup trailing slashes from FOO_SITE
Luca Ceresoli
luca at lucaceresoli.net
Sat Oct 3 17:22:15 UTC 2015
Hi,
here's the respin of my patch set to clean up the form of FOO_SITE
variables by removing all trailing slashes.
Those slashes are useless and potentially armful, which led to introducing a
workaround to strip them:
commit 1cbffbd015106ea90fe49e27433375769dc1035b
Author: Shawn J. Goff <shawn7400 at gmail.com>
Date: Fri Apr 12 09:40:30 2013 +0000
eliminate double slashes caused by FOO_SITE ending in a slash
When a FOO_SITE variable ends in a slash and gets joined with a
FOO_SOURCE variable like $(FOO_SITE)/$(FOO_SOURCE), the resulting URI
has a double slash. While double-slashes are fine in unix paths, they
are reserved in URIs - the part following '//' must be an authority.
Signed-off-by: Shawn J. Goff <shawn7400 at gmail.com>
Signed-off-by: Peter Korsgaard <jacmet at sunsite.dk>
v1 removed all these slashes but did not add a check to prevent some
more ones from slipping in new pagkages, and of course they did. v3
proposed a check, but taht was not ideal. So here's the new, shiny,
fully-make-based version that Arnout's headache produced! :)
Patches from v3 have already be merged that remove the slashes in
existing packages and to state in tha manual that trailing slashes are
incorrect. Here's what's left.
Patch 1 fixes toolchain-external, which introduces a trailing slash on
its own. Patch 2 adds a the check to block trailing slashes before
building. Finally patch 3 removes the workaround that is not needed
anymore.
This work has been inspired by this comment from Arnout Vandecappelle [1]:
>>>>>>>>>>>> >>>>>> >>> >> > +else
>>>>>>>>>>>> >>>>>> >>> >> > +ifneq ($$($(2)_ACTUAL_SOURCE_TARBALL),$$($(2)_SOURCE))
>>>>>>>>>>>> >>>>>> >>> >> > + $(call DOWNLOAD,$$($(2)_ACTUAL_SOURCE_SITE:/=)/$$($(2)$($(PKG)_SITE:/=)_ACTUAL_SOURCE_TARBALL))
>>>> >> > >
>>>> >> > > I think the $($(PKG)_SITE:/=) construct was just introduced because for some
>>>> >> > > packages, the _SITE ends with a / and that should be stripped, and we were too
>>>> >> > > lazy to fix the packages. Hm, looks like all the the external toolchain _SITEs
>>>> >> > > end with a /...
[0] http://lists.busybox.net/pipermail/buildroot/2015-March/121502.html
[1] https://patchwork.ozlabs.org/patch/424980/
Luca Ceresoli (3):
toolchain-external: strip trailing slash from autogenerated FOO_SITE
pkg-generic: prevent _SITE URLs with a trailing slash
download: get rid of trailing slash removal hack for FOO_SITE
package/pkg-generic.mk | 6 +++++-
toolchain/toolchain-external/toolchain-external.mk | 2 +-
2 files changed, 6 insertions(+), 2 deletions(-)
--
1.9.1
More information about the buildroot
mailing list