mirror of
https://github.com/vincentmli/bpfire.git
synced 2026-04-27 19:23:24 +02:00
Merge remote branch 'origin/next' into arm-port
Conflicts: config/rootfiles/common/i586/gcc lfs/binutils lfs/cleanup-toolchain lfs/coreutils lfs/gcc lfs/glibc lfs/groff src/pakfire/pakfire.conf src/patches/gcc-4.1.2-specs-1.patch
This commit is contained in:
85
lfs/gcc
85
lfs/gcc
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# #
|
||||
# IPFire.org - A linux based firewall #
|
||||
# Copyright (C) 2007 Michael Tremer & Christian Schmidt #
|
||||
# Copyright (C) 2007-2011 IPFire Team <info@ipfire.org> #
|
||||
# #
|
||||
# This program is free software: you can redistribute it and/or modify #
|
||||
# it under the terms of the GNU General Public License as published by #
|
||||
@@ -24,59 +24,16 @@
|
||||
|
||||
include Config
|
||||
|
||||
ifeq "$(MACHINE_TYPE)" "arm"
|
||||
VER = 4.1.2
|
||||
else
|
||||
VER = 4.0.4
|
||||
endif
|
||||
VER = 4.1.2
|
||||
|
||||
THISAPP = gcc-$(VER)
|
||||
DL_FILE = $(THISAPP).tar.bz2
|
||||
DL_FROM = $(URL_IPFIRE)
|
||||
DIR_APP = $(DIR_SRC)/$(THISAPP)
|
||||
CFLAGS =
|
||||
CXXFLAGS =
|
||||
TARGET_PATH = /opt/$(MACHINE)-uClibc/bin:$(PATH)
|
||||
|
||||
# Normal build or /tools build.
|
||||
#
|
||||
ifeq "$(ROOT)" ""
|
||||
ifeq "$(INST)" "1"
|
||||
TARGET = $(DIR_INFO)/$(THISAPP)-install1
|
||||
EXTRA_CONFIG = --prefix=/opt/$(MACHINE)-uClibc \
|
||||
--build=$(MACHINE)-pc-linux-gnu \
|
||||
--host=$(MACHINE)-pc-linux-gnu \
|
||||
--target=$(MACHINE)-linux-uclibc \
|
||||
--enable-languages=c \
|
||||
--with-sysroot=$(DIR_SRC)/uClibc_dev \
|
||||
--disable-__cxa_atexit \
|
||||
--enable-target-optspace \
|
||||
--with-gnu-ld \
|
||||
--disable-shared \
|
||||
--enable-threads \
|
||||
--enable-multilib \
|
||||
--disable-nls
|
||||
EXTRA_MAKE =
|
||||
EXTRA_INSTALL =
|
||||
else
|
||||
ifeq "$(INST)" "2"
|
||||
TARGET = $(DIR_INFO)/$(THISAPP)-install2
|
||||
EXTRA_CONFIG = --prefix=/opt/$(MACHINE)-uClibc \
|
||||
--build=$(MACHINE)-pc-linux-gnu \
|
||||
--host=$(MACHINE)-pc-linux-gnu \
|
||||
--target=$(MACHINE)-linux-uclibc \
|
||||
--enable-languages=c,c++ \
|
||||
--with-sysroot=$(DIR_SRC)/uClibc_dev \
|
||||
--disable-__cxa_atexit \
|
||||
--enable-target-optspace \
|
||||
--with-gnu-ld \
|
||||
--enable-shared \
|
||||
--disable-nls \
|
||||
--enable-threads \
|
||||
--enable-multilib
|
||||
EXTRA_MAKE =
|
||||
EXTRA_INSTALL =
|
||||
else
|
||||
TARGET = $(DIR_INFO)/$(THISAPP)
|
||||
EXTRA_CONFIG = --prefix=/usr \
|
||||
--libexecdir=/usr/lib \
|
||||
@@ -88,8 +45,6 @@ else
|
||||
--disable-nls
|
||||
EXTRA_MAKE =
|
||||
EXTRA_INSTALL =
|
||||
endif
|
||||
endif
|
||||
else
|
||||
ifeq "$(PASS)" "1"
|
||||
TARGET = $(DIR_INFO)/$(THISAPP)-tools1
|
||||
@@ -100,7 +55,6 @@ ifeq "$(PASS)" "1"
|
||||
--enable-languages=c \
|
||||
--disable-bootstrap
|
||||
EXTRA_MAKE =
|
||||
#bootstrap BOOT_LDFLAGS="-static"
|
||||
EXTRA_INSTALL =
|
||||
else
|
||||
TARGET = $(DIR_INFO)/$(THISAPP)-tools2
|
||||
@@ -131,6 +85,9 @@ ifeq "$(MACHINE_TYPE)" "arm"
|
||||
--enable-c99 \
|
||||
--enable-__cxa_atexit \
|
||||
--disable-multilib
|
||||
else
|
||||
EXTRA_CONFIG += --build=$(BUILDTARGET) --host=$(BUILDTARGET) \
|
||||
--target=$(BUILDTARGET)
|
||||
endif
|
||||
|
||||
export XCFLAGS = $(CFLAGS)
|
||||
@@ -143,11 +100,7 @@ objects = $(DL_FILE)
|
||||
|
||||
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
|
||||
|
||||
ifeq "$(MACHINE_TYPE)" "arm"
|
||||
$(DL_FILE)_MD5 = a4a3eb15c96030906d8494959eeda23c
|
||||
else
|
||||
$(DL_FILE)_MD5 = 8970debbc55bea85ee80961d733080f0
|
||||
endif
|
||||
$(DL_FILE)_MD5 = a4a3eb15c96030906d8494959eeda23c
|
||||
|
||||
install : $(TARGET)
|
||||
|
||||
@@ -177,35 +130,13 @@ $(subst %,%_MD5,$(objects)) :
|
||||
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
|
||||
@$(PREBUILD)
|
||||
@rm -rf $(DIR_APP) $(DIR_SRC)/gcc-build && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
|
||||
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/$(THISAPP)-fix_linker_version_detection.patch
|
||||
@mkdir $(DIR_SRC)/gcc-build
|
||||
|
||||
cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/gcc-4.1.2-gcc_eh.patch
|
||||
cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/gcc-4.1.2-arm-linux-soft-float.patch
|
||||
|
||||
ifeq "$(ROOT)" ""
|
||||
ifeq "$(INST)" "1"
|
||||
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/gcc-uclibc-conf.patch
|
||||
cd $(DIR_SRC)/gcc-build && $(DIR_APP)/configure $(EXTRA_CONFIG)
|
||||
cd $(DIR_SRC)/gcc-build && PATH=$(TARGET_PATH) make $(MAKETUNING) all-gcc
|
||||
cd $(DIR_SRC)/gcc-build && PATH=$(TARGET_PATH) make install-gcc
|
||||
cd /opt/$(MACHINE)-uClibc/bin && for i in `ls -w1 $(MACHINE)-linux-uclibc-*`; do \
|
||||
ln -svf $$i $(MACHINE)-linux-`echo $$i | cut -c 19-`; \
|
||||
done
|
||||
ln -svf $(MACHINE)-linux-uclibc /opt/$(MACHINE)-uClibc/$(MACHINE)-linux
|
||||
ln -svf gcc /opt/$(MACHINE)-uClibc/$(MACHINE)-linux-uclibc/bin/cc
|
||||
else
|
||||
ifeq "$(INST)" "2"
|
||||
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/gcc-uclibc-conf.patch
|
||||
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/gcc-uclibc-locale.patch
|
||||
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/gcc-libstdc++-pic.patch
|
||||
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/gcc-sdk-libstdc++-includes.patch
|
||||
ln -snf ../include /opt/$(MACHINE)-uClibc/$(MACHINE)-linux-uclibc/sys-include
|
||||
cd $(DIR_SRC)/gcc-build && $(DIR_APP)/configure $(EXTRA_CONFIG)
|
||||
cd $(DIR_SRC)/gcc-build && PATH=$(TARGET_PATH) make $(MAKETUNING) $(EXTRA_MAKE)
|
||||
cd $(DIR_SRC)/gcc-build && PATH=$(TARGET_PATH) make install $(EXTRA_INSTALL)
|
||||
cp -f /opt/$(MACHINE)-uClibc/lib/libgcc_s.so /lib
|
||||
cd /lib && ln -sf libgcc_s.so libgcc_s.so.1
|
||||
else
|
||||
cd $(DIR_APP) && sed -i 's/install_to_$$(INSTALL_DEST) //' libiberty/Makefile.in
|
||||
cd $(DIR_APP) && sed -i 's/^XCFLAGS =$$/& -fomit-frame-pointer/' gcc/Makefile.in
|
||||
cd $(DIR_APP) && sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in
|
||||
@@ -216,8 +147,6 @@ else
|
||||
cd $(DIR_SRC)/gcc-build && make $(EXTRA_INSTALL) install
|
||||
ln -sfv ../usr/bin/cpp /lib
|
||||
ln -sfv gcc /usr/bin/cc
|
||||
endif
|
||||
endif
|
||||
else
|
||||
ifeq "$(PASS)" "1"
|
||||
cd $(DIR_SRC)/gcc-build && $(DIR_APP)/configure $(EXTRA_CONFIG)
|
||||
|
||||
Reference in New Issue
Block a user