]> rtime.felk.cvut.cz Git - jenkicar/rpp-simulink.git/blob - Makefile
Merge branch 'master' into all-targets
[jenkicar/rpp-simulink.git] / Makefile
1
2 release4eaton:
3         $(MAKE) release RELEASE_TARGET=tms570_hydctr RELEASE_ATTR=eaton
4
5 release4us:
6         $(MAKE) release RELEASE_TARGET=tms570_rpp RELEASE_ATTR=
7
8 ifeq ($(or $(release_in_progress),$(MAKECMDGOALS)),release)
9 export release_in_progress = release
10
11 include rpp/lib/Makefile.var    # for rpp_lib_* variables
12 include rpp/lib/common.mk
13
14 RELEASE_TARGET = $(error Please set RELEASE_TARGET variable on command line)
15
16 include rpp/lib/build/$(RELEASE_TARGET)/Makefile.config
17
18 $(eval $(call release_rules,rpp-simulink))
19
20 TESTSW_LIB_COMMIT = git --git-dir=doc/test-sw/rpp-lib/.git rev-parse HEAD
21 SIMULINK_LIB_COMMIT = git --git-dir=rpp/lib/.git rev-parse HEAD
22
23 release: $(RELEASE_BASENAME).zip
24         if [ $$($(SIMULINK_LIB_COMMIT)) != $$($(TESTSW_LIB_COMMIT)) ]; then echo >&2 "Library version mismatch"; exit 1; fi
25         cp rpp/lib/$(shell make -C rpp/lib --silent print-release-basename).zip .
26         $(MAKE) -C doc/test-sw release
27         cp doc/test-sw/$(shell make -C doc/test-sw --silent print-release-basename).zip .
28         cp doc/rpp_simulink.pdf rpp_simulink-$(RELEASE_VERSION).pdf
29
30 RELEASE_LIB_GIT_FILES = \
31         common.mk \
32         Makefile.var \
33         build/$(RELEASE_TARGET)/$(TARGET_CCXML) \
34         build/$(RELEASE_TARGET)/$(TARGET_LDCMD) \
35         build/Makefile.rules \
36         build/Makefile.rules.arm \
37         os/$(rpp_lib_OS)/include/ \
38         rpp/include/
39
40 ifneq ($(filter lwip/src/include,$(rpp_lib_INCLUDES)),)
41 RELEASE_LIB_GIT_FILES += lwip/src/include/
42 endif
43
44 RELEASE_LIB_GEN_FILES = Makefile.config rpp-lib.lib
45
46 $(RELEASE_BASENAME):: LIB_RELEASE_BASENAME:=$(shell make -C rpp/lib --silent print-release-basename)
47 $(RELEASE_BASENAME):: release-lib
48 # Copy library headers and binaries
49         git --git-dir=rpp/lib/.git archive --worktree-attributes --prefix=$@/rpp/lib/ HEAD $(RELEASE_LIB_GIT_FILES) | tar xf -
50         cp --parents  $(RELEASE_LIB_GEN_FILES:%=rpp/lib/%) $@/
51 # Compile and include the PDF documentation
52         $(MAKE) -C doc
53         mkdir -p $@/doc
54         cp doc/rpp_simulink.pdf $@/doc
55
56 release-lib:
57         $(MAKE) -C rpp/lib/build/$(RELEASE_TARGET)/Release # Compile the lib
58         $(MAKE) -C rpp/lib release # Create release zip and directory
59
60 endif # release