add secret option to use host's toolchain when native compiling
authormbm <mbm@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Thu, 10 Aug 2006 19:25:26 +0000 (19:25 +0000)
committermbm <mbm@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Thu, 10 Aug 2006 19:25:26 +0000 (19:25 +0000)
git-svn-id: svn://svn.openwrt.org/openwrt/branches/buildroot-ng/openwrt@4553 3c298f89-4303-0410-b956-a3cf2f4a3e73

Config.in
package/base-files/Makefile
rules.mk
toolchain/Config.in
toolchain/Makefile

index caa7944..d1d66ff 100644 (file)
--- a/Config.in
+++ b/Config.in
@@ -16,7 +16,7 @@ menuconfig DEVEL
        bool "Advanced configuration options (for developers)"
        default n
        select BUILDOPTS
-       select TOOLCHAINOPTS
+       select TOOLCHAINOPTS if !NATIVE_TOOLCHAIN
 
 config BROKEN
        bool "Show broken platforms / packages" if DEVEL
index e41e1fd..dce07fe 100644 (file)
@@ -86,6 +86,7 @@ define Package/libgcc
   SECTION:=libs
   CATEGORY:=Libraries
   DEFAULT:=y
+  DEPENDS:=@!NATIVE_TOOLCHAIN
   TITLE:=GCC support library
   VERSION:=$(LIBGCC_VERSION)-$(PKG_RELEASE)
   DESCRIPTION:=$(TITLE)
@@ -94,6 +95,7 @@ endef
 define Package/libpthread
   $(call Package/base-files$(TARGET))
   DEFAULT:=n
+  DEPENDS:=@!NATIVE_TOOLCHAIN
   VERSION:=$(UCLIBC_VERSION)-$(PKG_RELEASE)
   TITLE:=POSIX thread library
   DESCRIPTION:=POSIX thread library
@@ -103,6 +105,7 @@ endef
 define Package/uclibc
   $(call Package/base-files$(TARGET))
   VERSION:=$(UCLIBC_VERSION)-$(PKG_RELEASE)
+  DEPENDS:=@!NATIVE_TOOLCHAIN
   TITLE:=C library
   DESCRIPTION:=C library for embedded systems
 endef
index a8d3647..3645b06 100644 (file)
--- a/rules.mk
+++ b/rules.mk
@@ -33,9 +33,12 @@ STAMP_DIR:=$(BUILD_DIR)/stamp
 TARGET_DIR:=$(BUILD_DIR)/root
 IPKG_STATE_DIR:=$(TARGET_DIR)/usr/lib/ipkg
 
-REAL_GNU_TARGET_NAME=$(OPTIMIZE_FOR_CPU)-linux-uclibc
-GNU_TARGET_NAME=$(OPTIMIZE_FOR_CPU)-linux
-TARGET_CROSS:=$(OPTIMIZE_FOR_CPU)-linux-uclibc-
+ifeq ($(CONFIG_NATIVE_TOOLCHAIN),)
+  REAL_GNU_TARGET_NAME=$(OPTIMIZE_FOR_CPU)-linux-uclibc
+  GNU_TARGET_NAME=$(OPTIMIZE_FOR_CPU)-linux
+  TARGET_CROSS:=$(OPTIMIZE_FOR_CPU)-linux-uclibc-
+endif
+
 IMAGE:=$(BUILD_DIR)/root_fs_$(ARCH)
 
 TARGET_PATH:=$(STAGING_DIR)/usr/bin:$(STAGING_DIR)/bin:$(PATH)
index 37af938..b5258dd 100644 (file)
@@ -1,7 +1,14 @@
 #
+config NATIVE_TOOLCHAIN
+       bool
+       prompt "Use host's toolchain" if DEVEL && BROKEN
+       default n
+       help
+               If enabled, OpenWrt will compile using your existing toolchain instead of compiling one
 
 menuconfig TOOLCHAINOPTS
        bool "Toolchain Options" if DEVEL
+       depends !NATIVE_TOOLCHAIN
 
 source "toolchain/binutils/Config.in"
 source "toolchain/gcc/Config.in"
index 92069ac..fb54bdd 100644 (file)
@@ -7,7 +7,12 @@
 # Main makefile for the toolchain
 #
 include $(TOPDIR)/rules.mk
-TARGETS-y:=sed kernel-headers sstrip binutils gcc uClibc ipkg-utils libnotimpl ext2fs squashfs jffs2 lzma
+TARGETS-y:=sed kernel-headers sstrip
+ifeq ($(CONFIG_NATIVE_TOOLCHAIN),)
+  TARGETS-y+=binutils gcc uClibc
+endif
+TARGETS-y+=ipkg-utils libnotimpl ext2fs squashfs jffs2 lzma
+
 TARGETS-$(CONFIG_GDB) += gdb
 
 TARGETS_DOWNLOAD:=$(patsubst %,%-download,$(TARGETS-y))
@@ -21,9 +26,11 @@ clean: $(TARGETS_CLEAN)
 
 kernel-headers-prepare: sed-install
 uClibc-prepare: kernel-headers-prepare sstrip-install
-binutils-prepare: uClibc-prepare
-gcc-prepare: binutils-install
-uClibc-compile: gcc-compile
+ifeq ($(CONFIG_NATIVE_TOOLCHAIN),)
+  binutils-prepare: uClibc-prepare
+  gcc-prepare: binutils-install
+  uClibc-compile: gcc-compile
+endif
 gcc-install: uClibc-install
 squashfs-compile: lzma-install
 
This page took 0.035658 seconds and 4 git commands to generate.