Compare commits

..

No commits in common. "rawhide" and "f21" have entirely different histories.

9 changed files with 24004 additions and 318 deletions

5
.gitignore vendored
View file

@ -1,8 +1,3 @@
distcc-2.18.3.tar.bz2
/distcc-3.1.tar.bz2
/distcc-3.2rc1.tar.bz2
/distcc-3.2rc1.tar.gz
/distcc-3.3.2.tar.gz
/distcc-3.3.3.tar.gz
/distcc-3.3.5.tar.gz
/distcc-3.4.tar.gz

View file

@ -1,55 +0,0 @@
From 83e030a852daf1d4d8c906e46f86375d421b781e Mon Sep 17 00:00:00 2001
From: hephooey <hephooey@users.noreply.github.com>
Date: Sun, 15 Jan 2023 15:43:50 -0500
Subject: [PATCH] Replace int with Py_ssize_t for distcc pump extension
Defining PY_SSIZE_T_CLEAN is required since python 3.10, and I have to
modify the type of length to match it. Otherwise functions like
OsPathExists will always return False.
The PY_SSIZE_T_CLEAN macro is supported at least back to python 3.5
according to docs.python.org, that is why I included it without any
python version conditions
---
.../c_extensions/distcc_pump_c_extensions_module.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/include_server/c_extensions/distcc_pump_c_extensions_module.c b/include_server/c_extensions/distcc_pump_c_extensions_module.c
index 763dd425..a4c6e9eb 100644
--- a/include_server/c_extensions/distcc_pump_c_extensions_module.c
+++ b/include_server/c_extensions/distcc_pump_c_extensions_module.c
@@ -21,6 +21,7 @@
/* distcc_pump_c_extensions_module.c -- Python bindings for distcc-pump
* extensions */
+#define PY_SSIZE_T_CLEAN
#include "Python.h"
static const char *version = ".01";
@@ -56,7 +57,7 @@ static PyObject *
CompressLzo1xAlloc(PyObject *dummy, PyObject *args) {
PyObject *string_object;
const char *in_buf;
- int in_len;
+ Py_ssize_t in_len;
char *out_buf;
size_t out_len;
UNUSED(dummy);
@@ -241,7 +242,7 @@ static /* const */ char OsPathExists_doc__[] =
static PyObject *
OsPathExists(PyObject *dummy, PyObject *args) {
const char *in;
- int len;
+ Py_ssize_t len;
int res;
struct stat buf;
@@ -275,7 +276,7 @@ static /* const */ char OsPathIsFile_doc__[] =
static PyObject *
OsPathIsFile(PyObject *dummy, PyObject *args) {
const char *in;
- int len;
+ Py_ssize_t len;
int res;
struct stat buf;

View file

@ -1,11 +0,0 @@
--- src/compile.c 2021-05-11 13:26:29.000000000 -0400
+++ src/compile.c 2024-01-15 16:45:00.558851171 -0500
@@ -584,7 +584,7 @@
return -ENOENT;
- newcmd_len = strlen(target_with_vendor) + 1 + strlen(argv[0] + 1);
+ newcmd_len = strlen(target_with_vendor) + 1 + strlen(argv[0]) + 1;
newcmd = malloc(newcmd_len);
if (!newcmd)
return -ENOMEM;

12103
distcc-2.18.3-avahi.patch Normal file

File diff suppressed because it is too large Load diff

View file

@ -1,11 +0,0 @@
--- contrib/redhat/sysconfig~ 2011-10-26 07:42:02.000000000 -0500
+++ contrib/redhat/sysconfig 2019-02-21 08:55:03.921586180 -0600
@@ -1,7 +1,7 @@
### See distcc(1) manual page for more information on these options.
###
-#OPTIONS="--nice 5 --jobs 5 --allow 10.0.0.0/24 --port 1234"
+OPTIONS="--nice 5 --jobs 5 --allow 127.0.0.0/8 --port 1234"
#USER="distcc"
### Set this if don't want distccd to use gcc or g++ by accident.

11811
distcc-minilzo-2.08.patch Normal file

File diff suppressed because it is too large Load diff

View file

@ -1,33 +1,30 @@
%global _lto_cflags %nil
%define _hardened_build 1
%{!?python_sitearch: %define python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")}
# eval to 2.3 if python isn't yet present, workaround for no python in fc4 minimal buildroot
%{!?python_version: %define python_version %(%{__python} -c 'import sys; print sys.version.split(" ")[0]' || echo "2.3")}
Name: distcc
Version: 3.4
Release: 12%{?dist}
Version: 3.2rc1
Release: 9%{?dist}
Summary: Distributed C/C++ compilation
License: GPL-2.0-or-later
URL: https://github.com/distcc/distcc
Source0: https://github.com/distcc/distcc/archive/v%{version}/%{name}-%{version}.tar.gz
Group: Development/Tools
License: GPLv2+
URL: http://distcc.org/
Source0: http://distcc.googlecode.com/files/distcc-%{version}.tar.bz2
Source1: hosts.sample
Source2: distccd.service
Patch0: distcc-localhost.patch
Patch1: crash.patch
Patch2: 479.patch
#Patch0: distcc-2.18.3-avahi.patch
Patch0: distcc-minilzo-2.08.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: automake
BuildRequires: autoconf
BuildRequires: which
BuildRequires: libtool
BuildRequires: popt-devel
BuildRequires: gtk3-devel
BuildRequires: libgnomeui-devel
BuildRequires: pango-devel
BuildRequires: python3-devel
Buildrequires: python3-setuptools
BuildRequires: python-devel
BuildRequires: desktop-file-utils
BuildRequires: avahi-devel
BuildRequires: krb5-devel
BuildRequires: binutils-devel
BuildRequires: systemd-rpm-macros
BuildRequires: make
%description
distcc is a program to distribute compilation of C or C++ code across
@ -36,20 +33,17 @@ results as a local compile, is simple to install and use, and is often
two or more times faster than a local compile.
%package gnome
Summary: Gnome frontend of distcc monitoring tool
Requires: %{name}%{?_isa} = %{version}-%{release}
%description gnome
This package contains the Gnome frontend of the distcc monitoring tool.
%package server
Summary: Server for distributed C/C++ compilation
License: GPL-2.0-or-later
Group: Development/Tools
License: GPLv2+
Requires: %{name}%{?_isa} = %{version}-%{release}
%{?systemd_requires}
#Requires(post): /sbin/chkconfig
#Requires(preun): /sbin/chkconfig
Requires(post): systemd-units
Requires(preun): systemd-units
Requires(postun): systemd-units
Requires(post): systemd-sysv
%description server
This package contains the compilation server needed to use %{name}.
@ -57,22 +51,23 @@ This package contains the compilation server needed to use %{name}.
%prep
%setup -q
%patch -P 0 -p0
%patch -P 1 -p0
%patch -P 2 -p1
#%%patch0 -p1 -b .avahi
%%patch0 -p1
%build
export PYTHON='/usr/bin/python3'
./autogen.sh
export CFLAGS="%{optflags} -fcommon"
%configure --with-gtk --disable-Werror --with-auth
%make_build
%configure --with-gnome --disable-Werror --with-auth
make %{?_smp_mflags}
%install
%make_install
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT
desktop-file-validate $RPM_BUILD_ROOT%{_datadir}/applications/*.desktop
# Move desktop file to right directory
mkdir -p $RPM_BUILD_ROOT%{_datadir}/applications
mv $RPM_BUILD_ROOT%{_datadir}/%{name}/*.desktop $RPM_BUILD_ROOT%{_datadir}/applications/
sed -i 's@Icon=@Icon=%{_datadir}/%{name}/@' $RPM_BUILD_ROOT%{_datadir}/applications/*.desktop
# Install sample hosts file
install -Dm 0644 %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/hosts
@ -80,232 +75,91 @@ install -Dm 0644 %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/hosts
# Install sample distccd config file
install -Dm 0644 contrib/redhat/sysconfig $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/distccd
# Install distccd init file
#install -Dm 0755 %%{SOURCE2} $RPM_BUILD_ROOT%%{_sysconfdir}/init.d/distccd
# Install distcdd unit file
mkdir -p $RPM_BUILD_ROOT%{_unitdir}
install -Dm 0644 %{SOURCE2} $RPM_BUILD_ROOT%{_unitdir}/distccd.service
# Install distcc dirs
mkdir -p $RPM_BUILD_ROOT/usr/lib/distcc
mkdir -p $RPM_BUILD_ROOT/usr/lib/gcc-cross
if [ ! -d $RPM_BUILD_ROOT/usr/lib64 ]; then
mkdir -p $RPM_BUILD_ROOT/usr/lib64
fi
ln -s /usr/lib/distcc $RPM_BUILD_ROOT/usr/lib64/distcc
rm -rf $RPM_BUILD_ROOT%{_docdir}/*
%post
update-desktop-database &> /dev/null ||:
%post server
%systemd_post distccd.service
%{_sbindir}/update-distcc-symlinks > /dev/null 2>&1
#[ $1 -lt 2 ] && /sbin/chkconfig --add distccd ||:
if [ $1 -eq 1 ] ; then
# Initial installation
/bin/systemctl daemon-reload >/dev/null 2>&1 || :
fi
%preun server
%systemd_preun distccd.service
#[ $1 -eq 0 ] && /sbin/chkconfig --del distccd ||:
if [ $1 -eq 0 ] ; then
# Package removal, not upgrade
/bin/systemctl --no-reload disable distccd.service > /dev/null 2>&1 || :
/bin/systemctl stop distccd.service > /dev/null 2>&1 || :
fi
%postun server
%systemd_postun_with_restart distccd.service
/bin/systemctl daemon-reload >/dev/null 2>&1 || :
if [ $1 -ge 1 ] ; then
# Package upgrade, not uninstall
/bin/systemctl try-restart distccd.service >/dev/null 2>&1 || :
fi
%postun
update-desktop-database &> /dev/null ||:
%triggerun -- distcc-server < 3.1-5
# Save the current service runlevel info
# User must manually run systemd-sysv-convert --apply distccd
# to migrate them to systemd targets
/usr/bin/systemd-sysv-convert --save distccd >/dev/null 2>&1 ||:
# Run these because the SysV package being removed won't do them
/sbin/chkconfig --del distccd >/dev/null 2>&1 || :
/bin/systemctl try-restart distccd.service >/dev/null 2>&1 || :
%clean
rm -rf $RPM_BUILD_ROOT
%files
%license COPYING
%defattr(-,root,root,-)
%doc AUTHORS doc/* NEWS README.pump TODO
%doc INSTALL README survey.txt
%doc COPYING INSTALL README survey.txt
%{_bindir}/distcc
%{_bindir}/distccmon-text
%{_bindir}/distccmon*
%{_bindir}/lsdistcc
%{_bindir}/pump
%{_mandir}/man1/distcc.*
%{_mandir}/man1/distccmon*
%{_mandir}/man1/pump*
%{_mandir}/man1/include_server*
%{_mandir}/man1/lsdistcc*
%{_datadir}/%{name}
%{_datadir}/applications/*.desktop
%dir %{_sysconfdir}/%{name}
%config(noreplace) %{_sysconfdir}/%{name}/hosts
%{python3_sitearch}/include_server*
%files gnome
%{_bindir}/distccmon-gnome
%{_datadir}/pixmaps/distccmon-gnome.png
%{_datadir}/applications/*.desktop
%files server
%license COPYING
%doc README
%defattr(-,root,root,-)
%doc COPYING README
%{_bindir}/distccd
#%%{_sysconfdir}/init.d/*
%{_unitdir}/*
%{_sysconfdir}/default/distcc
%{_sysconfdir}/distcc/*allow*
%{_mandir}/man1/distccd*
%{_mandir}/man1/include_server*
%{_mandir}/man1/pump*
%config(noreplace) %{_sysconfdir}/sysconfig/distccd
%{_sbindir}/update-distcc-symlinks
%dir /usr/lib/distcc
/usr/lib64/distcc
%dir /usr/lib/gcc-cross
%{python_sitearch}/include_server*
%changelog
* Fri Sep 19 2025 Python Maint <python-maint@redhat.com> - 3.4-12
- Rebuilt for Python 3.14.0rc3 bytecode
* Fri Aug 15 2025 Python Maint <python-maint@redhat.com> - 3.4-11
- Rebuilt for Python 3.14.0rc2 bytecode
* Wed Jul 23 2025 Fedora Release Engineering <releng@fedoraproject.org> - 3.4-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Mon Jun 02 2025 Python Maint <python-maint@redhat.com> - 3.4-9
- Rebuilt for Python 3.14
* Thu Jan 16 2025 Fedora Release Engineering <releng@fedoraproject.org> - 3.4-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Mon Oct 21 2024 Gwyn Ciesla <gwync@protonmail.com> - 3.4-7
- Patch for Py_ssize_t
* Wed Jul 17 2024 Fedora Release Engineering <releng@fedoraproject.org> - 3.4-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Fri Jun 07 2024 Python Maint <python-maint@redhat.com> - 3.4-5
- Rebuilt for Python 3.13
* Tue Feb 13 2024 Gwyn Ciesla <gwync@protonmail.com> - 3.4-4
- Disable LTO to fix distccmon-gnome crash, 2263992.
* Wed Jan 24 2024 Fedora Release Engineering <releng@fedoraproject.org> - 3.4-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 3.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jan 05 2024 Gwyn Ciesla <gwync@protonmail.com> - 3.4-1
- 3.4
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 3.3.5-15
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Tue Jun 13 2023 Python Maint <python-maint@redhat.com> - 3.3.5-14
- Rebuilt for Python 3.12
* Tue Mar 07 2023 Gwyn Ciesla <gwync@protonmail.com> - 3.3.5-13
- migrated to SPDX license
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 3.3.5-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Wed Dec 21 2022 Gwyn Ciesla <gwync@protonmail.com> - 3.3.5-11
- BR setuptools.
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.3.5-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Mon Jun 13 2022 Python Maint <python-maint@redhat.com> - 3.3.5-9
- Rebuilt for Python 3.11
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.3.5-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.3.5-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Fri Jun 04 2021 Python Maint <python-maint@redhat.com> - 3.3.5-6
- Rebuilt for Python 3.10
* Wed Mar 24 2021 Gwyn Ciesla <gwync@protonmail.com> - 3.3.5-5
- Fix desktop file icon path.
* Mon Mar 08 2021 Gwyn Ciesla <gwync@protonmail.com> - 3.3.5-4
- Silence update-distcc-symlinks at install time.
* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 3.3.5-3
- Rebuilt for updated systemd-rpm-macros
See https://pagure.io/fesco/issue/2583.
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.3.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Mon Jan 04 2021 Gwyn Ciesla <gwync@protonmail.com> - 3.3.5-1
- 3.3.5
* Mon Nov 23 2020 Gwyn Ciesla <gwync@protonmail.com> - 3.3.3-10
- Spec cleanup, fix FTBFS.
* Wed Sep 16 2020 Gwyn Ciesla <gwync@protonmail.com> - 3.3.3-9
- Use gtk, not gnome, for monitor.
* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.3.3-8
- Second attempt - Rebuilt for
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.3.3-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue May 26 2020 Miro Hrončok <mhroncok@redhat.com> - 3.3.3-6
- Rebuilt for Python 3.9
* Wed Jan 29 2020 Gwyn Ciesla <gwync@protonmail.com> - 3.3.3-5
- Build with -fcommon for gcc10.
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.3.3-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Thu Oct 03 2019 Miro Hrončok <mhroncok@redhat.com> - 3.3.3-3
- Rebuilt for Python 3.8.0rc1 (#1748018)
* Mon Aug 19 2019 Miro Hrončok <mhroncok@redhat.com> - 3.3.3-2
- Rebuilt for Python 3.8
* Thu Aug 15 2019 Gwyn Ciesla <gwync@protonmail.com> - 3.3.3-1
- 3.3.3
* Tue Aug 06 2019 Gwyn Ciesla <gwync@protonmail.com> - 3.3.2-1
- Python 3.
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.2rc1-24
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Tue May 07 2019 Gwyn Ciesla <gwync@protonmail.com> - 3.2rc1-23
- Honor clients.allow
* Thu Feb 21 2019 Gwyn Ciesla <gwync@protonmail.com> - 3.2rc1-22
- Restrict to localhost by default.
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.2rc1-21
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.2rc1-20
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Tue Mar 13 2018 Iryna Shcherbina <ishcherb@redhat.com> - 3.2rc1-19
- Update Python 2 dependency declarations to new packaging standards
(See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3)
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.2rc1-18
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Thu Dec 21 2017 Gwyn Ciesla <limburgher@gmail.com> - 3.2rc1-17
- Drop --verbose, BZ 1523785.
* Thu Dec 21 2017 Gwyn Ciesla <limburgher@gmail.com> - 3.2rc1-16
- Patch for argument bug, BZ 1527368
- Move required components for pump to client package, BZ 1525851
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.2rc1-15
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.2rc1-14
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.2rc1-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.2rc1-12
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 3.2rc1-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.2rc1-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Thu Mar 12 2015 Jon Ciesla <limburgher@gmail.com> - 3.2rc1-9
- Enable authentication support, BZ 1201039.

View file

@ -5,7 +5,7 @@ After=network.target
[Service]
User=nobody
EnvironmentFile=-/etc/sysconfig/distccd
ExecStart=/usr/bin/distccd --no-detach --daemon --whitelist=/etc/distcc/clients.allow $OPTIONS
ExecStart=/usr/bin/distccd --verbose --no-detach --daemon $OPTIONS
[Install]
WantedBy=multi-user.target

View file

@ -1 +1 @@
SHA512 (distcc-3.4.tar.gz) = aa6018326da8aa73b40479471c0c26d752ea17b46b40caa55662885e4d67a920eb2e33f0cceec9d1738050a069660a4be1175448c0ad9762c7ea9527f556a02b
18cd4f33f5cfc3e75675cafc568fb9cf distcc-3.2rc1.tar.bz2