Control: tags 1089485 + patch
Control: tags 1089485 + pending

Dear maintainer,

I've prepared an NMU for xwatch (versioned as 2.11-16.3) and
uploaded it to DELAYED/14. Please feel free to tell me if I
should delay it longer.

Regards.
diff -Nru xwatch-2.11/debian/changelog xwatch-2.11/debian/changelog
--- xwatch-2.11/debian/changelog        2024-08-22 08:03:52.000000000 -0400
+++ xwatch-2.11/debian/changelog        2024-12-17 11:47:49.000000000 -0500
@@ -1,3 +1,23 @@
+xwatch (2.11-16.3) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * debian/rules: Convert to use dh sequencer and support rootless build.
+    (Closes: #1089485)
+  * debian/rules: Include /usr/share/dpkg/buildflags.mk to enforce
+    Debian requirement on buildflags.
+  * debian/control: Mark xwatch as Rules-Requires-Root: no.
+  * debian/patches/:
+    + 0003-doc-xwatch.yo-Add-Debian-specific-notes.patch:
+      Convert build-time ad hoc patch debian/xwatch.yo.debian-patch into
+      static patch under debian/patches/ directory.
+  * debian/patches/:
+    + 0004-src-Makefile-Also-receive-buildflags-from-environmen.patch:
+      Also receive CFLAGS and LDFLAGS from Debian toolchain.
+  * debian/xwatch.docs: Added to support rootless build.
+  * debian/xwatch.install: Added to support rootless build.
+
+ -- Boyuan Yang <by...@debian.org>  Tue, 17 Dec 2024 11:47:49 -0500
+
 xwatch (2.11-16.2) unstable; urgency=medium
 
   * Non-maintainer upload.
diff -Nru xwatch-2.11/debian/control xwatch-2.11/debian/control
--- xwatch-2.11/debian/control  2020-05-29 09:53:14.000000000 -0400
+++ xwatch-2.11/debian/control  2024-12-17 11:31:15.000000000 -0500
@@ -2,8 +2,9 @@
 Section: admin
 Priority: optional
 Maintainer: Peter S Galbraith <p...@debian.org>
-Build-Depends: debhelper-compat (= 13), libforms-dev, yodl
+Build-Depends: debhelper-compat (= 13), dh-exec, libforms-dev, yodl
 Standards-Version: 4.5.0
+Rules-Requires-Root: no
 
 Package: xwatch
 Architecture: any
diff -Nru 
xwatch-2.11/debian/patches/0003-doc-xwatch.yo-Add-Debian-specific-notes.patch 
xwatch-2.11/debian/patches/0003-doc-xwatch.yo-Add-Debian-specific-notes.patch
--- 
xwatch-2.11/debian/patches/0003-doc-xwatch.yo-Add-Debian-specific-notes.patch   
    1969-12-31 19:00:00.000000000 -0500
+++ 
xwatch-2.11/debian/patches/0003-doc-xwatch.yo-Add-Debian-specific-notes.patch   
    2024-12-17 11:47:31.000000000 -0500
@@ -0,0 +1,41 @@
+From: Boyuan Yang <by...@debian.org>
+Date: Tue, 17 Dec 2024 10:53:40 -0500
+Subject: doc/xwatch.yo: Add Debian-specific notes
+
+Patch originally added as debian/xwatch.yo.debian-patch.
+
+Forwarded: no
+---
+ doc/xwatch.yo | 12 ++++++++++++
+ 1 file changed, 12 insertions(+)
+
+diff --git a/doc/xwatch.yo b/doc/xwatch.yo
+index 7cbc0a9..f7278f2 100644
+--- a/doc/xwatch.yo
++++ b/doc/xwatch.yo
+@@ -30,6 +30,10 @@ chapter(Introduction)
+     club in his free time ;). Instructions on where and how to get the XForms
+     library are in the tt(Makefile), contained in tt(xwatch)'s distribution.
+ 
++    bf(Debian maintainer note:) XWatch doesn't have an active upstream
++    maintainer.  If you are interested in taking over this package, please see
++    the file /usr/share/doc/xwatch/README.debian
++
+ chapter(Using xwatch)
+ 
+     You typically start tt(xwatch) when activating an X session; e.g.,
+@@ -156,6 +160,14 @@ sect(Options to the xwatch program)
+         Brokken, tt(fr...@icce.rug.nl) for the code).
+ 
+     endit()
++
++    bf(Debian Maintainer's note: Applications defaults are stored in
++    /etc/X11/app-defaults/XWatch .  System adminitrators who want to
++    customize xwatch globally may also create a file
++    /etc/X11/Xresources/xwatch for these configurations by prefixing
++    the entries with Xwatch  (see /usr/share/doc/xwatch/README.Debian
++    for an example).  Individual users can make the same types of
++    changes in their ~/.Xdefaults or ~/.Xresources files.)
+     
+     Before you extensively use the options, create an application defaults
+     file tt(/usr/lib/X11/app-defaults/XWatch). You can do so by copying the
diff -Nru 
xwatch-2.11/debian/patches/0004-src-Makefile-Also-receive-buildflags-from-environmen.patch
 
xwatch-2.11/debian/patches/0004-src-Makefile-Also-receive-buildflags-from-environmen.patch
--- 
xwatch-2.11/debian/patches/0004-src-Makefile-Also-receive-buildflags-from-environmen.patch
  1969-12-31 19:00:00.000000000 -0500
+++ 
xwatch-2.11/debian/patches/0004-src-Makefile-Also-receive-buildflags-from-environmen.patch
  2024-12-17 11:47:39.000000000 -0500
@@ -0,0 +1,30 @@
+From: Boyuan Yang <by...@debian.org>
+Date: Tue, 17 Dec 2024 11:47:30 -0500
+Subject: src/Makefile: Also receive buildflags from environment variable
+
+Forwarded: not-needed
+---
+ src/Makefile | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/src/Makefile b/src/Makefile
+index 1e55677..3099e52 100644
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -47,10 +47,14 @@ CMDLINEFLAG = -DMAXCMDLINE=1024
+ # If the linkage fails, try adding the -lXpm to the below STDLFLAGS and
+ # DEBUGLFLAGS definitions. 
+ 
++# Debian-specific: receive flags from environment variables
++CFLAGS ?= -Wall
++LDFLAGS ?= -lm
++
+ # Standard compilation flags. You probably won't have to change these, if
+ # you are using gcc.
+-STDCFLAGS = -c -O2 -Wall $(CMDLINEFLAG) $(RGB_FILEFLAG) $(XFINCDIR)
+-STDLFLAGS = -s -L/usr/X11R6/lib
++STDCFLAGS = -c -O2 -Wall $(CFLAGS) $(CMDLINEFLAG) $(RGB_FILEFLAG) $(XFINCDIR)
++STDLFLAGS = -s -L/usr/X11R6/lib $(LDFLAGS)
+ 
+ # Compilation flags for `make debug'. Again, OK for gcc. Probably only 
relevant
+ # for me, the developer. The DEBUGLFLAGS may need -static, depends on your
diff -Nru xwatch-2.11/debian/patches/series xwatch-2.11/debian/patches/series
--- xwatch-2.11/debian/patches/series   2024-08-22 08:02:43.000000000 -0400
+++ xwatch-2.11/debian/patches/series   2024-12-17 11:47:31.000000000 -0500
@@ -1,2 +1,4 @@
 0_Patches_up_to_2.11-14
 gcc-14.patch
+0003-doc-xwatch.yo-Add-Debian-specific-notes.patch
+0004-src-Makefile-Also-receive-buildflags-from-environmen.patch
diff -Nru xwatch-2.11/debian/rules xwatch-2.11/debian/rules
--- xwatch-2.11/debian/rules    2022-11-03 19:02:23.000000000 -0400
+++ xwatch-2.11/debian/rules    2024-12-17 11:41:19.000000000 -0500
@@ -1,96 +1,34 @@
 #!/usr/bin/make -f
-# Made with the aid of debmake, by Christoph Lameter,
-# based on the sample debian/rules file for GNU hello by Ian Jackson.
-
 # Uncomment this to turn on verbose mode.
 #export DH_VERBOSE=1
 
-package=xwatch
-prefix=usr/share
-docprefix=${prefix}/doc/${package}
-htmlprefix=${prefix}/doc/${package}/html
+DPKG_EXPORT_BUILDFLAGS = 1
+include /usr/share/dpkg/buildflags.mk
+
+TMPDOCDIR := $(CURDIR)/doc/tmp/
+XWATCH_YO := $(CURDIR)/doc/xwatch.yo
 
-build:
-       $(checkdir) 
+clean_tmpdocdir:
+       $(RM) -rfv $(TMPDOCDIR)
+
+override_dh_auto_build:
        dh_auto_build --sourcedirectory=src -- final "STDLFLAGS=-L/usr/lib" 
"RGB_FILEFLAG = -DRGB_FILE=\\\"/usr/share/xwatch/rgb.txt\\\""
-       cd src; touch build
 
-clean:
-       $(checkdir)
-       cd src; rm -f build
-       cd src; make clean
-#      -rm -f `find . -name "*~"`
-#      -rm -rf debian/xwatch debian/files* core debian/substvars
-# dh_clean wants to remove src/*.orig files
-       -mv src/addline.c.orig src/addline.c-orig
-       -mv src/.makedist.orig src/.makedist-orig
-       dh_clean
-       -mv src/addline.c-orig src/addline.c.orig 
-       -mv src/.makedist-orig src/.makedist.orig
-       -rm -rf doc/tmp
-
-binary-indep: checkroot build
-       $(checkdir)
-# There are no architecture-independent files to be uploaded
-# generated by this package.  If there were any they would be
-# made here.
-
-binary-arch: checkroot build
-       $(checkdir)
-       -rm -rf debian/xwatch
-       install -d debian/xwatch/etc/X11/app-defaults
-       install -d debian/xwatch/usr/bin
-       install -d debian/xwatch/usr/share/man/man1
-       install -m 755 src/xwatch `pwd`/debian/xwatch/usr/bin
-       install -m 644 XWatch.ap `pwd`/debian/xwatch/etc/X11/app-defaults/XWatch
-       install -d doc/tmp
-       -cp doc/xwatch.yo doc/tmp
-       (cd doc/tmp/; patch < ../../debian/xwatch.yo.debian-patch; yodl2html 
xwatch && yodl2txt xwatch && yodl2man xwatch )
-
-       install -d debian/xwatch/${htmlprefix}
-       install -m 644 doc/tmp/xwatch.txt `pwd`/debian/xwatch/${docprefix}/
-       install -m 644 doc/tmp/xwatch.html `pwd`/debian/xwatch/${htmlprefix}/
-       install -m 644 doc/tmp/xwatch01.html `pwd`/debian/xwatch/${htmlprefix}/
-       install -m 644 doc/tmp/xwatch02.html `pwd`/debian/xwatch/${htmlprefix}/
-       install -m 644 doc/tmp/xwatch03.html `pwd`/debian/xwatch/${htmlprefix}/
-       install -m 644 doc/tmp/xwatch04.html `pwd`/debian/xwatch/${htmlprefix}/
-       install -m 644 doc/tmp/xwatch05.html `pwd`/debian/xwatch/${htmlprefix}/
-       (cd debian/xwatch/${htmlprefix} ; ln -s xwatch.html index.html)
-       install -m 644 doc/tmp/xwatch.man 
`pwd`/debian/xwatch/usr/share/man/man1/xwatch.1
-       rm doc/tmp/*
-       rmdir doc/tmp
-# Eventually remove this when rgb.txt is included in a smaller client X        
file.
-       install -d debian/xwatch/usr/share/xwatch
-       install -m 644 debian/rgb.txt debian/xwatch/usr/share/xwatch/
-       dh_installdirs
-       install -m 644 ChangeLog `pwd`/debian/xwatch/${docprefix}/changelog
-       gzip --best `pwd`/debian/xwatch/${docprefix}/changelog
-       dh_installdocs MAINTAINER.README xwatch.README
-       dh_installexamples
-       dh_installchangelogs
-       dh_installmenu
-       dh_installcron
-#      dh_installmanpages -pxwatch
-       dh_strip
-       dh_compress
-       dh_fixperms
-       dh_shlibdeps
-       dh_gencontrol
-       dh_installdeb
-       dh_md5sums
-       dh_builddeb
-
-define checkdir
-       test -f debian/rules
-endef
-
-binary: binary-indep binary-arch
-
-checkroot:
-       $(checkdir)
-       test root = "`whoami`"
+override_dh_clean: clean_tmpdocdir
+       $(MAKE) -C src clean
+       dh_clean -X.orig src/build/ debian/xwatch/
+
+execute_before_dh_installdocs:
+       (mkdir -p $(TMPDOCDIR)/html/; cd $(TMPDOCDIR); cp $(XWATCH_YO) 
$(TMPDOCDIR); cp $(XWATCH_YO) $(TMPDOCDIR)/html/; yodl2txt xwatch; cd 
$(TMPDOCDIR)/html/; yodl2html xwatch; ln -s xwatch.html index.html; $(RM) 
$(TMPDOCDIR)/html/xwatch.yo )
+
+execute_after_dh_installdocs: clean_tmpdocdir
+
+execute_before_dh_install:
+       (mkdir -p $(TMPDOCDIR); cp $(XWATCH_YO) $(TMPDOCDIR); cd $(TMPDOCDIR); 
yodl2man xwatch )
+
+execute_after_dh_install: clean_tmpdocdir
 
-build-arch: build
-build-indep: build
+%:
+       dh $@
 
-.PHONY: build-arch build-indep binary binary-arch binary-indep clean checkroot
+.PHONY: clean_tmpdocdir
diff -Nru xwatch-2.11/debian/xwatch.docs xwatch-2.11/debian/xwatch.docs
--- xwatch-2.11/debian/xwatch.docs      1969-12-31 19:00:00.000000000 -0500
+++ xwatch-2.11/debian/xwatch.docs      2024-12-17 11:17:28.000000000 -0500
@@ -0,0 +1,4 @@
+MAINTAINER.README
+xwatch.README
+doc/tmp/html
+doc/xwatch.txt
diff -Nru xwatch-2.11/debian/xwatch.install xwatch-2.11/debian/xwatch.install
--- xwatch-2.11/debian/xwatch.install   1969-12-31 19:00:00.000000000 -0500
+++ xwatch-2.11/debian/xwatch.install   2024-12-17 11:21:50.000000000 -0500
@@ -0,0 +1,6 @@
+#! /usr/bin/dh-exec
+src/xwatch /usr/bin/
+XWatch.ap => /etc/X11/app-defaults/XWatch
+doc/tmp/xwatch.man => /usr/share/man/man1/xwatch.1
+# Eventually remove this when rgb.txt is included in a smaller client X file.
+debian/rgb.txt /usr/share/xwatch/
diff -Nru xwatch-2.11/debian/xwatch.yo.debian-patch 
xwatch-2.11/debian/xwatch.yo.debian-patch
--- xwatch-2.11/debian/xwatch.yo.debian-patch   2010-05-28 17:41:55.000000000 
-0400
+++ xwatch-2.11/debian/xwatch.yo.debian-patch   1969-12-31 19:00:00.000000000 
-0500
@@ -1,32 +0,0 @@
-*** xwatch.yo.orig     Fri Jun 11 13:46:43 1999
---- xwatch.yo  Wed Jan  3 20:48:57 2001
-***************
-*** 30,35 ****
---- 30,39 ----
-      club in his free time ;). Instructions on where and how to get the XForms
-      library are in the tt(Makefile), contained in tt(xwatch)'s distribution.
-  
-+     bf(Debian maintainer note:) XWatch doesn't have an active upstream
-+     maintainer.  If you are interested in taking over this package, please 
see
-+     the file /usr/share/doc/xwatch/README.debian
-+  
-  chapter(Using xwatch)
-  
-      You typically start tt(xwatch) when activating an X session; e.g.,
-***************
-*** 157,162 ****
---- 161,174 ----
-  
-      endit()
-      
-+     bf(Debian Maintainer's note: Applications defaults are stored in
-+     /etc/X11/app-defaults/XWatch .  System adminitrators who want to
-+     customize xwatch globally may also create a file
-+     /etc/X11/Xresources/xwatch for these configurations by prefixing
-+     the entries with Xwatch  (see /usr/share/doc/xwatch/README.Debian
-+     for an example).  Individual users can make the same types of
-+     changes in their ~/.Xdefaults or ~/.Xresources files.)
-+ 
-      Before you extensively use the options, create an application defaults
-      file tt(/usr/lib/X11/app-defaults/XWatch). You can do so by copying the
-      file tt(XWatch.ap), extracted from the archive, to

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature

Reply via email to