Ok, I think it really works now. :)
This commit is contained in:
parent
c1701b3e17
commit
9816f94292
|
@ -56,8 +56,9 @@ $(BINUTILS_DIR2)/.configured:
|
||||||
CC=$(TARGET_CROSS)gcc \
|
CC=$(TARGET_CROSS)gcc \
|
||||||
$(BINUTILS_DIR)/configure \
|
$(BINUTILS_DIR)/configure \
|
||||||
--target=$(GNU_TARGET_NAME) \
|
--target=$(GNU_TARGET_NAME) \
|
||||||
|
--host=$(GNU_TARGET_NAME) \
|
||||||
--prefix=/usr \
|
--prefix=/usr \
|
||||||
--exec-prefix=$(STAGING_DIR) \
|
--exec-prefix=/usr \
|
||||||
--bindir=/usr/bin \
|
--bindir=/usr/bin \
|
||||||
--sbindir=/usr/sbin \
|
--sbindir=/usr/sbin \
|
||||||
--libexecdir=/usr/lib \
|
--libexecdir=/usr/lib \
|
||||||
|
@ -169,15 +170,19 @@ $(GCC_BUILD_DIR3)/.gcc_build_hacks:
|
||||||
# Make certain the uClibc include files are found
|
# Make certain the uClibc include files are found
|
||||||
#
|
#
|
||||||
perl -i -p -e "s,^NATIVE_SYSTEM_HEADER_DIR.*,NATIVE_SYSTEM_HEADER_DIR=\
|
perl -i -p -e "s,^NATIVE_SYSTEM_HEADER_DIR.*,NATIVE_SYSTEM_HEADER_DIR=\
|
||||||
$(STAGING_DIR)/include,;" $(GCC_DIR)/gcc/Makefile.in;
|
/usr/include,;" $(GCC_DIR)/gcc/Makefile.in;
|
||||||
perl -i -p -e "s,^CROSS_SYSTEM_HEADER_DIR.*,CROSS_SYSTEM_HEADER_DIR=\
|
perl -i -p -e "s,^CROSS_SYSTEM_HEADER_DIR.*,CROSS_SYSTEM_HEADER_DIR=\
|
||||||
$(STAGING_DIR)/include,;" $(GCC_DIR)/gcc/Makefile.in;
|
/usr/include,;" $(GCC_DIR)/gcc/Makefile.in;
|
||||||
perl -i -p -e "s,^#define.*STANDARD_INCLUDE_DIR.*,#define STANDARD_INCLUDE_DIR \
|
perl -i -p -e "s,^#define.*STANDARD_INCLUDE_DIR.*,#define STANDARD_INCLUDE_DIR \
|
||||||
\"/usr/include\",;" $(GCC_DIR)/gcc/cppdefault.h;
|
\"/usr/include\",;" $(GCC_DIR)/gcc/cppdefault.h;
|
||||||
mkdir -p $(GCC_BUILD_DIR3)
|
mkdir -p $(GCC_BUILD_DIR3)
|
||||||
touch $(GCC_BUILD_DIR3)/.gcc_build_hacks
|
touch $(GCC_BUILD_DIR3)/.gcc_build_hacks
|
||||||
|
|
||||||
$(GCC_BUILD_DIR3)/.configured: $(GCC_BUILD_DIR3)/.gcc_build_hacks
|
$(GCC_BUILD_DIR3)/.configured: $(GCC_BUILD_DIR3)/.gcc_build_hacks
|
||||||
|
mkdir -p $(TARGET_DIR)/usr/lib/gcc-lib
|
||||||
|
mkdir -p $(TARGET_DIR)/usr/$(GNU_TARGET_NAME)
|
||||||
|
(cd $(TARGET_DIR)/usr/$(GNU_TARGET_NAME); ln -fs ../include)
|
||||||
|
(cd $(TARGET_DIR)/usr/$(GNU_TARGET_NAME); ln -fs ../include sys-include)
|
||||||
(cd $(GCC_BUILD_DIR3); PATH=$(STAGING_DIR)/bin:$$PATH \
|
(cd $(GCC_BUILD_DIR3); PATH=$(STAGING_DIR)/bin:$$PATH \
|
||||||
AS=$(TARGET_CROSS)as \
|
AS=$(TARGET_CROSS)as \
|
||||||
LD=$(TARGET_CROSS)ld \
|
LD=$(TARGET_CROSS)ld \
|
||||||
|
@ -189,20 +194,20 @@ $(GCC_BUILD_DIR3)/.configured: $(GCC_BUILD_DIR3)/.gcc_build_hacks
|
||||||
RANLIB=$(TARGET_CROSS)ranlib \
|
RANLIB=$(TARGET_CROSS)ranlib \
|
||||||
$(GCC_DIR)/configure \
|
$(GCC_DIR)/configure \
|
||||||
--target=$(GNU_TARGET_NAME) \
|
--target=$(GNU_TARGET_NAME) \
|
||||||
--prefix=$(STAGING_DIR) \
|
--host=$(GNU_TARGET_NAME) \
|
||||||
--exec-prefix=$(STAGING_DIR) \
|
--prefix=/usr \
|
||||||
--bindir=$(STAGING_DIR)/bin \
|
--exec-prefix=/usr \
|
||||||
--sbindir=$(STAGING_DIR)/sbin \
|
--bindir=/usr/bin \
|
||||||
--sysconfdir=$(STAGING_DIR)/etc \
|
--sbindir=/usr/sbin \
|
||||||
--datadir=$(STAGING_DIR)/share \
|
--sysconfdir=/etc \
|
||||||
--localstatedir=$(STAGING_DIR)/var \
|
--datadir=/usr/share \
|
||||||
--mandir=$(STAGING_DIR)/man \
|
--localstatedir=/var \
|
||||||
--infodir=$(STAGING_DIR)/info \
|
--mandir=/usr/man \
|
||||||
--with-local-prefix=$(STAGING_DIR)/usr/local \
|
--infodir=/usr/info \
|
||||||
--libdir=$(STAGING_DIR)/lib \
|
--with-local-prefix=/usr/local \
|
||||||
--includedir=$(STAGING_DIR)/include \
|
--libdir=/usr/lib \
|
||||||
--with-gxx-include-dir=$(STAGING_DIR)/include/c++ \
|
--includedir=$(TARGET_DIR)/usr/include \
|
||||||
--oldincludedir=$(STAGING_DIR)/include \
|
--with-gxx-include-dir=$(TARGET_DIR)/usr/include/c++ \
|
||||||
--enable-shared $(MULTILIB) \
|
--enable-shared $(MULTILIB) \
|
||||||
--enable-target-optspace --disable-nls \
|
--enable-target-optspace --disable-nls \
|
||||||
--with-gnu-ld --disable-__cxa_atexit \
|
--with-gnu-ld --disable-__cxa_atexit \
|
||||||
|
@ -220,46 +225,58 @@ $(GCC_BUILD_DIR3)/.compiled: $(GCC_BUILD_DIR3)/.configured
|
||||||
NM=$(TARGET_CROSS)nm \
|
NM=$(TARGET_CROSS)nm \
|
||||||
CC=$(TARGET_CROSS)gcc \
|
CC=$(TARGET_CROSS)gcc \
|
||||||
GCC=$(TARGET_CROSS)gcc \
|
GCC=$(TARGET_CROSS)gcc \
|
||||||
CXX=$(TARGET_CROSS)c++ \
|
CXX=$(TARGET_CROSS)g++ \
|
||||||
RANLIB=$(TARGET_CROSS)ranlib \
|
RANLIB=$(TARGET_CROSS)ranlib \
|
||||||
$(MAKE) -C $(GCC_BUILD_DIR3)
|
$(MAKE) -C $(GCC_BUILD_DIR3)
|
||||||
touch $(GCC_BUILD_DIR3)/.compiled
|
touch $(GCC_BUILD_DIR3)/.compiled
|
||||||
|
|
||||||
$(TARGET_DIR)/usr/bin/gcc: $(GCC_BUILD_DIR3)/.compiled
|
$(TARGET_DIR)/usr/bin/gcc: $(GCC_BUILD_DIR3)/.compiled
|
||||||
PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CROSS)gcc \
|
PATH=$(STAGING_DIR)/bin:$$PATH \
|
||||||
|
$(MAKE) \
|
||||||
|
CC=$(TARGET_CROSS)gcc \
|
||||||
AS=$(TARGET_CROSS)as \
|
AS=$(TARGET_CROSS)as \
|
||||||
LD=$(TARGET_CROSS)ld \
|
LD=$(TARGET_CROSS)ld \
|
||||||
AR=$(TARGET_CROSS)ar \
|
AR=$(TARGET_CROSS)ar \
|
||||||
NM=$(TARGET_CROSS)nm \
|
NM=$(TARGET_CROSS)nm \
|
||||||
CC=$(TARGET_CROSS)gcc \
|
CC=$(TARGET_CROSS)gcc \
|
||||||
GCC=$(TARGET_CROSS)gcc \
|
GCC=$(TARGET_CROSS)gcc \
|
||||||
CXX=$(TARGET_CROSS)c++ \
|
CXX=$(TARGET_CROSS)g++ \
|
||||||
RANLIB=$(TARGET_CROSS)ranlib \
|
RANLIB=$(TARGET_CROSS)ranlib \
|
||||||
$(MAKE) \
|
|
||||||
prefix=$(TARGET_DIR)/usr \
|
prefix=$(TARGET_DIR)/usr \
|
||||||
exec_prefix=$(TARGET_DIR)/usr \
|
exec_prefix=$(TARGET_DIR)/usr \
|
||||||
bindir=$(TARGET_DIR)/usr/bin \
|
bindir=$(TARGET_DIR)/usr/bin \
|
||||||
sbindir=$(TARGET_DIR)/usr/sbin \
|
sbindir=$(TARGET_DIR)/usr/sbin \
|
||||||
libexecdir=$(TARGET_DIR)/usr/lib \
|
libexecdir=$(TARGET_DIR)/usr/libexec \
|
||||||
datadir=$(TARGET_DIR)/usr/share \
|
datadir=$(TARGET_DIR)/usr/share \
|
||||||
sysconfdir=$(TARGET_DIR)/etc \
|
sysconfdir=$(TARGET_DIR)/etc \
|
||||||
sharedstatedir=$(TARGET_DIR)/usr/com \
|
sharedstatedir=$(TARGET_DIR)/usr/com \
|
||||||
localstatedir=$(TARGET_DIR)/var \
|
localstatedir=$(TARGET_DIR)/var \
|
||||||
libdir=$(TARGET_DIR)/usr/lib \
|
libdir=$(TARGET_DIR)/usr/lib \
|
||||||
|
includedir=$(TARGET_DIR)/usr/include \
|
||||||
|
oldincludedir=$(TARGET_DIR)/usr/include \
|
||||||
infodir=$(TARGET_DIR)/usr/info \
|
infodir=$(TARGET_DIR)/usr/info \
|
||||||
mandir=$(TARGET_DIR)/usr/man \
|
mandir=$(TARGET_DIR)/usr/man \
|
||||||
toolexecdir=$(TARGET_DIR)/lib/gcc-lib/$(GNU_TARGET_NAME) \
|
gxx_include_dir=$(TARGET_DIR)/usr/include/c++ \
|
||||||
-C $(GCC_BUILD_DIR3) install;
|
tooldir=$(TARGET_DIR)/usr/$(GNU_TARGET_NAME) \
|
||||||
-$(STRIP) $(TARGET_DIR)/bin/*
|
build_tooldir=$(TARGET_DIR)/usr/$(GNU_TARGET_NAME) \
|
||||||
-$(STRIP) $(TARGET_DIR)/usr/bin/*
|
-C $(GCC_BUILD_DIR3)/gcc install;
|
||||||
(cd $(TARGET_DIR)/usr/bin; ln -fs gcc cc)
|
(cd $(TARGET_DIR)/usr/bin; ln -fs gcc cc)
|
||||||
|
rm -rf $(TARGET_DIR)/usr/$(GNU_TARGET_NAME)/include
|
||||||
|
rm -rf $(TARGET_DIR)/usr/$(GNU_TARGET_NAME)/sys-include
|
||||||
-mv $(TARGET_DIR)/usr/bin/$(GNU_TARGET_NAME)-cpp $(TARGET_DIR)/usr/bin/cpp
|
-mv $(TARGET_DIR)/usr/bin/$(GNU_TARGET_NAME)-cpp $(TARGET_DIR)/usr/bin/cpp
|
||||||
-mv $(TARGET_DIR)/usr/bin/$(GNU_TARGET_NAME)-gcc $(TARGET_DIR)/usr/bin/gcc
|
-mv $(TARGET_DIR)/usr/bin/$(GNU_TARGET_NAME)-gcc $(TARGET_DIR)/usr/bin/gcc
|
||||||
-mv $(TARGET_DIR)/usr/bin/$(GNU_TARGET_NAME)-c++ $(TARGET_DIR)/usr/bin/c++
|
-mv $(TARGET_DIR)/usr/bin/$(GNU_TARGET_NAME)-c++ $(TARGET_DIR)/usr/bin/c++
|
||||||
-mv $(TARGET_DIR)/usr/bin/$(GNU_TARGET_NAME)-g++ $(TARGET_DIR)/usr/bin/g++
|
-mv $(TARGET_DIR)/usr/bin/$(GNU_TARGET_NAME)-g++ $(TARGET_DIR)/usr/bin/g++
|
||||||
-mv $(TARGET_DIR)/usr/bin/$(GNU_TARGET_NAME)-c++filt $(TARGET_DIR)/usr/bin/c++filt
|
-mv $(TARGET_DIR)/usr/bin/$(GNU_TARGET_NAME)-c++filt $(TARGET_DIR)/usr/bin/c++filt
|
||||||
|
-$(STRIP) $(TARGET_DIR)/bin/*
|
||||||
|
-$(STRIP) $(TARGET_DIR)/usr/bin/*
|
||||||
rm -rf $(TARGET_DIR)/share/locale $(TARGET_DIR)/usr/info \
|
rm -rf $(TARGET_DIR)/share/locale $(TARGET_DIR)/usr/info \
|
||||||
$(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc
|
$(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc
|
||||||
|
# gcc "fixincludes" step is totally broken and takes unwanted
|
||||||
|
# stuff from the host system. Fix that here.
|
||||||
|
rm -rf $(TARGET_DIR)/usr/lib/gcc-lib/$(GNU_TARGET_NAME)/*/include/*
|
||||||
|
cp -a $(STAGING_DIR)/usr/lib/gcc-lib/$(GNU_TARGET_NAME)/*/include/* \
|
||||||
|
$(TARGET_DIR)/usr/lib/gcc-lib/$(GNU_TARGET_NAME)/*/include/
|
||||||
touch -c $(TARGET_DIR)/usr/bin/gcc
|
touch -c $(TARGET_DIR)/usr/bin/gcc
|
||||||
|
|
||||||
gcc_target: uclibc_target binutils_target $(TARGET_DIR)/usr/bin/gcc
|
gcc_target: uclibc_target binutils_target $(TARGET_DIR)/usr/bin/gcc
|
||||||
|
|
Loading…
Reference in New Issue
Block a user