Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Korsgaard <jacmet@uclibc.org>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH] bzip2: Rearrange build order
Date: Wed, 05 Jun 2013 15:50:21 +0200	[thread overview]
Message-ID: <877gi8ekf6.fsf@dell.be.48ers.dk> (raw)
In-Reply-To: <1370436976-746-1-git-send-email-markos.chandras@gmail.com> (Markos Chandras's message of "Wed, 5 Jun 2013 13:56:16 +0100")

>>>>> "Markos" == Markos Chandras <markos.chandras@gmail.com> writes:

 Markos> From: Markos Chandras <markos.chandras@imgtec.com>
 Markos> Several object files are shared between the libbz2.so shared library
 Markos> and the libbz2.a static one. MIPS will refuce to build a relocatable
 Markos> object when creating a new shared library with the following error:

 Markos> blocksort.o: relocation R_MIPS_HI16 against `__gnu_local_gp' can not be used
 Markos> when making a shared object; recompile with -fPIC

 Markos> This is because these files are build without -fPIC when creating the
 Markos> static library and later on they are used to build the shared one.

 Markos> This is easily fixed if we add the shared library build rule before
 Markos> creating the static library so object files are always compiled with
 Markos> -fPIC.

This works, but is afaik less efficient for the static lib case.

The real fix is imho to build the object files twice, like how libtool
does it.

If you look at the Debian package, they work around it by adding a
seperate .c -> .sho build rule, which adds -fPIC, and then link the .so
file with the .sho files instead.

-- 
Bye, Peter Korsgaard

  parent reply	other threads:[~2013-06-05 13:50 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-06-05 12:56 [Buildroot] [PATCH] bzip2: Rearrange build order Markos Chandras
2013-06-05 13:08 ` Thomas Petazzoni
2013-06-05 13:50 ` Peter Korsgaard [this message]
2013-06-05 14:02   ` Markos Chandras
2013-06-05 14:04   ` Thomas Petazzoni
2013-06-05 14:08     ` Markos Chandras
2013-06-05 14:15     ` Peter Korsgaard
2013-06-05 14:25       ` Markos Chandras
2013-06-05 14:48         ` Peter Korsgaard
2013-06-05 15:01           ` Markos Chandras
2013-06-05 15:22       ` Thomas Petazzoni
2013-06-05 21:56         ` Peter Korsgaard

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=877gi8ekf6.fsf@dell.be.48ers.dk \
    --to=jacmet@uclibc.org \
    --cc=buildroot@busybox.net \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox