From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 7369181641447571456 X-Received: by 2002:a05:6512:3c87:b0:51d:5ffd:efe4 with SMTP id 2adb3069b0e04-5220fc6df22mr27255820e87.1.1715963746762; Fri, 17 May 2024 09:35:46 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a05:6512:15aa:b0:51f:2788:12da with SMTP id 2adb3069b0e04-521e462827dls1502486e87.2.-pod-prod-08-eu; Fri, 17 May 2024 09:35:44 -0700 (PDT) X-Google-Smtp-Source: AGHT+IE6mQb9LvYmefbQ3HN+QZ9ZiGT0mcRxqqxeCEYBNivET/Rz121MMyPJXh4uOvlou729EsPq X-Received: by 2002:ac2:4d1c:0:b0:51e:f70c:88ec with SMTP id 2adb3069b0e04-5220fc7beebmr20418920e87.16.1715963744229; Fri, 17 May 2024 09:35:44 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1715963744; cv=none; d=google.com; s=arc-20160816; b=xemRjkKOdDoXkCDxdujYDxkmm8+XGKXlDh1Abm2V7guavV0C22iU3xK1vO/mAlt8TI ZK27apmankF5M83OhLV7xhB7TT+DOEXFYw2HfXJcZcdSIyLXmuDJG1iBd9brWmj6y/4k 48FH0ysU+miF/wjsyJK2o8WiRCaP7g6c4Ey79av2Mn7EX56Z9IDl/Es1FWQRlOI/UAOs h8sTSXPvhG6FFidJTK/aN4t092XQoZZvz4qHCKLZ7b+qWW1he7HFsdzfsC/x81E/qzga I45pPlonnIGD77/r3GGreyhuhp+FEya/vdyN5PAfCV/ECTofer8PO69a2NHHymEfdjT0 +Qpw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=feedback-id:content-transfer-encoding:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:dkim-signature; bh=M8TkqMYHSLLC5n5NqtVB/rsRK3iSYJT4yqG40/DLOck=; fh=XGT9su1InluIJlpNbfO5AhdONNgYrcrI0omn79eqbSQ=; b=esv2bMojh51XGShcirfkZH0PJOwVw6JGh5NetATLPhFeqSw2tsxyRzRoJCdbxH9KAl HLYRuZ2OkP4qPCCZ1uUYvD4/wtDgZILdtcrpLTODO3hIHZwqepgHssOQJsZxDbkTCqLV eYc5jfLUjzbW+2JmRf9wAci1Elxw8rhKWnEv+5IGyIiycp0/d0smdLazInUUCWM3AeSH yhKN/dVlISyrnR6FTteuZ2WldU2ISGc9ZN0DM2xdtSF53gqUYTelNn48MDYTeVcm8ZSY USQ4t1F9GktBRbB8KPPnCCKO0AyFIlyFL5ncB/QhJzS3Dffc1XxtEl6qlsZWmJLizlqz OOtg==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=jDaSNoZt; spf=pass (google.com: domain of fm-294854-20240517163544002ddc76223fce487a-xjss4g@rts-flowmailer.siemens.com designates 185.136.64.225 as permitted sender) smtp.mailfrom=fm-294854-20240517163544002ddc76223fce487a-XJss4g@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Return-Path: Received: from mta-64-225.siemens.flowmailer.net (mta-64-225.siemens.flowmailer.net. [185.136.64.225]) by gmr-mx.google.com with ESMTPS id 5b1f17b1804b1-42024ca927esi1958325e9.2.2024.05.17.09.35.44 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 17 May 2024 09:35:44 -0700 (PDT) Received-SPF: pass (google.com: domain of fm-294854-20240517163544002ddc76223fce487a-xjss4g@rts-flowmailer.siemens.com designates 185.136.64.225 as permitted sender) client-ip=185.136.64.225; Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=jDaSNoZt; spf=pass (google.com: domain of fm-294854-20240517163544002ddc76223fce487a-xjss4g@rts-flowmailer.siemens.com designates 185.136.64.225 as permitted sender) smtp.mailfrom=fm-294854-20240517163544002ddc76223fce487a-XJss4g@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: by mta-64-225.siemens.flowmailer.net with ESMTPSA id 20240517163544002ddc76223fce487a for ; Fri, 17 May 2024 18:35:44 +0200 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; s=fm1; d=siemens.com; i=jan.kiszka@siemens.com; h=Date:From:Subject:To:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:Cc:References:In-Reply-To; bh=M8TkqMYHSLLC5n5NqtVB/rsRK3iSYJT4yqG40/DLOck=; b=jDaSNoZtFqqoRapiQR2MC7gEONsFj30hSCcdQBnOXfrcU0uzFnYNoR7KIcxEj5Ql8w+/me mvG6U2Wy40bZsaUVRoF/6IOr8Ze3fiZvvMmPNcMsQu6OvuvQw28gVM7/6vwgtEPDpgB5fhTY ROqnJCwhwfGydbLex3pXugVlJCv1g=; From: Jan Kiszka To: isar-users Cc: Felix Moessbauer , stefan-koch@siemens.com, Adriaan Schmidt , Anton Mikanovich Subject: [PATCH v3 4/5] dpkg: Retrieve Debian source name from variable Date: Fri, 17 May 2024 18:35:41 +0200 Message-Id: In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-294854:519-21489:flowmailer X-TUID: Ne5L07LKDBSn From: Jan Kiszka Rather than reading this multiple times back from the changelog, define DEBIAN_SOURCE, by default BPN, and use that consistently. This will allow to fetch sources built by the base recipe in native and compat recipes later on without generating the changelog first. It also permits to clean up related code. Specifically do_deploy_source was expecting more than one source file (which was incorrect) and looked in the wrong folder. The equivalence between DEBIAN_SOURCE and the actual source field is checked in do_dpkg_source and enforced by failing the build otherwise. At this chance, also move global -maxdepth before -name in find statements. Signed-off-by: Jan Kiszka --- meta/classes/dpkg-source.bbclass | 16 +++++++++++----- meta/classes/dpkg.bbclass | 3 +-- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/meta/classes/dpkg-source.bbclass b/meta/classes/dpkg-source.bbclass index 7fd5d2ed..560f536b 100644 --- a/meta/classes/dpkg-source.bbclass +++ b/meta/classes/dpkg-source.bbclass @@ -7,10 +7,15 @@ inherit dpkg-base DPKG_SOURCE_EXTRA_ARGS ?= "-I" +DEBIAN_SOURCE ?= "${BPN}" + do_dpkg_source() { # Create a .dsc file from source directory to use it with sbuild DEB_SOURCE_NAME=$(dpkg-parsechangelog --show-field Source --file ${WORKDIR}/${PPS}/debian/changelog) - find ${WORKDIR} -name "${DEB_SOURCE_NAME}*.dsc" -maxdepth 1 -delete + if [ "${DEB_SOURCE_NAME}" != "${DEBIAN_SOURCE}" ]; then + bbfatal "DEBIAN_SOURCE (${DEBIAN_SOURCE}) not aligned with source name used in control files (${DEB_SOURCE_NAME})" + fi + find ${WORKDIR} -maxdepth 1 -name "${DEBIAN_SOURCE}_*.dsc" -delete sh -c "cd ${WORKDIR}; dpkg-source ${DPKG_SOURCE_EXTRA_ARGS} -b ${PPS}" } addtask dpkg_source after do_prepare_build before do_dpkg_build @@ -20,12 +25,13 @@ do_deploy_source[lockfiles] = "${REPO_ISAR_DIR}/isar.lock" do_deploy_source[dirs] = "${S}" do_deploy_source() { repo_del_srcpackage "${REPO_ISAR_DIR}"/"${DISTRO}" \ - "${REPO_ISAR_DB_DIR}"/"${DISTRO}" "${DEBDISTRONAME}" "${BPN}" - find "${S}/../" -name '*\.dsc' -maxdepth 1 | while read package; do + "${REPO_ISAR_DB_DIR}"/"${DISTRO}" "${DEBDISTRONAME}" "${DEBIAN_SOURCE}" + DSC_FILE=$(find ${WORKDIR} -maxdepth 1 -name "${DEBIAN_SOURCE}_*.dsc") + if [ -n "${DSC_FILE}" ]; then repo_add_srcpackage "${REPO_ISAR_DIR}"/"${DISTRO}" \ "${REPO_ISAR_DB_DIR}"/"${DISTRO}" \ "${DEBDISTRONAME}" \ - "${package}" - done + "${DSC_FILE}" + fi } addtask deploy_source after do_dpkg_source before do_dpkg_build diff --git a/meta/classes/dpkg.bbclass b/meta/classes/dpkg.bbclass index 0e25eb76..804fe5a6 100644 --- a/meta/classes/dpkg.bbclass +++ b/meta/classes/dpkg.bbclass @@ -109,8 +109,7 @@ dpkg_runbuild() { echo '$apt_keep_downloaded_packages = 1;' >> ${SBUILD_CONFIG} echo '$stalled_pkg_timeout = ${DPKG_BUILD_TIMEOUT};' >> ${SBUILD_CONFIG} - DEB_SOURCE_NAME=$(dpkg-parsechangelog --show-field Source --file ${WORKDIR}/${PPS}/debian/changelog) - DSC_FILE=$(find ${WORKDIR} -name "${DEB_SOURCE_NAME}*.dsc" -maxdepth 1 -print) + DSC_FILE=$(find ${WORKDIR} -maxdepth 1 -name "${DEBIAN_SOURCE}_*.dsc" -print) sbuild -A -n -c ${SBUILD_CHROOT} \ --host=${PACKAGE_ARCH} --build=${BUILD_ARCH} ${profiles} \ -- 2.35.3