All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mike Crowe <mac@mcrowe.com>
To: Patches and discussions about the oe-core layer
	<openembedded-core@lists.openembedded.org>
Subject: Re: [PATCH] libtool-cross: Upbreak and actually use more of it
Date: Wed, 8 Feb 2012 12:29:00 +0000	[thread overview]
Message-ID: <20120208122900.GA11658@mcrowe.com> (raw)
In-Reply-To: <20120207224728.GB13125@sakrah.homelinux.org>

On Tue, Feb 07, 2012 at 02:47:28PM -0800, Khem Raj wrote:
> On (07/02/12 10:31), Mike Crowe wrote:
> > On Thu, Nov 17, 2011 at 12:13:25AM +0000, Richard Purdie wrote:
> > > We should be using libtool-cross for cross compiling but
> > > were not. This patch sets datadir so libtoolize ends up
> > > containing correct paths. It then installs libtoolize.
> > 
> > I have a recipe that no longer works after this (or perhaps the other
> > changes Richard mentions later in the thread.) It's a pretty
> > straightforward recipe that inherits from autotools. Judging by the
> > number of warnings from autoconf the package was probably expecting an
> > older version of automake/autoconf. The configure task fails with:
> > 
> >  libtoolize: `config/compile' not found in `/home/mac/src/oe/build/tmp-eglibc/sysroots/panther/usr/share/libtool'
> > 
> > (continued inside patch)
> > 
> > > The path ltmain.sh was installed to was incorrect and this is fixed.
> > > 
> > > We also now install all the libtool m4 macros.
> > > 
> > > Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
> > > ---
> > > diff --git a/meta/recipes-devtools/libtool/libtool-cross_2.4.bb b/meta/recipes-devtools/libtool/libtool-cross_2.4.bb
> > > index 596528a..4e6e3f2 100644
> > > --- a/meta/recipes-devtools/libtool/libtool-cross_2.4.bb
> > > +++ b/meta/recipes-devtools/libtool/libtool-cross_2.4.bb
> > > @@ -1,10 +1,13 @@
> > >  require libtool-${PV}.inc
> > >  
> > > -PR = "r5"
> > > +PR = "r7"
> > >  PACKAGES = ""
> > >  SRC_URI += "file://prefix.patch"
> > >  SRC_URI += "file://fixinstall.patch"
> > >  
> > > +target_datadir := "${datadir}"
> > > +datadir = "${STAGING_DIR_TARGET}${target_datadir}"
> > > +
> > >  do_configure_prepend () {
> > >  	# Remove any existing libtool m4 since old stale versions would break
> > >  	# any upgrade
> > > @@ -13,20 +16,21 @@ do_configure_prepend () {
> > >  }
> > >  
> > >  do_install () {
> > > -	install -d ${D}${bindir}/
> > > -	install -m 0755 ${HOST_SYS}-libtool ${D}${bindir}/${HOST_SYS}-libtool
> > > -	install -d ${D}${datadir}/libtool/
> > > -	install -d ${D}${datadir}/aclocal/
> > > -	install -c ${S}/libltdl/config/config.guess ${D}${datadir}/libtool/
> > > -	install -c ${S}/libltdl/config/config.sub ${D}${datadir}/libtool/
> > > -	install -c -m 0644 ${S}/libltdl/config/ltmain.sh ${D}${datadir}/libtool/
> > > -	install -c -m 0644 ${S}/libltdl/m4/libtool.m4 ${D}${datadir}/aclocal/
> > > -	install -c -m 0644 ${S}/libltdl/m4/ltdl.m4 ${D}${datadir}/aclocal/
> > > +	install -d ${D}${bindir_crossscripts}/
> > > +	install -m 0755 ${HOST_SYS}-libtool ${D}${bindir_crossscripts}/${HOST_SYS}-libtool
> > > +	install -d ${D}${bindir_crossscripts}/
> > > +	install -m 0755 libtoolize ${D}${bindir_crossscripts}/
> > > +	install -d ${D}${target_datadir}/libtool/config/
> > > +	install -d ${D}${target_datadir}/aclocal/
> > > +	install -c ${S}/libltdl/config/config.guess ${D}${target_datadir}/libtool/
> > > +	install -c ${S}/libltdl/config/config.sub ${D}${target_datadir}/libtool/
> > 
> > If I also install "compile", "depcomp" and "missing" here then this
> > solves the immediate problem but then it looks like I also need to add
> > "COPYING.LIB" and probably many other files to
> > ${D}{$target_datadir}/libtool/libltdl too which leads me to think that
> > I'm swimming against the tide and might be going about this the wrong
> > way. Is this the correct approach? If so why not just call "make
> > install" rather than installing everything by hand?
> 
> can you just try oe_runmake DESTDIR=${D} install ?
> you might need to do some extra bits in there but that can be done
> additionally

I replaced the whole of do_install with your suggestion and my package
now configures and compiles successfully.

I'll try a complete build from clean to see if the change causes any
other problems for me. If it does not should I submit a patch for this
change?

Thanks for your help.

Mike.

> > > +	install -c -m 0644 ${S}/libltdl/config/ltmain.sh ${D}${target_datadir}/libtool/config/
> > > +	install -c -m 0644 ${S}/libltdl/m4/*.m4 ${D}${target_datadir}/aclocal/
> > >  }
> > >  
> > >  SYSROOT_PREPROCESS_FUNCS += "libtoolcross_sysroot_preprocess"
> > >  
> > >  libtoolcross_sysroot_preprocess () {
> > > -	install -d ${SYSROOT_DESTDIR}${bindir_crossscripts}
> > > -	install -m 755 ${D}${bindir}/${HOST_SYS}-libtool ${SYSROOT_DESTDIR}${bindir_crossscripts}/${HOST_SYS}-libtool
> > > +	sysroot_stage_dir ${D}${bindir_crossscripts} ${SYSROOT_DESTDIR}${bindir_crossscripts}
> > > +	sysroot_stage_dir ${D}${target_datadir} ${SYSROOT_DESTDIR}${target_datadir}
> > >  }
> > 
> > TIA
> > 
> > Mike.
> > 
> > _______________________________________________
> > Openembedded-core mailing list
> > Openembedded-core@lists.openembedded.org
> > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core



      reply	other threads:[~2012-02-08 12:37 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-11-17  0:13 [PATCH] libtool-cross: Upbreak and actually use more of it Richard Purdie
2011-11-17  9:08 ` Paul Menzel
2011-11-17  9:53   ` Richard Purdie
2012-02-07 10:31 ` Mike Crowe
2012-02-07 22:47   ` Khem Raj
2012-02-08 12:29     ` Mike Crowe [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20120208122900.GA11658@mcrowe.com \
    --to=mac@mcrowe.com \
    --cc=openembedded-core@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.