Hello community, here is the log from the commit of package mandoc for openSUSE:Factory checked in at 2020-09-24 16:14:09 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/mandoc (Old) and /work/SRC/openSUSE:Factory/.mandoc.new.4249 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mandoc" Thu Sep 24 16:14:09 2020 rev:4 rq:836372 version:1.14.5 Changes: -------- --- /work/SRC/openSUSE:Factory/mandoc/mandoc.changes 2020-03-17 13:07:45.681689134 +0100 +++ /work/SRC/openSUSE:Factory/.mandoc.new.4249/mandoc.changes 2020-09-24 16:14:32.792916772 +0200 @@ -1,0 +2,10 @@ +Tue Sep 22 15:12:55 UTC 2020 - Ludwig Nussel <lnus...@suse.de> + +- fix build fail (mandoc-1.14.5-dummy.diff) +- switch to using rpm.execute() as rpm 4.15 is now available +- tweak trigger scripts to handle missing files better (boo#1176194) + There is no perfect solution though + https://github.com/rpm-software-management/rpm/issues/1370 +- make triggers more verbose if VERBOSE_FILETRIGGERS is set + +------------------------------------------------------------------- New: ---- mandoc-1.14.5-dummy.diff ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ mandoc.spec ++++++ --- /var/tmp/diff_new_pack.EUW6HU/_old 2020-09-24 16:14:33.740917721 +0200 +++ /var/tmp/diff_new_pack.EUW6HU/_new 2020-09-24 16:14:33.744917725 +0200 @@ -19,6 +19,7 @@ Name: mandoc Version: 1.14.5 Release: 0 +%define nvr %{name}-%{version}-%{release} Summary: UNIX manpage compiler License: ISC Group: Productivity/Publishing/Troff @@ -27,12 +28,16 @@ # PATCH-FEATURE-UPSTREAM empty_w-manpath.patch gh#neovim/neovim#11794 mc...@suse.com # Add man -w producing manpath (among many other things) Patch0: 1.14.5-master.patch +# PATCH-FIX-openSUSE looks like newer gcc doesn't like those duplicated dummy variables lnus...@suse.com +Patch1: mandoc-1.14.5-dummy.diff BuildRequires: zlib-devel Provides: man = %{version} Conflicts: man Conflicts: groff Conflicts: groff-full Conflicts: makewhat +# file triggers use rpm.execute() +Conflicts: rpm < 4.15 %description The mandoc manpage compiler toolset (formerly called "mdocml") @@ -66,56 +71,54 @@ %{_sbindir}/makewhatis %filetriggerin -p <lua> -- %{_mandir} --- TODO: replace with rpm.execute after rpm 4.15 -function execute(path, ...) - local pid = posix.fork() - if pid == 0 then - posix.exec(path, ...) - io.write(path, ": exec failed: ", posix.errno(), "\n") - os.exit(1) - end - if not pid then - error(path .. ": fork failed: " .. posix.errno() .. "\n") - end - posix.wait(pid) -end --- -- no point registering individual files if we can call -- makewhatis in %%post to catch all if +if posix.getenv("VERBOSE_FILETRIGGERS") then + print("%{nvr}: running file install trigger") +end if posix.access("%{_mandir}/mandoc.db") then file = rpm.next_file() while file do if string.match(file, "%{_mandir}/man[^/]+/[^/]+%{?ext_man}$") then - execute("%{_sbindir}/makewhatis", "-d", "%{_mandir}", file) + if posix.access(file) then + if posix.getenv("VERBOSE_FILETRIGGERS") then + print("%{nvr}: adding " .. file) + end + rpm.execute("%{_sbindir}/makewhatis", "-d", "%{_mandir}", file) + else + io.stderr:write("%{nvr}: missing " .. file .. "\n") + end end file = rpm.next_file() end +elseif posix.getenv("VERBOSE_FILETRIGGERS") then + print("%{nvr}: missing mandoc.db, skipped") end +io.flush() %filetriggerun -p <lua> -- %{_mandir} --- TODO: replace with rpm.execute after rpm 4.15 -function execute(path, ...) - local pid = posix.fork() - if pid == 0 then - posix.exec(path, ...) - io.write(path, ": exec failed: ", posix.errno(), "\n") - os.exit(1) - end - if not pid then - error(path .. ": fork failed: " .. posix.errno() .. "\n") - end - posix.wait(pid) +if posix.getenv("VERBOSE_FILETRIGGERS") then + print("%{nvr}: running file remove trigger") end --- if posix.access("%{_mandir}/mandoc.db") then file = rpm.next_file() while file do if string.match(file, "%{_mandir}/man[^/]+/[^/]+%{?ext_man}$") then - execute("%{_sbindir}/makewhatis", "-u", "%{_mandir}", file) + if posix.access(file) then + if posix.getenv("VERBOSE_FILETRIGGERS") then + print("%{nvr}: removing " .. file) + end + rpm.execute("%{_sbindir}/makewhatis", "-u", "%{_mandir}", file) + else + io.stderr:write("%{nvr}: missing " .. file .. "\n") + end end file = rpm.next_file() end +elseif posix.getenv("VERBOSE_FILETRIGGERS") then + print("%{nvr}: missing mandoc.db, skipped") end +io.flush() %files %license LICENSE ++++++ mandoc-1.14.5-dummy.diff ++++++ Index: mandoc-1.14.5/compat_getline.c =================================================================== --- mandoc-1.14.5.orig/compat_getline.c +++ mandoc-1.14.5/compat_getline.c @@ -2,7 +2,7 @@ #if HAVE_GETLINE -int dummy; +static int dummy; #else Index: mandoc-1.14.5/compat_reallocarray.c =================================================================== --- mandoc-1.14.5.orig/compat_reallocarray.c +++ mandoc-1.14.5/compat_reallocarray.c @@ -2,7 +2,7 @@ #if HAVE_REALLOCARRAY -int dummy; +static int dummy; #else