Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] pciutils-2.2.6 fails to build for powerpc  405
@ 2007-09-12 17:53 Darcy Watkins
  2007-09-13  9:26 ` Bernhard Fischer
  0 siblings, 1 reply; 8+ messages in thread
From: Darcy Watkins @ 2007-09-12 17:53 UTC (permalink / raw)
  To: buildroot

Hello,

I tried to build the pciutils package for my powerpc 405 system, but it
broke.

i386-ports.c includes i386-io-linux.h which includes sys/io.h

The error is: sys/io.h: No such file or directory.

But the whole thing appears suspicious because I am building for powerpc
405 not for i386 so I think that the package must really be broken in
the make scripts since it shouldn't be building 1386 dependent files
when cross compiling for powerpc.

The problem appears to be line #23 of the pciutils-2.2.6/lib/configure
script in the pciutils source.  Line #15 was patched to not have the
"sys" variable be derived from the build host, but line #23 has:

   cpu=`uname -m | sed ' ... black magic stuff ...'`

The result is that pciutils is configured for i386 (my build host cpu
type) and then it attempts to cross compile it for powerpc.

I think that the short solution is to patch line #23 so that it derives
cpu from architecture variables instead of the output of uname.


Regards,

Darcy

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

* [Buildroot] pciutils-2.2.6 fails to build for powerpc  405
  2007-09-12 17:53 Darcy Watkins
@ 2007-09-13  9:26 ` Bernhard Fischer
  2007-09-14 15:01   ` Darcy Watkins
  0 siblings, 1 reply; 8+ messages in thread
From: Bernhard Fischer @ 2007-09-13  9:26 UTC (permalink / raw)
  To: buildroot

On Wed, Sep 12, 2007 at 10:53:17AM -0700, Darcy Watkins wrote:
>Hello,
>
>I tried to build the pciutils package for my powerpc 405 system, but it
>broke.
>
>i386-ports.c includes i386-io-linux.h which includes sys/io.h
>
>The error is: sys/io.h: No such file or directory.
>
>But the whole thing appears suspicious because I am building for powerpc
>405 not for i386 so I think that the package must really be broken in
>the make scripts since it shouldn't be building 1386 dependent files
>when cross compiling for powerpc.
>
>The problem appears to be line #23 of the pciutils-2.2.6/lib/configure
>script in the pciutils source.  Line #15 was patched to not have the
>"sys" variable be derived from the build host, but line #23 has:
>
>   cpu=`uname -m | sed ' ... black magic stuff ...'`
>
>The result is that pciutils is configured for i386 (my build host cpu
>type) and then it attempts to cross compile it for powerpc.
>
>I think that the short solution is to patch line #23 so that it derives
>cpu from architecture variables instead of the output of uname.

Sounds ok. Is this already fixed updstream? If not it would be nice if
you could make sure that we can inherit a working version from
upstream..

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

* [Buildroot] pciutils-2.2.6 fails to build for powerpc  405
  2007-09-13  9:26 ` Bernhard Fischer
@ 2007-09-14 15:01   ` Darcy Watkins
  2008-02-13 18:05     ` Darcy Watkins
  0 siblings, 1 reply; 8+ messages in thread
From: Darcy Watkins @ 2007-09-14 15:01 UTC (permalink / raw)
  To: buildroot

Hello Bernhard et al,

I checked into this.  Extracted from email response from Martin who owns
/ maintains PCI utils...

>> I believe that in order to properly support cross compiling, the 
>> configure scripts need to check the variables normally associated
with 
>> cross compiling and target architecture rather than using the "uname"
>> utility of the machine running the build (otherwise it will configure

>> for the build machine and then attempt to cross compile it for the 
>> target).
>
>Which variables do you have in mind?

I looked at the "configure" script and put in a few "echo"'s to spit out
typical cross compile variables that are set.  I notice that $ARCH and
$CROSS_COMPILE are not set when using buildroot.  It appears that the
only one reliable (I know of) is $CC.  When using buildroot to compile
for powerpc, I see something like:

  <path to my toolchain>/powerpc-linux-uclibc-gcc

So I could suggest to Martin a check of $CC for a prefix in front of the
gcc (after any path).  If so then extract contents as follows:

  Cpu <== from the prefix up to the first "-"
  Sys <== from the prefix after the first "-" to the "-" before the gcc
  Host <== I believe that this should still be derived from "uname"
since it
           describes the build machine not the target machine

If there is no prefix in front of the "gcc" then assume not cross
compiling (native compile) and use "uname" as is done at present.

I think that "linux-uclibc" will work out OK.

Ultimately, at this point, it appears that we only need sufficient logic
to ensure that $cpu takes on a value other than "i386" when cross
compiling for other architectures, because that is all the configure
script checks for now.

I don't know how this will behave for native compiling on all the other
operating systems (BSD, cygwin, etc).  Is there a better variable to use
than $CC?

Regards,

Darcy


-----Original Message-----
From: Bernhard Fischer [mailto:rep.dot.nop at gmail.com] 
Sent: Thursday, September 13, 2007 2:26 AM
To: Darcy Watkins
Cc: buildroot@uclibc.org
Subject: Re: [Buildroot] pciutils-2.2.6 fails to build for powerpc 405

--snip!--

>I think that the short solution is to patch line #23 so that it derives
>cpu from architecture variables instead of the output of uname.

Sounds ok. Is this already fixed updstream? If not it would be nice if
you could make sure that we can inherit a working version from
upstream..

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

* [Buildroot] pciutils-2.2.6 fails to build for powerpc  405
  2007-09-14 15:01   ` Darcy Watkins
@ 2008-02-13 18:05     ` Darcy Watkins
  2008-02-13 18:14       ` Darcy Watkins
       [not found]       ` <mj+md-20080213.180833.12781.albireo@ucw.cz>
  0 siblings, 2 replies; 8+ messages in thread
From: Darcy Watkins @ 2008-02-13 18:05 UTC (permalink / raw)
  To: buildroot

Hello,

Included / attached is patch to allow pciutils to cross compile under
buildroot for non i386 architectures.  I believe that the pciutils
package will natively compile for non i386 architectures.  It failed to
cross compile due to the use of 'uname' on the build machine by the
configure script to attempt to determine system information that applies
to the target machine.

I am including the original email thread at the end of the email since
it dates back to sep'07.

The updated configure script will now check the $CC variable.  If it is
a simple compiler name such as "gcc" or "cc", it will assume native
compile.  If is sees the compiler name of the form of
"powerpc-linux-uclibc-gcc" it will assume cross compiled.

For cross compile, I pipe the basename into 'cut' and get cpu from the
first part of the name and the sys from the second.  For native compile,
I just allow the existing usage of 'uname' to prevail.

For buildroot project, the attached can simply replace:
   Buildroot/package/pciutils/pciutils.patch

For pciutils (upstream project) the patch will update:
   pciutils-2.2.6/lib/configure

The patch would need to be in the buildroot project until such a time
that the updated script comes into buildroot from the upstream project.

The patch is below for perusal, and attached as a file to ensure that
Windows / Outlook doesn't mangle it up.

--- pciutils-2.2.6/lib/configure.theorig	2008-02-12
10:56:24.000000000 -0800
+++ pciutils-2.2.6/lib/configure	2008-02-12 10:59:05.000000000
-0800
@@ -12,6 +12,21 @@ echo_n() {
 echo_n "Configuring libpci for your system..."
 idsdir=${1:-/usr/share}
 version=${2:-0.0}
+if [ $CC ] ; then
+	# Cross compiling is assumed if $CC is of the form
$cpu-$sys[-$variant]-$compiler
+	# i.e. not simply "gcc", "cc", etc.
+	sys=`basename $CC | cut -d '-' -f 2`
+	if [ "$sys" == "`basename $CC`" ] ; then
+		# Native compiled
+		unset sys
+	else
+		cpu=`basename $CC | cut -d '-' -f 1`
+		rel=$4
+		echo "cross-compiled for ${cpu}-${sys} $rel using: $CC"
+	fi
+fi
+
+if [ ! $sys ] ; then
 sys=`uname -s`
 rel=`uname -r`
 if [ "$sys" = "AIX" -a -x /usr/bin/oslevel -a -x /usr/sbin/lsattr ]
@@ -33,6 +48,7 @@ cpu=`echo $host | sed 's/^\([^-]*\)-\([^
 sys=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
 rel=${4:-$rel}
 echo " $host $rel"
+fi
 zlib=$5
 
 c=config.h

I have tested this for buildroot cross compile on an i386 linux (fc6)
build machine for powerpc target to run on embedded linux.  I have not
tested for any other architecture (or build machine config).

Regards,

Darcy



-----Original Message-----
From: buildroot-bounces@uclibc.org [mailto:buildroot-bounces at uclibc.org]
On Behalf Of Darcy Watkins
Sent: Friday, September 14, 2007 8:02 AM
To: buildroot at uclibc.org
Subject: Re: [Buildroot] pciutils-2.2.6 fails to build for powerpc 405

Hello Bernhard et al,

I checked into this.  Extracted from email response from Martin who owns
/ maintains PCI utils...

>> I believe that in order to properly support cross compiling, the 
>> configure scripts need to check the variables normally associated
with 
>> cross compiling and target architecture rather than using the "uname"
>> utility of the machine running the build (otherwise it will configure

>> for the build machine and then attempt to cross compile it for the 
>> target).
>
>Which variables do you have in mind?

I looked at the "configure" script and put in a few "echo"'s to spit out
typical cross compile variables that are set.  I notice that $ARCH and
$CROSS_COMPILE are not set when using buildroot.  It appears that the
only one reliable (I know of) is $CC.  When using buildroot to compile
for powerpc, I see something like:

  <path to my toolchain>/powerpc-linux-uclibc-gcc

So I could suggest to Martin a check of $CC for a prefix in front of the
gcc (after any path).  If so then extract contents as follows:

  Cpu <== from the prefix up to the first "-"
  Sys <== from the prefix after the first "-" to the "-" before the gcc
  Host <== I believe that this should still be derived from "uname"
since it
           describes the build machine not the target machine

++++++++++
*** DLW feb13,2008 - Host will be derived from cpu and sys as before for
native compile and not be used at all for cross compile.
++++++++++

If there is no prefix in front of the "gcc" then assume not cross
compiling (native compile) and use "uname" as is done at present.

I think that "linux-uclibc" will work out OK.

Ultimately, at this point, it appears that we only need sufficient logic
to ensure that $cpu takes on a value other than "i386" when cross
compiling for other architectures, because that is all the configure
script checks for now.

I don't know how this will behave for native compiling on all the other
operating systems (BSD, cygwin, etc).  Is there a better variable to use
than $CC?

Regards,

Darcy


-----Original Message-----
From: Bernhard Fischer [mailto:rep.dot.nop at gmail.com] 
Sent: Thursday, September 13, 2007 2:26 AM
To: Darcy Watkins
Cc: buildroot@uclibc.org
Subject: Re: [Buildroot] pciutils-2.2.6 fails to build for powerpc 405

--snip!--

>I think that the short solution is to patch line #23 so that it derives
>cpu from architecture variables instead of the output of uname.

Sounds ok. Is this already fixed updstream? If not it would be nice if
you could make sure that we can inherit a working version from
upstream..
_______________________________________________
buildroot mailing list
buildroot at uclibc.org
http://busybox.net/mailman/listinfo/buildroot
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: diff.txt
Url: http://busybox.net/lists/buildroot/attachments/20080213/202a2a8e/attachment.txt 

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

* [Buildroot] pciutils-2.2.6 fails to build for powerpc  405
  2008-02-13 18:05     ` Darcy Watkins
@ 2008-02-13 18:14       ` Darcy Watkins
       [not found]       ` <mj+md-20080213.180833.12781.albireo@ucw.cz>
  1 sibling, 0 replies; 8+ messages in thread
From: Darcy Watkins @ 2008-02-13 18:14 UTC (permalink / raw)
  To: buildroot

Hello,

The submitted patch may also address bug #1904 "Impossible to build
pciutils for mipsel architecture"

Regards,

Darcy

-----Original Message-----
From: Darcy Watkins 
Sent: Wednesday, February 13, 2008 10:06 AM
To: buildroot at uclibc.org
Cc: 'mj at ucw.cz'
Subject: RE: [Buildroot] pciutils-2.2.6 fails to build for powerpc 405

Hello,

Included / attached is patch to allow pciutils to cross compile under
buildroot for non i386 architectures.  I believe that the pciutils
package will natively compile for non i386 architectures.  It failed to
cross compile due to the use of 'uname' on the build machine by the
configure script to attempt to determine system information that applies
to the target machine.

--snip!--

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

* [Buildroot] pciutils-2.2.6 fails to build for powerpc  405
       [not found]       ` <mj+md-20080213.180833.12781.albireo@ucw.cz>
@ 2008-02-13 19:45         ` Darcy Watkins
  0 siblings, 0 replies; 8+ messages in thread
From: Darcy Watkins @ 2008-02-13 19:45 UTC (permalink / raw)
  To: buildroot

Hello,

Based on a suggestion from Martin, here is a simpler patch that applies
only to the buildroot project.


--- package/pciutils/pciutils.mk.theorig	2008-02-13
11:15:59.000000000 -0800
+++ package/pciutils/pciutils.mk	2008-02-13 11:17:46.000000000
-0800
@@ -30,6 +30,7 @@ $(PCIUTILS_DIR)/.unpacked: $(DL_DIR)/$(P
 
 $(PCIUTILS_DIR)/.compiled: $(PCIUTILS_DIR)/.unpacked
 	$(MAKE1) CC=$(TARGET_CC) OPT="$(TARGET_CFLAGS)" -C
$(PCIUTILS_DIR) \
+		HOST=$(BR2_ARCH)-`echo $(BR2_GNU_TARGET_SUFFIX) | cut -d
'-' -f 1` \
 		SHAREDIR="/usr/share/misc" \
 		PREFIX=/usr
 	touch $(PCIUTILS_DIR)/.compiled



...and then also delete the existing package/pciutils/pciutils.patch
file since it will no longer be needed.

Regards,

Darcy




-----Original Message-----
From: Martin Mares [mailto:mj at ucw.cz] 
Sent: Wednesday, February 13, 2008 10:15 AM
To: Darcy Watkins
Cc: buildroot at uclibc.org
Subject: Re: [Buildroot] pciutils-2.2.6 fails to build for powerpc 405

Hello!

> Included / attached is patch to allow pciutils to cross compile under
> buildroot for non i386 architectures.  I believe that the pciutils
> package will natively compile for non i386 architectures.  It failed
to
> cross compile due to the use of 'uname' on the build machine by the
> configure script to attempt to determine system information that
applies
> to the target machine.

I wonder if it is necessary to perform this magic which will likely
work only with the GNU toolchain.

Wouldn't it be enough to run for example `make HOST=ppc-linux' ?

If it is too cumersome for the buildroot project, I can of course apply
your patch, but on the other hand there is already enough magic in the
configure script, so I obviously tend to avoid adding more :-)

				Have a nice fortnight
-- 
Martin `MJ' Mares                          <mj@ucw.cz>
http://mj.ucw.cz/
Faculty of Math and Physics, Charles University, Prague, Czech Rep.,
Earth
To understand a program you must become both the machine and the
program.
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: diff.txt
Url: http://busybox.net/lists/buildroot/attachments/20080213/d4857253/attachment.txt 

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

* [Buildroot] pciutils-2.2.6 fails to build for powerpc  405
@ 2008-02-14 21:57 Steve Calfee
  2008-02-14 22:53 ` Darcy Watkins
  0 siblings, 1 reply; 8+ messages in thread
From: Steve Calfee @ 2008-02-14 21:57 UTC (permalink / raw)
  To: buildroot

Hi, 
A while back I tried to build a 823 system. I couldn't get the kernel to compile. The kernel has both ppc and powerpc trees - which one are you using for the 405? Do you have any idea why there are two and what is the important difference?

Thanks, Steve

----- Original Message ----
From: Darcy Watkins <DWatkins@tranzeo.com>
To: buildroot at uclibc.org
Cc: mj at ucw.cz
Sent: Wednesday, February 13, 2008 10:05:48 AM
Subject: Re: [Buildroot] pciutils-2.2.6 fails to build for powerpc  405


Hello,

Included 
/ 
attached 
is 
patch 
to 
allow 
pciutils 
to 
cross 
compile 
under
buildroot 
for 
non 
i386 
architectures.  
I 
believe 
that 
the 
pciutils
package 
will 
natively 
compile 
for 
non 
i386 
architectures.  
It 
failed 
to
cross 
compile 
due 
to 
the 
use 
of 
'uname' 
on 
the 
build 
machine 
by 
the
configure 
script 
to 
attempt 
to 
determine 
system 
information 
that 
applies
to 
the 
target 
machine.

I 
am 
including 
the 
original 
email 
thread 
at 
the 
end 
of 
the 
email 
since
it 
dates 
back 
to 
sep'07.

The 
updated 
configure 
script 
will 
now 
check 
the 
$CC 
variable.  
If 
it 
is
a 
simple 
compiler 
name 
such 
as 
"gcc" 
or 
"cc", 
it 
will 
assume 
native
compile.  
If 
is 
sees 
the 
compiler 
name 
of 
the 
form 
of
"powerpc-linux-uclibc-gcc" 
it 
will 
assume 
cross 
compiled.

For 
cross 
compile, 
I 
pipe 
the 
basename 
into 
'cut' 
and 
get 
cpu 
from 
the
first 
part 
of 
the 
name 
and 
the 
sys 
from 
the 
second.  
For 
native 
compile,
I 
just 
allow 
the 
existing 
usage 
of 
'uname' 
to 
prevail.

For 
buildroot 
project, 
the 
attached 
can 
simply 
replace:
  
 
Buildroot/package/pciutils/pciutils.patch

For 
pciutils 
(upstream 
project) 
the 
patch 
will 
update:
  
 
pciutils-2.2.6/lib/configure

The 
patch 
would 
need 
to 
be 
in 
the 
buildroot 
project 
until 
such 
a 
time
that 
the 
updated 
script 
comes 
into 
buildroot 
from 
the 
upstream 
project.

The 
patch 
is 
below 
for 
perusal, 
and 
attached 
as 
a 
file 
to 
ensure 
that
Windows 
/ 
Outlook 
doesn't 
mangle 
it 
up.

--- 
pciutils-2.2.6/lib/configure.theorig    
2008-02-12
10:56:24.000000000 
-0800
+++ 
pciutils-2.2.6/lib/configure    
2008-02-12 
10:59:05.000000000
-0800
@@ 
-12,6 
+12,21 
@@ 
echo_n() 
{
 
echo_n 
"Configuring 
libpci 
for 
your 
system..."
 
idsdir=${1:-/usr/share}
 
version=${2:-0.0}
+if 
[ 
$CC 
] 
; 
then
+    
# 
Cross 
compiling 
is 
assumed 
if 
$CC 
is 
of 
the 
form
$cpu-$sys[-$variant]-$compiler
+    
# 
i.e. 
not 
simply 
"gcc", 
"cc", 
etc.
+    
sys=`basename 
$CC 
| 
cut 
-d 
'-' 
-f 
2`
+    
if 
[ 
"$sys" 
== 
"`basename 
$CC`" 
] 
; 
then
+    
    
# 
Native 
compiled
+    
    
unset 
sys
+    
else
+    
    
cpu=`basename 
$CC 
| 
cut 
-d 
'-' 
-f 
1`
+    
    
rel=$4
+    
    
echo 
"cross-compiled 
for 
${cpu}-${sys} 
$rel 
using: 
$CC"
+    
fi
+fi
+
+if 
[ 
! 
$sys 
] 
; 
then
 
sys=`uname 
-s`
 
rel=`uname 
-r`
 
if 
[ 
"$sys" 
= 
"AIX" 
-a 
-x 
/usr/bin/oslevel 
-a 
-x 
/usr/sbin/lsattr 
]
@@ 
-33,6 
+48,7 
@@ 
cpu=`echo 
$host 
| 
sed 
's/^\([^-]*\)-\([^
 
sys=`echo 
$host 
| 
sed 
's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
 
rel=${4:-$rel}
 
echo 
" 
$host 
$rel"
+fi
 
zlib=$5
 
 
c=config.h

I 
have 
tested 
this 
for 
buildroot 
cross 
compile 
on 
an 
i386 
linux 
(fc6)
build 
machine 
for 
powerpc 
target 
to 
run 
on 
embedded 
linux.  
I 
have 
not
tested 
for 
any 
other 
architecture 
(or 
build 
machine 
config).

Regards,

Darcy



-----Original 
Message-----
From: 
buildroot-bounces at uclibc.org 
[mailto:buildroot-bounces at uclibc.org]
On 
Behalf 
Of 
Darcy 
Watkins
Sent: 
Friday, 
September 
14, 
2007 
8:02 
AM
To: 
buildroot at uclibc.org
Subject: 
Re: 
[Buildroot] 
pciutils-2.2.6 
fails 
to 
build 
for 
powerpc 
405

Hello 
Bernhard 
et 
al,

I 
checked 
into 
this.  
Extracted 
from 
email 
response 
from 
Martin 
who 
owns
/ 
maintains 
PCI 
utils...

>> 
I 
believe 
that 
in 
order 
to 
properly 
support 
cross 
compiling, 
the 
>> 
configure 
scripts 
need 
to 
check 
the 
variables 
normally 
associated
with 
>> 
cross 
compiling 
and 
target 
architecture 
rather 
than 
using 
the 
"uname"
>> 
utility 
of 
the 
machine 
running 
the 
build 
(otherwise 
it 
will 
configure

>> 
for 
the 
build 
machine 
and 
then 
attempt 
to 
cross 
compile 
it 
for 
the 
>> 
target).
>
>Which 
variables 
do 
you 
have 
in 
mind?

I 
looked 
at 
the 
"configure" 
script 
and 
put 
in 
a 
few 
"echo"'s 
to 
spit 
out
typical 
cross 
compile 
variables 
that 
are 
set.  
I 
notice 
that 
$ARCH 
and
$CROSS_COMPILE 
are 
not 
set 
when 
using 
buildroot.  
It 
appears 
that 
the
only 
one 
reliable 
(I 
know 
of) 
is 
$CC.  
When 
using 
buildroot 
to 
compile
for 
powerpc, 
I 
see 
something 
like:

  
<path 
to 
my 
toolchain>/powerpc-linux-uclibc-gcc

So 
I 
could 
suggest 
to 
Martin 
a 
check 
of 
$CC 
for 
a 
prefix 
in 
front 
of 
the
gcc 
(after 
any 
path).  
If 
so 
then 
extract 
contents 
as 
follows:

  
Cpu 
<== 
from 
the 
prefix 
up 
to 
the 
first 
"-"
  
Sys 
<== 
from 
the 
prefix 
after 
the 
first 
"-" 
to 
the 
"-" 
before 
the 
gcc
  
Host 
<== 
I 
believe 
that 
this 
should 
still 
be 
derived 
from 
"uname"
since 
it
  
  
  
  
  
 
describes 
the 
build 
machine 
not 
the 
target 
machine

++++++++++
*** 
DLW 
feb13,2008 
- 
Host 
will 
be 
derived 
from 
cpu 
and 
sys 
as 
before 
for
native 
compile 
and 
not 
be 
used 
at 
all 
for 
cross 
compile.
++++++++++

If 
there 
is 
no 
prefix 
in 
front 
of 
the 
"gcc" 
then 
assume 
not 
cross
compiling 
(native 
compile) 
and 
use 
"uname" 
as 
is 
done 
at 
present.

I 
think 
that 
"linux-uclibc" 
will 
work 
out 
OK.

Ultimately, 
at 
this 
point, 
it 
appears 
that 
we 
only 
need 
sufficient 
logic
to 
ensure 
that 
$cpu 
takes 
on 
a 
value 
other 
than 
"i386" 
when 
cross
compiling 
for 
other 
architectures, 
because 
that 
is 
all 
the 
configure
script 
checks 
for 
now.

I 
don't 
know 
how 
this 
will 
behave 
for 
native 
compiling 
on 
all 
the 
other
operating 
systems 
(BSD, 
cygwin, 
etc).  
Is 
there 
a 
better 
variable 
to 
use
than 
$CC?

Regards,

Darcy


-----Original 
Message-----
From: 
Bernhard 
Fischer 
[mailto:rep.dot.nop at gmail.com] 
Sent: 
Thursday, 
September 
13, 
2007 
2:26 
AM
To: 
Darcy 
Watkins
Cc: 
buildroot@uclibc.org
Subject: 
Re: 
[Buildroot] 
pciutils-2.2.6 
fails 
to 
build 
for 
powerpc 
405

--snip!--

>I 
think 
that 
the 
short 
solution 
is 
to 
patch 
line 
#23 
so 
that 
it 
derives
>cpu 
from 
architecture 
variables 
instead 
of 
the 
output 
of 
uname.

Sounds 
ok. 
Is 
this 
already 
fixed 
updstream? 
If 
not 
it 
would 
be 
nice 
if
you 
could 
make 
sure 
that 
we 
can 
inherit 
a 
working 
version 
from
upstream..
_______________________________________________
buildroot 
mailing 
list
buildroot at uclibc.org
http://busybox.net/mailman/listinfo/buildroot


-----Inline Attachment Follows-----

--- 
pciutils-2.2.6/lib/configure.theorig    
2008-02-12 
10:56:24.000000000 
-0800
+++ 
pciutils-2.2.6/lib/configure    
2008-02-12 
10:59:05.000000000 
-0800
@@ 
-12,6 
+12,21 
@@ 
echo_n() 
{
 
echo_n 
"Configuring 
libpci 
for 
your 
system..."
 
idsdir=${1:-/usr/share}
 
version=${2:-0.0}
+if 
[ 
$CC 
] 
; 
then
+    
# 
Cross 
compiling 
is 
assumed 
if 
$CC 
is 
of 
the 
form 
$cpu-$sys[-$variant]-$compiler
+    
# 
i.e. 
not 
simply 
"gcc", 
"cc", 
etc.
+    
sys=`basename 
$CC 
| 
cut 
-d 
'-' 
-f 
2`
+    
if 
[ 
"$sys" 
== 
"`basename 
$CC`" 
] 
; 
then
+    
    
# 
Native 
compiled
+    
    
unset 
sys
+    
else
+    
    
cpu=`basename 
$CC 
| 
cut 
-d 
'-' 
-f 
1`
+    
    
rel=$4
+    
    
echo 
"cross-compiled 
for 
${cpu}-${sys} 
$rel 
using: 
$CC"
+    
fi
+fi
+
+if 
[ 
! 
$sys 
] 
; 
then
 
sys=`uname 
-s`
 
rel=`uname 
-r`
 
if 
[ 
"$sys" 
= 
"AIX" 
-a 
-x 
/usr/bin/oslevel 
-a 
-x 
/usr/sbin/lsattr 
]
@@ 
-33,6 
+48,7 
@@ 
cpu=`echo 
$host 
| 
sed 
's/^\([^-]*\)-\([^
 
sys=`echo 
$host 
| 
sed 
's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
 
rel=${4:-$rel}
 
echo 
" 
$host 
$rel"
+fi
 
zlib=$5
 
 
c=config.h



-----Inline Attachment Follows-----

_______________________________________________
buildroot 
mailing 
list
buildroot at uclibc.org
http://busybox.net/mailman/listinfo/buildroot






      ____________________________________________________________________________________
Never miss a thing.  Make Yahoo your home page. 
http://www.yahoo.com/r/hs
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://busybox.net/lists/buildroot/attachments/20080214/a599f886/attachment.htm 

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

* [Buildroot] pciutils-2.2.6 fails to build for powerpc  405
  2008-02-14 21:57 [Buildroot] pciutils-2.2.6 fails to build for powerpc 405 Steve Calfee
@ 2008-02-14 22:53 ` Darcy Watkins
  0 siblings, 0 replies; 8+ messages in thread
From: Darcy Watkins @ 2008-02-14 22:53 UTC (permalink / raw)
  To: buildroot

For powerpc, we had to resort to building the kernel separate from
buildroot and then install it into the staging area.  It is a bit of a
hack.  I think that with kernel 2.6.24, the ppc stuff has mostly been
migrated to powerpc (at least I think the 4xx family has migrated).
This means that soon we should see much better powerpc architecture
support in projects like buildroot for the kernel.  I have found that
most packages I have used in buildroot have cross compiled OK (sometimes
with the odd bit of shoe horn work)

Regards,

Darcy


________________________________________
From: Steve Calfee [mailto:nospamcalfee at yahoo.com] 
Sent: Thursday, February 14, 2008 1:58 PM
To: Darcy Watkins; buildroot at uclibc.org
Cc: mj at ucw.cz
Subject: Re: [Buildroot] pciutils-2.2.6 fails to build for powerpc 405

Hi, 
A while back I tried to build a 823 system. I couldn't get the kernel to
compile. The kernel has both ppc and powerpc trees - which one are you
using for the 405? Do you have any idea why there are two and what is
the important difference?

Thanks, Steve
--snip!--

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

end of thread, other threads:[~2008-02-14 22:53 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-02-14 21:57 [Buildroot] pciutils-2.2.6 fails to build for powerpc 405 Steve Calfee
2008-02-14 22:53 ` Darcy Watkins
  -- strict thread matches above, loose matches on Subject: below --
2007-09-12 17:53 Darcy Watkins
2007-09-13  9:26 ` Bernhard Fischer
2007-09-14 15:01   ` Darcy Watkins
2008-02-13 18:05     ` Darcy Watkins
2008-02-13 18:14       ` Darcy Watkins
     [not found]       ` <mj+md-20080213.180833.12781.albireo@ucw.cz>
2008-02-13 19:45         ` Darcy Watkins

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