toolchain: cpu-type fixes.

This commit is contained in:
Arne Fitzenreiter
2011-09-11 09:25:16 +02:00
parent 1092a072fe
commit 3529923589
8 changed files with 36 additions and 27 deletions

View File

@@ -48,6 +48,8 @@ else
EXTRA_INSTALL =
endif
EXTRA_CONFIG += --build=$(BUILDTARGET)
###############################################################################
# Top-level Rules
###############################################################################

View File

@@ -52,6 +52,8 @@ else
endif
endif
EXTRA_CONFIG += --build=$(BUILDTARGET)
###############################################################################
# Top-level Rules
###############################################################################

View File

@@ -51,14 +51,14 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
ifeq "$(PASS)" "1"
mv -v /tools/bin/{ld,ld-old}
mv -v /tools/i686-pc-linux-gnu/bin/{ld,ld-old}
mv -v /tools/$(BUILDTARGET)/bin/{ld,ld-old}
cp -v /tools/bin/{ld-new,ld}
ln -sv /tools/bin/ld /tools/i686-pc-linux-gnu/bin/ld
gcc -dumpspecs > /tools/lib/gcc/i686-pc-linux-gnu/4.1.2/specs
sed 's@^/lib/ld-linux.so.2@/tools&@g' /tools/lib/gcc/i686-pc-linux-gnu/4.1.2/specs > tempspecfile
mv -vf tempspecfile /tools/lib/gcc/i686-pc-linux-gnu/4.1.2/specs
find /tools/lib/gcc/i686-pc-linux-gnu/4.1.2/include/* -maxdepth 0 -xtype d -exec rm -rvf '{}' \;
rm -vf `grep -l "DO NOT EDIT THIS FILE" /tools/lib/gcc/i686-pc-linux-gnu/4.1.2/include/*`
ln -sv /tools/bin/ld /tools/$(BUILDTARGET)/bin/ld
gcc -dumpspecs > /tools/lib/gcc/$(BUILDTARGET)/4.1.2/specs
sed 's@^/lib/ld-linux.so@/tools&@g' /tools/lib/gcc/$(BUILDTARGET)/4.1.2/specs > tempspecfile
mv -vf tempspecfile /tools/lib/gcc/$(BUILDTARGET)/4.1.2/specs
find /tools/lib/gcc/$(BUILDTARGET)/4.1.2/include/* -maxdepth 0 -xtype d -exec rm -rvf '{}' \;
rm -vf `grep -l "DO NOT EDIT THIS FILE" /tools/lib/gcc/$(BUILDTARGET)/4.1.2/include/*`
endif
ifeq "$(PASS)" "2"
-strip --strip-debug /tools/lib/*
@@ -68,12 +68,12 @@ ifeq "$(PASS)" "2"
endif
ifeq "$(PASS)" "3"
mv -v /tools/bin/{ld,ld-old}
mv -v /tools/i686-pc-linux-gnu/bin/{ld,ld-old}
mv -v /tools/$(BUILDTARGET)/bin/{ld,ld-old}
mv -v /tools/bin/{ld-new,ld}
ln -sv /tools/bin/ld /tools/i686-pc-linux-gnu/bin/ld
ln -sv /tools/bin/ld /tools/$(BUILDTARGET)/bin/ld
gcc -dumpspecs | \
perl -p -e 's@/tools/lib/ld-linux.so.2@/lib/ld-linux.so.2@g;' \
perl -p -e 's@/tools/lib/ld-linux.so@/lib/ld-linux.so@g;' \
-e 's@\*startfile_prefix_spec:\n@$$_/usr/lib/ @g;' > \
/tools/lib/gcc/i686-pc-linux-gnu/4.1.2/specs
/tools/lib/gcc/$(BUILDTARGET)/4.1.2/specs
endif
@$(POSTBUILD)

View File

@@ -40,11 +40,13 @@ ifeq "$(ROOT)" ""
EXTRA_INSTALL =
else
TARGET = $(DIR_INFO)/$(THISAPP)-tools
EXTRA_CONFIG = --prefix=/tools --disable-nls --host=$(MACHINE)
EXTRA_CONFIG = --prefix=/tools --disable-nls
EXTRA_MAKE =
EXTRA_INSTALL =
endif
EXTRA_CONFIG += --build=$(BUILDTARGET)
###############################################################################
# Top-level Rules
###############################################################################
@@ -113,8 +115,8 @@ else
rm /tools/bin/hostname
mv -f /tools/bin/uname /tools/bin/uname.bak
echo '#!/bin/bash' > /tools/bin/uname
echo 'kernel=`/tools/uname.bak -r`' >> /bin/uname
echo '/tools/uname.bak $$* | sed 's/i.86/$(MACHINE)/g' | sed "s/$$kernel/2.6.32.45-ipfire/g"' >> /bin/uname
echo 'kernel=`/tools/bin/uname.bak -r`' >> /tools/bin/uname
echo '/tools/bin/uname.bak $$* | sed 's/i.86/$(MACHINE)/g' | sed "s/$$kernel/2.6.32.45-ipfire/g"' >> /tools/bin/uname
chmod 755 /tools/bin/uname
endif
@rm -rf $(DIR_APP)

View File

@@ -30,8 +30,6 @@ THISAPP = gcc-$(VER)
DL_FILE = $(THISAPP).tar.bz2
DL_FROM = $(URL_IPFIRE)
DIR_APP = $(DIR_SRC)/$(THISAPP)
CFLAGS =
CXXFLAGS =
# Normal build or /tools build.
#
@@ -73,6 +71,8 @@ else
endif
endif
EXTRA_CONFIG += --build=$(BUILDTARGET) --host=$(BUILDTARGET) --target=$(BUILDTARGET)
###############################################################################
# Top-level Rules
###############################################################################

View File

@@ -30,8 +30,6 @@ THISAPP = glibc-$(VER)
DL_FILE = $(THISAPP).tar.bz2
DL_FROM = $(URL_IPFIRE)
DIR_APP = $(DIR_SRC)/$(THISAPP)
CFLAGS =
CXXFLAGS =
# Normal build or /tools build.
#
@@ -53,6 +51,8 @@ else
EXTRA_INSTALL =
endif
EXTRA_CONFIG += --build=$(BUILDTARGET)
###############################################################################
# Top-level Rules
###############################################################################

View File

@@ -48,6 +48,8 @@ else
EXTRA_INSTALL =
endif
EXTRA_CONFIG += --build=$(BUILDTARGET)
###############################################################################
# Top-level Rules
###############################################################################

19
make.sh
View File

@@ -24,7 +24,7 @@
NAME="IPFire" # Software name
SNAME="ipfire" # Short name
VERSION="2.10" # Version number
VERSION="2.11" # Version number
CORE="53" # Core Level (Filename)
PAKFIRE_CORE="52" # Core Level (PAKFIRE)
GIT_BRANCH=`git status | head -n1 | cut -d" " -f4` # Git Branch
@@ -278,6 +278,7 @@ buildtoolchain() {
lfsmake1 tar
lfsmake1 texinfo
lfsmake1 util-linux
lfsmake1 strip
lfsmake1 cleanup-toolchain PASS=2
export PATH=$ORG_PATH
}
@@ -821,7 +822,7 @@ ipfirepackages() {
case "$1" in
build)
clear
PACKAGE=`ls -v -r $BASEDIR/cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$BUILDMACHINE.tar.gz 2> /dev/null | head -n 1`
PACKAGE=`ls -v -r $BASEDIR/cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$MACHINE.tar.gz 2> /dev/null | head -n 1`
#only restore on a clean disk
if [ ! -f log/cleanup-toolchain-2-tools ]; then
if [ ! -n "$PACKAGE" ]; then
@@ -951,27 +952,27 @@ toolchain)
prepareenv
beautify build_stage "Toolchain compilation - Native GCC: `gcc --version | grep GCC | awk {'print $3'}`"
buildtoolchain
echo "`date -u '+%b %e %T'`: Create toolchain tar.gz for $BUILDMACHINE" | tee -a $LOGFILE
echo "`date -u '+%b %e %T'`: Create toolchain tar.gz for $MACHINE" | tee -a $LOGFILE
test -d $BASEDIR/cache/toolchains || mkdir -p $BASEDIR/cache/toolchains
cd $BASEDIR && tar -zc --exclude='log/_build.*.log' -f cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$BUILDMACHINE.tar.gz \
cd $BASEDIR && tar -zc --exclude='log/_build.*.log' -f cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$MACHINE.tar.gz \
build/{bin,etc,usr/bin,usr/local} \
build/tools/{bin,etc,*-linux-gnu,include,lib,libexec,sbin,share,var} \
log >> $LOGFILE
md5sum cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$BUILDMACHINE.tar.gz \
> cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$BUILDMACHINE.md5
md5sum cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$MACHINE.tar.gz \
> cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$MACHINE.md5
stdumount
;;
gettoolchain)
# arbitrary name to be updated in case of new toolchain package upload
PACKAGE=$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$BUILDMACHINE
PACKAGE=$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$MACHINE
if [ ! -f $BASEDIR/cache/toolchains/$PACKAGE.tar.gz ]; then
URL_TOOLCHAIN=`grep URL_TOOLCHAIN lfs/Config | awk '{ print $3 }'`
test -d $BASEDIR/cache/toolchains || mkdir -p $BASEDIR/cache/toolchains
echo "`date -u '+%b %e %T'`: Load toolchain tar.gz for $BUILDMACHINE" | tee -a $LOGFILE
echo "`date -u '+%b %e %T'`: Load toolchain tar.gz for $MACHINE" | tee -a $LOGFILE
cd $BASEDIR/cache/toolchains
wget -U "IPFireSourceGrabber/2.x" $URL_TOOLCHAIN/$PACKAGE.tar.gz $URL_TOOLCHAIN/$PACKAGE.md5 >& /dev/null
if [ $? -ne 0 ]; then
echo "`date -u '+%b %e %T'`: error downloading $PACKAGE toolchain for $BUILDMACHINE machine" | tee -a $LOGFILE
echo "`date -u '+%b %e %T'`: error downloading $PACKAGE toolchain for $MACHINE machine" | tee -a $LOGFILE
else
if [ "`md5sum $PACKAGE.tar.gz | awk '{print $1}'`" = "`cat $PACKAGE.md5 | awk '{print $1}'`" ]; then
echo "`date -u '+%b %e %T'`: toolchain md5 ok" | tee -a $LOGFILE