From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 7369181641447571456 X-Received: by 2002:a05:6512:1086:b0:51c:d528:c333 with SMTP id 2adb3069b0e04-5220fc7d748mr11800343e87.20.1715771307613; Wed, 15 May 2024 04:08:27 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a05:6512:3d02:b0:522:32d1:1bd5 with SMTP id 2adb3069b0e04-52232d11d90ls2291798e87.0.-pod-prod-02-eu; Wed, 15 May 2024 04:08:25 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHkp+3VTu0vNG2falSgqI46mQEjVy/C0W+k6AHvBipLPW3dP7+SDS1sQe63nz260BfnFo7T X-Received: by 2002:ac2:4c8c:0:b0:51d:a87e:27ec with SMTP id 2adb3069b0e04-5220fc735f1mr10039502e87.9.1715771303101; Wed, 15 May 2024 04:08:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1715771303; cv=none; d=google.com; s=arc-20160816; b=rnrTkOOLDAvFs0bxRY4uCLB20USCcLj1gW5cileVkqyPOHl8P3fszjurRgh0iJw7/f n1Rvu3pxZCELT4GqJcH9bo8Do+eUKkJA4ELbNIOwWzIewyzjywmGTPZlUO8Au9BsiXtq 0qWNjQpHAiCz7InvVhVNkMtxv7w/FFQn+THRAU3IXS0bkjUx1J2dhUqV7Jdal1kicx4B 0/jz9+AvN3lqmLyJvuuJNshYRl8MwX90Y2wC3sE9mFn1jOmYhD7nDeDEZkm2jFaWYyFj jzk46Ue10lpt6gt/qXLUNCKZiRNUu1kTZ3iB9LPQFecoodBKql2MAujYCTywRX3iTPAP UkBQ== 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=0LEbymZWeGkxDPAhBbxErUoY1dgJizLdYijlZns4Ozg=; fh=XGT9su1InluIJlpNbfO5AhdONNgYrcrI0omn79eqbSQ=; b=EqSobfdupZTy7VRfuVYU1HRIR1SXq3HgaVeQkb46c80WFByaMDEsQjALcnNff2cBIz orP6pcbuPsFey5JIdC6mLnervvlbPnVdqql6/Y9OLZqtoCpCoNtY4XTQsqlrffBBgNHd bvoLI9SaO0DvERXBv+DRw2ikn+S3Qti4wOOOuhvbO3g1kHc6UVGNwUnnzyWPx6vNEbUj 36dnswFM3LeTrL196Pb+B/chrsIccB8FAUqG6kgW0lPmq1ajnqxDXq2sz60TnlE4t51r 39Av8x/I3+QXQeJ16gcP+SlpgVCgGQF6sZko1IgtA8rnkk42Hy+VYjqXzCLkoTogdIdT 2TFg==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=QOOZte08; spf=pass (google.com: domain of fm-294854-202405151108228268b75ae86c73c986-cuvxfw@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) smtp.mailfrom=fm-294854-202405151108228268b75ae86c73c986-cUvXfw@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Return-Path: Received: from mta-65-225.siemens.flowmailer.net (mta-65-225.siemens.flowmailer.net. [185.136.65.225]) by gmr-mx.google.com with ESMTPS id 2adb3069b0e04-521f35ae079si429741e87.2.2024.05.15.04.08.23 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 15 May 2024 04:08:23 -0700 (PDT) Received-SPF: pass (google.com: domain of fm-294854-202405151108228268b75ae86c73c986-cuvxfw@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) client-ip=185.136.65.225; Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=QOOZte08; spf=pass (google.com: domain of fm-294854-202405151108228268b75ae86c73c986-cuvxfw@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) smtp.mailfrom=fm-294854-202405151108228268b75ae86c73c986-cUvXfw@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: by mta-65-225.siemens.flowmailer.net with ESMTPSA id 202405151108228268b75ae86c73c986 for ; Wed, 15 May 2024 13:08:22 +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=0LEbymZWeGkxDPAhBbxErUoY1dgJizLdYijlZns4Ozg=; b=QOOZte08JFydjtcV1hDJGX5JEzF6BOOSlE20EiNoIJ8UoHllRzaiKUVDF36zb8fvwnBtyc yUcHDUv59Unf+N1+xAs7JurHcJaoosJq2GJgVAMyZrCpX4H3p4fLDd9EiIBqYe6AQl8SiuGD 4UKO7E1Tj06+JXrZtYd1ayw0OufSg=; From: Jan Kiszka To: isar-users Cc: Felix Moessbauer , stefan-koch@siemens.com, Adriaan Schmidt , Anton Mikanovich Subject: [PATCH v2 4/5] dpkg: Retrieve Debian source name from variable Date: Wed, 15 May 2024 13:08:18 +0200 Message-Id: <8a333eddee9cddcbd158865f2656f6377567fef2.1715771298.git.jan.kiszka@siemens.com> 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: Si21GI+lxSDQ 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 3fa9f604..3cc36c12 100644 --- a/meta/classes/dpkg.bbclass +++ b/meta/classes/dpkg.bbclass @@ -108,8 +108,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