X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fsvn-archive%2Farchive.git;a=blobdiff_plain;f=rules.mk;h=614feb6fc5f0fa81c3f6c1f7bb9d5625f7903237;hp=5a54c536d984d97a891c89d2928a8e5da4c2d639;hb=7128bec0fea2298d40d38c6714ae4202987c3dca;hpb=b3c88cc9e48110de6dd39e6ca77aeeaa65bdc0f9 diff --git a/rules.mk b/rules.mk index 5a54c536d9..614feb6fc5 100644 --- a/rules.mk +++ b/rules.mk @@ -1,9 +1,10 @@ -# -# Copyright (C) 2006-2007 OpenWrt.org +# +# Copyright (C) 2006-2008 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. # +# $Id$ ifneq ($(__rules_inc),1) __rules_inc=1 @@ -29,7 +30,7 @@ merge=$(subst $(space),,$(1)) confvar=$(call merge,$(foreach v,$(1),$(if $($(v)),y,n))) strip_last=$(patsubst %.$(lastword $(subst .,$(space),$(1))),%,$(1)) -_SINGLE=MAKEFLAGS=$(space) +_SINGLE=export MAKEFLAGS=$(space); ARCH:=$(call qstrip,$(shell echo $(CONFIG_ARCH) | sed -e 's/i[3-9]86/i386/')) BOARD:=$(call qstrip,$(CONFIG_TARGET_BOARD)) TARGET_OPTIMIZATION:=$(call qstrip,$(CONFIG_TARGET_OPTIMIZATION)) @@ -39,6 +40,12 @@ SUBDIR:=$(patsubst $(TOPDIR)/%,%,${CURDIR}) OPTIMIZE_FOR_CPU=$(ARCH) +ifeq ($(ARCH),powerpc) + FPIC:=-fPIC +else + FPIC:=-fpic +endif + DL_DIR:=$(if $(call qstrip,$(CONFIG_DOWNLOAD_FOLDER)),$(call qstrip,$(CONFIG_DOWNLOAD_FOLDER)),$(TOPDIR)/dl) BIN_DIR:=$(TOPDIR)/bin INCLUDE_DIR:=$(TOPDIR)/include @@ -57,7 +64,7 @@ TARGET_DIR:=$(BUILD_DIR)/root-$(BOARD) IPKG_STATE_DIR:=$(TARGET_DIR)/usr/lib/ipkg TARGET_PATH:=$(TOOLCHAIN_DIR)/bin:$(STAGING_DIR_HOST)/bin:$(STAGING_DIR)/host/bin:$(PATH) -TARGET_CFLAGS:=$(TARGET_OPTIMIZATION) +TARGET_CFLAGS:=$(TARGET_OPTIMIZATION)$(if $(CONFIG_DEBUG), -g3) TARGET_CPPFLAGS:=-I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include TARGET_LDFLAGS:=-L$(TOOLCHAIN_DIR)/lib -L$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/lib @@ -91,6 +98,7 @@ HOST_CFLAGS:=-O2 -I$(STAGING_DIR_HOST)/include HOST_LDFLAGS:=-L$(STAGING_DIR_HOST)/lib TARGET_CC:=$(TARGET_CROSS)gcc +TARGET_CXX:=$(TARGET_CROSS)g++ STRIP:=$(STAGING_DIR_HOST)/bin/sstrip PATCH:=$(SCRIPT_DIR)/patch-kernel.sh SED:=$(STAGING_DIR_HOST)/bin/sed -i -e @@ -114,7 +122,7 @@ TARGET_CONFIGURE_OPTS:= \ NM=$(TARGET_CROSS)nm \ CC="$(TARGET_CC)" \ GCC="$(TARGET_CC)" \ - CXX=$(TARGET_CROSS)g++ \ + CXX="$(TARGET_CXX)" \ RANLIB=$(TARGET_CROSS)ranlib \ STRIP=$(TARGET_CROSS)strip \ OBJCOPY=$(TARGET_CROSS)objcopy \ @@ -122,7 +130,7 @@ TARGET_CONFIGURE_OPTS:= \ SIZE=$(TARGET_CROSS)size # strip an entire directory -ifneq ($(CONFIG_BUILD_DEVELOPER_SYSTEM),) +ifneq ($(CONFIG_NO_STRIP),) RSTRIP:=: else RSTRIP:= \