mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-11-27 16:43:09 +02:00
add support for an optional staging directory for debug binaries
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@14018 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
27d9b3cf44
commit
928d915afc
@ -106,6 +106,13 @@ config DEBUG
|
|||||||
help
|
help
|
||||||
Disables stripping and adds -g3 to the CFLAGS
|
Disables stripping and adds -g3 to the CFLAGS
|
||||||
|
|
||||||
|
config DEBUG_DIR
|
||||||
|
bool "Install debugging binaries into a staging directory"
|
||||||
|
default n
|
||||||
|
help
|
||||||
|
This will install all compiled package binaries into build_dir/target-*/debug-*/,
|
||||||
|
useful for cross-debugging via gdb/gdbserver
|
||||||
|
|
||||||
config NO_STRIP
|
config NO_STRIP
|
||||||
bool "Install unstripped binary on the target (useful for native compiling/debugging)"
|
bool "Install unstripped binary on the target (useful for native compiling/debugging)"
|
||||||
default n
|
default n
|
||||||
|
26
include/package-debug.mk
Normal file
26
include/package-debug.mk
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
#
|
||||||
|
# Copyright (C) 2006,2007 OpenWrt.org
|
||||||
|
#
|
||||||
|
# This is free software, licensed under the GNU General Public License v2.
|
||||||
|
# See /LICENSE for more information.
|
||||||
|
#
|
||||||
|
|
||||||
|
ifeq ($(DUMP),)
|
||||||
|
define BuildTarget/debug
|
||||||
|
|
||||||
|
DEBUG_STAMP_$(1) := $(DEBUG_DIR)/stamp/$(1)
|
||||||
|
|
||||||
|
ifdef Package/$(1)/install
|
||||||
|
ifneq ($(CONFIG_PACKAGE_$(1))$(SDK)$(DEVELOPER),)
|
||||||
|
compile: $$(DEBUG_STAMP_$(1))
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
$$(DEBUG_STAMP_$(1)): $(PKG_BUILD_DIR)/.built
|
||||||
|
mkdir -p $(DEBUG_DIR)/stamp
|
||||||
|
$(call Package/$(1)/install,$(DEBUG_DIR))
|
||||||
|
touch $$(DEBUG_STAMP_$(1))
|
||||||
|
|
||||||
|
|
||||||
|
endef
|
||||||
|
endif
|
@ -27,6 +27,7 @@ include $(INCLUDE_DIR)/quilt.mk
|
|||||||
include $(INCLUDE_DIR)/package-defaults.mk
|
include $(INCLUDE_DIR)/package-defaults.mk
|
||||||
include $(INCLUDE_DIR)/package-dumpinfo.mk
|
include $(INCLUDE_DIR)/package-dumpinfo.mk
|
||||||
include $(INCLUDE_DIR)/package-ipkg.mk
|
include $(INCLUDE_DIR)/package-ipkg.mk
|
||||||
|
include $(INCLUDE_DIR)/package-debug.mk
|
||||||
include $(INCLUDE_DIR)/package-bin.mk
|
include $(INCLUDE_DIR)/package-bin.mk
|
||||||
include $(INCLUDE_DIR)/autotools.mk
|
include $(INCLUDE_DIR)/autotools.mk
|
||||||
|
|
||||||
@ -146,7 +147,7 @@ endif
|
|||||||
$(Dumpinfo), \
|
$(Dumpinfo), \
|
||||||
$(foreach target, \
|
$(foreach target, \
|
||||||
$(if $(Package/$(1)/targets),$(Package/$(1)/targets), \
|
$(if $(Package/$(1)/targets),$(Package/$(1)/targets), \
|
||||||
$(if $(PKG_TARGETS),$(PKG_TARGETS), ipkg ) \
|
$(if $(PKG_TARGETS),$(PKG_TARGETS), ipkg $(if $(CONFIG_DEBUG_DIR),debug)) \
|
||||||
), $(BuildTarget/$(target)) \
|
), $(BuildTarget/$(target)) \
|
||||||
) \
|
) \
|
||||||
)
|
)
|
||||||
|
@ -160,6 +160,7 @@ define Package/base-files$(TARGET)/install
|
|||||||
$(SED) 's/$$$$/:13848:0:99999:7:::/' $(1)/etc/shadow \
|
$(SED) 's/$$$$/:13848:0:99999:7:::/' $(1)/etc/shadow \
|
||||||
)
|
)
|
||||||
$(SED) 's,$$$$R,$(REVISION),g' $(1)/etc/banner
|
$(SED) 's,$$$$R,$(REVISION),g' $(1)/etc/banner
|
||||||
|
mkdir -p $(1)/CONTROL
|
||||||
mkdir -p $(1)/dev
|
mkdir -p $(1)/dev
|
||||||
mkdir -p $(1)/etc/crontabs
|
mkdir -p $(1)/etc/crontabs
|
||||||
mkdir -p $(1)/jffs
|
mkdir -p $(1)/jffs
|
||||||
|
1
rules.mk
1
rules.mk
@ -64,6 +64,7 @@ PACKAGE_DIR:=$(BIN_DIR)/packages/$(ARCH)
|
|||||||
STAMP_DIR:=$(BUILD_DIR)/stamp
|
STAMP_DIR:=$(BUILD_DIR)/stamp
|
||||||
STAMP_DIR_HOST=$(BUILD_DIR_HOST)/stamp
|
STAMP_DIR_HOST=$(BUILD_DIR_HOST)/stamp
|
||||||
TARGET_DIR:=$(BUILD_DIR)/root-$(BOARD)
|
TARGET_DIR:=$(BUILD_DIR)/root-$(BOARD)
|
||||||
|
DEBUG_DIR:=$(BUILD_DIR)/debug-$(BOARD)
|
||||||
IPKG_STATE_DIR:=$(TARGET_DIR)/usr/lib/ipkg
|
IPKG_STATE_DIR:=$(TARGET_DIR)/usr/lib/ipkg
|
||||||
|
|
||||||
TARGET_PATH:=$(TOOLCHAIN_DIR)/usr/bin:$(STAGING_DIR_HOST)/bin:$(STAGING_DIR)/host/bin:$(PATH)
|
TARGET_PATH:=$(TOOLCHAIN_DIR)/usr/bin:$(STAGING_DIR_HOST)/bin:$(STAGING_DIR)/host/bin:$(PATH)
|
||||||
|
Loading…
Reference in New Issue
Block a user