From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 6652665106569101312 X-Received: by 2002:a1c:5412:: with SMTP id i18mr973394wmb.19.1548952966596; Thu, 31 Jan 2019 08:42:46 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a1c:7e4e:: with SMTP id z75ls448543wmc.1.canary-gmail; Thu, 31 Jan 2019 08:42:46 -0800 (PST) X-Google-Smtp-Source: AHgI3Ia9Y12kG2txBR5w7CqcwmcoWX0v/DGFtqAS3OLg/XH/sZXSfWABosfmtwwjMbmC7HrAFHyG X-Received: by 2002:a1c:8c8c:: with SMTP id o134mr1290195wmd.7.1548952966068; Thu, 31 Jan 2019 08:42:46 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1548952966; cv=none; d=google.com; s=arc-20160816; b=xEHLOYv4jqgKv8ujmyyHFsAG99X5oqhqYhWAsrLPSdJRpiB56JZ7kO8HQJSJBHuaVC b/aHhF+FoGusBLtKDUlNvLivbza8d/wmpof/WangE7scTS/u30J2q2NdnMlOQdG2tqjP dq6fqPrRcpWKYcufLIfA4vDR4n6rThDgotsMJCjdQYqpVMdahGG7BW8C+QiWuNwv9bbN jYLru7OuxbxkqbhGj99UgS0vL2JapHrOg5W7sZYGOXnZs9aeVLC4u+i9btqcL0iSnGR0 pMBfz2t4gVE7Rttd0cBB/VAO0H2kjwn09UzDB9wfCv1qWcUw2KalHhKdLX8fyAgTr3U/ JeDQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from; bh=JPAcpgZtGQsGiuVCrSZNEz0fk4q/S+iaILzH29KB6/U=; b=N0riyA3LfWPx3sNE7pq2GyQDi3UPvN3eW1f/OL+BQiFnL4rAEUbhU78Kuv7kanMeK1 mmTfSdI+P6ZBUF7eJ4NfGFFXYFpq0QVxQUeqO0Qsgd/B7T6BSP1MwQPZn/vWi0494acP YBsdDhBeV2cSuEkHiJxyt2PJ/kKRyWD6mR3FkKHOs2UphmHdE5UQEEiJGGCLD6esro/7 Le8/iQNBhfz3QNwv3u0aQ8P2SpBMVNbPo0dD1++wXfg/P2JJF2/lHjBzWVnEcpagZdak mx0Ub/N86EJ2vICer90JyiEBCv/SOPhHMEmVnWu4qwnzy/e0RjOk2pvyMKo69REF2zLn Q9oA== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of henning.schild@siemens.com designates 192.35.17.2 as permitted sender) smtp.mailfrom=henning.schild@siemens.com Return-Path: Received: from thoth.sbs.de (thoth.sbs.de. [192.35.17.2]) by gmr-mx.google.com with ESMTPS id i11si230273wmb.2.2019.01.31.08.42.45 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 31 Jan 2019 08:42:46 -0800 (PST) Received-SPF: pass (google.com: domain of henning.schild@siemens.com designates 192.35.17.2 as permitted sender) client-ip=192.35.17.2; Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of henning.schild@siemens.com designates 192.35.17.2 as permitted sender) smtp.mailfrom=henning.schild@siemens.com Received: from mail1.sbs.de (mail1.sbs.de [192.129.41.35]) by thoth.sbs.de (8.15.2/8.15.2) with ESMTPS id x0VGgjqw007411 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Thu, 31 Jan 2019 17:42:45 +0100 Received: from md1za8fc.ad001.siemens.net ([139.25.69.211]) by mail1.sbs.de (8.15.2/8.15.2) with ESMTP id x0VGgjDx029790; Thu, 31 Jan 2019 17:42:45 +0100 From: Henning Schild To: isar-users@googlegroups.com Cc: Henning Schild Subject: [PATCHv4 3/9] meta: move debianization code into a class and into dpkg-base Date: Thu, 31 Jan 2019 17:42:38 +0100 Message-Id: <20190131164244.9169-4-henning.schild@siemens.com> X-Mailer: git-send-email 2.19.2 In-Reply-To: <20190131164244.9169-1-henning.schild@siemens.com> References: <20190131164244.9169-1-henning.schild@siemens.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-TUID: RkwkAfrVXmNc From: Henning Schild This is pure restructuring. Move the code into its own class and include that in dpkg-base, it was available only in dpkg-raw before. Signed-off-by: Henning Schild --- meta/classes/debianize.bbclass | 87 ++++++++++++++++++++++++++++++++++ meta/classes/dpkg-base.bbclass | 1 + meta/classes/dpkg-raw.bbclass | 87 ++-------------------------------- 3 files changed, 91 insertions(+), 84 deletions(-) create mode 100644 meta/classes/debianize.bbclass diff --git a/meta/classes/debianize.bbclass b/meta/classes/debianize.bbclass new file mode 100644 index 0000000..c1a2f18 --- /dev/null +++ b/meta/classes/debianize.bbclass @@ -0,0 +1,87 @@ +# This software is a part of ISAR. +# Copyright (C) 2017-2019 Siemens AG +# +# SPDX-License-Identifier: MIT + +deb_add_changelog() { + date=$( LANG=C date -R ) + cat < ${S}/debian/changelog +${PN} (${PV}) UNRELEASED; urgency=low + + * generated by Isar + + -- ${MAINTAINER} ${date} +EOF + if [ -f ${WORKDIR}/changelog ]; then + echo >> ${S}/debian/changelog + cat ${WORKDIR}/changelog >> ${S}/debian/changelog + fi +} + +deb_create_compat() { + echo 9 > ${S}/debian/compat +} + +deb_create_control() { + compat=$( cat ${S}/debian/compat ) + cat << EOF > ${S}/debian/control +Source: ${PN} +Section: misc +Priority: optional +Standards-Version: 3.9.6 +Maintainer: ${MAINTAINER} +Build-Depends: debhelper (>= ${compat}) + +Package: ${PN} +Architecture: any +Depends: ${DEBIAN_DEPENDS} +Description: ${DESCRIPTION} +EOF +} + +DH_FIXPERM_EXCLUSIONS = \ + "${@' '.join(['-X ' + x for x in \ + (d.getVar('PRESERVE_PERMS', False) or '').split()])}" + +deb_create_rules() { + cat << EOF > ${S}/debian/rules +#!/usr/bin/make -f + +override_dh_fixperms: + dh_fixperms ${DH_FIXPERM_EXCLUSIONS} + +%: + dh \$@ +EOF + chmod +x ${S}/debian/rules +} + +deb_debianize() { + if [ -f ${WORKDIR}/compat ]; then + install -v -m 644 ${WORKDIR}/compat ${S}/debian/compat + else + deb_create_compat + fi + if [ -f ${WORKDIR}/control ]; then + install -v -m 644 ${WORKDIR}/control ${S}/debian/control + else + deb_create_control + fi + if [ -f ${WORKDIR}/rules ]; then + install -v -m 755 ${WORKDIR}/rules ${S}/debian/rules + else + deb_create_rules + fi + deb_add_changelog + + for t in pre post + do + for a in inst rm + do + if [ -f ${WORKDIR}/${t}${a} ]; then + install -v -m 755 ${WORKDIR}/${t}${a} \ + ${S}/debian/${t}${a} + fi + done + done +} diff --git a/meta/classes/dpkg-base.bbclass b/meta/classes/dpkg-base.bbclass index 2f324f9..175dc80 100644 --- a/meta/classes/dpkg-base.bbclass +++ b/meta/classes/dpkg-base.bbclass @@ -4,6 +4,7 @@ # SPDX-License-Identifier: MIT inherit buildchroot +inherit debianize DEPENDS ?= "" diff --git a/meta/classes/dpkg-raw.bbclass b/meta/classes/dpkg-raw.bbclass index a9143e9..ea03ea4 100644 --- a/meta/classes/dpkg-raw.bbclass +++ b/meta/classes/dpkg-raw.bbclass @@ -1,5 +1,7 @@ # This software is a part of ISAR. -# Copyright (C) 2017-2018 Siemens AG +# Copyright (C) 2017-2019 Siemens AG +# +# SPDX-License-Identifier: MIT inherit dpkg @@ -17,89 +19,6 @@ do_install[cleandirs] = "${D}" do_install[stamp-extra-info] = "${DISTRO}-${DISTRO_ARCH}" addtask install after do_unpack before do_prepare_build -deb_add_changelog() { - date=$( LANG=C date -R ) - cat < ${D}/debian/changelog -${PN} (${PV}) UNRELEASED; urgency=low - - * generated by Isar - - -- ${MAINTAINER} ${date} -EOF - if [ -f ${WORKDIR}/changelog ]; then - echo >> ${D}/debian/changelog - cat ${WORKDIR}/changelog >> ${D}/debian/changelog - fi -} - -deb_create_compat() { - echo 9 > ${D}/debian/compat -} - -deb_create_control() { - compat=$( cat ${D}/debian/compat ) - cat << EOF > ${D}/debian/control -Source: ${PN} -Section: misc -Priority: optional -Standards-Version: 3.9.6 -Maintainer: ${MAINTAINER} -Build-Depends: debhelper (>= ${compat}) - -Package: ${PN} -Architecture: any -Depends: ${DEBIAN_DEPENDS} -Description: ${DESCRIPTION} -EOF -} - -DH_FIXPERM_EXCLUSIONS = \ - "${@' '.join(['-X ' + x for x in \ - (d.getVar('PRESERVE_PERMS', False) or '').split()])}" - -deb_create_rules() { - cat << EOF > ${S}/debian/rules -#!/usr/bin/make -f - -override_dh_fixperms: - dh_fixperms ${DH_FIXPERM_EXCLUSIONS} - -%: - dh \$@ -EOF - chmod +x ${S}/debian/rules -} - -deb_debianize() { - if [ -f ${WORKDIR}/compat ]; then - install -v -m 644 ${WORKDIR}/compat ${D}/debian/compat - else - deb_create_compat - fi - if [ -f ${WORKDIR}/control ]; then - install -v -m 644 ${WORKDIR}/control ${D}/debian/control - else - deb_create_control - fi - if [ -f ${WORKDIR}/rules ]; then - install -v -m 755 ${WORKDIR}/rules ${D}/debian/rules - else - deb_create_rules - fi - deb_add_changelog - - for t in pre post - do - for a in inst rm - do - if [ -f ${WORKDIR}/${t}${a} ]; then - install -v -m 755 ${WORKDIR}/${t}${a} \ - ${D}/debian/${t}${a} - fi - done - done -} - do_prepare_build[cleandirs] += "${D}/debian" do_prepare_build() { cd ${D} -- 2.19.2