* [Buildroot] [PATCH 1/1] Add text explaining that patches are not applied for SITE_METHOD==local or OVERRRIDE_SRCDIR cases.
@ 2017-02-09 17:07 Grant Edwards
2017-02-12 14:22 ` Thomas Petazzoni
0 siblings, 1 reply; 2+ messages in thread
From: Grant Edwards @ 2017-02-09 17:07 UTC (permalink / raw)
To: buildroot
Signed-off-by: Grant Edwards <grant.b.edwards@gmail.com>
---
docs/manual/adding-packages-generic.txt | 18 ++++++++++--------
docs/manual/customize-patches.txt | 4 +++-
docs/manual/patch-policy.txt | 5 +++++
3 files changed, 18 insertions(+), 9 deletions(-)
diff --git a/docs/manual/adding-packages-generic.txt b/docs/manual/adding-packages-generic.txt
index a08283c..bbd3cf5 100644
--- a/docs/manual/adding-packages-generic.txt
+++ b/docs/manual/adding-packages-generic.txt
@@ -217,13 +217,14 @@ information is (assuming the package name is +libfoo+) :
full URL and download the patch from this location. Otherwise,
Buildroot will assume that the patch should be downloaded from
+LIBFOO_SITE+. If +HOST_LIBFOO_PATCH+ is not specified, it defaults
- to +LIBFOO_PATCH+. Note that patches that are included in Buildroot
- itself use a different mechanism: all files of the form
- +*.patch+ present in the package directory inside
- Buildroot will be applied to the package after extraction (see
- xref:patch-policy[patching a package]). Finally, patches listed in
- the +LIBFOO_PATCH+ variable are applied _before_ the patches stored
- in the Buildroot package directory.
+ to +LIBFOO_PATCH+. Patches that are included in Buildroot itself
+ use a different mechanism: all files of the form +*.patch+ present
+ in the package directory inside Buildroot will be applied to the
+ package after applying patches specified by +LIBFOO_PATCH+. (See
+ xref:patch-policy[patching a package].) [If +LIBFOO_SITE_METHOD+ is
+ set to +local+, or if the +OVERRIDE_SRCDIR+ is used to specify a
+ source directory, no patches are applied: the source directory is
+ used as-is.]
* +LIBFOO_SITE+ provides the location of the package, which can be a
URL or a local filesystem path. HTTP, FTP and SCP are supported URL
@@ -315,7 +316,8 @@ information is (assuming the package name is +libfoo+) :
** +local+ for a local source code directory. One should use this
when +LIBFOO_SITE+ specifies a local directory path containing
the package source code. Buildroot copies the contents of the
- source directory into the package's build directory.
+ source directory into the package's build directory. No patches
+ are applied: the source directory contents are used as-is.
* +LIBFOO_GIT_SUBMODULES+ can be set to +YES+ to create an archive
with the git submodules in the repository. This is only available
diff --git a/docs/manual/customize-patches.txt b/docs/manual/customize-patches.txt
index fa63541..18e6af8 100644
--- a/docs/manual/customize-patches.txt
+++ b/docs/manual/customize-patches.txt
@@ -11,7 +11,9 @@ architecture.
The +BR2_GLOBAL_PATCH_DIR+ configuration option can be used to specify
a space separated list of one or more directories containing package
-patches.
+patches. [If a package's +_SITE_METHOD+ is set to +local+, or if the
++OVERRIDE_SRCDIR+ feature is used to specify a source directory, no
+patches are applied.]
For a specific version +<packageversion>+ of a specific package
+<packagename>+, patches are applied from +BR2_GLOBAL_PATCH_DIR+ as
diff --git a/docs/manual/patch-policy.txt b/docs/manual/patch-policy.txt
index e1df8b0..33e1640 100644
--- a/docs/manual/patch-policy.txt
+++ b/docs/manual/patch-policy.txt
@@ -59,6 +59,11 @@ details.
[[patch-apply-order]]
=== How patches are applied
+If a packate's +_SITE_METHOD+ is set to +local+, or if the
++OVERRIDE_SRCDIR+ feature is used to specify a source directory, no
+patches are applied: the source is used as-is. Otherwise, patches are
+applied as specified below.
+
. Run the +<packagename>_PRE_PATCH_HOOKS+ commands if defined;
. Cleanup the build directory, removing any existing +*.rej+ files;
--
2.10.2
^ permalink raw reply related [flat|nested] 2+ messages in thread* [Buildroot] [PATCH 1/1] Add text explaining that patches are not applied for SITE_METHOD==local or OVERRRIDE_SRCDIR cases.
2017-02-09 17:07 [Buildroot] [PATCH 1/1] Add text explaining that patches are not applied for SITE_METHOD==local or OVERRRIDE_SRCDIR cases Grant Edwards
@ 2017-02-12 14:22 ` Thomas Petazzoni
0 siblings, 0 replies; 2+ messages in thread
From: Thomas Petazzoni @ 2017-02-12 14:22 UTC (permalink / raw)
To: buildroot
Hello,
On Thu, 9 Feb 2017 11:07:19 -0600, Grant Edwards wrote:
> Signed-off-by: Grant Edwards <grant.b.edwards@gmail.com>
Thanks for this patch. This is definitely something we should mention
more explicitly in the manual, but I'm not entirely happy with your
proposal.
First, a nit about the commit title, it should be shorter, and prefixed
by what you're patching. Like:
docs/manual: explain situations where patches are not applied
or something like that.
> diff --git a/docs/manual/adding-packages-generic.txt b/docs/manual/adding-packages-generic.txt
> index a08283c..bbd3cf5 100644
> --- a/docs/manual/adding-packages-generic.txt
> +++ b/docs/manual/adding-packages-generic.txt
> @@ -217,13 +217,14 @@ information is (assuming the package name is +libfoo+) :
> full URL and download the patch from this location. Otherwise,
> Buildroot will assume that the patch should be downloaded from
> +LIBFOO_SITE+. If +HOST_LIBFOO_PATCH+ is not specified, it defaults
> - to +LIBFOO_PATCH+. Note that patches that are included in Buildroot
> - itself use a different mechanism: all files of the form
> - +*.patch+ present in the package directory inside
> - Buildroot will be applied to the package after extraction (see
> - xref:patch-policy[patching a package]). Finally, patches listed in
> - the +LIBFOO_PATCH+ variable are applied _before_ the patches stored
> - in the Buildroot package directory.
> + to +LIBFOO_PATCH+. Patches that are included in Buildroot itself
> + use a different mechanism: all files of the form +*.patch+ present
> + in the package directory inside Buildroot will be applied to the
> + package after applying patches specified by +LIBFOO_PATCH+. (See
> + xref:patch-policy[patching a package].) [If +LIBFOO_SITE_METHOD+ is
> + set to +local+, or if the +OVERRIDE_SRCDIR+ is used to specify a
> + source directory, no patches are applied: the source directory is
> + used as-is.]
I believe mentioning this here is not needed. Instead we probably want
to entirely remove the part "Patches that are included in Buildroot
itself...", and instead refer to a common paragraph that explains the
entire logic with which patches are applied.
> * +LIBFOO_SITE+ provides the location of the package, which can be a
> URL or a local filesystem path. HTTP, FTP and SCP are supported URL
> @@ -315,7 +316,8 @@ information is (assuming the package name is +libfoo+) :
> ** +local+ for a local source code directory. One should use this
> when +LIBFOO_SITE+ specifies a local directory path containing
> the package source code. Buildroot copies the contents of the
> - source directory into the package's build directory.
> + source directory into the package's build directory. No patches
> + are applied: the source directory contents are used as-is.
I'd prefer if we had a section that centralized what OVERRIDE_SRCDIR
and SITE_METHOD=local do, what are there use cases, etc.
> diff --git a/docs/manual/customize-patches.txt b/docs/manual/customize-patches.txt
> index fa63541..18e6af8 100644
> --- a/docs/manual/customize-patches.txt
> +++ b/docs/manual/customize-patches.txt
> @@ -11,7 +11,9 @@ architecture.
>
> The +BR2_GLOBAL_PATCH_DIR+ configuration option can be used to specify
> a space separated list of one or more directories containing package
> -patches.
> +patches. [If a package's +_SITE_METHOD+ is set to +local+, or if the
> ++OVERRIDE_SRCDIR+ feature is used to specify a source directory, no
> +patches are applied.]
>
> For a specific version +<packageversion>+ of a specific package
> +<packagename>+, patches are applied from +BR2_GLOBAL_PATCH_DIR+ as
> diff --git a/docs/manual/patch-policy.txt b/docs/manual/patch-policy.txt
> index e1df8b0..33e1640 100644
> --- a/docs/manual/patch-policy.txt
> +++ b/docs/manual/patch-policy.txt
> @@ -59,6 +59,11 @@ details.
> [[patch-apply-order]]
> === How patches are applied
>
> +If a packate's +_SITE_METHOD+ is set to +local+, or if the
> ++OVERRIDE_SRCDIR+ feature is used to specify a source directory, no
> +patches are applied: the source is used as-is. Otherwise, patches are
> +applied as specified below.
> +
> . Run the +<packagename>_PRE_PATCH_HOOKS+ commands if defined;
>
> . Cleanup the build directory, removing any existing +*.rej+ files;
I believe there's a lot of overlap between customize-patches.txt and
patch-policy.txt. We want to refactor that into a single section that
explains how patches are applied.
So, all in all:
1. Add a section about OVERRIDE_SRCDIR and SITE_METHOD=local,
regrouping all information about these features, including how
patches are (not) applied.
2. Merge patch-policy.txt and customize-patches.txt.
Thanks!
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2017-02-12 14:22 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-02-09 17:07 [Buildroot] [PATCH 1/1] Add text explaining that patches are not applied for SITE_METHOD==local or OVERRRIDE_SRCDIR cases Grant Edwards
2017-02-12 14:22 ` Thomas Petazzoni
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox