diff options
author | Michael Olbrich <m.olbrich@pengutronix.de> | 2019-02-18 16:41:14 +0100 |
---|---|---|
committer | Michael Olbrich <m.olbrich@pengutronix.de> | 2019-02-20 13:58:14 +0100 |
commit | 1bad43ee6c55f42bc3f81378bf5d6bae65fa3d06 (patch) | |
tree | 86bb71befb6bacd62af45bda45e055248086916c | |
parent | 845df3c7d8daf29ee86e27114a4bc7532937c25c (diff) | |
download | ptxdist-1bad43ee6c55f42bc3f81378bf5d6bae65fa3d06.tar.gz ptxdist-1bad43ee6c55f42bc3f81378bf5d6bae65fa3d06.tar.xz |
ptxd_make_world_license: add more data and and handle image packages
Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
-rw-r--r-- | rules/other/Toplevel.make | 1 | ||||
-rw-r--r-- | rules/post/ptxd_make_license_report.make | 4 | ||||
-rw-r--r-- | rules/post/ptxd_make_world_common.make | 1 | ||||
-rw-r--r-- | rules/post/ptxd_make_world_license.make | 12 | ||||
-rw-r--r-- | scripts/lib/ptxd_make_world_license.sh | 65 |
5 files changed, 66 insertions, 17 deletions
diff --git a/rules/other/Toplevel.make b/rules/other/Toplevel.make index 8f311c90c..e7ace8386 100644 --- a/rules/other/Toplevel.make +++ b/rules/other/Toplevel.make @@ -90,6 +90,7 @@ CROSS_PACKAGES := $(CROSS_PACKAGES-y) HOST_PACKAGES := $(HOST_PACKAGES-y) EXTRA_PACKAGES := $(EXTRA_PACKAGES-y) LAZY_PACKAGES := $(LAZY_PACKAGES-y) +IMAGE_PACKAGES := $(IMAGE_PACKAGES-y) # # build everything if no collection is active diff --git a/rules/post/ptxd_make_license_report.make b/rules/post/ptxd_make_license_report.make index 71bf1373e..1c24245f4 100644 --- a/rules/post/ptxd_make_license_report.make +++ b/rules/post/ptxd_make_license_report.make @@ -68,12 +68,12 @@ PHONY += license-compliance-data license-compliance-data: \ $(RELEASEDIR)/license-compliance.yaml -$(RELEASEDIR)/license-compliance.yaml: $(addprefix $(STATEDIR)/,$(addsuffix .report,$(PTX_PACKAGES_TARGET))) +$(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_TARGET)) + ptxd_make_license_compliance_yaml $(sort $(PTX_PACKAGES_SELECTED) $(IMAGE_PACKAGES)) @$(call finish) # vim: syntax=make diff --git a/rules/post/ptxd_make_world_common.make b/rules/post/ptxd_make_world_common.make index d5a9f6ebb..17fd4a387 100644 --- a/rules/post/ptxd_make_world_common.make +++ b/rules/post/ptxd_make_world_common.make @@ -81,6 +81,7 @@ world/env/impl = \ pkg_path="$(call ptx/escape,$($(1)_PATH))" \ pkg_src="$(call ptx/escape,$($(1)_SOURCE))" \ pkg_srcs="$(call ptx/escape,$($(1)_SOURCES))" \ + pkg_md5s="$(call ptx/escape,$(foreach s,$($(1)_SOURCES),$($($(s))_MD5):))"\ pkg_md5="$(call ptx/escape,$($(1)_MD5))" \ pkg_url="$(call ptx/escape,$($(1)_URL))" \ pkg_cfghash="$(call ptx/escape,$($(1)_CFGHASH))" \ diff --git a/rules/post/ptxd_make_world_license.make b/rules/post/ptxd_make_world_license.make index 11d9fcc2d..3ba717657 100644 --- a/rules/post/ptxd_make_world_license.make +++ b/rules/post/ptxd_make_world_license.make @@ -15,6 +15,18 @@ world/license = \ $(call world/env, $(1)) \ ptxd_make_world_license +# +# image/license +# +image/license = \ + $(call world/image/env, $(1)) \ + ptxd_make_world_license + +$(STATEDIR)/image-%.report: + @$(call targetinfo) + @$(call image/license, $(PTX_MAP_TO_PACKAGE_image-$(*))) + @$(call touch) + $(STATEDIR)/%.report: @$(call targetinfo) @$(call world/license, $(PTX_MAP_TO_PACKAGE_$(*))) diff --git a/scripts/lib/ptxd_make_world_license.sh b/scripts/lib/ptxd_make_world_license.sh index ae9367fde..c66bf5bc9 100644 --- a/scripts/lib/ptxd_make_world_license.sh +++ b/scripts/lib/ptxd_make_world_license.sh @@ -210,29 +210,64 @@ ptxd_make_world_license_write() { export -f ptxd_make_world_license_write ptxd_make_world_license_yaml() { - cat << EOF -flags: ${!pkg_license_flags[@]} -licenses: ${pkg_license} -md5: ${pkg_md5} -name: ${pkg_label} -section: ${pkg_section} -url: ${pkg_url} -version: ${pkg_version} -license-files: -EOF - local guess="no" + do_echo() { + if [ -n "${2}" ]; then + echo "${1} '${2}'" + fi + } + do_list() { + if [ -n "${2}" ]; then + echo "${1}" + awk "BEGIN { RS=\" \" } { if (\$1) print \"- '\" \$1 \"'\" }" <<<"${2}" + fi + } + do_echo "name:" "${pkg_label}" + do_echo "rulefile:" "${pkg_makefile}" + do_echo "menufile:" "${pkg_infile}" + do_list "builddeps:" "${pkg_build_deps}" + do_list "rundeps:" "${pkg_run_deps}" + do_echo "config:" "${pkg_config}" + do_echo "version:" "${pkg_version}" + do_list "url:" "${pkg_url}" + do_echo "md5:" "${pkg_md5}" + do_echo "source:" "${pkg_src}" + if [ -n "${pkg_md5s}" ]; then + echo "md5s:" + awk "BEGIN { RS=\" *:\\\\s*\"; FS=\":\" } { if (\$1) print \"- '\" \$1 \"'\" }" <<<"${pkg_md5s}" + fi + do_list "sources:" "${pkg_srcs}" + do_echo "patches:" "${pkg_patch_dir}" + do_echo "srcdir:" "${pkg_dir}" + do_echo "builddir:" "${pkg_build_dir}" + do_echo "pkgdir:" "${pkg_pkg_dir}" + do_echo "section:" "${pkg_section}" + do_echo "licenses:" "${pkg_license}" + do_list "license-flags:" "${!pkg_license_flags[*]}" + if [ ${#pkg_license_texts[@]} -gt 0 -o ${#pkg_license_texts_guessed[@]} -gt 0 ]; then + echo "license-files:" + fi + local guess="false" for license in "${pkg_license_texts[@]}" - "${pkg_license_texts_guessed[@]}"; do if [ "${license}" = "-" ]; then - guess="yes" + guess="true" continue fi - cat << EOF + cat << EOF $(basename "${license}"): guessed: ${guess} - file: ${license} - md5: $(sed -n "s/\(.*\) $(basename "${license}")\$/\1/p" "${pkg_license_dir}/license/MD5SUM") + file: '${license}' + md5: '$(sed -n "s/\(.*\) $(basename "${license}")\$/\1/p" "${pkg_license_dir}/license/MD5SUM")' EOF done + if [ -e "${pkg_xpkg_map}" ]; then + echo "ipkgs:" + for xpkg in $(< "${pkg_xpkg_map}"); do + echo "- '${ptx_pkg_dir}/${xpkg}_${pkg_version}_${PTXDIST_IPKG_ARCH_STRING}.ipk'" + done + fi + do_echo "image:" "${image_image}" + do_list "pkgs:" "${image_pkgs}" + do_list "files:" "${image_files}" } export -f ptxd_make_world_license_yaml |