summaryrefslogtreecommitdiffstats
path: root/rules/post/ptxd_make_license_report.make
blob: 47dc176668d0ec0767512292c77d77e0590d968f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# -*-makefile-*-
#
# Copyright (C) 2011-2013 by Michael Olbrich <m.olbrich@pengutronix.de>
#
# For further information about the PTXdist project and license conditions
# see the README file.
#

PTX_PACKAGES_TOOLS := \
	$(CROSS_PACKAGES) \
	$(HOST_PACKAGES) \
	$(LAZY_PACKAGES)

PTX_PACKAGES_TARGET := \
	$(PTX_PACKAGES_INSTALL) \
	$(EXTRA_PACKAGES)

PHONY += license-report

license-report: \
	$(REPORTDIR)/license-report.pdf \
	$(REPORTDIR)/license-report-tools.pdf

$(REPORTDIR)/license-report.pdf: $(addprefix $(STATEDIR)/,$(addsuffix .report,$(PTX_PACKAGES_TARGET)))
	@$(call targetinfo)
	@mkdir -p $(REPORTDIR)
	@$(image/env) \
	ptx_license_target="$@" \
	ptxd_make_license_report $(sort $(PTX_PACKAGES_TARGET))
	@$(call finish)

$(REPORTDIR)/license-report-tools.pdf: $(addprefix $(STATEDIR)/,$(addsuffix .report,$(PTX_PACKAGES_TOOLS)))
	@$(call targetinfo)
	@mkdir -p $(REPORTDIR)
	@$(image/env) \
	ptx_license_target="$@" \
	ptxd_make_license_report $(sort $(PTX_PACKAGES_TOOLS))
	@$(call finish)

PTXDIST_LICENSE_COMPLIANCE_OSS_ARCHIVE := $(RELEASEDIR)/OSS-$(subst $(ptx/def/space),-,$(call remove_quotes,$(PTXCONF_PROJECT_VENDOR)-$(PTXCONF_PROJECT)$(PTXCONF_PROJECT_VERSION))).tar.gz

PHONY += license-compliance-distribution

license-compliance-distribution: \
		$(RELEASEDIR)/license-compliance.pdf \
		$(PTXDIST_LICENSE_COMPLIANCE_OSS_ARCHIVE)

$(PTXDIST_LICENSE_COMPLIANCE_OSS_ARCHIVE): $(addprefix $(STATEDIR)/,$(addsuffix .release,$(PTX_PACKAGES_SELECTED)))
	@$(call targetinfo)
	@tar -C "$(RELEASEDIR)" \
		--exclude=license-compliance.pdf --exclude $(notdir $@) \
		 --transform 's;^./;$(notdir $(basename $(basename $@)))/;' -cf '$@' .
	@$(call finish)


$(RELEASEDIR)/license-compliance.pdf: $(addprefix $(STATEDIR)/,$(addsuffix .report,$(PTX_PACKAGES_TARGET)))
	@$(call targetinfo)
	@mkdir -p $(RELEASEDIR)
	@$(image/env) \
	ptx_license_target="$@" \
	ptxd_make_license_compliance_pdf $(sort $(PTX_PACKAGES_TARGET))
	@$(call finish)

PHONY += license-compliance-data

license-compliance-data: \
	$(RELEASEDIR)/license-compliance.yaml

$(RELEASEDIR)/license-compliance.yaml: $(addprefix $(STATEDIR)/,$(addsuffix .report,$(PTX_PACKAGES_SELECTED) $(IMAGE_PACKAGES)))
	@$(call targetinfo)
	@mkdir -p $(RELEASEDIR)
	@$(image/env) \
	ptx_license_target="$@" \
	ptxd_make_license_compliance_yaml $(sort $(PTX_PACKAGES_SELECTED) $(IMAGE_PACKAGES))
	@$(call finish)

# vim: syntax=make