Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH] dtc: broken for static builds
@ 2014-01-07  9:44 Vicente Olivert Riera
  2014-01-09 20:14 ` Peter Korsgaard
  2014-01-10 22:00 ` Peter Korsgaard
  0 siblings, 2 replies; 9+ messages in thread
From: Vicente Olivert Riera @ 2014-01-07  9:44 UTC (permalink / raw)
  To: buildroot

dtc package has hardcoded shared lib link options in the Makefile, so it
will fail if you try to build it on a static lib environment.

Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
---
 package/dtc/Config.in |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/package/dtc/Config.in b/package/dtc/Config.in
index fac6ab2..aa9f2b1 100644
--- a/package/dtc/Config.in
+++ b/package/dtc/Config.in
@@ -1,5 +1,6 @@
 config BR2_PACKAGE_DTC
 	bool "dtc (libfdt)"
+	depends on !BR2_PREFER_STATIC_LIB
 	help
 	  The Device Tree Compiler, dtc, takes as input a device-tree in
 	  a given format and outputs a device-tree in another format.
@@ -9,6 +10,9 @@ config BR2_PACKAGE_DTC
 
 	  http://git.jdl.com/gitweb/?p=dtc.git  (no home page)
 
+comment "dtc needs a toolchain w/ dynamic library"
+	depends on BR2_PREFER_STATIC_LIB
+
 if BR2_PACKAGE_DTC
 
 config BR2_PACKAGE_DTC_PROGRAMS
-- 
1.7.1

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [Buildroot] [PATCH] dtc: broken for static builds
  2014-01-07  9:44 [Buildroot] [PATCH] dtc: broken for static builds Vicente Olivert Riera
@ 2014-01-09 20:14 ` Peter Korsgaard
  2014-01-10 14:51   ` Vicente Olivert Riera
  2014-01-10 22:00 ` Peter Korsgaard
  1 sibling, 1 reply; 9+ messages in thread
From: Peter Korsgaard @ 2014-01-09 20:14 UTC (permalink / raw)
  To: buildroot

>>>>> "Vicente" == Vicente Olivert Riera <Vincent.Riera@imgtec.com> writes:

 > dtc package has hardcoded shared lib link options in the Makefile, so it
 > will fail if you try to build it on a static lib environment.

Really? I just did a quick test build and it seems to work here:

file output/target/usr/bin/dtc
output/target/usr/bin/dtc: ELF 32-bit LSB executable, ARM, version 1
(SYSV), statically linked, stripped

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Buildroot] [PATCH] dtc: broken for static builds
  2014-01-09 20:14 ` Peter Korsgaard
@ 2014-01-10 14:51   ` Vicente Olivert Riera
  2014-01-10 21:59     ` Peter Korsgaard
  0 siblings, 1 reply; 9+ messages in thread
From: Vicente Olivert Riera @ 2014-01-10 14:51 UTC (permalink / raw)
  To: buildroot

On 01/09/2014 08:14 PM, Peter Korsgaard wrote:
>>>>>> "Vicente" == Vicente Olivert Riera <Vincent.Riera@imgtec.com> writes:
>
>   > dtc package has hardcoded shared lib link options in the Makefile, so it
>   > will fail if you try to build it on a static lib environment.
>
> Really? I just did a quick test build and it seems to work here:
>
> file output/target/usr/bin/dtc
> output/target/usr/bin/dtc: ELF 32-bit LSB executable, ARM, version 1
> (SYSV), statically linked, stripped
>

I have tried right now with a simple buildroot configuration for x86_64 
and it fails. Please, try to reproduce it following these steps:

-make clean
-make distclean
-make menuconfig
(choose x86_64 target)
(choose prefer static libs)
(choose dtc package)
-save changes
-make

-- 
Vincent

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Buildroot] [PATCH] dtc: broken for static builds
  2014-01-10 14:51   ` Vicente Olivert Riera
@ 2014-01-10 21:59     ` Peter Korsgaard
  2014-01-28 21:01       ` Thomas Petazzoni
  0 siblings, 1 reply; 9+ messages in thread
From: Peter Korsgaard @ 2014-01-10 21:59 UTC (permalink / raw)
  To: buildroot

>>>>> "Vicente" == Vicente Olivert Riera <Vincent.Riera@imgtec.com> writes:

 > On 01/09/2014 08:14 PM, Peter Korsgaard wrote:
 >>>>>>> "Vicente" == Vicente Olivert Riera <Vincent.Riera@imgtec.com> writes:
 >> 
 >> > dtc package has hardcoded shared lib link options in the Makefile, so it
 >> > will fail if you try to build it on a static lib environment.
 >> 
 >> Really? I just did a quick test build and it seems to work here:
 >> 
 >> file output/target/usr/bin/dtc
 >> output/target/usr/bin/dtc: ELF 32-bit LSB executable, ARM, version 1
 >> (SYSV), statically linked, stripped

 > I have tried right now with a simple buildroot configuration for
 > x86_64 and it fails. Please, try to reproduce it following these
 > steps:

 > -make clean
 > -make distclean
 > -make menuconfig
 > (choose x86_64 target)
 > (choose prefer static libs)
 > (choose dtc package)
 > -save changes
 > -make

Ahh yes, I do see it on x86-64. Thanks.

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Buildroot] [PATCH] dtc: broken for static builds
  2014-01-07  9:44 [Buildroot] [PATCH] dtc: broken for static builds Vicente Olivert Riera
  2014-01-09 20:14 ` Peter Korsgaard
@ 2014-01-10 22:00 ` Peter Korsgaard
  1 sibling, 0 replies; 9+ messages in thread
From: Peter Korsgaard @ 2014-01-10 22:00 UTC (permalink / raw)
  To: buildroot

>>>>> "Vicente" == Vicente Olivert Riera <Vincent.Riera@imgtec.com> writes:

 > dtc package has hardcoded shared lib link options in the Makefile, so it
 > will fail if you try to build it on a static lib environment.

 > Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
 > ---
 >  package/dtc/Config.in |    4 ++++
 >  1 files changed, 4 insertions(+), 0 deletions(-)

 > diff --git a/package/dtc/Config.in b/package/dtc/Config.in
 > index fac6ab2..aa9f2b1 100644
 > --- a/package/dtc/Config.in
 > +++ b/package/dtc/Config.in
 > @@ -1,5 +1,6 @@
 >  config BR2_PACKAGE_DTC
 >  	bool "dtc (libfdt)"
 > +	depends on !BR2_PREFER_STATIC_LIB
 >  	help
 >  	  The Device Tree Compiler, dtc, takes as input a device-tree in
 >  	  a given format and outputs a device-tree in another format.
 > @@ -9,6 +10,9 @@ config BR2_PACKAGE_DTC
 
 >  	  http://git.jdl.com/gitweb/?p=dtc.git  (no home page)
 
 > +comment "dtc needs a toolchain w/ dynamic library"
 > +	depends on BR2_PREFER_STATIC_LIB
 > +

Committed with the comment moved below the DTC_PROGRAMS suboption so
that one get indented correctly in menuconfig, thanks.

 >  if BR2_PACKAGE_DTC
 
 >  config BR2_PACKAGE_DTC_PROGRAMS
 > -- 
 > 1.7.1


 > _______________________________________________
 > buildroot mailing list
 > buildroot at busybox.net
 > http://lists.busybox.net/mailman/listinfo/buildroot


-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Buildroot] [PATCH] dtc: broken for static builds
  2014-01-10 21:59     ` Peter Korsgaard
@ 2014-01-28 21:01       ` Thomas Petazzoni
  2014-01-30  9:35         ` Vicente Olivert Riera
  2014-02-02 21:12         ` Peter Korsgaard
  0 siblings, 2 replies; 9+ messages in thread
From: Thomas Petazzoni @ 2014-01-28 21:01 UTC (permalink / raw)
  To: buildroot

Dear Peter Korsgaard,

On Fri, 10 Jan 2014 22:59:43 +0100, Peter Korsgaard wrote:

>  > I have tried right now with a simple buildroot configuration for
>  > x86_64 and it fails. Please, try to reproduce it following these
>  > steps:
> 
>  > -make clean
>  > -make distclean
>  > -make menuconfig
>  > (choose x86_64 target)
>  > (choose prefer static libs)
>  > (choose dtc package)
>  > -save changes
>  > -make
> 
> Ahh yes, I do see it on x86-64. Thanks.

What did you see on x86-64 exactly? Wasn't it related to libstdc++.a
not being generated by the internal toolchain backend?

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

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Buildroot] [PATCH] dtc: broken for static builds
  2014-01-28 21:01       ` Thomas Petazzoni
@ 2014-01-30  9:35         ` Vicente Olivert Riera
  2014-02-02 21:12         ` Peter Korsgaard
  1 sibling, 0 replies; 9+ messages in thread
From: Vicente Olivert Riera @ 2014-01-30  9:35 UTC (permalink / raw)
  To: buildroot

On 01/28/2014 09:01 PM, Thomas Petazzoni wrote:
> Dear Peter Korsgaard,
>
> On Fri, 10 Jan 2014 22:59:43 +0100, Peter Korsgaard wrote:
>
>>   > I have tried right now with a simple buildroot configuration for
>>   > x86_64 and it fails. Please, try to reproduce it following these
>>   > steps:
>>
>>   > -make clean
>>   > -make distclean
>>   > -make menuconfig
>>   > (choose x86_64 target)
>>   > (choose prefer static libs)
>>   > (choose dtc package)
>>   > -save changes
>>   > -make
>>
>> Ahh yes, I do see it on x86-64. Thanks.
>
> What did you see on x86-64 exactly? Wasn't it related to libstdc++.a
> not being generated by the internal toolchain backend?

Hello Thomas,

here you have the log: http://www.pastebin.ca/2601975

Best wishes,

--
Vincent

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Buildroot] [PATCH] dtc: broken for static builds
  2014-01-28 21:01       ` Thomas Petazzoni
  2014-01-30  9:35         ` Vicente Olivert Riera
@ 2014-02-02 21:12         ` Peter Korsgaard
  2014-02-03  4:50           ` Baruch Siach
  1 sibling, 1 reply; 9+ messages in thread
From: Peter Korsgaard @ 2014-02-02 21:12 UTC (permalink / raw)
  To: buildroot

>>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes:

Hi,

 >> Ahh yes, I do see it on x86-64. Thanks.

 > What did you see on x86-64 exactly? Wasn't it related to libstdc++.a
 > not being generated by the internal toolchain backend?

Sorry, I don't recall the details, but I think the issue was with it
trying to create a shared library and not building the object files with fPIC.

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Buildroot] [PATCH] dtc: broken for static builds
  2014-02-02 21:12         ` Peter Korsgaard
@ 2014-02-03  4:50           ` Baruch Siach
  0 siblings, 0 replies; 9+ messages in thread
From: Baruch Siach @ 2014-02-03  4:50 UTC (permalink / raw)
  To: buildroot

Hi Peter,

On Sun, Feb 02, 2014 at 10:12:23PM +0100, Peter Korsgaard wrote:
> >>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes:
>  >> Ahh yes, I do see it on x86-64. Thanks.
> 
>  > What did you see on x86-64 exactly? Wasn't it related to libstdc++.a
>  > not being generated by the internal toolchain backend?
> 
> Sorry, I don't recall the details, but I think the issue was with it
> trying to create a shared library and not building the object files with fPIC.

I guess Thomas refers to 7d6c79ed887e (Compile static versions of gcc 
libraries). Before that libstdc++.a was not provided by the internal 
toolchain.

baruch

-- 
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch at tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il -

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2014-02-03  4:50 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-01-07  9:44 [Buildroot] [PATCH] dtc: broken for static builds Vicente Olivert Riera
2014-01-09 20:14 ` Peter Korsgaard
2014-01-10 14:51   ` Vicente Olivert Riera
2014-01-10 21:59     ` Peter Korsgaard
2014-01-28 21:01       ` Thomas Petazzoni
2014-01-30  9:35         ` Vicente Olivert Riera
2014-02-02 21:12         ` Peter Korsgaard
2014-02-03  4:50           ` Baruch Siach
2014-01-10 22:00 ` Peter Korsgaard

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox