3 $(MAKE) release RELEASE_TARGET=tms570_hydctr RELEASE_ATTR=eaton
6 $(MAKE) release RELEASE_TARGET=tms570_rpp RELEASE_ATTR=
8 .PHONY: commit-lib-update
10 test $$($(TESTSW_LIB_COMMIT)) = $$($(SIMULINK_LIB_COMMIT))
11 if git --git-dir=doc/test-sw/.git diff-index --quiet HEAD -- rpp-lib; \
12 then echo "Nothing to commit in test-sw"; \
13 else git --git-dir=doc/test-sw/.git commit -m "Update lib submodule" rpp-lib; \
15 git commit -m "Update lib submodule" doc/test-sw rpp/lib
17 TESTSW_LIB_COMMIT = git --git-dir=doc/test-sw/rpp-lib/.git rev-parse HEAD
18 SIMULINK_LIB_COMMIT = git --git-dir=rpp/lib/.git rev-parse HEAD
21 ifeq ($(or $(release_in_progress),$(MAKECMDGOALS)),release)
22 export release_in_progress = release
24 include rpp/lib/Makefile.var # for rpp_lib_* variables
25 include rpp/lib/common.mk
27 RELEASE_TARGET = $(error Please set RELEASE_TARGET variable on command line)
29 include rpp/lib/build/$(RELEASE_TARGET)/Makefile.config
31 $(eval $(call release_rules,rpp-simulink))
33 release: $(RELEASE_BASENAME).zip
34 if [ $$($(SIMULINK_LIB_COMMIT)) != $$($(TESTSW_LIB_COMMIT)) ]; then echo >&2 "Library version mismatch"; exit 1; fi
35 cp rpp/lib/$(shell make -C rpp/lib --silent print-release-basename).zip .
36 $(MAKE) -C doc/test-sw release
37 cp doc/test-sw/$(shell make -C doc/test-sw --silent print-release-basename).zip .
38 cp doc/rpp_simulink.pdf rpp_simulink-$(RELEASE_VERSION).pdf
40 RELEASE_LIB_GIT_FILES = \
43 build/$(RELEASE_TARGET)/$(TARGET_CCXML) \
44 build/$(RELEASE_TARGET)/$(TARGET_LDCMD) \
45 build/Makefile.rules \
46 build/Makefile.rules.arm \
47 os/$(rpp_lib_OS)/include/ \
50 RELEASE_LIB_GEN_FILES = Makefile.config rpp-lib.lib build/gio_names.txt
52 $(RELEASE_BASENAME):: LIB_RELEASE_BASENAME:=$(shell make -C rpp/lib --silent print-release-basename)
53 $(RELEASE_BASENAME):: release-lib
54 # Copy library headers and binaries
55 git --git-dir=rpp/lib/.git archive --worktree-attributes --prefix=$@/rpp/lib/ HEAD $(RELEASE_LIB_GIT_FILES) | tar xf -
56 ifneq ($(filter lwip/src/include,$(rpp_lib_INCLUDES)),)
57 git --git-dir=rpp/lib/lwip/.git archive --worktree-attributes --prefix=$@/rpp/lib/lwip/ HEAD src/include/ | tar xf -
59 cp --parents $(RELEASE_LIB_GEN_FILES:%=rpp/lib/%) $@/
60 # Compile and include the PDF documentation
63 cp doc/rpp_simulink.pdf $@/doc
67 $(MAKE) -C rpp/lib/build/$(RELEASE_TARGET)/Release
68 # Create release zip and directory. Note that this also setups ignored
69 # files, which is required for correct function of $(RELEASE_BASENAME)
71 $(MAKE) -C rpp/lib release