public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/inn] epel10: fix building using parallel make (#1558586)
@ 2026-08-26 8:07 Dominik 'Rathann' Mierzejewski
0 siblings, 0 replies; only message in thread
From: Dominik 'Rathann' Mierzejewski @ 2026-08-26 8:07 UTC (permalink / raw)
To: git-commits
A new commit has been pushed.
Repo : rpms/inn
Branch : epel10
Commit : f84f35608686a55baeac53bd3ce022e2a8ac9609
Author : Dominik 'Rathann' Mierzejewski <dominik@greysector.net>
Date : 2021-10-22T00:45:17+02:00
Stats : +125/-1 in 2 file(s)
URL : https://src.fedoraproject.org/rpms/inn/c/f84f35608686a55baeac53bd3ce022e2a8ac9609?branch=epel10
Log:
fix building using parallel make (#1558586)
---
diff --git a/208.patch b/208.patch
new file mode 100644
index 0000000..71338df
--- /dev/null
+++ b/208.patch
@@ -0,0 +1,119 @@
+From 8e3d894a9cc0d5848834ad19c71a063dc0c39002 Mon Sep 17 00:00:00 2001
+From: Richard Kettlewell <rjk@greenend.org.uk>
+Date: Thu, 21 Oct 2021 14:20:07 +0100
+Subject: [PATCH] Build concurrency fixes
+
+We serialize build of top-level subdirectories. The previous attempt
+to support make -j was broken, since the subdirectories have dependencies
+between them and attempt to cross-invoke one another, leading to multiple
+concurrent make invocations on the same directory.
+
+A couple of missing dependencies are also added. The sql-init.h
+dependency should be generated by makedepend, but it's confused about
+object code extensions. This change is a stopgap until that is
+addressed.
+---
+ Makefile | 58 +++++++++++++++---------------------
+ storage/Makefile | 6 ++++
+ storage/ovsqlite/ovmethod.mk | 2 +-
+ 3 files changed, 31 insertions(+), 35 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index b8b8486e9..6bd42a6ab 100644
+--- a/Makefile
++++ b/Makefile
+@@ -38,40 +38,30 @@ SNAPDIRS = -e 1,2d -e '/(Directory)/!d' -e 's/ .*//' -e 's;^;$(SNAPDIR)/;'
+ DISTFILES = -e 1,2d -e '/(Directory)/d' -e 's/ .*//'
+
+
+-## Major target -- build everything. Rather than just looping through
+-## all the directories, use a set of parallel rules so that make -j can
+-## work on more than one directory at a time.
+-## Be careful of a non-GNU make: after a completed command, it does not
+-## necessarily return the script back to the starting directory.
+-all: all-include all-libraries all-programs
+- cd doc && $(MAKE) all || exit 1 ; cd ..
+- cd samples && $(MAKE) all || exit 1 ; cd ..
+- cd site && $(MAKE) all || exit 1 ; cd ..
+-
+-all-include: ; cd include && $(MAKE) all
+-
+-all-libraries: all-lib all-storage all-history
+-
+-all-lib: all-include ; cd lib && $(MAKE) all
+-all-storage: all-lib ; cd storage && $(MAKE) library
+-all-history: all-storage ; cd history && $(MAKE) all
+-
+-all-programs: all-innd all-nnrpd all-innfeed all-control all-expire \
+- all-frontends all-backends all-authprogs all-scripts \
+- all-perl all-store-util
+-
+-all-authprogs: all-lib ; cd authprogs && $(MAKE) all
+-all-backends: all-libraries ; cd backends && $(MAKE) all
+-all-control: ; cd control && $(MAKE) all
+-all-expire: all-libraries ; cd expire && $(MAKE) all
+-all-frontends: all-libraries ; cd frontends && $(MAKE) all
+-all-innd: all-libraries ; cd innd && $(MAKE) all
+-all-innfeed: all-libraries ; cd innfeed && $(MAKE) all
+-all-nnrpd: all-libraries ; cd nnrpd && $(MAKE) all
+-all-perl: ; cd perl && $(MAKE) all
+-all-scripts: ; cd scripts && $(MAKE) all
+-all-store-util: all-libraries ; cd storage && $(MAKE) programs
+-
++## Major target -- build everything.
++##
++## libstorage depends on libinnhist, but some of the storage/...
++## programs depend on libinnhist, hence the two calls into
++## storage.
++all:
++ $(MAKE) -C include
++ $(MAKE) -C lib
++ $(MAKE) -C storage library
++ $(MAKE) -C history
++ $(MAKE) -C innd
++ $(MAKE) -C nnrpd
++ $(MAKE) -C innfeed
++ $(MAKE) -C control
++ $(MAKE) -C expire
++ $(MAKE) -C frontends
++ $(MAKE) -C backends
++ $(MAKE) -C authprogs
++ $(MAKE) -C scripts
++ $(MAKE) -C perl
++ $(MAKE) -C storage programs
++ $(MAKE) -C doc
++ $(MAKE) -C samples
++ $(MAKE) -C site
+
+ ## If someone tries to run make before running configure, tell them to run
+ ## configure first.
+diff --git a/storage/Makefile b/storage/Makefile
+index 854222c99..c62516c92 100644
+--- a/storage/Makefile
++++ b/storage/Makefile
+@@ -101,6 +101,12 @@ libstorage$(PROFSUFFIX).a: $(SOURCES)
+ rm -f $(OBJECTS)
+
+
++# TODO bodge in missing dependency. This isn't a full solution
++# but it works for now.
++#
++# See https://github.com/InterNetNews/inn/issues/206
++ovsqlite/ovsqlite-server.lo: ovsqlite/sql-init.h
++
+ ## Dependencies. Default list, below, is probably good enough.
+
+ depend: Makefile $(SOURCES) $(EXTRA_SOURCES)
+diff --git a/storage/ovsqlite/ovmethod.mk b/storage/ovsqlite/ovmethod.mk
+index 8ab11dc47..3982f698d 100644
+--- a/storage/ovsqlite/ovmethod.mk
++++ b/storage/ovsqlite/ovmethod.mk
+@@ -3,7 +3,7 @@ OVSQLITEOBJECTS = ovsqlite/ovsqlite-server.o ovsqlite/sql-main.o \
+ ovsqlite/ovsqlite-private.o
+ OVSQLITELOBJECTS = $(OVSQLITEOBJECTS:.o=.lo)
+
+-ovsqlite/ovsqlite-server: $(OVSQLITEOBJECTS) $(OVSQLITELOBJECTS)
++ovsqlite/ovsqlite-server: $(OVSQLITEOBJECTS) $(LIBSTORAGE)
+ $(LIBLD) $(LDFLAGS) $(SQLITE3_LDFLAGS) -o $@ $(OVSQLITELOBJECTS) \
+ $(LIBSTORAGE) $(LIBHIST) $(LIBINN) $(STORAGE_LIBS) $(SQLITE3_LIBS) \
+ $(LIBS)
diff --git a/inn.spec b/inn.spec
index 597a147..eec2f46 100644
--- a/inn.spec
+++ b/inn.spec
@@ -3,7 +3,7 @@
Summary: The InterNetNews system, an Usenet news server
Name: inn
Version: 2.6.4
-Release: 9%{?dist}
+Release: 10%{?dist}
#see LICENSE file for details
License: GPLv2+ and BSD and MIT and Public Domain
URL: https://www.eyrie.org/~eagle/software/inn/
@@ -24,6 +24,8 @@ Source26: innd-rnews.timer
Source30: inn.rsyslog
Patch1: inn-2.6.4-rh.patch
Patch2: https://inn.eyrie.org/trac/changeset/10541?format=diff&new=10541#/inn-2.6.4-changeset-10541.patch
+# https://bugzilla.redhat.com/show_bug.cgi?id=1558586
+Patch3: https://github.com/InterNetNews/inn/pull/208.patch
BuildRequires: autoconf
BuildRequires: byacc
BuildRequires: cyrus-sasl-devel
@@ -559,6 +561,9 @@ fi
%{_mandir}/man1/inews*
%changelog
+* Thu Oct 21 2021 Dominik Mierzejewski <rpm@greysector.net> - 2.6.4-10
+- fix building using parallel make (#1558586)
+
* Wed Sep 29 2021 Dominik Mierzejewski <rpm@greysector.net> - 2.6.4-9
- drop uucp from BuildRequires (not required for build) and make it a weak dep
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2026-08-26 8:07 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-08-26 8:07 [rpms/inn] epel10: fix building using parallel make (#1558586) Dominik 'Rathann' Mierzejewski
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox