From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 6647496723618856960 X-Received: by 2002:a2e:9757:: with SMTP id f23-v6mr475852ljj.23.1548831317258; Tue, 29 Jan 2019 22:55:17 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a2e:42c5:: with SMTP id h66-v6ls160573ljf.7.gmail; Tue, 29 Jan 2019 22:55:16 -0800 (PST) X-Google-Smtp-Source: AHgI3IYSghbqH67mbMVVbO2g6xzaF0osAZ5eW+Zcblg5GPi5KdpO8z2WxlgJAYF6XJr2XvUvhILK X-Received: by 2002:a2e:5d0c:: with SMTP id r12-v6mr595078ljb.8.1548831316669; Tue, 29 Jan 2019 22:55:16 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1548831316; cv=none; d=google.com; s=arc-20160816; b=gIoH0ob/E4DIXjduUqs/o6fQbRQZblnIBYTV6WU47JD2rZJuyJ9wKUK/60NLvOYXb6 EpD83NhthjZk5JzqLc689WVUupYJvoGuG4zCoGukEoMH9wXvlQ3temTJvuboGnUrX0tJ A2TYk2ne1CH8fp0EFqT3ViJ/Nt49UIL+h2IMhb70t7etCBBDFGO57L2Zl5nh4j7m+WAg x80dK5LOGHprHi3+q8OtUFaWjFP9CH6KLmtkrHSgHQDx8EYb6yqVBsrpQhJmBNLUAP5T 9fbT0ASDeHevD7EaalPDyfc5yD1jc+6tKLRsmNeFX7jKaAXDtcxqUpR1+GO+Sk4a7cTm VwwA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:to:from; bh=8TYEdNsDgzVyymMDAMTMUTjGrHzv6+CRjaRK09+xxd4=; b=zXu+QBs3ZzxxgeUinMa7s0k/cL2pUAGnLHRIeWKrW5KGKHnbX+PQXy5tIIeCnwa7cD vfT7V5beK62mco0F+E9/7x+c3XDOkdr45HYNqcueQTX3NWhTvp3wEf18W9eWBKD+XdBE Lz9R99wU/84KRkW2KYdIi4s+UoE7tp6SUcHrGR7ZPxjzG1sAyy7JPS1BOLJR5r0J6Z7s vJTVTiMT03o99s231DCCox1j3yrFwul6sbOvhawI1tmttIjKfl3c+qpyDH/3AWNAHqGd 23CqlOED+w0nwp5zJCxyE7IJRivnvD25w2CBbEXnozGBlNSpElRgpVDeL3eJW5BHTIhO noeA== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: best guess record for domain of mosipov@ilbers.de designates 85.214.62.211 as permitted sender) smtp.mailfrom=mosipov@ilbers.de Return-Path: Received: from aqmola.ilbers.de (aqmola.ilbers.de. [85.214.62.211]) by gmr-mx.google.com with ESMTPS id t16-v6si19128ljc.1.2019.01.29.22.55.16 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 29 Jan 2019 22:55:16 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of mosipov@ilbers.de designates 85.214.62.211 as permitted sender) client-ip=85.214.62.211; Authentication-Results: gmr-mx.google.com; spf=pass (google.com: best guess record for domain of mosipov@ilbers.de designates 85.214.62.211 as permitted sender) smtp.mailfrom=mosipov@ilbers.de Received: from azat.m.ilbers.de (host-80-81-17-52.static.customer.m-online.net [80.81.17.52]) (authenticated bits=0) by aqmola.ilbers.de (8.14.4/8.14.4/Debian-4+deb7u1) with ESMTP id x0U6sqo9016991 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT) for ; Wed, 30 Jan 2019 07:55:15 +0100 From: "Maxim Yu. Osipov" To: isar-users@googlegroups.com Subject: [PATCH v2 3/6] meta: move debianization code into a class and into dpkg-base Date: Wed, 30 Jan 2019 06:54:49 +0000 Message-Id: <20190130065452.11589-4-mosipov@ilbers.de> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20190130065452.11589-1-mosipov@ilbers.de> References: <20190130065452.11589-1-mosipov@ilbers.de> X-TUID: LBU5K3aT6pb3 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 | 80 ++++++++++++++++++++++++++++++++++++++++ meta/classes/dpkg-base.bbclass | 1 + meta/classes/dpkg-raw.bbclass | 83 ------------------------------------------ 3 files changed, 81 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..c771e9c --- /dev/null +++ b/meta/classes/debianize.bbclass @@ -0,0 +1,80 @@ +# 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 +} + +deb_create_rules() { + cat << EOF > ${S}/debian/rules +#!/usr/bin/make -f +%: + 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.11.0