public inbox for cygwin-apps-cvs@sourceware.org
help / color / mirror / Atom feed
From: Jon TURNEY <jturney@sourceware.org>
To: cygwin-apps-cvs@sourceware.org
Subject: [cygport - the Cygwin packaging tool] branch master, updated. 0.34.2
Date: Sat, 19 Feb 2022 17:20:27 +0000 (GMT)	[thread overview]
Message-ID: <20220219172027.D11043858D1E@sourceware.org> (raw)




https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/cygport.git;h=fcb7a794919c8e96ca2d63d66151c72f0c56c608

commit fcb7a794919c8e96ca2d63d66151c72f0c56c608
Author: Jon Turney <jon.turney@dronecode.org.uk>
Date:   Sat Feb 19 15:31:00 2022 +0000

    Bump version to 0.34.2

https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/cygport.git;h=b591c6af8331fd153a0db0c6495c6d38fc615639

commit b591c6af8331fd153a0db0c6495c6d38fc615639
Author: Jon Turney <jon.turney@dronecode.org.uk>
Date:   Tue Jun 25 20:06:58 2019 +0100

    Make meson output unbuffered
    
    Make meson output unbuffered, to better interact with build service
    Also make ninja output non-verbose, to make make output

https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/cygport.git;h=256a600fd9884c01644812cfa36f2ae09e0291a3

commit 256a600fd9884c01644812cfa36f2ae09e0291a3
Author: Achim Gratz <Stromeko@Stromeko.DE>
Date:   Mon Jan 4 21:16:16 2021 +0100

    cygclass/git.cygclass: use shallow clones for branches and tags also

https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/cygport.git;h=4b8585f7b98b0e5291a20fb0e3ded1551c34b5da

commit 4b8585f7b98b0e5291a20fb0e3ded1551c34b5da
Author: Jon Turney <jon.turney@dronecode.org.uk>
Date:   Tue Feb 1 15:36:38 2022 +0000

    Don't use llvm-objdump
    
    This partially reverts commit e06359bca705624b9712fd16f4ec9945935fd608
    This partially reverts commit 6f788165848084d2fb1597689b31faba7d4c483e
    
    The polynomially bad runtime of 'objdump' (which made 'llvm-objdump' the
    only practically usable tool on larger binaries) has been fixed since
    [1].  Meanwhile, 'llvm-objdump' now appears to have bugs which interfere
    with the correct operation of cygport.
    
    [1] https://sourceware.org/bugzilla/show_bug.cgi?id=18025#c16

https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/cygport.git;h=5d8828dfceec1ab6d44da5e2629b3a0dfd5dac0a

commit 5d8828dfceec1ab6d44da5e2629b3a0dfd5dac0a
Author: Jon Turney <jon.turney@dronecode.org.uk>
Date:   Tue Feb 1 15:28:38 2022 +0000

    postinst: Never remove an existing .gnu_debuglink
    
    Be more careful not to remove an existing .gnu_debuglink, even if we
    think this package has no useful debug symbols.
    
    (Some versions of 'llvm-objdump -l' fail to find line number info even
    though it's there.  Don't break a package which manages it's own debug
    symbols (e.g. cygwin) when that happens.)

https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/cygport.git;h=97ba77d2a690fcdd640aab74fdb0164cd8a62162

commit 97ba77d2a690fcdd640aab74fdb0164cd8a62162
Author: Jon Turney <jon.turney@dronecode.org.uk>
Date:   Sun Jan 9 18:43:04 2022 +0000

    doc: Ignore .github directory


Diff:
---
 NEWS                     |  5 +++++
 cygclass/git.cygclass    | 15 ++++++++++++---
 cygclass/meson.cygclass  |  2 +-
 cygclass/ninja.cygclass  |  2 +-
 cygport.spec             |  2 +-
 data/sample.cygport      |  2 +-
 doc/robodoc.rc           |  1 +
 lib/pkg_info.cygpart     |  8 --------
 lib/src_postinst.cygpart | 35 +++++++++++++++++++----------------
 meson.build              |  2 +-
 10 files changed, 42 insertions(+), 32 deletions(-)

diff --git a/NEWS b/NEWS
index b5a8358..97dec9b 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,8 @@
+0.34.2:
+	* Don't use llvm-objdump.
+	* git: also use shallow clones for tags and branches.
+	* Be more careful not to remove an existing .gnu_debuglink section.
+
 0.34.1:
 	* Update many URLs in HOMEPAGE, mirrors and comments.  Use https
 	  where appropriate
diff --git a/cygclass/git.cygclass b/cygclass/git.cygclass
index 8f30992..dd9aedb 100644
--- a/cygclass/git.cygclass
+++ b/cygclass/git.cygclass
@@ -33,7 +33,7 @@
 #  Linux kernel, it is widely used by a number of projects, including GNOME,
 #  GStreamer, X.Org, and Xfce.
 #
-#  This cygclass creates source tarballs from Git checkouts.
+#  This cygclass creates source tarballs from Git repositories.
 #  NOTE
 #  This cygclass sets a special SRC_URI for the tarball it creates.  If
 #  additional sources are required, be sure to _add_ to SRC_URI rather than
@@ -70,10 +70,19 @@ git_fetch() {
 
 	check_prog_req git
 
-	if ! defined GIT_TAG && ! defined GIT_BRANCH && ! defined GIT_REV
+	if ! defined GIT_REV
 	then
-		# fetching master/HEAD, so we don't need any history
+		# shallow fetch a ref (master, branch or tag) with --depth=1
+		# (not allowed for a hash, unless remote is configured to permit
+		# it with allow*SHA1InWant).
 		_depth="--depth 1"
+		if defined GIT_TAG
+		then
+			_depth+=" --branch ${GIT_TAG}"
+		elif defined GIT_BRANCH
+		then
+			_depth+=" --branch ${GIT_BRANCH}"
+		fi
 	fi
 
 	# T likely doesn't exist at this point, so create it first
diff --git a/cygclass/meson.cygclass b/cygclass/meson.cygclass
index 9f7a942..806449b 100644
--- a/cygclass/meson.cygclass
+++ b/cygclass/meson.cygclass
@@ -88,7 +88,7 @@ cygmeson() {
 #  Flags in CYGMESON_ARGS follow, and therefore override, flags passed by
 #  default to cygmeson.
 #****
-	meson --prefix=$(__host_prefix) \
+	PYTHONUNBUFFERED=1 meson --prefix=$(__host_prefix) \
 		--localstatedir=$(__host_localstatedir) \
 		--sysconfdir=$(__host_sysconfdir) \
 		--buildtype=plain --wrap-mode=nodownload \
diff --git a/cygclass/ninja.cygclass b/cygclass/ninja.cygclass
index ef339d9..f5f2997 100644
--- a/cygclass/ninja.cygclass
+++ b/cygclass/ninja.cygclass
@@ -45,7 +45,7 @@ cygninja() {
 	then
 		error "cygninja: build.ninja: file not found"
 	fi
-	ninja -v ${@} || error "cygninja: command failed: ${@:-all}"
+	ninja ${@} || error "cygninja: command failed: ${@:-all}"
 }
 
 #****T* ninja.cygclass/ninja_test
diff --git a/cygport.spec b/cygport.spec
index f350e15..cdfecb3 100644
--- a/cygport.spec
+++ b/cygport.spec
@@ -1,7 +1,7 @@
 %define debug_package %{nil}
 
 Name:           cygport
-Version:        0.34.1
+Version:        0.34.2
 Release:        1%{?dist}
 Summary:        Cygwin package building tool
 
diff --git a/data/sample.cygport b/data/sample.cygport
index 653d855..aea8540 100644
--- a/data/sample.cygport
+++ b/data/sample.cygport
@@ -1,7 +1,7 @@
 inherit meson
 
 NAME="cygport"
-VERSION=0.34.1
+VERSION=0.34.2
 RELEASE=1
 CATEGORY="Devel"
 SUMMARY="Cygwin source packaging tool"
diff --git a/doc/robodoc.rc b/doc/robodoc.rc
index 90d2dfd..443097a 100644
--- a/doc/robodoc.rc
+++ b/doc/robodoc.rc
@@ -92,6 +92,7 @@ ignore files:
 	*-pc-cygwin
 	*-redhat-linux*
 	.git
+	.github
 	*.rc
 	*.orig
 	*.patch
diff --git a/lib/pkg_info.cygpart b/lib/pkg_info.cygpart
index 4b18993..08ddd69 100644
--- a/lib/pkg_info.cygpart
+++ b/lib/pkg_info.cygpart
@@ -95,14 +95,6 @@ __list_deps() {
 		dlltool="${CTARGET}-dlltool"
 	fi
 
-	case ${CHOST} in
-	i?86-*|x86_64-*)
-		if check_prog llvm-objdump
-		then
-			objdump="llvm-objdump"
-		fi ;;
-	esac
-
 	pushd ${D}
 
 #****v* Information/DEPS_PATH
diff --git a/lib/src_postinst.cygpart b/lib/src_postinst.cygpart
index d8bb226..4b51325 100644
--- a/lib/src_postinst.cygpart
+++ b/lib/src_postinst.cygpart
@@ -951,12 +951,7 @@ __prepstrip() {
 			continue
 		fi
 
-		if check_prog llvm-objdump && llvm-size "${exe}" &>/dev/null
-		then
-			objdump="llvm-objdump"
-		else
-			objdump=${objcopy/copy/dump}
-		fi
+		objdump=${objcopy/copy/dump}
 
 		# Static libraries should not be fully stripped, but we can
 		# still provide split debuginfo if desired
@@ -1051,23 +1046,31 @@ __prepstrip() {
 
 			lines=$(${objdump} -d -l "${exe}" 2>/dev/null | sed -ne "s|.*\(/usr/src/debug/${PF}/.*\):[0-9]*$|\1|gp" | sort -u | tee -a ${T}/.dbgsrc.out | wc -l);
 
-			if (( lines == 0 ))
+			# we expect --add-gnu-debuglink to fail if a
+			# .gnu_debuglink section already exists (e.g. binutils,
+			# which uses hardlinks, or cygwin which creates a custom
+			# .dbg file), but leave it alone to make sure we don't
+			# mess it up.
+			if ${objdump} -h "${exe}" | grep -q '\.gnu_deb'
 			then
-				${objcopy} --strip-all "${exe}";
 				continue;
 			fi
 
-			# --add-gnu-debuglink will fail if .gnu_debuglink section
-			# already exists, e.g. binutils, which uses hardlinks,
-			# or cygwin which creates a custom .dbg file
-			if ! ${objdump} -h "${exe}" | grep -q '\.gnu_deb'
+			# only create split debuginfo if it's going to contain
+			# some symbols for which this package has the
+			# corresponding source files
+			if (( lines == 0 ))
 			then
-				dodir "${dbg%/*}";
-				${objcopy} --long-section-names enable --add-gnu-debuglink=/dev/null --only-keep-debug "${exe}" "${D}${dbg}";
-				chmod 0644 "${D}${dbg}";
 				${objcopy} --strip-all "${exe}";
-				${objcopy} --long-section-names enable --add-gnu-debuglink="${D}${dbg}" "${exe}" 2>/dev/null;
+				continue;
 			fi
+
+			dodir "${dbg%/*}";
+			${objcopy} --long-section-names enable --add-gnu-debuglink=/dev/null --only-keep-debug "${exe}" "${D}${dbg}";
+			chmod 0644 "${D}${dbg}";
+			${objcopy} --strip-all "${exe}";
+			${objcopy} --long-section-names enable --add-gnu-debuglink="${D}${dbg}" "${exe}" 2>/dev/null;
+
 		fi
 	done
 }
diff --git a/meson.build b/meson.build
index 53c9331..4c03e55 100644
--- a/meson.build
+++ b/meson.build
@@ -1,5 +1,5 @@
 project('cygport',
-        version: '0.34.1')
+        version: '0.34.2')
 
 bindir = join_paths(get_option('prefix'), get_option('bindir'))
 datadir = join_paths(get_option('prefix'), get_option('datadir'))



                 reply	other threads:[~2022-02-19 17:20 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220219172027.D11043858D1E@sourceware.org \
    --to=jturney@sourceware.org \
    --cc=cygwin-apps-cvs@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).