Skip to content

Commit 7b53ae3

Browse files
[build]: DPKG caching fix for evaluation bugs (#4425)
Added DPKG support for ICCPD package Added warning support for missing dependency files that causes the incorrect SHA generation.
1 parent 87f2dbd commit 7b53ae3

File tree

3 files changed

+29
-2
lines changed

3 files changed

+29
-2
lines changed

Makefile.cache

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -172,8 +172,14 @@ define GET_MOD_DEP_SHA
172172
$(if $($(dfile)_MAIN_DEB),$($(dfile)_MAIN_DEB),$(dfile))) )
173173

174174
$(if $(MDEBUG), $(info $(1)_MOD_DEP_PKGS: $($(1)_MOD_DEP_PKGS)))
175-
$(eval $(1)_DEP_MOD_SHA := $(shell git hash-object \
176-
$(foreach dfile,$($(1)_MOD_DEP_PKGS), $($(dfile)_DEP_FLAGS_FILE) $($(dfile)_MOD_HASH_FILE) $($(dfile)_SMOD_HASH_FILE) ) \
175+
176+
# Warn if there is any missing dependency files
177+
$(eval $(1)_DEP_MOD_SHA_FILES := $(foreach dfile,$($(1)_MOD_DEP_PKGS), \
178+
$($(dfile)_DEP_FLAGS_FILE) $($(dfile)_MOD_HASH_FILE) $($(dfile)_SMOD_HASH_FILE)) )
179+
$(eval $(1)_DEP_FILES_MISSING := $(filter-out $(wildcard $($(1)_DEP_MOD_SHA_FILES)),$($(1)_DEP_MOD_SHA_FILES)) )
180+
$(if $($(1)_DEP_FILES_MISSING), $(warning "[ DPKG ] Dependecy file(s) are not found for $(1) : $($(1)_DEP_FILES_MISSING)))
181+
182+
$(eval $(1)_DEP_MOD_SHA := $(shell git hash-object $($(1)_DEP_MOD_SHA_FILES) \
177183
| sha1sum | awk '{print substr($$1,0,23);}'))
178184
endef
179185

rules/docker-iccpd.dep

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
2+
DPATH := $($(DOCKER_ICCPD)_PATH)
3+
DEP_FILES := $(SONIC_COMMON_FILES_LIST) rules/docker-iccpd.mk rules/docker-iccpd.dep
4+
DEP_FILES += $(SONIC_COMMON_BASE_FILES_LIST)
5+
DEP_FILES += $(shell git ls-files $(DPATH))
6+
7+
$(DOCKER_ICCPD)_CACHE_MODE := GIT_CONTENT_SHA
8+
$(DOCKER_ICCPD)_DEP_FLAGS := $(SONIC_COMMON_FLAGS_LIST)
9+
$(DOCKER_ICCPD)_DEP_FILES := $(DEP_FILES)
10+
11+
$(eval $(call add_dbg_docker,$(DOCKER_ICCPD),$(DOCKER_ICCPD_DBG)))

rules/iccpd.dep

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
2+
SPATH := $($(ICCPD)_SRC_PATH)
3+
DEP_FILES := $(SONIC_COMMON_FILES_LIST) rules/iccpd.mk rules/iccpd.dep
4+
DEP_FILES += $(SONIC_COMMON_BASE_FILES_LIST)
5+
DEP_FILES += $(shell git ls-files $(SPATH))
6+
7+
$(ICCPD)_CACHE_MODE := GIT_CONTENT_SHA
8+
$(ICCPD)_DEP_FLAGS := $(SONIC_COMMON_FLAGS_LIST)
9+
$(ICCPD)_DEP_FILES := $(DEP_FILES)
10+

0 commit comments

Comments
 (0)