[PATCH cygport] Make src packages which put files under /usr/src/package-version-release/

Jon TURNEY jon.turney@dronecode.org.uk
Thu Apr 24 20:42:00 GMT 2014


>From a previous discussion [1] on this subject, it seems to be that if this is
desirable, then source packages should be fixed rather than working around
this in setup.

Attached is a patch to cygport to do exactly that.

I was also going to prepare a patch for http://cygwin.com/setup.html to say
that the source should be installed into /usr/src/package-version-release/,
but that is what the first sentence under "Method One" already says, and I
don't see anything else to contradict that.

(As an aside, how would a patch to move "Method one" and "Method two" to an
archive page be received?  It seems to me that they are not relevant to nearly
all new packages)

[1] http://cygwin.com/ml/cygwin-apps/2011-12/msg00022.html
-------------- next part --------------
>From c1425a51197c3b658fbae32c1dfb57c5b68b1d0f Mon Sep 17 00:00:00 2001
From: Jon TURNEY <jon.turney@dronecode.org.uk>
Date: Sat, 19 Apr 2014 14:29:41 +0100
Subject: [PATCH] Put source package contents in a ${PF}/ directory

This makes source packages which, when installed, will place all their files
into /usr/src/${PF}, rather than directly into /usr/src.

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
---
 lib/pkg_pkg.cygpart | 23 ++++++++++++++---------
 1 file changed, 14 insertions(+), 9 deletions(-)

diff --git a/lib/pkg_pkg.cygpart b/lib/pkg_pkg.cygpart
index 6a21a42..b3ae33b 100644
--- a/lib/pkg_pkg.cygpart
+++ b/lib/pkg_pkg.cygpart
@@ -439,45 +439,50 @@ __pkg_srcpkg() {
 	echo;
 	__step "Creating source patches";
 
+	local spkgsrcdir="${spkgdir}/${PF}";
+	mkdir -p ${spkgsrcdir};
+
 	__pkg_diff;
 
 	if [ -s ${patchdir}/${cygwin_patchfile} ]
 	then
-		cp ${patchdir}/${cygwin_patchfile} ${spkgdir};
+		cp ${patchdir}/${cygwin_patchfile} ${spkgsrcdir};
 	fi
 
 	if [ -s ${patchdir}/${src_patchfile} ]
 	then
-		cp ${patchdir}/${src_patchfile} ${spkgdir};
+		cp ${patchdir}/${src_patchfile} ${spkgsrcdir};
 	fi
 
 	__step "Creating source package";
 
-	cp ${top}/${cygportfile} ${spkgdir};
+	cp ${top}/${cygportfile} ${spkgsrcdir};
 
 	for src in ${_src_orig_pkgs} ${_src_orig_patches}
 	do
-		cp ${top}/${src} ${spkgdir};
+		cp ${top}/${src} ${spkgsrcdir};
 	done
 
-	cd ${spkgdir};
+	cd ${spkgsrcdir};
 
 	if __arg_bool SIG
 	then
 		if check_prog gpg
 		then
-			__gpg_sign ${spkgdir}/${cygportfile} "CYGPORT SCRIPT";
-			__gpg_sign ${spkgdir}/${cygwin_patchfile} "CYGWIN PATCH";
+			__gpg_sign ${spkgsrcdir}/${cygportfile} "CYGPORT SCRIPT";
+			__gpg_sign ${spkgsrcdir}/${cygwin_patchfile} "CYGWIN PATCH";
 
-			if [ -f ${spkgdir}/${src_patchfile} ]
+			if [ -f ${spkgsrcdir}/${src_patchfile} ]
 			then
-				__gpg_sign ${spkgdir}/${src_patchfile} "SOURCE PATCH";
+				__gpg_sign ${spkgsrcdir}/${src_patchfile} "SOURCE PATCH";
 			fi
 		else
 			inform "gnupg must be installed in order to make signatures.";
 		fi
 	fi
 
+	cd ${spkgdir};
+
 	tar Jcvf ${distdir}/${PN}/${PF}-src.tar.xz * || error "Source package creation failed"
 	echo;
 }
-- 
1.8.5.5



More information about the Cygwin-apps mailing list