On Wednesday 27 April 2005 02:49 pm, Michael Jennings wrote:
> Except that for cross-compiling you'll need to check $target_cpu, not
> $host_cpu.

uhh, no, but most people would never notice :P

build = machine the package is *building on*
host = machine the package will *run on*
target = machine the package will *generate code for*

for some packages, say binutils/gcc, this makes a lot of sense ... you can 
easily *build* gcc on an amd64 to be *host*ed on an i686 which will generate 
code for an arm *target*

for eterm, it doesnt really care about the target since it doesnt generate 
anything, thus it'd only care about the system it'd be running on (i.e. the 
host)

consider this simple example which shows why eterm shouldnt be using any 
$target variable but instead $host variables:

$ mkdir blah
$ cd blah
$ cat << EOF > configure.ac
AC_INIT(blah, 1.0)
AC_CANONICAL_BUILD
AC_CANONICAL_HOST
AC_CANONICAL_TARGET
AM_INIT_AUTOMAKE
AC_MSG_RESULT(build = \$build_cpu)
AC_MSG_RESULT(host = \$host_cpu)
AC_MSG_RESULT(target = \$target_cpu)
AC_OUTPUT(Makefile)
EOF
$ touch Makefile.am AUTHORS ChangeLog NEWS README
$ aclocal && autoconf && automake -a -c
<useless output snipped>

native build / execution
$ ./configure
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking target system type... x86_64-unknown-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
build = x86_64
host = x86_64
target = x86_64
configure: creating ./config.status
config.status: creating Makefile

build on amd64 to run on i686
$ ./configure --build=x86_64-linux --host=i686-linux                   
checking build system type... x86_64-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking target system type... i686-pc-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for i686-linux-strip... no
checking for strip... strip
build = x86_64
host = i686
target = i686
configure: creating ./config.status
config.status: creating Makefile

build on amd64 to run on i686 to generate code for arm
$ ./configure --build=x86_64-linux --host=i686-linux --target=arm-linux
checking build system type... x86_64-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking target system type... arm-unknown-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for i686-linux-strip... no
checking for strip... strip
build = x86_64
host = i686
target = arm
configure: creating ./config.status
config.status: creating Makefile
-mike


-------------------------------------------------------
SF.Net email is sponsored by: Tell us your software development plans!
Take this survey and enter to win a one-year sub to SourceForge.net
Plus IDC's 2005 look-ahead and a copy of this survey
Click here to start!  http://www.idcswdc.com/cgi-bin/survey?id=105hix
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to