summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorPaul Spooren <mail@aparcar.org>2024-02-12 16:59:50 +0100
committerChristian Marangi <ansuelsmth@gmail.com>2024-02-17 14:45:35 +0100
commitcbc7393294960861a50681ef84914858748f5c6b (patch)
tree0bc3c899c47a490fbf6ecdcf0988798e54e91b07 /include
parent472312f83f886a0749672a634948726fda9c2401 (diff)
downloadopenwrt-cbc7393294960861a50681ef84914858748f5c6b.tar.gz
openwrt-cbc7393294960861a50681ef84914858748f5c6b.tar.bz2
openwrt-cbc7393294960861a50681ef84914858748f5c6b.zip
build: align SOURCE path for build system and SDK
Building a package in the build system or the SDK results in different values for the `SOURCE` property, it's either `packages/<package name>` or `feeds/base/<package name>`. The reason is that the SDK handles `openwrt.git` as an external feed called while the build system contains the *base* packages directly. Since packages created with either method are (ideally) the same (bit for bit), align the content of SOURCE. To do so this commit creates a symlink from `feeds/base` to `$(TOPDIR)/package` and adopts the SOURCE when building from inside the build system. Signed-off-by: Paul Spooren <mail@aparcar.org>
Diffstat (limited to 'include')
-rw-r--r--include/package-defaults.mk2
-rw-r--r--include/toplevel.mk3
2 files changed, 3 insertions, 2 deletions
diff --git a/include/package-defaults.mk b/include/package-defaults.mk
index 30b112c7d8..392aad0d5d 100644
--- a/include/package-defaults.mk
+++ b/include/package-defaults.mk
@@ -20,7 +20,7 @@ define Package/Default
PROVIDES:=
EXTRA_DEPENDS:=
MAINTAINER:=$(PKG_MAINTAINER)
- SOURCE:=$(patsubst $(TOPDIR)/%,%,$(CURDIR))
+ SOURCE:=$(patsubst $(TOPDIR)/%,%,$(patsubst $(TOPDIR)/package/%,feeds/base/%,$(CURDIR)))
ifneq ($(PKG_VERSION),)
ifneq ($(PKG_RELEASE),)
VERSION:=$(PKG_VERSION)-$(PKG_RELEASE)
diff --git a/include/toplevel.mk b/include/toplevel.mk
index f2dfde60cf..4ec99b30de 100644
--- a/include/toplevel.mk
+++ b/include/toplevel.mk
@@ -77,7 +77,8 @@ _ignore = $(foreach p,$(IGNORE_PACKAGES),--ignore $(p))
prepare-tmpinfo: FORCE
@+$(MAKE) -r -s $(STAGING_DIR_HOST)/.prereq-build $(PREP_MK)
- mkdir -p tmp/info
+ mkdir -p tmp/info feeds
+ [ -e $(TOPDIR)/feeds/base ] || ln -sf $(TOPDIR)/package $(TOPDIR)/feeds/base
$(_SINGLE)$(NO_TRACE_MAKE) -j1 -r -s -f include/scan.mk SCAN_TARGET="packageinfo" SCAN_DIR="package" SCAN_NAME="package" SCAN_DEPTH=5 SCAN_EXTRA=""
$(_SINGLE)$(NO_TRACE_MAKE) -j1 -r -s -f include/scan.mk SCAN_TARGET="targetinfo" SCAN_DIR="target/linux" SCAN_NAME="target" SCAN_DEPTH=3 SCAN_EXTRA="" SCAN_MAKEOPTS="TARGET_BUILD=1"
for type in package target; do \