mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2025-04-21 12:27:27 +03:00
move target/default/target_skeleton into package/base-files, put all the default files in ipkg packages, cleanup some junk in toolchain/, toolchain/ no longer changes build_mipsel/root
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@1494 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
1 parent
8d16fb08b8
commit
3d00739480
53 files changed
+94
-340
No files matched your search
+2
-5
@@ -77,9 +77,9 @@ package_install: package_compile toolchain
|
||||
# In this section, we need .config
|
||||
include .config.cmd
|
||||
|
||||
world: $(DL_DIR) $(BUILD_DIR) configtest target_prepare $(TARGET_DIR) toolchain_install package_install target_install package_index
|
||||
world: $(DL_DIR) $(BUILD_DIR) configtest toolchain_install package_install target_install package_index
|
||||
|
||||
.PHONY: all world clean dirclean distclean image_clean target_clean source target_prepare target_install toolchain_install package_install configtest
|
||||
.PHONY: all world clean dirclean distclean image_clean target_clean source target_install toolchain_install package_install configtest
|
||||
|
||||
configtest:
|
||||
-cp .config .config.test
|
||||
@@ -90,9 +90,6 @@ package_index:
|
||||
$(STAGING_DIR)/usr/bin/ipkg-make-index . > Packages \
|
||||
)
|
||||
|
||||
target_prepare:
|
||||
$(MAKE) -C target prepare
|
||||
|
||||
target_compile:
|
||||
$(MAKE) -C target compile
|
||||
|
||||
|
||||
@@ -146,11 +146,16 @@ DEV_LIBS:=tcp_wrappers glib ncurses openssl pcre popt zlib libnet libpcap mysql
|
||||
DEV_LIBS_COMPILE:=$(patsubst %,%-compile,$(DEV_LIBS))
|
||||
SDK_DEFAULT_PACKAGES:=busybox dnsmasq iptables wireless-tools dropbear bridge ipkg ppp
|
||||
SDK_DEFAULT_COMPILE:=$(patsubst %,%-compile,$(SDK_DEFAULT_PACKAGES))
|
||||
COMPILE_PACKAGES:=$(patsubst %,%-compile,$(package-y) $(package-m))
|
||||
INSTALL_PACKAGES:=$(patsubst %,%-install,$(package-y))
|
||||
|
||||
all: compile install
|
||||
clean: $(patsubst %,%-clean,$(package-) $(package-y) $(package-m))
|
||||
compile: $(patsubst %,%-compile,$(package-y) $(package-m))
|
||||
install: $(patsubst %,%-install,$(package-y))
|
||||
compile: $(COMPILE_PACKAGES)
|
||||
install: base-files-install $(INSTALL_PACKAGES)
|
||||
|
||||
$(COMPILE_PACKAGES): base-files-install
|
||||
$(INSTALL_PACKAGES): base-files-install
|
||||
|
||||
amwall-compile: libamsel-compile
|
||||
arpwatch-compile: libpcap-compile
|
||||
|
||||
@@ -0,0 +1,64 @@
|
||||
# $Id$
|
||||
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=base-files
|
||||
PKG_RELEASE:=1
|
||||
|
||||
IDIR_BASE:=$(BUILD_DIR)/base-files
|
||||
IPKG_BASE:=$(PACKAGE_DIR)/$(PKG_NAME)_$(PKG_RELEASE)_$(ARCH).ipk
|
||||
|
||||
LIBC_VERSION:=${shell cat $(STAGING_DIR)/uclibc_version}
|
||||
IDIR_LIBC:=$(BUILD_DIR)/uclibc
|
||||
IPKG_LIBC:=$(PACKAGE_DIR)/uclibc_$(LIBC_VERSION)-$(PKG_RELEASE)_$(ARCH).ipk
|
||||
|
||||
GCC_VERSION:=${shell cat $(STAGING_DIR)/gcc_version}
|
||||
IDIR_GCC:=$(BUILD_DIR)/libgcc
|
||||
IPKG_GCC:=$(PACKAGE_DIR)/libgcc_$(GCC_VERSION)-$(PKG_RELEASE)_$(ARCH).ipk
|
||||
|
||||
PACKAGES:=$(IPKG_BASE) $(IPKG_LIBC) $(IPKG_GCC)
|
||||
|
||||
$(PACKAGE_DIR):
|
||||
mkdir -p $(PACKAGE_DIR)
|
||||
|
||||
$(IPKG_BASE): $(PACKAGE_DIR)
|
||||
$(SCRIPT_DIR)/make-ipkg-dir.sh $(IDIR_BASE) ipkg/$(PKG_NAME).control $(PKG_RELEASE) $(ARCH)
|
||||
cp -a ./default/* $(IDIR_BASE)
|
||||
mkdir -p $(IDIR_BASE)/jffs
|
||||
mkdir -p $(IDIR_BASE)/dev
|
||||
mkdir -p $(IDIR_BASE)/proc
|
||||
mkdir -p $(IDIR_BASE)/tmp
|
||||
mkdir -p $(IDIR_BASE)/lib
|
||||
mkdir -p $(IDIR_BASE)/usr/lib
|
||||
mkdir -p $(IDIR_BASE)/usr/bin
|
||||
ln -sf /tmp/resolv.conf $(IDIR_BASE)/etc/resolv.conf
|
||||
rm -rf $(IDIR_BASE)/var
|
||||
ln -sf /tmp $(IDIR_BASE)/var
|
||||
-find $(IDIR_BASE) -type d -name CVS | xargs rm -rf
|
||||
-find $(IDIR_BASE) -type d -name .svn | xargs rm -rf
|
||||
mkdir -p $(IDIR_BASE)/etc
|
||||
-grep \^BR2_SYSCONF $(TOPDIR)/.config > $(IDIR_BASE)/etc/sysconf
|
||||
$(IPKG_BUILD) $(IDIR_BASE) $(PACKAGE_DIR)
|
||||
|
||||
$(IPKG_LIBC): $(PACKAGE_DIR)
|
||||
$(SCRIPT_DIR)/make-ipkg-dir.sh $(IDIR_LIBC) ipkg/uclibc.control $(LIBC_VERSION)-$(PKG_RELEASE) $(ARCH)
|
||||
mkdir -p $(IDIR_LIBC)/lib
|
||||
cp -a $(STAGING_DIR)/lib/ld-uClibc*.so* $(IDIR_LIBC)/lib/
|
||||
for file in c crypt dl m nsl resolv rt uClibc util; do \
|
||||
cp -a $(STAGING_DIR)/lib/lib$$file*.so* $(IDIR_LIBC)/lib/; \
|
||||
done
|
||||
-$(STRIP) $(IDIR_LIBC)/lib/*
|
||||
$(IPKG_BUILD) $(IDIR_LIBC) $(PACKAGE_DIR)
|
||||
|
||||
$(IPKG_GCC): $(PACKAGE_DIR)
|
||||
$(SCRIPT_DIR)/make-ipkg-dir.sh $(IDIR_GCC) ipkg/libgcc.control $(GCC_VERSION)-$(PKG_RELEASE) $(ARCH)
|
||||
mkdir -p $(IDIR_GCC)/lib
|
||||
cp -a $(STAGING_DIR)/lib/libgcc*.so* $(IDIR_GCC)/lib/
|
||||
-$(STRIP) $(IDIR_GCC)/lib/*
|
||||
$(IPKG_BUILD) $(IDIR_GCC) $(PACKAGE_DIR)
|
||||
|
||||
prepare:
|
||||
compile: $(PACKAGES)
|
||||
install: compile
|
||||
mkdir -p $(TARGET_DIR)
|
||||
$(IPKG) install $(PACKAGES)
|
||||
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -57,7 +57,7 @@ sub cleanup
|
||||
foreach my $mirror (@ARGV) {
|
||||
if ($mirror =~ /^\@SF\/(.+)$/) {
|
||||
my $sfpath = $1;
|
||||
open SF, "wget -t1 -q -O- 'http://prdownloads.sf.net/$sfpath/$filename' |";
|
||||
open SF, "wget -t1 -q -O- 'http://prdownloads.sourceforge.net/$sfpath/$filename' |";
|
||||
while (<SF>) {
|
||||
/RADIO NAME=use_default VALUE=(\w+) OnClick="form\.submit\(\)">/ and do {
|
||||
push @mirrors, "http://$1.dl.sourceforge.net/sourceforge/$sfpath";
|
||||
|
||||
+2
-27
@@ -5,38 +5,13 @@ TARGET_SKEL_DIR=default/target_skeleton
|
||||
|
||||
all: install
|
||||
|
||||
$(TARGET_DIR):
|
||||
mkdir -p $(TARGET_DIR)
|
||||
if [ -f "$(TARGET_SKELETON)" ] ; then \
|
||||
zcat $(TARGET_SKELETON) | tar -C $(BUILD_DIR) -xf -; \
|
||||
fi;
|
||||
if [ -d "$(TARGET_SKEL_DIR)" ] ; then \
|
||||
cp -a $(TARGET_SKEL_DIR)/* $(TARGET_DIR)/; \
|
||||
fi;
|
||||
mkdir -p $(TARGET_DIR)/jffs
|
||||
mkdir -p $(TARGET_DIR)/dev
|
||||
mkdir -p $(TARGET_DIR)/proc
|
||||
mkdir -p $(TARGET_DIR)/tmp
|
||||
mkdir -p $(TARGET_DIR)/lib
|
||||
mkdir -p $(TARGET_DIR)/usr/lib
|
||||
mkdir -p $(TARGET_DIR)/usr/bin
|
||||
ln -sf /tmp/resolv.conf $(TARGET_DIR)/etc/resolv.conf
|
||||
rm -rf $(TARGET_DIR)/var
|
||||
ln -sf /tmp $(TARGET_DIR)/var
|
||||
-find $(TARGET_DIR) -type d -name CVS | xargs rm -rf
|
||||
-find $(TARGET_DIR) -type d -name .svn | xargs rm -rf
|
||||
|
||||
$(BIN_DIR):
|
||||
mkdir -p $(BIN_DIR)
|
||||
|
||||
$(TARGET_DIR)/etc/sysconf:
|
||||
mkdir -p $(TARGET_DIR)/etc
|
||||
-grep \^BR2_SYSCONF $(TOPDIR)/.config > $(TARGET_DIR)/etc/sysconf
|
||||
|
||||
linux-compile: utils-install lzma-install
|
||||
linux-install: $(TARGET_DIR)/etc/sysconf $(BIN_DIR)
|
||||
linux-install: $(BIN_DIR)
|
||||
|
||||
prepare: $(TARGET_DIR)
|
||||
prepare:
|
||||
compile: linux-compile
|
||||
install: image_clean linux-install
|
||||
clean: linux-clean utils-clean lzma-clean image_clean
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
source "toolchain/uClibc/Config.in"
|
||||
source "toolchain/binutils/Config.in"
|
||||
source "toolchain/gcc/Config.in"
|
||||
source "toolchain/ccache/Config.in"
|
||||
|
||||
if CONFIG_DEVEL
|
||||
comment "Common Toolchain Options"
|
||||
|
||||
@@ -5,7 +5,6 @@ menu "Toolchain Options"
|
||||
source "toolchain/uClibc/Config.in"
|
||||
source "toolchain/binutils/Config.in"
|
||||
source "toolchain/gcc/Config.in"
|
||||
source "toolchain/ccache/Config.in"
|
||||
source "toolchain/gdb/Config.in"
|
||||
|
||||
|
||||
|
||||
+12
-10
@@ -15,8 +15,10 @@ gcc-prepare: binutils-install
|
||||
uClibc-compile: gcc-prepare
|
||||
gcc-compile: uClibc-install
|
||||
|
||||
$(STAMP_DIR):
|
||||
mkdir -p $(STAMP_DIR)
|
||||
TOOLCHAIN_STAMP_DIR:=$(STAGING_DIR)/stampfiles
|
||||
|
||||
$(TOOLCHAIN_STAMP_DIR):
|
||||
mkdir -p $(TOOLCHAIN_STAMP_DIR)
|
||||
|
||||
$(STAGING_DIR):
|
||||
@mkdir -p $(STAGING_DIR)/lib
|
||||
@@ -27,19 +29,19 @@ $(STAGING_DIR):
|
||||
$(TOOL_BUILD_DIR):
|
||||
@mkdir -p $(TOOL_BUILD_DIR)
|
||||
|
||||
%-prepare: $(STAMP_DIR) $(STAGING_DIR) $(TOOL_BUILD_DIR)
|
||||
@[ -f $(STAMP_DIR)/.toolchain_$@ ] || $(MAKE) -C $(patsubst %-prepare,%,$@) prepare
|
||||
@touch $(STAMP_DIR)/.toolchain_$@
|
||||
%-prepare: $(TOOLCHAIN_STAMP_DIR) $(STAGING_DIR) $(TOOL_BUILD_DIR)
|
||||
@[ -f $(TOOLCHAIN_STAMP_DIR)/.toolchain_$@ ] || $(MAKE) -C $(patsubst %-prepare,%,$@) prepare
|
||||
@touch $(TOOLCHAIN_STAMP_DIR)/.toolchain_$@
|
||||
|
||||
%-compile: %-prepare
|
||||
@[ -f $(STAMP_DIR)/.toolchain_$@ ] || $(MAKE) -C $(patsubst %-compile,%,$@) compile
|
||||
@touch $(STAMP_DIR)/.toolchain_$@
|
||||
@[ -f $(TOOLCHAIN_STAMP_DIR)/.toolchain_$@ ] || $(MAKE) -C $(patsubst %-compile,%,$@) compile
|
||||
@touch $(TOOLCHAIN_STAMP_DIR)/.toolchain_$@
|
||||
|
||||
%-install: %-compile
|
||||
@[ -f $(STAMP_DIR)/.toolchain_$@ ] || $(MAKE) -C $(patsubst %-install,%,$@) install
|
||||
@touch $(STAMP_DIR)/.toolchain_$@
|
||||
@[ -f $(TOOLCHAIN_STAMP_DIR)/.toolchain_$@ ] || $(MAKE) -C $(patsubst %-install,%,$@) install
|
||||
@touch $(TOOLCHAIN_STAMP_DIR)/.toolchain_$@
|
||||
|
||||
%-clean:
|
||||
@$(MAKE) -C $(patsubst %-clean,%,$@) clean
|
||||
@rm -f $(STAMP_DIR)/.toolchain_$(patsubst %-clean,%,$@)-*
|
||||
@rm -f $(TOOLCHAIN_STAMP_DIR)/.toolchain_$(patsubst %-clean,%,$@)-*
|
||||
|
||||
@@ -133,24 +133,3 @@ $(BINUTILS_DIR2)/binutils/objdump: $(BINUTILS_DIR2)/.configured
|
||||
PATH=$(TARGET_PATH) \
|
||||
$(MAKE) -C $(BINUTILS_DIR2) all
|
||||
|
||||
$(TARGET_DIR)/usr/bin/ld: $(BINUTILS_DIR2)/binutils/objdump
|
||||
PATH=$(TARGET_PATH) \
|
||||
$(MAKE) DESTDIR=$(TARGET_DIR) \
|
||||
tooldir=/usr build_tooldir=/usr \
|
||||
-C $(BINUTILS_DIR2) install
|
||||
#rm -rf $(TARGET_DIR)/share/locale $(TARGET_DIR)/usr/info \
|
||||
# $(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc
|
||||
-$(STRIP) $(TARGET_DIR)/usr/$(REAL_GNU_TARGET_NAME)/bin/* > /dev/null 2>&1
|
||||
-$(STRIP) $(TARGET_DIR)/usr/bin/* > /dev/null 2>&1
|
||||
|
||||
binutils_target: $(GCC_DEPENDANCY) $(TARGET_DIR)/usr/bin/ld
|
||||
|
||||
binutils_target-clean:
|
||||
(cd $(TARGET_DIR)/usr/bin; \
|
||||
rm -f addr2line ar as gprof ld nm objcopy \
|
||||
objdump ranlib readelf size strings strip)
|
||||
rm -f $(TARGET_DIR)/bin/$(REAL_GNU_TARGET_NAME)*
|
||||
-$(MAKE) -C $(BINUTILS_DIR2) clean
|
||||
|
||||
binutils_target-toolclean:
|
||||
rm -rf $(BINUTILS_DIR2)
|
||||
@@ -1,11 +0,0 @@
|
||||
#
|
||||
if CONFIG_DEVEL
|
||||
comment "Ccache Options"
|
||||
endif
|
||||
|
||||
config BR2_CCACHE
|
||||
bool "Enable ccache support?" if CONFIG_DEVEL
|
||||
default y
|
||||
help
|
||||
Enable ccache support?
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
#
|
||||
|
||||
config BR2_PACKAGE_CCACHE_TARGET
|
||||
bool"ccache support in the target filesystem"
|
||||
default n
|
||||
help
|
||||
Add help text here.
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
ifeq ($(strip $(BR2_CCACHE)),y)
|
||||
TARGETS+=ccache
|
||||
endif
|
||||
ifeq ($(strip $(BR2_PACKAGE_CCACHE_TARGET)),y)
|
||||
TARGETS+=ccache_target
|
||||
endif
|
||||
@@ -1,151 +0,0 @@
|
||||
#############################################################
|
||||
#
|
||||
# build ccache to make recompiles faster on the build system
|
||||
#
|
||||
#############################################################
|
||||
CCACHE_VER:=2.3
|
||||
CCACHE_SITE:=http://ccache.samba.org/ftp/ccache
|
||||
CCACHE_SOURCE:=ccache-$(CCACHE_VER).tar.gz
|
||||
CCACHE_DIR1:=$(TOOL_BUILD_DIR)/ccache-$(CCACHE_VER)
|
||||
CCACHE_DIR2:=$(BUILD_DIR)/ccache-$(CCACHE_VER)
|
||||
CCACHE_CAT:=zcat
|
||||
CCACHE_BINARY:=ccache
|
||||
CCACHE_TARGET_BINARY:=usr/bin/ccache
|
||||
|
||||
$(DL_DIR)/$(CCACHE_SOURCE):
|
||||
$(WGET) -P $(DL_DIR) $(CCACHE_SITE)/$(CCACHE_SOURCE)
|
||||
|
||||
$(CCACHE_DIR1)/.unpacked: $(DL_DIR)/$(CCACHE_SOURCE)
|
||||
$(CCACHE_CAT) $(DL_DIR)/$(CCACHE_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS) -
|
||||
touch $(CCACHE_DIR1)/.unpacked
|
||||
|
||||
$(CCACHE_DIR1)/.patched: $(CCACHE_DIR1)/.unpacked
|
||||
# WARNING - this will break if the toolchain is moved.
|
||||
# Should probably patch things to use a relative path.
|
||||
$(SED) "s,getenv(\"CCACHE_PATH\"),\"$(STAGING_DIR)/bin-ccache\",g" \
|
||||
$(CCACHE_DIR1)/execute.c
|
||||
# WARNING - this will break if the toolchain build dir is deleted.
|
||||
$(SED) "s,getenv(\"CCACHE_DIR\"),\"$(CCACHE_DIR1)/cache\",g" \
|
||||
$(CCACHE_DIR1)/ccache.c
|
||||
mkdir -p $(CCACHE_DIR1)/cache
|
||||
touch $(CCACHE_DIR1)/.patched
|
||||
|
||||
$(CCACHE_DIR1)/.configured: $(CCACHE_DIR1)/.patched
|
||||
mkdir -p $(CCACHE_DIR1)
|
||||
(cd $(CCACHE_DIR1); rm -rf config.cache; \
|
||||
CC=$(HOSTCC) \
|
||||
$(CCACHE_DIR1)/configure \
|
||||
--target=$(GNU_HOST_NAME) \
|
||||
--host=$(GNU_HOST_NAME) \
|
||||
--build=$(GNU_HOST_NAME) \
|
||||
--prefix=/usr \
|
||||
);
|
||||
touch $(CCACHE_DIR1)/.configured
|
||||
|
||||
$(CCACHE_DIR1)/$(CCACHE_BINARY): $(CCACHE_DIR1)/.configured
|
||||
$(MAKE) CC=$(HOSTCC) -C $(CCACHE_DIR1)
|
||||
|
||||
$(STAGING_DIR)/$(CCACHE_TARGET_BINARY): $(CCACHE_DIR1)/$(CCACHE_BINARY)
|
||||
mkdir -p $(STAGING_DIR)/usr/bin;
|
||||
cp $(CCACHE_DIR1)/ccache $(STAGING_DIR)/usr/bin
|
||||
# Keep the actual toolchain binaries in a directory at the same level.
|
||||
# Otherwise, relative paths for include dirs break.
|
||||
mkdir -p $(STAGING_DIR)/bin-ccache;
|
||||
(cd $(STAGING_DIR)/bin-ccache; \
|
||||
ln -fs $(REAL_GNU_TARGET_NAME)-gcc $(GNU_TARGET_NAME)-gcc; \
|
||||
ln -fs $(REAL_GNU_TARGET_NAME)-gcc $(GNU_TARGET_NAME)-cc; \
|
||||
ln -fs $(REAL_GNU_TARGET_NAME)-gcc $(REAL_GNU_TARGET_NAME)-cc);
|
||||
[ -f $(STAGING_DIR)/bin/$(REAL_GNU_TARGET_NAME)-gcc ] && \
|
||||
mv $(STAGING_DIR)/bin/$(REAL_GNU_TARGET_NAME)-gcc $(STAGING_DIR)/bin-ccache/
|
||||
(cd $(STAGING_DIR)/bin; \
|
||||
ln -fs ../usr/bin/ccache $(GNU_TARGET_NAME)-cc; \
|
||||
ln -fs ../usr/bin/ccache $(GNU_TARGET_NAME)-gcc; \
|
||||
ln -fs ../usr/bin/ccache $(REAL_GNU_TARGET_NAME)-cc; \
|
||||
ln -fs ../usr/bin/ccache $(REAL_GNU_TARGET_NAME)-gcc);
|
||||
ifeq ($(BR2_INSTALL_LIBSTDCPP),y)
|
||||
[ -f $(STAGING_DIR)/bin/$(REAL_GNU_TARGET_NAME)-c++ ] && \
|
||||
mv $(STAGING_DIR)/bin/$(REAL_GNU_TARGET_NAME)-c++ $(STAGING_DIR)/bin-ccache/
|
||||
[ -f $(STAGING_DIR)/bin/$(REAL_GNU_TARGET_NAME)-g++ ] && \
|
||||
mv $(STAGING_DIR)/bin/$(REAL_GNU_TARGET_NAME)-g++ $(STAGING_DIR)/bin-ccache/
|
||||
(cd $(STAGING_DIR)/bin; \
|
||||
ln -fs ../usr/bin/ccache $(GNU_TARGET_NAME)-c++; \
|
||||
ln -fs ../usr/bin/ccache $(GNU_TARGET_NAME)-g++;\
|
||||
ln -fs ../usr/bin/ccache $(REAL_GNU_TARGET_NAME)-c++; \
|
||||
ln -fs ../usr/bin/ccache $(REAL_GNU_TARGET_NAME)-g++);
|
||||
(cd $(STAGING_DIR)/bin-ccache; \
|
||||
ln -fs $(REAL_GNU_TARGET_NAME)-c++ $(GNU_TARGET_NAME)-c++; \
|
||||
ln -fs $(REAL_GNU_TARGET_NAME)-g++ $(GNU_TARGET_NAME)-g++);
|
||||
endif
|
||||
|
||||
ccache: gcc $(STAGING_DIR)/$(CCACHE_TARGET_BINARY)
|
||||
|
||||
ccache-clean:
|
||||
$(MAKE) -C $(CCACHE_DIR1) uninstall
|
||||
-$(MAKE) -C $(CCACHE_DIR1) clean
|
||||
|
||||
ccache-toolclean:
|
||||
rm -rf $(CCACHE_DIR1)
|
||||
|
||||
|
||||
|
||||
|
||||
#############################################################
|
||||
#
|
||||
# build ccache for use on the target system
|
||||
#
|
||||
#############################################################
|
||||
|
||||
$(CCACHE_DIR2)/.unpacked: $(DL_DIR)/$(CCACHE_SOURCE)
|
||||
$(CCACHE_CAT) $(DL_DIR)/$(CCACHE_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
|
||||
touch $(CCACHE_DIR2)/.unpacked
|
||||
|
||||
$(CCACHE_DIR2)/.patched: $(CCACHE_DIR2)/.unpacked
|
||||
touch $(CCACHE_DIR2)/.patched
|
||||
|
||||
$(CCACHE_DIR2)/.configured: $(CCACHE_DIR2)/.patched
|
||||
mkdir -p $(CCACHE_DIR2)
|
||||
(cd $(CCACHE_DIR2); rm -rf config.cache; \
|
||||
$(TARGET_CONFIGURE_OPTS) \
|
||||
$(CCACHE_DIR2)/configure \
|
||||
--target=$(GNU_TARGET_NAME) \
|
||||
--host=$(GNU_TARGET_NAME) \
|
||||
--build=$(GNU_HOST_NAME) \
|
||||
--prefix=/usr \
|
||||
--exec-prefix=/usr \
|
||||
--bindir=/usr/bin \
|
||||
--sbindir=/usr/sbin \
|
||||
--libexecdir=/usr/lib \
|
||||
--sysconfdir=/etc \
|
||||
--datadir=/usr/share \
|
||||
--localstatedir=/var \
|
||||
--mandir=/usr/man \
|
||||
--infodir=/usr/info \
|
||||
$(DISABLE_NLS) \
|
||||
);
|
||||
touch $(CCACHE_DIR2)/.configured
|
||||
|
||||
$(CCACHE_DIR2)/$(CCACHE_BINARY): $(CCACHE_DIR2)/.configured
|
||||
$(MAKE) -C $(CCACHE_DIR2) CFLAGS="$(TARGET_CFLAGS)"
|
||||
|
||||
$(TARGET_DIR)/$(CCACHE_TARGET_BINARY): $(CCACHE_DIR2)/$(CCACHE_BINARY)
|
||||
$(MAKE) DESTDIR=$(TARGET_DIR) -C $(CCACHE_DIR2) install
|
||||
rm -rf $(TARGET_DIR)/share/locale $(TARGET_DIR)/usr/info \
|
||||
$(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc
|
||||
# put a bunch of symlinks into /bin, since that is earlier
|
||||
# in the default PATH than /usr/bin where gcc lives
|
||||
(cd $(TARGET_DIR)/bin; \
|
||||
ln -fs /usr/bin/ccache cc; \
|
||||
ln -fs /usr/bin/ccache gcc; \
|
||||
ln -fs /usr/bin/ccache c++; \
|
||||
ln -fs /usr/bin/ccache g++;)
|
||||
|
||||
ccache_target: uclibc $(TARGET_DIR)/$(CCACHE_TARGET_BINARY)
|
||||
|
||||
ccache_target-sources: $(DL_DIR)/$(CCACHE_SOURCE)
|
||||
|
||||
ccache_target-clean:
|
||||
rm -f $(TARGET_DIR)/$(CCACHE_TARGET_BINARY)
|
||||
-$(MAKE) -C $(CCACHE_DIR2) clean
|
||||
|
||||
ccache_target-toolclean:
|
||||
rm -rf $(CCACHE_DIR2)
|
||||
@@ -171,6 +171,7 @@ $(GCC_BUILD_DIR2)/.compiled: $(GCC_BUILD_DIR2)/.configured
|
||||
|
||||
gcc-install: $(GCC_BUILD_DIR2)/.compiled
|
||||
PATH=$(TARGET_PATH) $(MAKE) -C $(GCC_BUILD_DIR2) install
|
||||
echo $(GCC_VERSION) > $(STAGING_DIR)/gcc_version
|
||||
# Strip the host binaries
|
||||
ifeq ($(GCC_STRIP_HOST_BINARIES),true)
|
||||
-strip --strip-all -R .note -R .comment $(STAGING_DIR)/bin/*
|
||||
@@ -203,9 +204,6 @@ ifeq ($(findstring 3.3.,$(GCC_VERSION)),3.3.)
|
||||
cp ./$(GCC_VERSION)/specs-$(ARCH)-soft-float $(STAGING_DIR)/lib/gcc-lib/$(REAL_GNU_TARGET_NAME)/$(GCC_VERSION)/specs
|
||||
endif
|
||||
endif
|
||||
# These are in /lib, so...
|
||||
cp -a $(STAGING_DIR)/$(REAL_GNU_TARGET_NAME)/lib/libgcc_s* $(TARGET_DIR)/lib/
|
||||
$(STRIP) $(TARGET_DIR)/lib/libgcc_s.so.1
|
||||
|
||||
gcc: gcc_initial $(LIBFLOAT_TARGET) \
|
||||
gcc-install $(GCC_TARGETS)
|
||||
@@ -264,50 +262,3 @@ else
|
||||
GCC_LIB_SUBDIR=lib/gcc-lib/$(REAL_GNU_TARGET_NAME)/$(GCC_VERSION)
|
||||
endif
|
||||
|
||||
$(TARGET_DIR)/usr/bin/gcc: $(GCC_BUILD_DIR3)/.compiled
|
||||
PATH=$(TARGET_PATH) \
|
||||
$(MAKE) DESTDIR=$(TARGET_DIR) -C $(GCC_BUILD_DIR3) install
|
||||
# Remove broken specs file (cross compile flag is set).
|
||||
rm -f $(TARGET_DIR)/usr/$(GCC_LIB_SUBDIR)/specs
|
||||
#
|
||||
# Now for the ugly 3.3.x soft float hack...
|
||||
#
|
||||
ifeq ($(BR2_SOFT_FLOAT),y)
|
||||
ifeq ($(findstring 3.3.,$(GCC_VERSION)),3.3.)
|
||||
# Add a specs file that defaults to soft float mode.
|
||||
cp ./$(GCC_VERSION)/specs-$(ARCH)-soft-float $(TARGET_DIR)/usr/lib/gcc-lib/$(REAL_GNU_TARGET_NAME)/$(GCC_VERSION)/specs
|
||||
# Make sure gcc does not think we are cross compiling
|
||||
$(SED) "s/^1/0/;" $(TARGET_DIR)/usr/lib/gcc-lib/$(REAL_GNU_TARGET_NAME)/$(GCC_VERSION)/specs
|
||||
endif
|
||||
endif
|
||||
#
|
||||
# Ok... that's enough of that.
|
||||
#
|
||||
-(cd $(TARGET_DIR)/bin; find -type f | xargs $(STRIP) > /dev/null 2>&1)
|
||||
-(cd $(TARGET_DIR)/usr/bin; find -type f | xargs $(STRIP) > /dev/null 2>&1)
|
||||
-(cd $(TARGET_DIR)/usr/$(GCC_LIB_SUBDIR); $(STRIP) cc1 cc1plus collect2 > /dev/null 2>&1)
|
||||
-(cd $(TARGET_DIR)/usr/lib; $(STRIP) libstdc++.so.*.*.* > /dev/null 2>&1)
|
||||
-(cd $(TARGET_DIR)/lib; $(STRIP) libgcc_s.so.*.*.* > /dev/null 2>&1)
|
||||
#
|
||||
rm -f $(TARGET_DIR)/usr/lib/*.la*
|
||||
#rm -rf $(TARGET_DIR)/share/locale $(TARGET_DIR)/usr/info \
|
||||
# $(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc
|
||||
# Work around problem of missing syslimits.h
|
||||
@if [ ! -f $(TARGET_DIR)/usr/$(GCC_LIB_SUBDIR)/include/syslimits.h ] ; then \
|
||||
echo "warning: working around missing syslimits.h" ; \
|
||||
cp -f $(STAGING_DIR)/$(GCC_LIB_SUBDIR)/include/syslimits.h \
|
||||
$(TARGET_DIR)/usr/$(GCC_LIB_SUBDIR)/include/ ; \
|
||||
fi
|
||||
# These are in /lib, so...
|
||||
#rm -rf $(TARGET_DIR)/usr/lib/libgcc_s.so*
|
||||
#touch -c $(TARGET_DIR)/usr/bin/gcc
|
||||
|
||||
gcc_target: uclibc_target binutils_target $(TARGET_DIR)/usr/bin/gcc
|
||||
|
||||
gcc_target-clean:
|
||||
rm -rf $(GCC_BUILD_DIR3)
|
||||
rm -f $(TARGET_DIR)/usr/bin/$(REAL_GNU_TARGET_NAME)*
|
||||
|
||||
gcc_target-toolclean:
|
||||
rm -rf $(GCC_BUILD_DIR3)
|
||||
|
||||
@@ -6,6 +6,4 @@ source: uclibc-source
|
||||
prepare: uclibc-configured
|
||||
compile: $(UCLIBC_DIR)/lib/libc.a
|
||||
install: uclibc
|
||||
rm -rf $(TARGET_DIR)/lib/libpthread*.so*
|
||||
$(STRIP) $(TARGET_DIR)/lib/*.so
|
||||
clean: uclibc-toolclean
|
||||
@@ -10,9 +10,11 @@ UCLIBC_DIR:=$(TOOL_BUILD_DIR)/uClibc
|
||||
UCLIBC_SOURCE:=uClibc-$(strip $(subst ",, $(BR2_USE_UCLIBC_SNAPSHOT))).tar.bz2
|
||||
#"
|
||||
UCLIBC_SITE:=http://www.uclibc.org/downloads/snapshots
|
||||
UCLIBC_VER:=PKG_VERSION:=0.${shell date +"%G%m%d"}
|
||||
else
|
||||
UCLIBC_DIR:=$(TOOL_BUILD_DIR)/uClibc-0.9.27
|
||||
UCLIBC_SOURCE:=uClibc-0.9.27.tar.bz2
|
||||
UCLIBC_VER:=0.9.27
|
||||
UCLIBC_DIR:=$(TOOL_BUILD_DIR)/uClibc-$(UCLIBC_VER)
|
||||
UCLIBC_SOURCE:=uClibc-$(UCLIBC_VER).tar.bz2
|
||||
UCLIBC_SITE:=http://www.uclibc.org/downloads
|
||||
endif
|
||||
|
||||
@@ -99,6 +101,7 @@ $(STAGING_DIR)/lib/libc.a: $(UCLIBC_DIR)/lib/libc.a
|
||||
DEVEL_PREFIX=/ \
|
||||
RUNTIME_PREFIX=/ \
|
||||
install_dev
|
||||
echo $(UCLIBC_VER) > $(STAGING_DIR)/uclibc_version
|
||||
# Build the host utils. Need to add an install target... - disabled
|
||||
# $(MAKE1) -C $(UCLIBC_DIR)/utils \
|
||||
# PREFIX=$(STAGING_DIR) \
|
||||
@@ -106,23 +109,6 @@ $(STAGING_DIR)/lib/libc.a: $(UCLIBC_DIR)/lib/libc.a
|
||||
# hostutils
|
||||
touch -c $(STAGING_DIR)/lib/libc.a
|
||||
|
||||
ifneq ($(TARGET_DIR),)
|
||||
$(TARGET_DIR)/lib/libc.so.0: $(STAGING_DIR)/lib/libc.a
|
||||
$(MAKE1) -C $(UCLIBC_DIR) \
|
||||
PREFIX=$(TARGET_DIR) \
|
||||
DEVEL_PREFIX=/usr/ \
|
||||
RUNTIME_PREFIX=/ \
|
||||
install_runtime
|
||||
touch -c $(TARGET_DIR)/lib/libc.so.0
|
||||
|
||||
$(TARGET_DIR)/usr/bin/ldd:
|
||||
$(MAKE1) -C $(UCLIBC_DIR) $(TARGET_CONFIGURE_OPTS) \
|
||||
PREFIX=$(TARGET_DIR) utils install_utils
|
||||
touch -c $(TARGET_DIR)/usr/bin/ldd
|
||||
|
||||
UCLIBC_TARGETS=$(TARGET_DIR)/lib/libc.so.0
|
||||
endif
|
||||
|
||||
uclibc-configured: $(UCLIBC_DIR)/.configured
|
||||
|
||||
uclibc: $(STAGING_DIR)/lib/libc.a \
|
||||
@@ -139,28 +125,3 @@ uclibc-clean:
|
||||
uclibc-toolclean:
|
||||
rm -rf $(UCLIBC_DIR)
|
||||
|
||||
uclibc-target-utils: $(TARGET_DIR)/usr/bin/ldd
|
||||
|
||||
#############################################################
|
||||
#
|
||||
# uClibc for the target just needs its header files
|
||||
# and whatnot installed.
|
||||
#
|
||||
#############################################################
|
||||
|
||||
$(TARGET_DIR)/usr/lib/libc.a: $(STAGING_DIR)/$(REAL_GNU_TARGET_NAME)/lib/libc.a
|
||||
$(MAKE1) -C $(UCLIBC_DIR) \
|
||||
PREFIX=$(TARGET_DIR) \
|
||||
DEVEL_PREFIX=/usr/ \
|
||||
RUNTIME_PREFIX=/ \
|
||||
install_dev
|
||||
touch -c $(TARGET_DIR)/usr/lib/libc.a
|
||||
|
||||
uclibc_target: gcc uclibc $(TARGET_DIR)/usr/lib/libc.a $(TARGET_DIR)/usr/bin/ldd
|
||||
|
||||
uclibc_target-clean:
|
||||
rm -f $(TARGET_DIR)/include
|
||||
|
||||
uclibc_target-dirclean:
|
||||
rm -f $(TARGET_DIR)/include
|
||||
|
||||
Reference in new issue
Block a user