[Buildroot] [PATCH v2 1/3] core/pkg-autotools: don't use APPLY_PATCHES for libtool patches

Thomas Petazzoni thomas.petazzoni at free-electrons.com
Thu Aug 18 21:59:43 UTC 2016


Hello,

On Wed, 17 Aug 2016 18:01:08 +0200, Romain Naour wrote:
> Since [1] <package>-reconfigure target is broken.
> 
> $ make elementary-reconfigure
> Applying buildroot-libtool-v2.4.4.patch using patch:
> Error: duplicate filename 'buildroot-libtool-v2.4.4.patch'
> Conflicting files are:
>   already applied: buildroot/support/libtool/buildroot-libtool-v2.4.4.patch
>   to be applied  : buildroot/support/libtool/buildroot-libtool-v2.4.4.patch
> 
> When a package uses AUTORECONF, the libtool patch can be applied a
> second time on the same ltmain.sh in the same directory as the
> <package>-reconfigure target is called. This is not a problem since
> autoreconf will overwrite the previously patched files. But with the
> check introduced by [1], apply-patches.sh throw an error when the
> package is reconfigured since the libtool patch is already present in
> .applied_patches_list.
> 
> In addition to this, the .applied_patches_list file generated by
> apply-patches.sh while patching ltmain.sh is not in the top-level
> package source directory. Instead a duplicated .applied_patches_list
> is generated beside the patched ltmain.sh which can be in a
> subdirectory.
> 
> As noticed by Arnout Vandecappelle [2], the apply-patches.sh script
> doesn't bring anything for the libtool patches.
> 
> "apply_patches.sh does the following:
> 
> * It handles directories -> not needed here.
> * It handles compressed patches and tarballs -> not needed.
> * It handles series files -> not needed.
> * It handles errors in case of multiple patches -> not needed since
> it's only one patch.
> * It detects errors based on *.rej files -> not needed since it's only
> a single patch so patch exit code is OK.
> * It writes the patch list -> for libtool, this is quite silly because
> it will be written in the directory where ltmain.sh is found, not in the
> top-level directory, so you have these patch lists spread over the
> source tree."
> 
> So use patch directly rather than apply-patches.
> 
> [1] 19241598147e7555dce40b6dd44b28ef22b67ed9
> [2] http://lists.busybox.net/pipermail/buildroot/2016-August/169810.html
> 
> Signed-off-by: Romain Naour <romain.naour at gmail.com>
> Acked-by: "Yann E. MORIN" <yann.morin.1998 at free.fr>
> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout at mind.be>
> Tested-by: Arnout Vandecappelle (Essensium/Mind) <arnout at mind.be>
> Cc: "Yann E. MORIN" <yann.morin.1998 at free.fr>
> Cc: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
> Cc: Arnout Vandecappelle <arnout at mind.be>
> ---
> v2: improve the commit log (Arnout)
> ---
>  package/pkg-autotools.mk | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)

Applied to master, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com


More information about the buildroot mailing list