From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 6652665106569101312 X-Received: by 2002:a2e:7c02:: with SMTP id x2-v6mr1194577ljc.1.1548944299006; Thu, 31 Jan 2019 06:18:19 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a19:f65:: with SMTP id e98ls609544lfi.4.gmail; Thu, 31 Jan 2019 06:18:18 -0800 (PST) X-Google-Smtp-Source: AHgI3IZ1NGFQGfDNQSBWllUBONRHLLj5KWtzdKrMtRevKnuuIyfdsmU1ReApaU0R+wuIwuT7Wl7g X-Received: by 2002:ac2:418d:: with SMTP id z13mr708637lfh.13.1548944298469; Thu, 31 Jan 2019 06:18:18 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1548944298; cv=none; d=google.com; s=arc-20160816; b=Zba1TSnwPGkAI65MQNn5X0b3kyAa6y0EoUy081X2cYLy/o0X0WFk0OCu4IlVwwSU4a q+T6Na9mlQaEYXFfwj9UWtcA9STuRhEsIIBeok29FOJBoR4ZV+qO1So3LPC9FN6vOYxR mngoazl+knjlZJU0WfDZuAvpOmtJFKXOuDtEUeA+BYmQgUz+fJfrxjW7eV1XeQUnyPmL e92O1iWOb1JIvIyR1Ft/tBFFJ3jvRBD/8l04XXT6KDdd/nMptlxehK/IbldxtR3T8fXd CUai5qN3tKGdi5eHU/cwI8AbKMXsYuXk+JWRAbAJ0RP4bs4sZyNznSe+SsVSmLzyeGP6 4EtA== 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=ORyfvi4ko4xWinwW2IU33F5wfUchfzZV4kKQ1wQ21Sk=; b=ZPNfI5lAH1FgxqF0G7ImX1lbGzZHV3cNmo4f4A8+RlF2PfWvAHElTFVKP/DvjucNf2 KeRtG1VFwCH89cXH39qtVS+V2zrxGBh2z6RbJGpMkTMxlX7i8j0fi5f4mDMYJONHft9U xzrsK1QXuHYwgJmx/HMnfRAXYJbGi7imKImd79UvolT8nip2i+FLVkab3MaOZdnqUUex auPCO9zmdUMY/fKWzLb3W+KxUvY3DM2TpaweuKQZIUTYSxHQuD7id62WXGdjk4ERlVId 6+AmoBDyu9xE7TbUiGg8lxSDOALhLwoioUzXxjxQLhhBXH/YHh9QCPLd42g8Ai+mSjvh fi/A== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of henning.schild@siemens.com designates 194.138.37.39 as permitted sender) smtp.mailfrom=henning.schild@siemens.com Return-Path: Received: from lizzard.sbs.de (lizzard.sbs.de. [194.138.37.39]) by gmr-mx.google.com with ESMTPS id n189si178157lfa.4.2019.01.31.06.18.18 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 31 Jan 2019 06:18:18 -0800 (PST) Received-SPF: pass (google.com: domain of henning.schild@siemens.com designates 194.138.37.39 as permitted sender) client-ip=194.138.37.39; Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of henning.schild@siemens.com designates 194.138.37.39 as permitted sender) smtp.mailfrom=henning.schild@siemens.com Received: from mail2.sbs.de (mail2.sbs.de [192.129.41.66]) by lizzard.sbs.de (8.15.2/8.15.2) with ESMTPS id x0VEIIRe001051 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Thu, 31 Jan 2019 15:18:18 +0100 Received: from md1za8fc.ad001.siemens.net ([139.25.69.211]) by mail2.sbs.de (8.15.2/8.15.2) with ESMTP id x0VEIHts031813; Thu, 31 Jan 2019 15:18:17 +0100 From: Henning Schild To: isar-users@googlegroups.com Cc: Henning Schild Subject: [PATCHv3 3/8] meta: move debianization code into a class and into dpkg-base Date: Thu, 31 Jan 2019 15:18:11 +0100 Message-Id: <20190131141816.32437-4-henning.schild@siemens.com> X-Mailer: git-send-email 2.19.2 In-Reply-To: <20190131141816.32437-1-henning.schild@siemens.com> References: <20190131141816.32437-1-henning.schild@siemens.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-TUID: HR6oGNZRhZXm 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 | 85 ++++++++++++++++++++++++++++++++++ meta/classes/dpkg-base.bbclass | 1 + meta/classes/dpkg-raw.bbclass | 83 --------------------------------- 3 files changed, 86 insertions(+), 83 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..76b2ed3 --- /dev/null +++ b/meta/classes/debianize.bbclass @@ -0,0 +1,85 @@ +# This software is a part of ISAR. +# Copyright (C) 2017-2019 Siemens AG + +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..0434313 100644 --- a/meta/classes/dpkg-raw.bbclass +++ b/meta/classes/dpkg-raw.bbclass @@ -17,89 +17,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