[riot-notifications] [RIOT-OS/RIOT] sys/suit: initial support for SUIT firmware updates (#11818)

Francisco notifications at github.com
Wed Sep 25 19:45:56 CEST 2019


fjmolinas commented on this pull request.



> +
+ifeq (1, $(RIOT_CI_BUILD))
+  SUIT_KEY_DIR ?= $(BINDIR)
+else
+  SUIT_KEY_DIR ?= $(RIOTBASE)/keys
+endif
+
+SUIT_SEC ?= $(SUIT_KEY_DIR)/$(SUIT_KEY)
+SUIT_PUB ?= $(SUIT_KEY_DIR)/$(SUIT_KEY).pub
+
+SUIT_PUB_HDR = $(BINDIR)/riotbuild/public_key.h
+SUIT_PUB_HDR_DIR = $(dir $(SUIT_PUB_HDR))
+CFLAGS += -I$(SUIT_PUB_HDR_DIR)
+BUILDDEPS += $(SUIT_PUB_HDR)
+
+$(SUIT_SEC) $(SUIT_PUB): | $(CLEAN)

```suggestion
$(SUIT_SEC) $(SUIT_PUB): $(CLEAN)
```

If I understand `order-only prerequesites` (and I'm not sure I do), the current situation makes it that `$(SUIT_SEC) $(SUIT_PUB)` don't need to be recompiled even if `$(CLEAN)` has changed (in this case is executed). This would be no Issue since normally `$(SUIT_SEC) $(SUIT_PUB)`  will be recompiled since they would be deleted. But if `-j` is used make will see `$(SUIT_SEC) $(SUIT_PUB)` hase not changed and has no `normal pre-requisite` and since `$(CLEAN)` is order only it will execute them in parallel and every other compilation will fail.

At least compilation stopped failing for after changing that, I was running this command:

```
docker run -ti --rm -v $(pwd):/data/riotbuild -u $(id -u) riot/riotbuild:latest make RIOT_CI_BUILD=1 BOARD=samr21-xpro -Cexamples/suit_update clean all -j8
```

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/RIOT-OS/RIOT/pull/11818#pullrequestreview-293252906
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.riot-os.org/pipermail/notifications/attachments/20190925/66a4b515/attachment.htm>


More information about the notifications mailing list