From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Petazzoni Date: Thu, 18 Aug 2016 23:59:43 +0200 Subject: [Buildroot] [PATCH v2 1/3] core/pkg-autotools: don't use APPLY_PATCHES for libtool patches In-Reply-To: <1471449670-13421-1-git-send-email-romain.naour@gmail.com> References: <1471449670-13421-1-git-send-email-romain.naour@gmail.com> Message-ID: <20160818235943.715ce4c4@free-electrons.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: buildroot@busybox.net Hello, On Wed, 17 Aug 2016 18:01:08 +0200, Romain Naour wrote: > Since [1] -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 > -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 > Acked-by: "Yann E. MORIN" > Acked-by: Arnout Vandecappelle (Essensium/Mind) > Tested-by: Arnout Vandecappelle (Essensium/Mind) > Cc: "Yann E. MORIN" > Cc: Thomas Petazzoni > Cc: Arnout Vandecappelle > --- > 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