uboot-envtools: Add TARGET_LDFLAGS to fix PIE and RELRO
Forward the OpenWrt TARGET_LDFLAGS to the linker of the fw_printenv tool.
In addition also use the more standard make invocation script.
With this change the fw_printenv tool is built with PIE and Full RELRO
support when activated globally in OpenWrt.
Signed-off-by: Hauke Mehrtens <hauke.mehrtens@intel.com>
(cherry picked from commit b7b2be0b26)
			
			
This commit is contained in:
		 Hauke Mehrtens
					Hauke Mehrtens
				
			
				
					committed by
					
						 Hauke Mehrtens
						Hauke Mehrtens
					
				
			
			
				
	
			
			
			 Hauke Mehrtens
						Hauke Mehrtens
					
				
			
						parent
						
							963cee15e8
						
					
				
				
					commit
					0803b62fc6
				
			| @@ -51,16 +51,11 @@ define Build/Configure | |||||||
| 	touch $(PKG_BUILD_DIR)/include/generated/autoconf.h | 	touch $(PKG_BUILD_DIR)/include/generated/autoconf.h | ||||||
| endef | endef | ||||||
|  |  | ||||||
| TARGET_CFLAGS += -I$(STAGING_DIR)/usr/include | MAKE_FLAGS += \ | ||||||
|  |  | ||||||
| define Build/Compile |  | ||||||
| 	$(MAKE) -C $(PKG_BUILD_DIR) \ |  | ||||||
| 		CROSS_COMPILE="$(TARGET_CROSS)" \ |  | ||||||
| 	TARGET_CFLAGS="$(TARGET_CFLAGS)" \ | 	TARGET_CFLAGS="$(TARGET_CFLAGS)" \ | ||||||
| 		HOSTLDFLAGS= \ | 	TARGET_LDFLAGS="$(TARGET_LDFLAGS)" \ | ||||||
| 	no-dot-config-targets=envtools \ | 	no-dot-config-targets=envtools \ | ||||||
| 	envtools | 	envtools | ||||||
| endef |  | ||||||
|  |  | ||||||
| define Package/uboot-envtools/conffiles | define Package/uboot-envtools/conffiles | ||||||
| /etc/config/ubootenv | /etc/config/ubootenv | ||||||
|   | |||||||
| @@ -1,12 +1,15 @@ | |||||||
| --- a/tools/env/Makefile | --- a/tools/env/Makefile | ||||||
| +++ b/tools/env/Makefile | +++ b/tools/env/Makefile | ||||||
| @@ -10,6 +10,10 @@ | @@ -10,6 +10,13 @@ | ||||||
|  # with "CC" here for the maximum code reuse of scripts/Makefile.host. |  # with "CC" here for the maximum code reuse of scripts/Makefile.host. | ||||||
|  override HOSTCC = $(CC) |  override HOSTCC = $(CC) | ||||||
|   |   | ||||||
| +ifneq ($(TARGET_CFLAGS),) | +ifneq ($(TARGET_CFLAGS),) | ||||||
| +HOSTCFLAGS = $(TARGET_CFLAGS) | +HOSTCFLAGS = $(TARGET_CFLAGS) | ||||||
| +endif | +endif | ||||||
|  | +ifneq ($(TARGET_LDFLAGS),) | ||||||
|  | +HOSTLDFLAGS = $(TARGET_LDFLAGS) | ||||||
|  | +endif | ||||||
| + | + | ||||||
|  # Compile for a hosted environment on the target |  # Compile for a hosted environment on the target | ||||||
|  HOST_EXTRACFLAGS  = $(patsubst -I%,-idirafter%, $(filter -I%, $(UBOOTINCLUDE))) \ |  HOST_EXTRACFLAGS  = $(patsubst -I%,-idirafter%, $(filter -I%, $(UBOOTINCLUDE))) \ | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user