[LEDE-DEV] How LEDE knows when to "reinstall" base-files (after revision change)?
Rafał Miłecki
zajec5 at gmail.com
Thu Nov 3 09:51:02 PDT 2016
From: Rafał Miłecki <rafal at milecki.pl>
I'm trying to understand how REVISION variable and getver.sh work. There is this
nice feature: whenever a new git commit appears, getver.sh is used to calculate
new revision and it's used for /etc/openwrt_version. LEDE never misses an update
of git commit.
Also as long as git commit stays the same, calling
make package/base-files/install V=s
has no effect.
I was trying to do the same trick for adding info on time of compilation to the
rootfs content. Please take a look at patch below. Obviously my TIME_TEST
variable changes on every "make" call, but content of
build_dir/target-*/linux-*/base-files/ipkg-arm_cortex-a9/base-files/etc/time_test
isn't updated as I expected.
Can someone explain me, how does it work for REVISION and getver.sh, please?
---
--- a/include/toplevel.mk
+++ b/include/toplevel.mk
@@ -25,6 +25,9 @@ export SOURCE_DATE_EPOCH
export GIT_CONFIG_PARAMETERS='core.autocrlf=false'
export MAKE_JOBSERVER=$(filter --jobserver%,$(MAKEFLAGS))
+TIME_TEST:=$(shell date +"%T")
+export TIME_TEST
+
# prevent perforce from messing with the patch utility
unexport P4PORT P4USER P4CONFIG P4CLIENT
--- a/package/base-files/Makefile
+++ b/package/base-files/Makefile
@@ -134,6 +134,8 @@ define Package/base-files/install
$(1)/etc/preinit \
$(1)/etc/profile
+ echo $(TIME_TEST) > $(1)/etc/time_test
+
mkdir -p $(1)/CONTROL
mkdir -p $(1)/dev
mkdir -p $(1)/etc/crontabs
More information about the Lede-dev
mailing list