Explorar o código

add new option for enabling debugging symbols

SVN-Revision: 12591
Felix Fietkau %!s(int64=17) %!d(string=hai) anos
pai
achega
373e5f5e8d
Modificáronse 2 ficheiros con 14 adicións e 6 borrados
  1. 12 4
      Config.in
  2. 2 2
      rules.mk

+ 12 - 4
Config.in

@@ -106,6 +106,18 @@ menuconfig BUILDOPTS
 	bool
 	prompt "Build Options" if DEVEL
 
+config DEBUG
+	bool
+	prompt "Enable debugging" if BUILDOPTS
+	select NO_STRIP
+	default n
+	help
+		Disables stripping and adds -g3 to the CFLAGS
+
+config NO_STRIP
+	bool "Do not strip generated binaries (enable for native compiling)" if DEVEL
+	default n
+
 config CLEAN_IPKG
 	bool
 	prompt "Clean all ipkg files before building the rootfs" if BUILDOPTS
@@ -142,10 +154,6 @@ config EXTERNAL_KERNEL_TREE
 	prompt "Use external kernel tree" if DEVEL
 	default ""
 
-config BUILD_DEVELOPER_SYSTEM
-	bool "build a non-stripped system, so gcc can be run natively on target" if DEVEL
-	default n
-
 source "toolchain/Config.in"
 menuconfig BUILDSYSTEM_SETTINGS
     bool "Buildsystem settings" 

+ 2 - 2
rules.mk

@@ -63,7 +63,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 -Wl,-rpath-link=$(STAGING_DIR)/usr/lib
 
@@ -129,7 +129,7 @@ TARGET_CONFIGURE_OPTS:= \
   SIZE=$(TARGET_CROSS)size
 
 # strip an entire directory
-ifneq ($(CONFIG_BUILD_DEVELOPER_SYSTEM),)
+ifneq ($(CONFIG_NO_STRIP),)
   RSTRIP:=:
 else
   RSTRIP:= \