diff --git a/lang/golang/golang-package.mk b/lang/golang/golang-package.mk index 235585b20..2d558565c 100644 --- a/lang/golang/golang-package.mk +++ b/lang/golang/golang-package.mk @@ -120,10 +120,22 @@ GO_PKG_BUILD_BIN_DIR:=$(GO_PKG_BUILD_DIR)/bin$(if $(GO_HOST_TARGET_DIFFERENT),/$ GO_PKG_BUILD_DEPENDS_SRC:=$(STAGING_DIR)$(GO_PKG_PATH)/src -ifeq ($(CONFIG_PKG_ASLR_PIE),y) +ifdef CONFIG_PKG_ASLR_PIE_ALL ifeq ($(strip $(PKG_ASLR_PIE)),1) ifeq ($(GO_TARGET_PIE_SUPPORTED),1) GO_PKG_ENABLE_PIE:=1 + else + $(warning PIE buildmode is not supported for $(GO_OS)/$(GO_ARCH)) + endif + endif +endif + +ifdef CONFIG_PKG_ASLR_PIE_REGULAR + ifeq ($(strip $(PKG_ASLR_PIE_REGULAR)),1) + ifeq ($(GO_TARGET_PIE_SUPPORTED),1) + GO_PKG_ENABLE_PIE:=1 + else + $(warning PIE buildmode is not supported for $(GO_OS)/$(GO_ARCH)) endif endif endif diff --git a/lang/golang/golang/Makefile b/lang/golang/golang/Makefile index 8bfb8260f..ca27eae94 100644 --- a/lang/golang/golang/Makefile +++ b/lang/golang/golang/Makefile @@ -92,10 +92,12 @@ BOOTSTRAP_UNPACK:=$(HOST_TAR) -C $(BOOTSTRAP_BUILD_DIR) --strip-components=1 -xz RSTRIP:=: STRIP:=: -ifeq ($(CONFIG_PKG_ASLR_PIE),y) +ifdef CONFIG_PKG_ASLR_PIE_ALL ifeq ($(GO_TARGET_PIE_SUPPORTED),1) PKG_GO_ENABLE_PIE:=1 PKG_GO_INSTALL_SUFFIX:=$(GO_TARGET_PIE_INSTALL_SUFFIX) + else + $(warning PIE buildmode is not supported for $(GO_OS)/$(GO_ARCH)) endif endif