rpm: upgrade to v4.17.1
- Migrate rpmdb location to /usr/lib/sysimage/rpm - More details at: https://fedoraproject.org/wiki/Changes/RelocateRPMToUsr Introduced following new packages: - pandoc-bin - help2man - dwz - debugedit Upgraded packages: - sendmail - libsolv This commit drops libdb support entirely from Photon OS. Added new package tinycdb - sendmail uses this as default db now. Change-Id: I151479183dc51548d5da6dfcbb25a48ef34da756 Signed-off-by: Shreenidhi Shedi <sshedi@vmware.com> Reviewed-on: http://photon-jenkins.eng.vmware.com:8082/15197 Reviewed-by: Alexey Makhalov <amakhalov@vmware.com> Tested-by: Alexey Makhalov <amakhalov@vmware.com>
This commit is contained in:
parent
7fde9d1028
commit
2ac8da20e2
|
@ -1,7 +1,7 @@
|
|||
Summary: Linux Pluggable Authentication Modules
|
||||
Name: Linux-PAM
|
||||
Version: 1.5.2
|
||||
Release: 1%{?dist}
|
||||
Release: 2%{?dist}
|
||||
License: BSD and GPLv2+
|
||||
URL: https://github.com/linux-pam/linux-pam
|
||||
Group: System Environment/Security
|
||||
|
@ -10,6 +10,7 @@ Distribution: Photon
|
|||
|
||||
Source0: https://github.com/linux-pam/linux-pam/releases/download/v%{version}/%{name}-%{version}.tar.xz
|
||||
%define sha512 %{name}=fa16350c132d3e5fb82b60d991768fb596582639841b8ece645c684705467305ccf1302a0147ec222ab78c01b2c9114c5496dc1ca565d2b56bf315f29a815144
|
||||
|
||||
Source1: pamtmp.conf
|
||||
|
||||
Patch0: faillock-add-support-to-print-login-failures.patch
|
||||
|
@ -81,16 +82,17 @@ ln -sfv pam_unix.so %{buildroot}%{_libdir}/security/pam_unix_passwd.so
|
|||
ln -sfv pam_unix.so %{buildroot}%{_libdir}/security/pam_unix_session.so
|
||||
find %{buildroot}%{_libdir} -name '*.la' -delete
|
||||
|
||||
install -d -m 755 %{buildroot}/var/run/faillock
|
||||
install -d -m 755 %{buildroot}%{_var}/run/faillock
|
||||
install -m644 -D %{SOURCE1} %{buildroot}%{_libdir}/tmpfiles.d/pam.conf
|
||||
|
||||
%{find_lang} %{name}
|
||||
|
||||
%{_fixperms} %{buildroot}/*
|
||||
|
||||
%check
|
||||
%if 0%{?with_check}
|
||||
install -v -m755 -d /etc/pam.d
|
||||
cat > /etc/pam.d/other << "EOF"
|
||||
install -v -m755 -d %{_sysconfdir}/pam.d
|
||||
cat > %{_sysconfdir}/pam.d/other << "EOF"
|
||||
auth required pam_deny.so
|
||||
account required pam_deny.so
|
||||
password required pam_deny.so
|
||||
|
@ -116,7 +118,7 @@ rm -rf %{buildroot}/*
|
|||
%{_mandir}/man8/*
|
||||
%{_libdir}/tmpfiles.d/pam.conf
|
||||
%{_unitdir}/pam_namespace.service
|
||||
%dir /var/run/faillock
|
||||
%dir %{_var}/run/faillock
|
||||
|
||||
%files lang -f Linux-PAM.lang
|
||||
%defattr(-,root,root)
|
||||
|
@ -129,6 +131,8 @@ rm -rf %{buildroot}/*
|
|||
%{_libdir}/pkgconfig/*.pc
|
||||
|
||||
%changelog
|
||||
* Wed Jul 06 2022 Shreenidhi Shedi <sshedi@vmware.com> 1.5.2-2
|
||||
- Remove libdb support from pam
|
||||
* Thu Jun 30 2022 Shreenidhi Shedi <sshedi@vmware.com> 1.5.2-1
|
||||
- Further fixes to faillock patch
|
||||
- Upgrade to v1.5.2
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
Summary: Creates a common metadata repository
|
||||
Name: createrepo_c
|
||||
Version: 0.16.0
|
||||
Release: 5%{?dist}
|
||||
Release: 6%{?dist}
|
||||
License: GPLv2+
|
||||
Group: System Environment/Base
|
||||
Vendor: VMware, Inc.
|
||||
|
@ -86,6 +86,8 @@ rm -rf %{buildroot}
|
|||
%{_libdir}/pkgconfig/%{name}.pc
|
||||
|
||||
%changelog
|
||||
* Thu Jul 07 2022 Shreenidhi Shedi <sshedi@vmware.com> 0.16.0-6
|
||||
- Bump version as a part of rpm upgrade
|
||||
* Mon Jun 20 2022 Shreenidhi Shedi <sshedi@vmware.com> 0.16.0-5
|
||||
- Use cmake macros for build and install
|
||||
* Wed Nov 17 2021 Nitesh Kumar <kunitesh@vmware.com> 0.16.0-4
|
||||
|
|
|
@ -0,0 +1,81 @@
|
|||
Name: debugedit
|
||||
Version: 5.0
|
||||
Release: 1%{?dist}
|
||||
Summary: Tools for debuginfo creation
|
||||
License: GPLv3+ and GPLv2+ and LGPLv2+
|
||||
URL: https://sourceware.org/debugedit
|
||||
Group: System Environment/Base
|
||||
Vendor: VMware, Inc.
|
||||
Distribution: Photon
|
||||
|
||||
Source0: https://sourceware.org/ftp/debugedit/%{version}/%{name}-%{version}.tar.xz
|
||||
%define sha512 %{name}=7e7f529eafe41b53f0b5bfc58282fdbfa0dfa93ed7908b70e81942d6d2b6f80fc9c6bff2ed9674fd98947e5750b615f4c8b222544989e2900c5f8ff5ae0efb92
|
||||
|
||||
Patch0: tweak-find-debuginfo.patch
|
||||
|
||||
BuildRequires: make
|
||||
BuildRequires: gcc
|
||||
BuildRequires: help2man
|
||||
|
||||
# For the testsuite.
|
||||
BuildRequires: autoconf
|
||||
BuildRequires: automake
|
||||
|
||||
# The find-debuginfo.sh script has a couple of tools it needs at runtime.
|
||||
# For strip_to_debug, eu-strip
|
||||
Requires: elfutils
|
||||
# For add_minidebug, readelf, awk, nm, sort, comm, objcopy, xz
|
||||
Requires: gawk
|
||||
Requires: xz
|
||||
Requires: (coreutils or toybox)
|
||||
# For do_file, gdb_add_index
|
||||
# We only need gdb-add-index, so suggest gdb-minimal (full gdb is also ok)
|
||||
Requires: gdb-minimal
|
||||
# For dwz
|
||||
Requires: dwz
|
||||
|
||||
Patch1: tests-Handle-zero-directory-entry-in-.debug_line-DWA.patch
|
||||
|
||||
%description
|
||||
The debugedit project provides programs and scripts for creating
|
||||
debuginfo and source file distributions, collect build-ids and rewrite
|
||||
source paths in DWARF data for debugging, tracing and profiling.
|
||||
|
||||
It is based on code originally from the rpm project plus libiberty and
|
||||
binutils. It depends on the elfutils libelf and libdw libraries to
|
||||
read and write ELF files, DWARF data and build-ids.
|
||||
|
||||
%prep
|
||||
%autosetup -p1
|
||||
|
||||
%build
|
||||
autoreconf -f -v -i
|
||||
%configure
|
||||
%make_build
|
||||
|
||||
%install
|
||||
%make_install
|
||||
cd %{buildroot}%{_bindir}
|
||||
ln -sfv find-debuginfo find-debuginfo.sh
|
||||
|
||||
%check
|
||||
%if 0%{?with_check}
|
||||
sed -i 's/^\(C\|LD\)FLAGS=.*/\1FLAGS=""/' tests/atlocal
|
||||
make check %{?_smp_mflags}
|
||||
%endif
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%license COPYING COPYING3 COPYING.LIB
|
||||
%doc README
|
||||
%{_bindir}/debugedit
|
||||
%{_bindir}/sepdebugcrcfix
|
||||
%{_bindir}/find-debuginfo
|
||||
%{_bindir}/find-debuginfo.sh
|
||||
%{_mandir}/man1/debugedit.1*
|
||||
%{_mandir}/man1/sepdebugcrcfix.1*
|
||||
%{_mandir}/man1/find-debuginfo.1*
|
||||
|
||||
%changelog
|
||||
* Fri Dec 10 2021 Shreenidhi Shedi <sshedi@vmware.com> 5.0-1
|
||||
- Intial version. Needed for rpm-4.17.0
|
|
@ -0,0 +1,130 @@
|
|||
From ae27211cbbfb63a0ad3c141cd1310d7f583ec40e Mon Sep 17 00:00:00 2001
|
||||
From: Mark Wielaard <mark@klomp.org>
|
||||
Date: Fri, 30 Jul 2021 18:09:46 +0200
|
||||
Subject: [PATCH] tests: Handle zero directory entry in .debug_line DWARF5
|
||||
debugedit.at
|
||||
|
||||
We were skipping the zero directory entry, because it was always
|
||||
the same as the directory entry at position one. But that isn't
|
||||
true anymore with gcc 11.2.1. There the zero dir entry is unique.
|
||||
Fix the debugedit.at .debug_line testcases using DWARF5 to also
|
||||
include dir entry zero.
|
||||
|
||||
Signed-off-by: Mark Wielaard <mark@klomp.org>
|
||||
---
|
||||
configure.ac | 14 ++++++++++++++
|
||||
tests/atlocal.in | 1 +
|
||||
tests/debugedit.at | 18 ++++++++++++------
|
||||
3 files changed, 27 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index e5c9230..6a53365 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -87,6 +87,20 @@ CFLAGS="$save_CFLAGS"
|
||||
GDWARF_5_FLAG=$ac_cv_gdwarf_5
|
||||
AC_SUBST([GDWARF_5_FLAG])
|
||||
|
||||
+AC_CACHE_CHECK([whether -gdwarf-5 produced DWARF5 .debug_line], ac_cv_dwarf_5_debugline, [dnl
|
||||
+save_CFLAGS="$CFLAGS"
|
||||
+CFLAGS="-gdwarf-5"
|
||||
+AC_COMPILE_IFELSE([AC_LANG_SOURCE([[int i=0;]],[[/* empty main */]])],
|
||||
+ [if readelf --debug-dump=line conftest.o 2>&1 | \
|
||||
+ grep "DWARF Version:" 2>&1 | grep "5" > /dev/null 2>&1; \
|
||||
+ then ac_cv_dwarf_5_debugline=yes; \
|
||||
+ else ac_cv_dwarf_5_debugline=no; fi],
|
||||
+ ac_cv_dwarf_5_debugline=no)
|
||||
+CFLAGS="$save_CFLAGS"
|
||||
+])
|
||||
+DWARF_5_DEBUGLINE=$ac_cv_dwarf_5_debugline
|
||||
+AC_SUBST([DWARF_5_DEBUGLINE])
|
||||
+
|
||||
AC_CACHE_CHECK([whether gcc supports -gz=none], ac_cv_gz_none, [dnl
|
||||
save_CFLAGS="$CFLAGS"
|
||||
CFLAGS="-gz=none"
|
||||
diff --git a/tests/atlocal.in b/tests/atlocal.in
|
||||
index 8399f8d..d916301 100644
|
||||
--- a/tests/atlocal.in
|
||||
+++ b/tests/atlocal.in
|
||||
@@ -13,3 +13,4 @@ READELF="@READELF@"
|
||||
|
||||
GDWARF_5_FLAG=@GDWARF_5_FLAG@
|
||||
GZ_NONE_FLAG=@GZ_NONE_FLAG@
|
||||
+DWARF_5_DEBUGLINE=@DWARF_5_DEBUGLINE@
|
||||
diff --git a/tests/debugedit.at b/tests/debugedit.at
|
||||
index 0311d26..725e68e 100644
|
||||
--- a/tests/debugedit.at
|
||||
+++ b/tests/debugedit.at
|
||||
@@ -488,10 +488,12 @@ AT_CLEANUP
|
||||
AT_SETUP([debugedit .debug_line objects DWARF5])
|
||||
AT_KEYWORDS([debuginfo] [debugedit])
|
||||
AT_SKIP_IF([test "$GDWARF_5_FLAG" = "no"])
|
||||
+AT_SKIP_IF([test "$DWARF_5_DEBUGLINE" = "no"])
|
||||
DEBUGEDIT_SETUP([-gdwarf-5])
|
||||
|
||||
AT_DATA([expout],
|
||||
[foo/bar/baz
|
||||
+foo/bar/baz/subdir_bar
|
||||
foo/bar/baz/subdir_headers
|
||||
])
|
||||
|
||||
@@ -500,8 +502,8 @@ AT_CHECK([[debugedit -b $(pwd) -d /foo/bar/baz ./subdir_bar/bar.o]])
|
||||
AT_CHECK([[debugedit -b $(pwd) -d /foo/bar/baz ./baz.o]])
|
||||
AT_CHECK([[
|
||||
readelf --debug-dump=line foo.o subdir_bar/bar.o baz.o \
|
||||
- | grep -A5 "The Directory Table" | grep "^ [123]" \
|
||||
- | cut -f2- -d/ | grep ^foo/ | sort
|
||||
+ | grep -A5 "The Directory Table" | grep "^ [0123]" \
|
||||
+ | cut -f2- -d/ | grep ^foo/ | sort -u
|
||||
]],[0],[expout])
|
||||
|
||||
AT_CLEANUP
|
||||
@@ -535,18 +537,20 @@ AT_CLEANUP
|
||||
AT_SETUP([debugedit .debug_line partial DWARF5])
|
||||
AT_KEYWORDS([debuginfo] [debugedit])
|
||||
AT_SKIP_IF([test "$GDWARF_5_FLAG" = "no"])
|
||||
+AT_SKIP_IF([test "$DWARF_5_DEBUGLINE" = "no"])
|
||||
DEBUGEDIT_SETUP([-gdwarf-5])
|
||||
|
||||
AT_DATA([expout],
|
||||
[foo/bar/baz
|
||||
+foo/bar/baz/subdir_bar
|
||||
foo/bar/baz/subdir_headers
|
||||
])
|
||||
|
||||
AT_CHECK([[debugedit -b $(pwd) -d /foo/bar/baz ./foobarbaz.part.o]])
|
||||
AT_CHECK([[
|
||||
readelf --debug-dump=line ./foobarbaz.part.o \
|
||||
- | grep -A5 "The Directory Table" | grep "^ [123]" \
|
||||
- | cut -f2- -d/ | grep ^foo/ | sort
|
||||
+ | grep -A5 "The Directory Table" | grep "^ [0123]" \
|
||||
+ | cut -f2- -d/ | grep ^foo/ | sort -u
|
||||
]],[0],[expout])
|
||||
|
||||
AT_CLEANUP
|
||||
@@ -580,18 +584,20 @@ AT_CLEANUP
|
||||
AT_SETUP([debugedit .debug_line exe DWARF5])
|
||||
AT_KEYWORDS([debuginfo] [debugedit])
|
||||
AT_SKIP_IF([test "$GDWARF_5_FLAG" = "no"])
|
||||
+AT_SKIP_IF([test "$DWARF_5_DEBUGLINE" = "no"])
|
||||
DEBUGEDIT_SETUP([-gdwarf-5])
|
||||
|
||||
AT_DATA([expout],
|
||||
[foo/bar/baz
|
||||
+foo/bar/baz/subdir_bar
|
||||
foo/bar/baz/subdir_headers
|
||||
])
|
||||
|
||||
AT_CHECK([[debugedit -b $(pwd) -d /foo/bar/baz ./foobarbaz.exe]])
|
||||
AT_CHECK([[
|
||||
readelf --debug-dump=line ./foobarbaz.exe \
|
||||
- | grep -A5 "The Directory Table" | grep "^ [123]" \
|
||||
- | cut -f2- -d/ | grep ^foo/ | sort
|
||||
+ | grep -A5 "The Directory Table" | grep "^ [0123]" \
|
||||
+ | cut -f2- -d/ | grep ^foo/ | sort -u
|
||||
]],[0],[expout])
|
||||
|
||||
AT_CLEANUP
|
||||
--
|
||||
2.27.0
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
From b9977a94becdc00d20912315a12c64f132daca7a Mon Sep 17 00:00:00 2001
|
||||
From: Shreenidhi Shedi <sshedi@vmware.com>
|
||||
Date: Mon, 13 Dec 2021 16:54:28 +0530
|
||||
Subject: [PATCH] tweak find-debuginfo
|
||||
|
||||
Signed-off-by: Shreenidhi Shedi <sshedi@vmware.com>
|
||||
---
|
||||
scripts/find-debuginfo.in | 7 +------
|
||||
1 file changed, 1 insertion(+), 6 deletions(-)
|
||||
|
||||
diff --git a/scripts/find-debuginfo.in b/scripts/find-debuginfo.in
|
||||
index 8b9ce77..8be3aa0 100755
|
||||
--- a/scripts/find-debuginfo.in
|
||||
+++ b/scripts/find-debuginfo.in
|
||||
@@ -649,11 +649,6 @@ if [ -s "$SOURCEFILE" ]; then
|
||||
fi
|
||||
|
||||
if [ -d "${RPM_BUILD_ROOT}/usr/lib" ] || [ -d "${RPM_BUILD_ROOT}/usr/src" ]; then
|
||||
- ((nout > 0)) ||
|
||||
- test ! -d "${RPM_BUILD_ROOT}/usr/lib" ||
|
||||
- (cd "${RPM_BUILD_ROOT}/usr/lib"; find debug -type d) |
|
||||
- sed 's,^,%dir /usr/lib/,' >> "$LISTFILE"
|
||||
-
|
||||
(cd "${RPM_BUILD_ROOT}/usr"
|
||||
test ! -d lib/debug || find lib/debug ! -type d
|
||||
test ! -d src/debug -o -n "$srcout" || find src/debug -mindepth 1 -maxdepth 1
|
||||
@@ -724,7 +719,7 @@ while ((i < nout)); do
|
||||
mv "${LISTFILE}.new" "$LISTFILE"
|
||||
((++i))
|
||||
done
|
||||
-if ((nout > 0)); then
|
||||
+if ((0 && nout > 0)); then
|
||||
# Generate %dir lines for each output list.
|
||||
generate_percent_dir()
|
||||
{
|
||||
--
|
||||
2.25.1
|
||||
|
|
@ -1,14 +1,14 @@
|
|||
Name: drpm
|
||||
Summary: A library for making, reading and applying deltarpm packages
|
||||
Version: 0.5.1
|
||||
Release: 2%{?dist}
|
||||
Release: 3%{?dist}
|
||||
License: LGPLv2+ and BSD
|
||||
URL: https://github.com/rpm-software-management/%{name}
|
||||
Vendor: VMware, Inc.
|
||||
Distribution: Photon
|
||||
Group: System Environment/Base
|
||||
|
||||
Source0: https://github.com/rpm-software-management/drpm/releases/download/0.5.1/drpm-%{version}.tar.bz2
|
||||
Source0: https://github.com/rpm-software-management/drpm/releases/download/%{version}/drpm-%{version}.tar.bz2
|
||||
%define sha512 %{name}=8c87165fa43bcc5e518a6d60eaadbc43b12643233eb0cb29633f0fdf8a516c24581f5f5bad06779f8c851d6200aec41b50998ab8040e8145391b686ae6be8c48
|
||||
|
||||
BuildRequires: cmake
|
||||
|
@ -61,11 +61,14 @@ cd %{__cmake_builddir}
|
|||
%license COPYING LICENSE.BSD
|
||||
|
||||
%files devel
|
||||
%defattr(-,root,root)
|
||||
%{_libdir}/lib%{name}.so
|
||||
%{_includedir}/%{name}.h
|
||||
%{_libdir}/pkgconfig/%{name}.pc
|
||||
|
||||
%changelog
|
||||
* Thu Jul 07 2022 Shreenidhi Shedi <sshedi@vmware.com> 0.5.1-3
|
||||
- Bump version as a part of rpm upgrade
|
||||
* Mon Jun 20 2022 Shreenidhi Shedi <sshedi@vmware.com> 0.5.1-2
|
||||
- Use cmake macros for build and install
|
||||
* Mon Apr 18 2022 Gerrit Photon <photon-checkins@vmware.com> 0.5.1-1
|
||||
|
|
|
@ -0,0 +1,53 @@
|
|||
Summary: DWARF optimization and duplicate removal tool
|
||||
Name: dwz
|
||||
Version: 0.14
|
||||
Release: 1%{?dist}
|
||||
License: GPLv2+ and GPLv3+
|
||||
URL: https://sourceware.org/dwz
|
||||
Group: Applications/System
|
||||
Vendor: VMware, Inc.
|
||||
Distribution: Photon
|
||||
|
||||
Source0: https://sourceware.org/ftp/dwz/releases/%{name}-%{version}.tar.xz
|
||||
%define sha512 %{name}=62c39f79723ca99305dbb08d1d24a17699b9a84dd98c30904103da116831b1253bf1edbfb905c76fdc4d48305bd1ea0046314c5619209c40a1e624b8ae4908b1
|
||||
|
||||
BuildRequires: gcc
|
||||
BuildRequires: gdb
|
||||
BuildRequires: dejagnu
|
||||
BuildRequires: make
|
||||
BuildRequires: elfutils-libelf-devel
|
||||
|
||||
%description
|
||||
The dwz package contains a program that attempts to optimize DWARF
|
||||
debugging information contained in ELF shared libraries and ELF executables
|
||||
for size, by replacing DWARF information representation with equivalent
|
||||
smaller representation where possible and by reducing the amount of
|
||||
duplication using techniques from DWARF standard appendix E - creating
|
||||
DW_TAG_partial_unit compilation units (CUs) for duplicated information
|
||||
and using DW_TAG_imported_unit to import it into each CU that needs it.
|
||||
|
||||
%prep
|
||||
%autosetup -p1 -n %{name}
|
||||
|
||||
%build
|
||||
%make_build CFLAGS='%{optflags}' \
|
||||
prefix=%{_prefix} mandir=%{_mandir} bindir=%{_bindir}
|
||||
|
||||
%install
|
||||
rm -rf %{buildroot}
|
||||
%make_install prefix=%{_prefix} mandir=%{_mandir} bindir=%{_bindir}
|
||||
|
||||
%check
|
||||
%if 0%{?with_check}
|
||||
make check %{?_smp_mflags}
|
||||
%endif
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%license COPYING COPYING3 COPYING.RUNTIME
|
||||
%{_bindir}/%{name}
|
||||
%{_mandir}/man1/%{name}.1*
|
||||
|
||||
%changelog
|
||||
* Fri Dec 10 2021 Shreenidhi Shedi <sshedi@vmware.com> 0.14-1
|
||||
- Intial version. Needed for rpm-4.17.0
|
|
@ -7,8 +7,10 @@ URL: http://www.fsarchiver.org
|
|||
Group: Applications/System
|
||||
Vendor: VMware, Inc.
|
||||
Distribution: Photon
|
||||
Source0: https://github.com/fdupoux/fsarchiver/releases/download/%{version}/fsarchiver-%{version}.tar.gz
|
||||
%define sha1 fsarchiver=6048ffc284e5284556c292a7e733f0a677785377
|
||||
|
||||
Source0: https://github.com/fdupoux/fsarchiver/releases/download/%{version}/%{name}-%{version}.tar.gz
|
||||
%define sha512 %{name}=26a2d7a68d162aabb778b14f29c52cf8fbadb8147cf5eae592352a36fbf93cc45c08c241253bd8dfe8cd0b77d0f156afcc8d89e8d24a238fd4427cb479827f14
|
||||
|
||||
BuildRequires: xz-devel
|
||||
BuildRequires: lzo-devel
|
||||
BuildRequires: libgcrypt-devel
|
||||
|
@ -25,7 +27,7 @@ Fsarchiver is released under the GPL-v2 license.
|
|||
You should read the Quick start guide if you are using FSArchiver for the first time.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%autosetup -p1
|
||||
|
||||
%build
|
||||
#make some fixes required by glibc-2.28:
|
||||
|
@ -36,13 +38,16 @@ sed -i '/unistd/a #include <sys/sysmacros.h>' src/devinfo.c
|
|||
--disable-silent-rules \
|
||||
--disable-lz4 \
|
||||
--disable-zstd
|
||||
|
||||
make %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
make DESTDIR=%{buildroot} install
|
||||
make DESTDIR=%{buildroot} install %{?_smp_mflags}
|
||||
|
||||
%check
|
||||
%if 0%{?with_check}
|
||||
make %{?_smp_mflags} check
|
||||
%endif
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
|
@ -50,11 +55,11 @@ make %{?_smp_mflags} check
|
|||
%{_mandir}/man8/*
|
||||
|
||||
%changelog
|
||||
* Tue Apr 13 2021 Gerrit Photon <photon-checkins@vmware.com> 0.8.6-1
|
||||
- Automatic Version Bump
|
||||
* Wed Sep 19 2018 Alexey Makhalov <amakhalov@vmware.com> 0.8.5-2
|
||||
- Fix compilation issue against glibc-2.28
|
||||
* Mon Sep 17 2018 Sujay G <gsujay@vmware.com> 0.8.5-1
|
||||
- Bump to version 0.8.5
|
||||
* Fri Apr 28 2017 Xiaolin Li <xiaolinl@vmware.com> 0.8.1-1
|
||||
- Initial build.
|
||||
* Tue Apr 13 2021 Gerrit Photon <photon-checkins@vmware.com> 0.8.6-1
|
||||
- Automatic Version Bump
|
||||
* Wed Sep 19 2018 Alexey Makhalov <amakhalov@vmware.com> 0.8.5-2
|
||||
- Fix compilation issue against glibc-2.28
|
||||
* Mon Sep 17 2018 Sujay G <gsujay@vmware.com> 0.8.5-1
|
||||
- Bump to version 0.8.5
|
||||
* Fri Apr 28 2017 Xiaolin Li <xiaolinl@vmware.com> 0.8.1-1
|
||||
- Initial build.
|
||||
|
|
|
@ -0,0 +1,233 @@
|
|||
2017-07-19 Rui Gu <ruig@vmware.com>
|
||||
|
||||
* Makefile.in (uninstall-pstack, install-pstack): New rules, add
|
||||
to install and uninstall.
|
||||
* pstack.sh, pstack.1: New files.
|
||||
|
||||
Index: gdb-7.12/gdb/Makefile.in
|
||||
===================================================================
|
||||
--- gdb-7.12.orig/gdb/Makefile.in 2014-02-06 20:29:09.401214339 +0100
|
||||
+++ gdb-7.12/gdb/Makefile.in 2014-02-06 20:29:09.501214360 +0100
|
||||
@@ -1067,7 +1067,7 @@ info install-info clean-info dvi pdf ins
|
||||
install: all
|
||||
@$(MAKE) $(FLAGS_TO_PASS) install-only
|
||||
|
||||
-install-only: $(CONFIG_INSTALL)
|
||||
+install-only: install-pstack $(CONFIG_INSTALL)
|
||||
transformed_name=`t='$(program_transform_name)'; \
|
||||
echo gdb | sed -e "$$t"` ; \
|
||||
if test "x$$transformed_name" = x; then \
|
||||
@@ -1104,7 +1104,25 @@ install-strip:
|
||||
install-python:
|
||||
$(SHELL) $(srcdir)/../mkinstalldirs $(DESTDIR)$(GDB_DATADIR)/python/gdb
|
||||
|
||||
-uninstall: force $(CONFIG_UNINSTALL)
|
||||
+PSTACK=pstack
|
||||
+.PHONY: install-pstack
|
||||
+install-pstack:
|
||||
+ transformed_name=`t='$(program_transform_name)'; \
|
||||
+ echo $(PSTACK) | sed -e "$$t"` ; \
|
||||
+ if test "x$$transformed_name" = x; then \
|
||||
+ transformed_name=$(PSTACK) ; \
|
||||
+ else \
|
||||
+ true ; \
|
||||
+ fi ; \
|
||||
+ $(SHELL) $(srcdir)/../mkinstalldirs $(DESTDIR)$(bindir) ; \
|
||||
+ $(INSTALL_PROGRAM) $(srcdir)/$(PSTACK).sh \
|
||||
+ $(DESTDIR)$(bindir)/$$transformed_name$(EXEEXT) ; \
|
||||
+ : $(SHELL) $(srcdir)/../mkinstalldirs \
|
||||
+ $(DESTDIR)$(man1dir) ; \
|
||||
+ : $(INSTALL_DATA) $(srcdir)/pstack.1 \
|
||||
+ $(DESTDIR)$(man1dir)/$$transformed_name.1
|
||||
+
|
||||
+uninstall: force uninstall-pstack $(CONFIG_UNINSTALL)
|
||||
transformed_name=`t='$(program_transform_name)'; \
|
||||
echo gdb | sed -e $$t` ; \
|
||||
if test "x$$transformed_name" = x; then \
|
||||
@@ -1127,6 +1145,18 @@ uninstall: force $(CONFIG_UNINSTALL)
|
||||
fi
|
||||
@$(MAKE) DO=uninstall "DODIRS=$(SUBDIRS)" $(FLAGS_TO_PASS) subdir_do
|
||||
|
||||
+.PHONY: uninstall-pstack
|
||||
+uninstall-pstack:
|
||||
+ transformed_name=`t='$(program_transform_name)'; \
|
||||
+ echo $(PSTACK) | sed -e $$t` ; \
|
||||
+ if test "x$$transformed_name" = x; then \
|
||||
+ transformed_name=$(PSTACK) ; \
|
||||
+ else \
|
||||
+ true ; \
|
||||
+ fi ; \
|
||||
+ rm -f $(DESTDIR)$(bindir)/$$transformed_name$(EXEEXT) \
|
||||
+ $(DESTDIR)$(man1dir)/$$transformed_name.1
|
||||
+
|
||||
# The C++ name parser can be built standalone for testing.
|
||||
test-cp-name-parser.o: cp-name-parser.c
|
||||
$(COMPILE) -DTEST_CPNAMES cp-name-parser.c
|
||||
Index: gdb-7.12/gdb/pstack.sh
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ gdb-7.12/gdb/pstack.sh 2014-02-06 20:29:09.501214360 +0100
|
||||
@@ -0,0 +1,43 @@
|
||||
+#!/bin/sh
|
||||
+
|
||||
+if test $# -ne 1; then
|
||||
+ echo "Usage: `basename $0 .sh` <process-id>" 1>&2
|
||||
+ exit 1
|
||||
+fi
|
||||
+
|
||||
+if test ! -r /proc/$1; then
|
||||
+ echo "Process $1 not found." 1>&2
|
||||
+ exit 1
|
||||
+fi
|
||||
+
|
||||
+# GDB doesn't allow "thread apply all bt" when the process isn't
|
||||
+# threaded; need to peek at the process to determine if that or the
|
||||
+# simpler "bt" should be used.
|
||||
+
|
||||
+backtrace="bt"
|
||||
+if test -d /proc/$1/task ; then
|
||||
+ # Newer kernel; has a task/ directory.
|
||||
+ if test `/bin/ls /proc/$1/task | /usr/bin/wc -l` -gt 1 2>/dev/null ; then
|
||||
+ backtrace="thread apply all bt"
|
||||
+ fi
|
||||
+elif test -f /proc/$1/maps ; then
|
||||
+ # Older kernel; go by it loading libpthread.
|
||||
+ if /bin/grep -e libpthread /proc/$1/maps > /dev/null 2>&1 ; then
|
||||
+ backtrace="thread apply all bt"
|
||||
+ fi
|
||||
+fi
|
||||
+
|
||||
+GDB=${GDB:-gdb}
|
||||
+
|
||||
+# Run GDB, strip out unwanted noise.
|
||||
+# --readnever is no longer used since .gdb_index is now in use.
|
||||
+$GDB --quiet -nx $GDBARGS /proc/$1/exe $1 <<EOF 2>&1 |
|
||||
+set width 0
|
||||
+set height 0
|
||||
+set pagination no
|
||||
+$backtrace
|
||||
+EOF
|
||||
+/bin/sed -n \
|
||||
+ -e 's/^\((gdb) \)*//' \
|
||||
+ -e '/^#/p' \
|
||||
+ -e '/^Thread/p'
|
||||
Index: gdb-7.12/gdb/testsuite/gdb.base/pstack.exp
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ gdb-7.12/gdb/testsuite/gdb.base/pstack.exp 2014-02-06 20:43:17.774747352 +0100
|
||||
@@ -0,0 +1,66 @@
|
||||
+# Copyright (C) 2012 Free Software Foundation, Inc.
|
||||
+
|
||||
+# This program is free software; you can redistribute it and/or modify
|
||||
+# it under the terms of the GNU General Public License as published by
|
||||
+# the Free Software Foundation; either version 3 of the License, or
|
||||
+# (at your option) any later version.
|
||||
+#
|
||||
+# This program is distributed in the hope that it will be useful,
|
||||
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
+# GNU General Public License for more details.
|
||||
+#
|
||||
+# You should have received a copy of the GNU General Public License
|
||||
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
+
|
||||
+set testfile pstack
|
||||
+set executable ${testfile}
|
||||
+set binfile [standard_output_file $executable]
|
||||
+if {[build_executable ${testfile} ${executable} "" {debug}] == -1} {
|
||||
+ return -1
|
||||
+}
|
||||
+
|
||||
+set test "spawn inferior"
|
||||
+set command "${binfile}"
|
||||
+set res [remote_spawn host $command];
|
||||
+if { $res < 0 || $res == "" } {
|
||||
+ perror "Spawning $command failed."
|
||||
+ fail $test
|
||||
+ return
|
||||
+}
|
||||
+set use_gdb_stub 1
|
||||
+set pid [exp_pid -i $res]
|
||||
+gdb_expect {
|
||||
+ -re "looping\r\n" {
|
||||
+ pass $test
|
||||
+ }
|
||||
+ eof {
|
||||
+ fail "$test (eof)"
|
||||
+ return
|
||||
+ }
|
||||
+ timeout {
|
||||
+ fail "$test (timeout)"
|
||||
+ return
|
||||
+ }
|
||||
+}
|
||||
+gdb_exit
|
||||
+
|
||||
+# Testcase uses the most simple notification not to get caught by attach on
|
||||
+# exiting the function. Still we could retry the pstack command if we fail.
|
||||
+
|
||||
+set test "spawn pstack"
|
||||
+set command "sh -c GDB=$GDB\\ GDBARGS=-data-directory\\\\\\ $BUILD_DATA_DIRECTORY\\ sh\\ ${srcdir}/../pstack.sh\\ $pid\\;echo\\ GSTACK-END"
|
||||
+set res [remote_spawn host $command];
|
||||
+if { $res < 0 || $res == "" } {
|
||||
+ perror "Spawning $command failed."
|
||||
+ fail $test
|
||||
+}
|
||||
+set pid [exp_pid -i $res]
|
||||
+gdb_test_multiple "" $test {
|
||||
+ -re "^#0 +(0x\[0-9a-f\]+ in )?\\.?func \\(\\) at \[^\r\n\]*\r\n#1 +0x\[0-9a-f\]+ in \\.?main \\(\\) at \[^\r\n\]*\r\nGSTACK-END\r\n\$" {
|
||||
+ pass $test
|
||||
+ }
|
||||
+}
|
||||
+gdb_exit
|
||||
+
|
||||
+remote_exec host "kill -9 $pid"
|
||||
Index: gdb-7.12/gdb/testsuite/gdb.base/pstack.c
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ gdb-7.12/gdb/testsuite/gdb.base/pstack.c 2014-02-06 20:29:09.502214360 +0100
|
||||
@@ -0,0 +1,43 @@
|
||||
+/* This testcase is part of GDB, the GNU debugger.
|
||||
+
|
||||
+ Copyright 2005, 2007, 2008, 2009 Free Software Foundation, Inc.
|
||||
+
|
||||
+ This program is free software; you can redistribute it and/or modify
|
||||
+ it under the terms of the GNU General Public License as published by
|
||||
+ the Free Software Foundation; either version 3 of the License, or
|
||||
+ (at your option) any later version.
|
||||
+
|
||||
+ This program is distributed in the hope that it will be useful,
|
||||
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
+ GNU General Public License for more details.
|
||||
+
|
||||
+ You should have received a copy of the GNU General Public License
|
||||
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
|
||||
+
|
||||
+#include <stdio.h>
|
||||
+#include <unistd.h>
|
||||
+#include <string.h>
|
||||
+
|
||||
+void
|
||||
+func (void)
|
||||
+{
|
||||
+ const char msg[] = "looping\n";
|
||||
+
|
||||
+ /* Use the most simple notification not to get caught by attach on exiting
|
||||
+ the function. */
|
||||
+ write (1, msg, strlen (msg));
|
||||
+
|
||||
+ for (;;);
|
||||
+}
|
||||
+
|
||||
+int
|
||||
+main (void)
|
||||
+{
|
||||
+ alarm (60);
|
||||
+ nice (100);
|
||||
+
|
||||
+ func ();
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
|
|
@ -0,0 +1,58 @@
|
|||
From 8510e0e9287d51eb13f9792559ef9da5c5c6e88b Mon Sep 17 00:00:00 2001
|
||||
From: Vikash Bansal <bvikas@vmware.com>
|
||||
Date: Mon, 5 Oct 2020 19:38:56 +0530
|
||||
Subject: [PATCH] gdb: Stop inaccessible region from getting dumped
|
||||
|
||||
Background : 7.12 onward version of gdb started dumping some
|
||||
inaccessible regions (e.g: alignment gaps) in coredump, which
|
||||
is increasing the size of core file. Bug 2564068 was raised
|
||||
for this issue.
|
||||
|
||||
Fix:
|
||||
If a memory region in smaps file is having anonymous keyword
|
||||
and "read, write and execute" flags are "not set"
|
||||
Then that memory region is inaccessible, so should not be dumped.
|
||||
---
|
||||
gdb/linux-tdep.c | 26 +++++++++++++++++---------
|
||||
1 file changed, 17 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/gdb/linux-tdep.c b/gdb/linux-tdep.c
|
||||
index d06fbc1..d936a63 100644
|
||||
--- a/gdb/linux-tdep.c
|
||||
+++ b/gdb/linux-tdep.c
|
||||
@@ -1537,15 +1537,23 @@ linux_find_memory_regions_full (struct gdbarch *gdbarch,
|
||||
int should_dump_p = 0;
|
||||
|
||||
if (map.has_anonymous)
|
||||
- {
|
||||
- should_dump_p
|
||||
- = should_dump_mapping_p (filterflags, &map.vmflags,
|
||||
- map.priv,
|
||||
- map.mapping_anon_p,
|
||||
- map.mapping_file_p,
|
||||
- map.filename.c_str (),
|
||||
- map.start_address,
|
||||
- map.offset);
|
||||
+ {
|
||||
+ if (map.read == 0 && map.write == 0 && map.exec == 0)
|
||||
+ {
|
||||
+ /* This is an inaccessible region and should not be dumped */
|
||||
+ should_dump_p = 0;
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ should_dump_p
|
||||
+ = should_dump_mapping_p (filterflags, &map.vmflags,
|
||||
+ map.priv,
|
||||
+ map.mapping_anon_p,
|
||||
+ map.mapping_file_p,
|
||||
+ map.filename.c_str (),
|
||||
+ map.start_address,
|
||||
+ map.offset);
|
||||
+ }
|
||||
}
|
||||
else
|
||||
{
|
||||
--
|
||||
2.25.1
|
||||
|
|
@ -1,24 +1,33 @@
|
|||
%global build_minimal_gdb 1
|
||||
|
||||
Summary: C debugger
|
||||
Name: gdb
|
||||
Version: 11.2
|
||||
Release: 1%{?dist}
|
||||
Release: 2%{?dist}
|
||||
License: GPLv2+
|
||||
URL: http://www.gnu.org/software/%{name}
|
||||
Source0: http://ftp.gnu.org/gnu/gdb/%{name}-%{version}.tar.xz
|
||||
%define sha512 gdb=07e9026423438049b11f4f784d57401ece4e940570f613bd6958b3714fe7fbc2c048470bcce3e7d7d9f93331cdf3881d30dcc964cb113a071143a02b28e5b127
|
||||
Group: Development/Tools
|
||||
Vendor: VMware, Inc.
|
||||
Distribution: Photon
|
||||
|
||||
Source0: http://ftp.gnu.org/gnu/gdb/%{name}-%{version}.tar.xz
|
||||
%define sha512 %{name}=07e9026423438049b11f4f784d57401ece4e940570f613bd6958b3714fe7fbc2c048470bcce3e7d7d9f93331cdf3881d30dcc964cb113a071143a02b28e5b127
|
||||
|
||||
Patch0: gdb-7.12-pstack.patch
|
||||
Patch1: gdb-Stop-inaccessible-region-from-getting-dumped.patch
|
||||
|
||||
Requires: expat
|
||||
Requires: ncurses
|
||||
Requires: python3
|
||||
Requires: xz-libs
|
||||
|
||||
BuildRequires: expat-devel
|
||||
BuildRequires: ncurses-devel
|
||||
BuildRequires: python3-devel
|
||||
BuildRequires: python3-libs
|
||||
BuildRequires: xz-devel
|
||||
%if %{with_check}
|
||||
|
||||
%if 0%{?with_check}
|
||||
BuildRequires: dejagnu
|
||||
BuildRequires: systemtap-sdt-devel
|
||||
%endif
|
||||
|
@ -27,47 +36,92 @@ BuildRequires: systemtap-sdt-devel
|
|||
GDB, the GNU Project debugger, allows you to see what is going on
|
||||
`inside' another program while it executes -- or what
|
||||
another program was doing at the moment it crashed.
|
||||
|
||||
%if 0%{?build_minimal_gdb}
|
||||
%package minimal
|
||||
Summary: A GNU source-level debugger for C, C++, Fortran, Go and other languages (minimal version)
|
||||
Conflicts: %{name} < %{version}-%{release}
|
||||
|
||||
%description minimal
|
||||
GDB, the GNU debugger, allows you to debug programs written in C, C++, Java, and other languages,
|
||||
by executing them in a controlled fashion and printing their data.
|
||||
This package provides a minimal version of GDB, tailored to be used by the Photon buildroot.
|
||||
It should probably not be used by end users.
|
||||
%endif
|
||||
|
||||
%prep
|
||||
%autosetup
|
||||
%autosetup -p1
|
||||
|
||||
%build
|
||||
mkdir build && cd build
|
||||
../configure \
|
||||
mkdir -p build && cd build
|
||||
sh ../configure \
|
||||
--host=%{_host} --build=%{_build} \
|
||||
--prefix=%{_prefix} \
|
||||
--with-python=/usr/bin/python3
|
||||
--with-python=%{_bindir}/python3
|
||||
|
||||
make %{?_smp_mflags}
|
||||
|
||||
%if 0%{?build_minimal_gdb}
|
||||
cd ../ && mkdir -p minimal-build && cd minimal-build
|
||||
sh ../configure \
|
||||
--host=%{_host} --build=%{_build} --prefix=%{_prefix} \
|
||||
--without-babeltrace \
|
||||
--without-expat \
|
||||
--disable-tui \
|
||||
--without-python \
|
||||
--without-guile \
|
||||
--disable-inprocess-agent \
|
||||
--without-intel-pt \
|
||||
--disable-unit-tests \
|
||||
--disable-source-highlight
|
||||
|
||||
make %{?_smp_mflags}
|
||||
%endif
|
||||
|
||||
%install
|
||||
cd build && make DESTDIR=%{buildroot} %{?_smp_mflags} install
|
||||
cd build && make DESTDIR=%{buildroot} install %{?_smp_mflags}
|
||||
find %{buildroot} -name '*.la' -delete
|
||||
rm %{buildroot}%{_infodir}/dir
|
||||
rm %{buildroot}%{_libdir}/libctf-nobfd.a
|
||||
rm %{buildroot}%{_libdir}/libctf.a
|
||||
rm %{buildroot}%{_infodir}/dir \
|
||||
%{buildroot}%{_libdir}/libctf-nobfd.a \
|
||||
%{buildroot}%{_libdir}/libctf.a
|
||||
|
||||
# following files conflicts with binutils-2.24-1.x86_64
|
||||
rm %{buildroot}%{_includedir}/ansidecl.h
|
||||
rm %{buildroot}%{_includedir}/bfd.h
|
||||
rm %{buildroot}%{_includedir}/bfdlink.h
|
||||
rm %{buildroot}%{_includedir}/dis-asm.h
|
||||
rm %{buildroot}%{_libdir}/libbfd.a
|
||||
rm %{buildroot}%{_libdir}/libopcodes.a
|
||||
rm %{buildroot}%{_includedir}/ansidecl.h \
|
||||
%{buildroot}%{_includedir}/bfd.h \
|
||||
%{buildroot}%{_includedir}/bfdlink.h \
|
||||
%{buildroot}%{_includedir}/dis-asm.h \
|
||||
%{buildroot}%{_libdir}/libbfd.a \
|
||||
%{buildroot}%{_libdir}/libopcodes.a
|
||||
# following files conflicts with binutils-2.25-1.x86_64
|
||||
rm %{buildroot}%{_datadir}/locale/de/LC_MESSAGES/opcodes.mo
|
||||
rm %{buildroot}%{_datadir}/locale/fi/LC_MESSAGES/bfd.mo
|
||||
rm %{buildroot}%{_datadir}/locale/fi/LC_MESSAGES/opcodes.mo
|
||||
rm %{buildroot}%{_datadir}/locale/de/LC_MESSAGES/opcodes.mo \
|
||||
%{buildroot}%{_datadir}/locale/fi/LC_MESSAGES/bfd.mo \
|
||||
%{buildroot}%{_datadir}/locale/fi/LC_MESSAGES/opcodes.mo
|
||||
|
||||
%if 0%{?build_minimal_gdb}
|
||||
mkdir -p %{buildroot}/minimal-gdb
|
||||
cd ../minimal-build && make DESTDIR=%{buildroot}/minimal-gdb install %{?_smp_mflags}
|
||||
|
||||
rm -rfv %{buildroot}/minimal-gdb%{_prefix}/{include,lib*,share} \
|
||||
%{buildroot}/minimal-gdb%{_bindir}/{gcore,gdbserver,gstack,gdb-add-index,pstack,run}
|
||||
|
||||
mv %{buildroot}/minimal-gdb%{_bindir}/gdb %{buildroot}%{_bindir}/gdb.minimal
|
||||
%endif
|
||||
|
||||
%ifarch aarch64
|
||||
rm %{buildroot}%{_libdir}/libaarch64-unknown-linux-gnu-sim.a
|
||||
%endif
|
||||
|
||||
%find_lang %{name} --all-name ../%{name}.lang
|
||||
|
||||
%check
|
||||
%if 0%{?with_check}
|
||||
# disable security hardening for tests
|
||||
rm -f $(dirname $(gcc -print-libgcc-file-name))/../specs
|
||||
# fix typo in test
|
||||
sed -i 's/hex in)/hex in )/g' gdb/testsuite/gdb.arch/i386-signal.exp
|
||||
# ignore exit code and check for expected number of failures
|
||||
make %{?_smp_mflags} check || tail gdb/testsuite/gdb.sum | grep "# of unexpected failures.*1219\|# of unexpected failures.*1220"
|
||||
%endif
|
||||
|
||||
%files -f %{name}.lang
|
||||
%defattr(-,root,root)
|
||||
|
@ -83,42 +137,51 @@ make %{?_smp_mflags} check || tail gdb/testsuite/gdb.sum | grep "# of unexpecte
|
|||
%{_bindir}/*
|
||||
%{_mandir}/*/*
|
||||
|
||||
%if 0%{?build_minimal_gdb}
|
||||
%files minimal
|
||||
%defattr(-,root,root)
|
||||
%{_bindir}/gdb.minimal
|
||||
%{_bindir}/gdb-add-index
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Mon Apr 18 2022 Gerrit Photon <photon-checkins@vmware.com> 11.2-1
|
||||
- Automatic Version Bump
|
||||
* Mon May 03 2021 Gerrit Photon <photon-checkins@vmware.com> 10.2-1
|
||||
- Automatic Version Bump
|
||||
* Thu Jan 07 2021 Tapas Kundu <tkundu@vmware.com> 10.1-1
|
||||
- Update to version 10.1
|
||||
* Tue Jan 05 2021 Tapas Kundu <tkundu@vmware.com> 9.2-3
|
||||
- Fix compatibility with python 3.9
|
||||
* Mon Oct 05 2020 Vikash Bansal <bvikas@vmware.com> 9.2-2
|
||||
- Stop inaccessible region from getting dumped into coredump
|
||||
* Mon Aug 24 2020 Keerthana K <keerthanak@vmware.com> 9.2-1
|
||||
- Update to version 9.2
|
||||
* Mon Jul 22 2019 Alexey Makhalov <amakhalov@vmware.com> 8.2-2
|
||||
- Cross compilation support
|
||||
* Fri Sep 14 2018 Keerthana K <keerthanak@vmware.com> 8.2-1
|
||||
- Update to version 8.2
|
||||
* Thu Dec 07 2017 Alexey Makhalov <amakhalov@vmware.com> 7.12.1-8
|
||||
- Enable LZMA support
|
||||
* Tue Nov 14 2017 Alexey Makhalov <amakhalov@vmware.com> 7.12.1-7
|
||||
- Aarch64 support
|
||||
* Mon Sep 11 2017 Rui Gu <ruig@vmware.com> 7.12.1-6
|
||||
- Enable make check in docker with part of checks disabled
|
||||
* Thu Aug 10 2017 Alexey Makhalov <amakhalov@vmware.com> 7.12.1-5
|
||||
- Make check improvements
|
||||
* Fri Jul 21 2017 Rui Gu <ruig@vmware.com> 7.12.1-4
|
||||
- Add pstack wrapper which will invoke gdb.
|
||||
* Wed Jul 12 2017 Alexey Makhalov <amakhalov@vmware.com> 7.12.1-3
|
||||
- Get tcl, expect and dejagnu from packages
|
||||
* Thu May 18 2017 Xiaolin Li <xiaolinl@vmware.com> 7.12.1-2
|
||||
- Build gdb with python3.
|
||||
* Wed Mar 22 2017 Alexey Makhalov <amakhalov@vmware.com> 7.12.1-1
|
||||
- Version update
|
||||
* Tue May 24 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 7.8.2-3
|
||||
- GA - Bump release of all rpms
|
||||
* Tue Nov 10 2015 Xiaolin Li <xiaolinl@vmware.com> 7.8.2-2
|
||||
- Handled locale files with macro find_lang
|
||||
* Wed Apr 08 2015 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 7.8.2-1
|
||||
- Initial build. First version
|
||||
* Sun May 29 2022 Shreenidhi Shedi <sshedi@vmware.com> 11.2-2
|
||||
- Add gdb-minimal sub package
|
||||
* Mon Apr 18 2022 Gerrit Photon <photon-checkins@vmware.com> 11.2-1
|
||||
- Automatic Version Bump
|
||||
* Mon May 03 2021 Gerrit Photon <photon-checkins@vmware.com> 10.2-1
|
||||
- Automatic Version Bump
|
||||
* Thu Jan 07 2021 Tapas Kundu <tkundu@vmware.com> 10.1-1
|
||||
- Update to version 10.1
|
||||
* Tue Jan 05 2021 Tapas Kundu <tkundu@vmware.com> 9.2-3
|
||||
- Fix compatibility with python 3.9
|
||||
* Mon Oct 05 2020 Vikash Bansal <bvikas@vmware.com> 9.2-2
|
||||
- Stop inaccessible region from getting dumped into coredump
|
||||
* Mon Aug 24 2020 Keerthana K <keerthanak@vmware.com> 9.2-1
|
||||
- Update to version 9.2
|
||||
* Mon Jul 22 2019 Alexey Makhalov <amakhalov@vmware.com> 8.2-2
|
||||
- Cross compilation support
|
||||
* Fri Sep 14 2018 Keerthana K <keerthanak@vmware.com> 8.2-1
|
||||
- Update to version 8.2
|
||||
* Thu Dec 07 2017 Alexey Makhalov <amakhalov@vmware.com> 7.12.1-8
|
||||
- Enable LZMA support
|
||||
* Tue Nov 14 2017 Alexey Makhalov <amakhalov@vmware.com> 7.12.1-7
|
||||
- Aarch64 support
|
||||
* Mon Sep 11 2017 Rui Gu <ruig@vmware.com> 7.12.1-6
|
||||
- Enable make check in docker with part of checks disabled
|
||||
* Thu Aug 10 2017 Alexey Makhalov <amakhalov@vmware.com> 7.12.1-5
|
||||
- Make check improvements
|
||||
* Fri Jul 21 2017 Rui Gu <ruig@vmware.com> 7.12.1-4
|
||||
- Add pstack wrapper which will invoke gdb.
|
||||
* Wed Jul 12 2017 Alexey Makhalov <amakhalov@vmware.com> 7.12.1-3
|
||||
- Get tcl, expect and dejagnu from packages
|
||||
* Thu May 18 2017 Xiaolin Li <xiaolinl@vmware.com> 7.12.1-2
|
||||
- Build gdb with python3.
|
||||
* Wed Mar 22 2017 Alexey Makhalov <amakhalov@vmware.com> 7.12.1-1
|
||||
- Version update
|
||||
* Tue May 24 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 7.8.2-3
|
||||
- GA - Bump release of all rpms
|
||||
* Tue Nov 10 2015 Xiaolin Li <xiaolinl@vmware.com> 7.8.2-2
|
||||
- Handled locale files with macro find_lang
|
||||
* Wed Apr 08 2015 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 7.8.2-1
|
||||
- Initial build. First version
|
||||
|
|
|
@ -59,7 +59,7 @@ developing applications that use gnutls.
|
|||
%make_build %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
%make_install %{?smp_mflags}
|
||||
%make_install %{?_smp_mflags}
|
||||
|
||||
rm %{buildroot}%{_infodir}/*
|
||||
find %{buildroot}%{_libdir} -name '*.la' -delete
|
||||
|
|
|
@ -0,0 +1,51 @@
|
|||
Name: help2man
|
||||
Summary: Create simple man pages from --help output
|
||||
Version: 1.48.5
|
||||
Release: 1%{?dist}
|
||||
License: GPLv3+
|
||||
URL: https://www.gnu.org/software/help2man
|
||||
Group: System Environment/Base
|
||||
Vendor: VMware, Inc.
|
||||
Distribution: Photon
|
||||
|
||||
Source: https://ftp.gnu.org/gnu/help2man/%{name}-%{version}.tar.xz
|
||||
%define sha512 %{name}=800eb0daa9daef8e423d52ede55eee2960122ea0269865295afada4cf4fcc1c6791da8429c3a57c0fc1bf0a14c8a77953952325413a8faa5dd07b1bc5bc0edd1
|
||||
|
||||
BuildRequires: gcc
|
||||
BuildRequires: make
|
||||
BuildRequires: perl
|
||||
|
||||
BuildArch: noarch
|
||||
|
||||
%description
|
||||
help2man is a script to create simple man pages from the --help and
|
||||
--version output of programs.
|
||||
|
||||
Since most GNU documentation is now in info format, this provides a
|
||||
way to generate a placeholder man page pointing to that resource while
|
||||
still providing some useful information.
|
||||
|
||||
%prep
|
||||
%autosetup -p1 -n %{name}-%{version}
|
||||
|
||||
%build
|
||||
%configure
|
||||
%make_build %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
make install_l10n DESTDIR=%{buildroot} %{?_smp_mflags}
|
||||
%{make_install} %{?_smp_mflags}
|
||||
|
||||
%find_lang %name --with-man
|
||||
|
||||
%files -f %name.lang
|
||||
%defattr(-,root,root)
|
||||
%doc README NEWS THANKS
|
||||
%license COPYING
|
||||
%{_bindir}/help2man
|
||||
%{_infodir}/*
|
||||
%{_mandir}/man1/*
|
||||
|
||||
%changelog
|
||||
* Fri Dec 10 2021 Shreenidhi Shedi <sshedi@vmware.com> 1.48.5-1
|
||||
- Intial version. Needed for rpm-4.17.0
|
|
@ -1,17 +1,20 @@
|
|||
Summary: Basic and advanced IPV4-based networking
|
||||
Name: iproute2
|
||||
Version: 5.12.0
|
||||
Release: 2%{?dist}
|
||||
Release: 3%{?dist}
|
||||
License: GPLv2+
|
||||
URL: http://www.kernel.org/pub/linux/utils/net/iproute2
|
||||
Group: Applications/System
|
||||
Vendor: VMware, Inc.
|
||||
Distribution: Photon
|
||||
|
||||
Source0: http://www.kernel.org/pub/linux/utils/net/iproute2/%{name}-%{version}.tar.xz
|
||||
%define sha1 iproute2=4e18c1d72a29f41a5968ac8a9b266470f6ad89a7
|
||||
Provides: iproute
|
||||
%define sha512 %{name}=9249beb67b30ceef178b60b2b61a5e6c45277e747ae4c865e739b7ab84192549e8e94ebaee43c0a87c0291037746ffb6936346245220786e369201ee13d60fac
|
||||
|
||||
Patch0: replace_killall_by_pkill.patch
|
||||
|
||||
Provides: iproute
|
||||
|
||||
%description
|
||||
The IPRoute2 package contains programs for basic and advanced
|
||||
IPV4-based networking.
|
||||
|
@ -32,32 +35,34 @@ sed -i 's/arpd.8//' man/man8/Makefile
|
|||
sed -i 's/m_ipt.o//' tc/Makefile
|
||||
|
||||
%build
|
||||
make CC=%{_host}-gcc VERBOSE=1 %{?_smp_mflags} DESTDIR= LIBDIR=%{_libdir}
|
||||
%configure
|
||||
%make_build %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
make DESTDIR=%{buildroot} \
|
||||
MANDIR=%{_mandir} \
|
||||
LIBDIR=%{_libdir} \
|
||||
DOCDIR=%{_defaultdocdir}/%{name}-%{version} install
|
||||
export SBINDIR='%{_sbindir}'
|
||||
export LIBDIR='%{_libdir}'
|
||||
%make_install %{?_smp_mflags}
|
||||
|
||||
%check
|
||||
%if 0%{?with_check}
|
||||
cd testsuite
|
||||
# Fix linking issue in testsuite
|
||||
sed -i 's/<libnetlink.h>/\"..\/..\/include\/libnetlink.h\"/g' tools/generate_nlmsg.c
|
||||
sed -i 's/\"libnetlink.h\"/"..\/include\/libnetlink.h\"/g' ../lib/libnetlink.c
|
||||
cd tools
|
||||
make
|
||||
make %{?_smp_mflags}
|
||||
cd ..
|
||||
make
|
||||
make alltests
|
||||
make %{?_smp_mflags}
|
||||
make alltests %{?_smp_mflags}
|
||||
cd ..
|
||||
%endif
|
||||
|
||||
%ldconfig_scriptlets
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%{_sysconfdir}/%{name}/*
|
||||
/sbin/*
|
||||
%{_sbindir}/*
|
||||
%{_libdir}/tc/*
|
||||
%{_mandir}/man7/*
|
||||
%{_mandir}/man8/*
|
||||
|
@ -70,7 +75,9 @@ cd ..
|
|||
%{_mandir}/man3/*
|
||||
|
||||
%changelog
|
||||
* Mon Aug 02 2021 Susant Sahani <ssahani@vmware.com> 5.12.0-1
|
||||
* Sat Feb 12 2022 Shreenidhi Shedi <sshedi@vmware.com> 5.12.0-3
|
||||
- Drop libdb support
|
||||
* Mon Aug 02 2021 Susant Sahani <ssahani@vmware.com> 5.12.0-2
|
||||
- Use autosetup and ldconfig scriptlets
|
||||
* Mon May 03 2021 Gerrit Photon <photon-checkins@vmware.com> 5.12.0-1
|
||||
- Automatic Version Bump
|
||||
|
|
|
@ -7,8 +7,9 @@ Vendor: VMware, Inc.
|
|||
Distribution: Photon
|
||||
License: GPL-2.1 OR BSD-2-Clause
|
||||
URL: https://github.com/libbpf/libbpf
|
||||
Source: libbpf-%{version}.tar.gz
|
||||
%define sha1 libbpf=ae84df3705c3d20464e4d257c2182680e4eb0afa
|
||||
|
||||
Source0: https://github.com/libbpf/libbpf/archive/refs/tags/libbpf-%{version}.tar.gz
|
||||
%define sha512 %{name}=5a8ca70c571fb306dd280f0526db48b78b13b57b4012f7bd3933d6e07d5e41e9370b2db6ed9bbc283c6dcbb21036810bf3093f462906b66557ce0d850c89083a
|
||||
|
||||
BuildRequires: elfutils-libelf-devel
|
||||
BuildRequires: elfutils-devel
|
||||
|
@ -28,31 +29,31 @@ The libbpf-devel package contains libraries header files for
|
|||
developing applications that use libbpf.
|
||||
|
||||
%prep
|
||||
%autosetup
|
||||
%autosetup -p1
|
||||
|
||||
%build
|
||||
%make_build -C ./src DESTDIR=%{buildroot} OBJDIR=%{_builddir} LIBDIR=%{_libdir}
|
||||
%make_build -C ./src DESTDIR=%{buildroot} OBJDIR=%{_builddir} LIBDIR=%{_libdir} %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
%make_install -C ./src DESTDIR=%{buildroot} OBJDIR=%{_builddir} LIBDIR=%{_libdir}
|
||||
%make_install -C ./src DESTDIR=%{buildroot} OBJDIR=%{_builddir} LIBDIR=%{_libdir} %{?_smp_mflags}
|
||||
|
||||
%clean
|
||||
rm -rf %{buildroot}
|
||||
|
||||
%files
|
||||
%attr(0755,-,-) %{_libdir}/libbpf.so.0.6.0
|
||||
%attr(0755,-,-) %{_libdir}/libbpf.so.*
|
||||
%{_libdir}/libbpf.so.0
|
||||
%{_libdir}/libbpf.so
|
||||
|
||||
%files devel
|
||||
%attr(0644,-,-) /usr/include/bpf/*
|
||||
%attr(0644,-,-) %{_includedir}/bpf/*
|
||||
%attr(0644,-,-) %{_libdir}/libbpf.a
|
||||
%attr(0644,-,-) %{_libdir}/pkgconfig/libbpf.pc
|
||||
|
||||
%changelog
|
||||
* Mon Feb 21 2022 Mukul Sikka <msikka@vmware.com> 0.6.1-2
|
||||
* Mon Feb 21 2022 Mukul Sikka <msikka@vmware.com> 0.6.1-2
|
||||
- Fix build error in aarch64 platform
|
||||
* Wed Jan 12 2022 Susant Sahani <ssahani@vmware.com> 0.6.1-1
|
||||
* Wed Jan 12 2022 Susant Sahani <ssahani@vmware.com> 0.6.1-1
|
||||
- Version Bump
|
||||
* Thu Apr 29 2021 Gerrit Photon <photon-checkins@vmware.com> 0.3-1
|
||||
- Automatic Version Bump
|
||||
|
|
|
@ -1,72 +0,0 @@
|
|||
Summary: The Berkley DB database library for C
|
||||
Name: libdb
|
||||
Version: 5.3.28
|
||||
Release: 2%{?dist}
|
||||
License: BSD and LGPLv2 and Sleepycat
|
||||
URL: https://oss.oracle.com/berkeley-db.html
|
||||
Source0: http://download.oracle.com/berkeley-db/db-%{version}.tar.gz
|
||||
%define sha1 db=fa3f8a41ad5101f43d08bc0efb6241c9b6fc1ae9
|
||||
Group: System/Libraries
|
||||
Vendor: VMware, Inc.
|
||||
Distribution: Photon
|
||||
Obsoletes: db
|
||||
%description
|
||||
The Berkeley DB package contains libraries used by many other applications for database related functions.
|
||||
|
||||
%package devel
|
||||
Summary: Header and development files
|
||||
Requires: %{name} = %{version}
|
||||
Obsoletes: db-devel
|
||||
%description devel
|
||||
It contains the libraries and header files to create applications
|
||||
|
||||
%package docs
|
||||
Summary: DB docs
|
||||
Group: Databases
|
||||
Obsoletes: db-docs
|
||||
%description docs
|
||||
The package contains the DB doc files
|
||||
|
||||
%prep
|
||||
%setup -q -n db-%{version}
|
||||
%build
|
||||
cd build_unix
|
||||
../dist/configure \
|
||||
--host=%{_host} --build=%{_build} \
|
||||
--prefix=%{_prefix} \
|
||||
--enable-compat185 \
|
||||
--enable-dbm \
|
||||
--disable-static
|
||||
make %{?_smp_mflags}
|
||||
%install
|
||||
pushd build_unix
|
||||
make DESTDIR=%{buildroot} docdir=%{_docdir}/%{name}-%{version} install
|
||||
popd
|
||||
find %{buildroot} -name '*.la' -delete
|
||||
install -v -d -m755 %{buildroot}/%{_datadir}/licenses/
|
||||
install -D -m755 LICENSE %{buildroot}/%{_datadir}/licenses/LICENSE
|
||||
install -D -m755 README %{buildroot}/%{_datadir}/licenses/README
|
||||
|
||||
%clean
|
||||
rm -rf %{buildroot}
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%exclude %{_bindir}/*
|
||||
%{_libdir}/*.so
|
||||
%{_datadir}/licenses/*
|
||||
|
||||
%files docs
|
||||
%defattr(-,root,root)
|
||||
%{_docdir}/%{name}-%{version}/*
|
||||
|
||||
%files devel
|
||||
%defattr(-,root,root)
|
||||
%exclude %{_includedir}/db_cxx.h
|
||||
%{_includedir}/*
|
||||
|
||||
%changelog
|
||||
* Tue Nov 14 2017 Alexey Makhalov <amakhalov@vmware.com> 5.3.28-2
|
||||
- Aarch64 support
|
||||
* Thu Oct 27 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 5.3.28-1
|
||||
- Initial build. First version
|
|
@ -1,7 +1,7 @@
|
|||
Summary: A free package dependency solver
|
||||
Name: libsolv
|
||||
Version: 0.7.19
|
||||
Release: 4%{?dist}
|
||||
Version: 0.7.20
|
||||
Release: 1%{?dist}
|
||||
License: BSD
|
||||
URL: https://github.com/openSUSE/libsolv
|
||||
Group: Development/Tools
|
||||
|
@ -9,14 +9,12 @@ Vendor: VMware, Inc.
|
|||
Distribution: Photon
|
||||
|
||||
Source0: https://github.com/openSUSE/libsolv/archive/%{name}-%{version}.tar.gz
|
||||
%define sha512 %{name}=dfcebea314d549a15bf5af19db775ff1b1850bfc6fb147b68fe094e43bf1541fcfe22d2f6c6607a6393e01905a086cea606d0b25da2e3ce376d100c4ef4fee00
|
||||
%define sha512 %{name}=be810a78543509c60fe9be9310cc84b6c75e671b77929a1f914f51d4b3b2364e68398794d4648da46691cde7e5aab3cf57d18969c31f1003692080dc1982e955
|
||||
|
||||
Requires: rpm-libs >= 4.16.1.3
|
||||
Requires: libdb
|
||||
Requires: expat-libs
|
||||
Requires: zlib
|
||||
|
||||
BuildRequires: libdb-devel
|
||||
BuildRequires: cmake
|
||||
BuildRequires: rpm-devel >= 4.16.1.3
|
||||
BuildRequires: expat-devel
|
||||
|
@ -57,6 +55,7 @@ find %{buildroot} -name '*.la' -delete
|
|||
|
||||
%if 0%{?with_check}
|
||||
%check
|
||||
cd %{__cmake_builddir}
|
||||
make %{?_smp_mflags} test
|
||||
%endif
|
||||
|
||||
|
@ -77,6 +76,8 @@ make %{?_smp_mflags} test
|
|||
%{_mandir}/man3/*
|
||||
|
||||
%changelog
|
||||
* Wed Jul 20 2022 Shreenidhi Shedi <sshedi@vmware.com> 0.7.20-1
|
||||
- Upgrade to v0.7.20
|
||||
* Mon Jun 20 2022 Shreenidhi Shedi <sshedi@vmware.com> 0.7.19-4
|
||||
- Use cmake macros for build
|
||||
* Wed Dec 1 2021 Oliver Kurth <okurth@vmware.com> 0.7.19-3
|
||||
|
|
|
@ -1,19 +1,23 @@
|
|||
Summary: Libxslt
|
||||
Name: libxslt
|
||||
Version: 1.1.35
|
||||
Release: 1%{?dist}
|
||||
Release: 2%{?dist}
|
||||
License: MIT
|
||||
URL: http:/http://xmlsoft.org/libxslt/
|
||||
URL: http://http://xmlsoft.org/libxslt
|
||||
Group: System Environment/General Libraries
|
||||
Vendor: VMware, Inc.
|
||||
Distribution: Photon
|
||||
|
||||
Source0: https://download.gnome.org/sources/%{name}/1.1/%{name}-%{version}.tar.xz
|
||||
%define sha512 libxslt=9dd4a699235f50ae9b75b25137e387471635b4b2da0a4e4380879cd49f1513470fcfbfd775269b066eac513a1ffa6860c77ec42747168e2348248f09f60c8c96
|
||||
%define sha512 %{name}=9dd4a699235f50ae9b75b25137e387471635b4b2da0a4e4380879cd49f1513470fcfbfd775269b066eac513a1ffa6860c77ec42747168e2348248f09f60c8c96
|
||||
|
||||
Requires: libxml2-devel
|
||||
Requires: libgcrypt
|
||||
|
||||
BuildRequires: libxml2-devel
|
||||
BuildRequires: libgcrypt-devel
|
||||
BuildRequires: libgpg-error-devel
|
||||
|
||||
%description
|
||||
The libxslt package contains XSLT libraries used for extending libxml2 libraries to support XSLT files.
|
||||
|
||||
|
@ -33,20 +37,25 @@ sed -i 's/int xsltMaxDepth = 3000/int xsltMaxDepth = 5000/g' libxslt/transform.c
|
|||
$(test %{_host} != %{_build} && echo "--with-sysroot=/target-%{_arch}") \
|
||||
--disable-static \
|
||||
--without-python
|
||||
make %{?_smp_mflags}
|
||||
|
||||
%make_build
|
||||
|
||||
%install
|
||||
[ %{buildroot} != "/" ] && rm -rf %{buildroot}/*
|
||||
make DESTDIR=%{buildroot} install %{?_smp_mflags}
|
||||
%make_install %{?_smp_mflags}
|
||||
find %{buildroot} -name '*.la' -delete
|
||||
%{_fixperms} %{buildroot}/*
|
||||
|
||||
%if 0%{?with_check}
|
||||
%check
|
||||
make %{?_smp_mflags} check
|
||||
%endif
|
||||
|
||||
%post -p /sbin/ldconfig
|
||||
%post -p /sbin/ldconfig
|
||||
%postun -p /sbin/ldconfig
|
||||
|
||||
%clean
|
||||
rm -rf %{buildroot}/*
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%{_libdir}/*.so.*
|
||||
|
@ -67,39 +76,41 @@ rm -rf %{buildroot}/*
|
|||
%{_datadir}/gtk-doc/*
|
||||
|
||||
%changelog
|
||||
* Mon Jun 20 2022 Ashwin Dayanand Kamat <kashwindayan@vmware.com> 1.1.35-1
|
||||
- Update to version 1.1.35
|
||||
* Wed Nov 17 2021 Nitesh Kumar <kunitesh@vmware.com> 1.1.34-4
|
||||
- Release bump up to use libxml2 2.9.12-1.
|
||||
* Fri Feb 19 2021 Shreyas B. <shreyasb@vmware.com> 1.1.34-3
|
||||
- Increase the maximum number of nested template calls for xml.
|
||||
* Fri Dec 18 2020 Shreenidhi Shedi <sshedi@vmware.com> 1.1.34-2
|
||||
- Fix build with new rpm
|
||||
* Wed Jul 08 2020 Gerrit Photon <photon-checkins@vmware.com> 1.1.34-1
|
||||
- Automatic Version Bump
|
||||
* Tue Dec 17 2019 Shreyas B. <shreyasb@vmware.com> 1.1.32-3
|
||||
- Apply patch for CVE-2019-5815: READ heap-buffer-overflow in libxslt.
|
||||
- Apply patch for CVE-2019-18197
|
||||
- Apply patch for CVE-2019-13118
|
||||
- Apply patch for CVE-2019-13117
|
||||
- Apply patch for CVE-2019-11068
|
||||
* Thu Nov 15 2018 Alexey Makhalov <amakhalov@vmware.com> 1.1.32-2
|
||||
- Cross compilation support
|
||||
* Wed Sep 12 2018 Keerthana K <keerthanak@vmware.com> 1.1.32-1
|
||||
- Update to version 1.1.32.
|
||||
* Tue Jul 11 2017 Divya Thaluru <dthaluru@vmware.com> 1.1.29-4
|
||||
- Applied patches for CVE-2015-9019 and CVE-2017-5029.
|
||||
* Tue May 23 2017 Kumar Kaushik <kaushikk@vmware.com> 1.1.29-3
|
||||
- Build does not requires python.
|
||||
* Wed Dec 07 2016 Xiaolin Li <xiaolinl@vmware.com> 1.1.29-2
|
||||
- Moved man3 to devel subpackage.
|
||||
* Fri Oct 21 2016 Vinay Kulkarni <kulkarniv@vmware.com> 1.1.29-1
|
||||
- Fix CVEs 2016-1683, 2016-1684, 2015-7995 with version 1.1.29
|
||||
* Mon Oct 03 2016 Chang Lee <changlee@vmware.com> 1.1.28-4
|
||||
- Modified check
|
||||
* Tue May 24 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 1.1.28-3
|
||||
- GA - Bump release of all rpms
|
||||
* Tue Jan 19 2016 Xiaolin Li <xiaolinl@vmware.com> 1.1.28-2
|
||||
- Add a dev subpackage.
|
||||
* Mon Oct 13 2014 Divya Thaluru <dthaluru@vmware.com> 1.1.28-1
|
||||
- Initial build. First version
|
||||
* Sun Jul 03 2022 Shreenidhi Shedi <sshedi@vmware.com> 1.1.35-2
|
||||
- Add libgpg-error-devel to BuildRequires
|
||||
* Mon Jun 20 2022 Ashwin Dayanand Kamat <kashwindayan@vmware.com> 1.1.35-1
|
||||
- Update to version 1.1.35
|
||||
* Wed Nov 17 2021 Nitesh Kumar <kunitesh@vmware.com> 1.1.34-4
|
||||
- Release bump up to use libxml2 2.9.12-1.
|
||||
* Fri Feb 19 2021 Shreyas B. <shreyasb@vmware.com> 1.1.34-3
|
||||
- Increase the maximum number of nested template calls for xml.
|
||||
* Fri Dec 18 2020 Shreenidhi Shedi <sshedi@vmware.com> 1.1.34-2
|
||||
- Fix build with new rpm
|
||||
* Wed Jul 08 2020 Gerrit Photon <photon-checkins@vmware.com> 1.1.34-1
|
||||
- Automatic Version Bump
|
||||
* Tue Dec 17 2019 Shreyas B. <shreyasb@vmware.com> 1.1.32-3
|
||||
- Apply patch for CVE-2019-5815: READ heap-buffer-overflow in libxslt.
|
||||
- Apply patch for CVE-2019-18197
|
||||
- Apply patch for CVE-2019-13118
|
||||
- Apply patch for CVE-2019-13117
|
||||
- Apply patch for CVE-2019-11068
|
||||
* Thu Nov 15 2018 Alexey Makhalov <amakhalov@vmware.com> 1.1.32-2
|
||||
- Cross compilation support
|
||||
* Wed Sep 12 2018 Keerthana K <keerthanak@vmware.com> 1.1.32-1
|
||||
- Update to version 1.1.32.
|
||||
* Tue Jul 11 2017 Divya Thaluru <dthaluru@vmware.com> 1.1.29-4
|
||||
- Applied patches for CVE-2015-9019 and CVE-2017-5029.
|
||||
* Tue May 23 2017 Kumar Kaushik <kaushikk@vmware.com> 1.1.29-3
|
||||
- Build does not requires python.
|
||||
* Wed Dec 07 2016 Xiaolin Li <xiaolinl@vmware.com> 1.1.29-2
|
||||
- Moved man3 to devel subpackage.
|
||||
* Fri Oct 21 2016 Vinay Kulkarni <kulkarniv@vmware.com> 1.1.29-1
|
||||
- Fix CVEs 2016-1683, 2016-1684, 2015-7995 with version 1.1.29
|
||||
* Mon Oct 03 2016 Chang Lee <changlee@vmware.com> 1.1.28-4
|
||||
- Modified check
|
||||
* Tue May 24 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 1.1.28-3
|
||||
- GA - Bump release of all rpms
|
||||
* Tue Jan 19 2016 Xiaolin Li <xiaolinl@vmware.com> 1.1.28-2
|
||||
- Add a dev subpackage.
|
||||
* Mon Oct 13 2014 Divya Thaluru <dthaluru@vmware.com> 1.1.28-1
|
||||
- Initial build. First version
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
Summary: Open Source Security Compliance Solution
|
||||
Name: openscap
|
||||
Version: 1.3.6
|
||||
Release: 4%{?dist}
|
||||
Release: 5%{?dist}
|
||||
License: GPL2+
|
||||
URL: https://www.open-scap.org
|
||||
Group: System Environment/Libraries
|
||||
|
@ -111,6 +111,8 @@ ctest -V %{?_smp_mflags}
|
|||
%{_libdir}/python3.9/*
|
||||
|
||||
%changelog
|
||||
* Sun Jul 03 2022 Shreenidhi Shedi <sshedi@vmware.com> 1.3.6-5
|
||||
- Bump version as a part of rpm upgrade
|
||||
* Wed Jun 22 2022 Shreenidhi Shedi <sshedi@vmware.com> 1.3.6-4
|
||||
- Exclude debug symbols properly
|
||||
* Fri Jun 17 2022 Shreenidhi Shedi <sshedi@vmware.com> 1.3.6-3
|
||||
|
|
|
@ -0,0 +1,58 @@
|
|||
%global debug_package %{nil}
|
||||
|
||||
Summary: Conversion between markup formats
|
||||
Name: pandoc-bin
|
||||
Version: 2.17.1.1
|
||||
Release: 1%{?dist}
|
||||
License: GPLv2+
|
||||
URL: https://github.com/jgm/pandoc
|
||||
Group: Development/Tools
|
||||
Vendor: VMware, Inc.
|
||||
Distribution: Photon
|
||||
|
||||
# To package the source:
|
||||
# -> Goto https://github.com/jgm/pandoc/releases/
|
||||
# -> Get the desired version tar archives for amd64 & aarch64
|
||||
# -> Unpack them and put them in a single tar archive
|
||||
# Example: for v2.17.1.1
|
||||
# mkdir -p pandoc-2.17.1.1 && cd pandoc-2.17.1.1
|
||||
# Download amd64 & aarch64 tar archives
|
||||
# tar xf pandoc-2.17.1.1-linux-arm64.tar.gz && mv pandoc-2.17.1.1 aarch64
|
||||
# tar xf pandoc-2.17.1.1-linux-amd64.tar.gz && mv pandoc-2.17.1.1 amd64
|
||||
# cd .. && tar cJf pandoc-2.17.1.1.tar.xz pandoc-2.17.1.1
|
||||
Source0: pandoc-%{version}.tar.xz
|
||||
%define sha512 pandoc=e27e93138c3b6258a4849df23d8c0c6439e8efd26166922300ff5401f5bf68d481e6bba452c51ca24c8dbbce5894c23bde9aeef9db571078454e8caf07d3becc
|
||||
|
||||
%description
|
||||
Pandoc - executable only, without Haskell depends/makedepends
|
||||
|
||||
%package devel
|
||||
Summary: Pandoc man pages
|
||||
|
||||
%description devel
|
||||
Contains Pandoc man pages
|
||||
|
||||
%prep
|
||||
|
||||
%autosetup -p1 -n pandoc-%{version}
|
||||
|
||||
%build
|
||||
|
||||
%install
|
||||
mkdir -p %{buildroot}%{_mandir} %{buildroot}%{_bindir}
|
||||
pushd "%{_arch}"
|
||||
mv share/man/* %{buildroot}%{_mandir}
|
||||
mv bin/pandoc %{buildroot}%{_bindir}
|
||||
popd
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%{_bindir}/pandoc
|
||||
|
||||
%files devel
|
||||
%defattr(-,root,root)
|
||||
%{_mandir}/*
|
||||
|
||||
%changelog
|
||||
* Sun Dec 26 2021 Shreenidhi Shedi <sshedi@vmware.com> 2.17.1.1-1
|
||||
- Initial version, needed for rpm-4.17.0
|
|
@ -0,0 +1,37 @@
|
|||
From 6fd680c293747ff085b00f971f2fbf037c6c3a1f Mon Sep 17 00:00:00 2001
|
||||
From: Shreenidhi Shedi <sshedi@vmware.com>
|
||||
Date: Wed, 9 Feb 2022 23:35:52 +0530
|
||||
Subject: [PATCH] Remove libdb support
|
||||
|
||||
Signed-off-by: Shreenidhi Shedi <sshedi@vmware.com>
|
||||
---
|
||||
Configure | 13 +++++++------
|
||||
1 file changed, 7 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/Configure b/Configure
|
||||
index 684a9c0..9599af2 100755
|
||||
--- a/Configure
|
||||
+++ b/Configure
|
||||
@@ -20147,12 +20147,13 @@ int main(int argc, char *argv[])
|
||||
EOCP
|
||||
set try
|
||||
if eval $compile_ok && $run ./try; then
|
||||
- echo 'Looks OK.' >&4
|
||||
- set `$run ./try 1`
|
||||
- db_version_major=$1
|
||||
- db_version_minor=$2
|
||||
- db_version_patch=$3
|
||||
- else
|
||||
+ if false; then
|
||||
+ echo 'Looks OK.' >&4
|
||||
+ set `$run ./try 1`
|
||||
+ db_version_major=$1
|
||||
+ db_version_minor=$2
|
||||
+ db_version_patch=$3
|
||||
+ fi
|
||||
echo "I can't use Berkeley DB with your <db.h>. I'll disable Berkeley DB." >&4
|
||||
i_db=$undef
|
||||
case " $libs " in
|
||||
--
|
||||
2.25.1
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
From 96c83ed78aeea1a0496dd2b2d935869a822dc8a5 Mon Sep 17 00:00:00 2001
|
||||
From: Karl Williamson <khw@cpan.org>
|
||||
Date: Wed, 21 Jun 2017 11:33:37 -0600
|
||||
Subject: [PATCH] regcomp [perl #131582]
|
||||
|
||||
---
|
||||
regcomp.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/regcomp.c b/regcomp.c
|
||||
index 800b8cdc5e..a489cdecf7 100644
|
||||
--- a/regcomp.c
|
||||
+++ b/regcomp.c
|
||||
@@ -13318,6 +13318,7 @@ S_regatom(pTHX_ RExC_state_t *pRExC_state, I32 *flagp, U32 depth)
|
||||
goto loopdone;
|
||||
}
|
||||
p = RExC_parse;
|
||||
+ RExC_parse = parse_start;
|
||||
if (ender > 0xff) {
|
||||
REQUIRE_UTF8(flagp);
|
||||
}
|
||||
--
|
||||
2.14.2-920-gcf0c679
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
diff -dupr a/regcomp.c b/regcomp.c
|
||||
--- a/regcomp.c 2016-07-14 12:08:08.000000000 -0700
|
||||
+++ b/regcomp.c 2017-10-03 13:05:27.589719134 -0700
|
||||
@@ -11918,16 +11918,17 @@ S_grok_bslash_N(pTHX_ RExC_state_t *pREx
|
||||
}
|
||||
sv_catpv(substitute_parse, ")");
|
||||
|
||||
- RExC_parse = RExC_start = RExC_adjusted_start = SvPV(substitute_parse,
|
||||
- len);
|
||||
+ len = SvCUR(substitute_parse);
|
||||
|
||||
/* Don't allow empty number */
|
||||
if (len < (STRLEN) 8) {
|
||||
RExC_parse = endbrace;
|
||||
vFAIL("Invalid hexadecimal number in \\N{U+...}");
|
||||
}
|
||||
- RExC_end = RExC_parse + len;
|
||||
|
||||
+ RExC_parse = RExC_start = RExC_adjusted_start
|
||||
+ = SvPV_nolen(substitute_parse);
|
||||
+ RExC_end = RExC_parse + len;
|
||||
/* The values are Unicode, and therefore not subject to recoding, but
|
||||
* have to be converted to native on a non-Unicode (meaning non-ASCII)
|
||||
* platform. */
|
|
@ -1,345 +0,0 @@
|
|||
From cee96d52c39b1e7b36e1c62d38bcd8d86e9a41ab Mon Sep 17 00:00:00 2001
|
||||
From: Tony Cook <tony@develop-help.com>
|
||||
Date: Tue, 21 Jun 2016 10:02:02 +1000
|
||||
Subject: [PATCH] (perl #127834) remove . from the end of @INC if complex
|
||||
modules are loaded
|
||||
|
||||
While currently Encode and Storable are know to attempt to load modules
|
||||
not included in the core, updates to other modules may lead to those
|
||||
also attempting to load new modules, so be safe and remove . for those
|
||||
as well.
|
||||
---
|
||||
cpan/Archive-Tar/bin/ptar | 1 +
|
||||
cpan/Archive-Tar/bin/ptardiff | 1 +
|
||||
cpan/Archive-Tar/bin/ptargrep | 1 +
|
||||
cpan/CPAN/scripts/cpan | 1 +
|
||||
cpan/Digest-SHA/shasum | 1 +
|
||||
cpan/Encode/bin/enc2xs | 1 +
|
||||
cpan/Encode/bin/encguess | 1 +
|
||||
cpan/Encode/bin/piconv | 1 +
|
||||
cpan/Encode/bin/ucmlint | 1 +
|
||||
cpan/Encode/bin/unidump | 1 +
|
||||
cpan/ExtUtils-MakeMaker/bin/instmodsh | 1 +
|
||||
cpan/IO-Compress/bin/zipdetails | 1 +
|
||||
cpan/JSON-PP/bin/json_pp | 1 +
|
||||
cpan/Test-Harness/bin/prove | 1 +
|
||||
dist/ExtUtils-ParseXS/lib/ExtUtils/xsubpp | 1 +
|
||||
dist/Module-CoreList/corelist | 1 +
|
||||
ext/Pod-Html/bin/pod2html | 1 +
|
||||
utils/c2ph.PL | 1 +
|
||||
utils/h2ph.PL | 2 ++
|
||||
utils/h2xs.PL | 2 ++
|
||||
utils/libnetcfg.PL | 1 +
|
||||
utils/perlbug.PL | 1 +
|
||||
utils/perldoc.PL | 5 ++++-
|
||||
utils/perlivp.PL | 2 ++
|
||||
utils/splain.PL | 6 ++++++
|
||||
25 files changed, 36 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/cpan/Archive-Tar/bin/ptar b/cpan/Archive-Tar/bin/ptar
|
||||
index 0eaffa7..9dc6402 100644
|
||||
--- a/cpan/Archive-Tar/bin/ptar
|
||||
+++ b/cpan/Archive-Tar/bin/ptar
|
||||
@@ -1,6 +1,7 @@
|
||||
#!/usr/bin/perl
|
||||
use strict;
|
||||
|
||||
+BEGIN { pop @INC if $INC[-1] eq '.' }
|
||||
use File::Find;
|
||||
use Getopt::Std;
|
||||
use Archive::Tar;
|
||||
diff --git a/cpan/Archive-Tar/bin/ptardiff b/cpan/Archive-Tar/bin/ptardiff
|
||||
index 66bd859..4668fa6 100644
|
||||
--- a/cpan/Archive-Tar/bin/ptardiff
|
||||
+++ b/cpan/Archive-Tar/bin/ptardiff
|
||||
@@ -1,5 +1,6 @@
|
||||
#!/usr/bin/perl
|
||||
|
||||
+BEGIN { pop @INC if $INC[-1] eq '.' }
|
||||
use strict;
|
||||
use Archive::Tar;
|
||||
use Getopt::Std;
|
||||
diff --git a/cpan/Archive-Tar/bin/ptargrep b/cpan/Archive-Tar/bin/ptargrep
|
||||
index 1a320f1..8dc6b4f 100644
|
||||
--- a/cpan/Archive-Tar/bin/ptargrep
|
||||
+++ b/cpan/Archive-Tar/bin/ptargrep
|
||||
@@ -4,6 +4,7 @@
|
||||
# archive. See 'ptargrep --help' for more documentation.
|
||||
#
|
||||
|
||||
+BEGIN { pop @INC if $INC[-1] eq '.' }
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
diff --git a/cpan/CPAN/scripts/cpan b/cpan/CPAN/scripts/cpan
|
||||
index 5555090..cceab30 100644
|
||||
--- a/cpan/CPAN/scripts/cpan
|
||||
+++ b/cpan/CPAN/scripts/cpan
|
||||
@@ -1,5 +1,6 @@
|
||||
#!/usr/local/bin/perl
|
||||
|
||||
+BEGIN { pop @INC if $INC[-1] eq '.' }
|
||||
use strict;
|
||||
use vars qw($VERSION);
|
||||
|
||||
diff --git a/cpan/Digest-SHA/shasum b/cpan/Digest-SHA/shasum
|
||||
index 14ddd60..62a2b0e 100644
|
||||
--- a/cpan/Digest-SHA/shasum
|
||||
+++ b/cpan/Digest-SHA/shasum
|
||||
@@ -13,6 +13,7 @@
|
||||
## "-0" option for reading bit strings, and
|
||||
## "-p" option for portable digests (to be deprecated).
|
||||
|
||||
+BEGIN { pop @INC if $INC[-1] eq '.' }
|
||||
use strict;
|
||||
use warnings;
|
||||
use Fcntl;
|
||||
diff --git a/cpan/Encode/bin/enc2xs b/cpan/Encode/bin/enc2xs
|
||||
index ec4732c..f8d9f52 100644
|
||||
--- a/cpan/Encode/bin/enc2xs
|
||||
+++ b/cpan/Encode/bin/enc2xs
|
||||
@@ -4,6 +4,7 @@ BEGIN {
|
||||
# with $ENV{PERL_CORE} set
|
||||
# In case we need it in future...
|
||||
require Config; import Config;
|
||||
+ pop @INC if $INC[-1] eq '.';
|
||||
}
|
||||
use strict;
|
||||
use warnings;
|
||||
diff --git a/cpan/Encode/bin/encguess b/cpan/Encode/bin/encguess
|
||||
index 5d7ac80..0be5c7c 100644
|
||||
--- a/cpan/Encode/bin/encguess
|
||||
+++ b/cpan/Encode/bin/encguess
|
||||
@@ -1,5 +1,6 @@
|
||||
#!./perl
|
||||
use 5.008001;
|
||||
+BEGIN { pop @INC if $INC[-1] eq '.' }
|
||||
use strict;
|
||||
use warnings;
|
||||
use Encode;
|
||||
diff --git a/cpan/Encode/bin/piconv b/cpan/Encode/bin/piconv
|
||||
index c1dad9e..60b2a59 100644
|
||||
--- a/cpan/Encode/bin/piconv
|
||||
+++ b/cpan/Encode/bin/piconv
|
||||
@@ -1,6 +1,7 @@
|
||||
#!./perl
|
||||
# $Id: piconv,v 2.7 2014/05/31 09:48:48 dankogai Exp $
|
||||
#
|
||||
+BEGIN { pop @INC if $INC[-1] eq '.' }
|
||||
use 5.8.0;
|
||||
use strict;
|
||||
use Encode ;
|
||||
diff --git a/cpan/Encode/bin/ucmlint b/cpan/Encode/bin/ucmlint
|
||||
index 622376d..25e0d67 100644
|
||||
--- a/cpan/Encode/bin/ucmlint
|
||||
+++ b/cpan/Encode/bin/ucmlint
|
||||
@@ -3,6 +3,7 @@
|
||||
# $Id: ucmlint,v 2.2 2008/03/12 09:51:11 dankogai Exp $
|
||||
#
|
||||
|
||||
+BEGIN { pop @INC if $INC[-1] eq '.' }
|
||||
use strict;
|
||||
our $VERSION = do { my @r = (q$Revision: 2.2 $ =~ /\d+/g); sprintf "%d."."%02d" x $#r, @r };
|
||||
|
||||
diff --git a/cpan/Encode/bin/unidump b/cpan/Encode/bin/unidump
|
||||
index ae0da30..f190827 100644
|
||||
--- a/cpan/Encode/bin/unidump
|
||||
+++ b/cpan/Encode/bin/unidump
|
||||
@@ -1,5 +1,6 @@
|
||||
#!./perl
|
||||
|
||||
+BEGIN { pop @INC if $INC[-1] eq '.' }
|
||||
use strict;
|
||||
use Encode;
|
||||
use Getopt::Std;
|
||||
diff --git a/cpan/ExtUtils-MakeMaker/bin/instmodsh b/cpan/ExtUtils-MakeMaker/bin/instmodsh
|
||||
index 8b9aa95..ab0f9d1 100644
|
||||
--- a/cpan/ExtUtils-MakeMaker/bin/instmodsh
|
||||
+++ b/cpan/ExtUtils-MakeMaker/bin/instmodsh
|
||||
@@ -1,5 +1,6 @@
|
||||
#!/usr/bin/perl -w
|
||||
|
||||
+BEGIN { pop @INC if $INC[-1] eq '.' }
|
||||
use strict;
|
||||
use IO::File;
|
||||
use ExtUtils::Packlist;
|
||||
diff --git a/cpan/IO-Compress/bin/zipdetails b/cpan/IO-Compress/bin/zipdetails
|
||||
index 0249850..1b9c70a 100644
|
||||
--- a/cpan/IO-Compress/bin/zipdetails
|
||||
+++ b/cpan/IO-Compress/bin/zipdetails
|
||||
@@ -5,6 +5,7 @@
|
||||
# Display info on the contents of a Zip file
|
||||
#
|
||||
|
||||
+BEGIN { pop @INC if $INC[-1] eq '.' }
|
||||
use strict;
|
||||
use warnings ;
|
||||
|
||||
diff --git a/cpan/JSON-PP/bin/json_pp b/cpan/JSON-PP/bin/json_pp
|
||||
index 3362dec..39bed4d 100644
|
||||
--- a/cpan/JSON-PP/bin/json_pp
|
||||
+++ b/cpan/JSON-PP/bin/json_pp
|
||||
@@ -1,5 +1,6 @@
|
||||
#!/usr/bin/perl
|
||||
|
||||
+BEGIN { pop @INC if $INC[-1] eq '.' }
|
||||
use strict;
|
||||
use Getopt::Long;
|
||||
|
||||
diff --git a/cpan/Test-Harness/bin/prove b/cpan/Test-Harness/bin/prove
|
||||
index 6637cc4..d71b238 100644
|
||||
--- a/cpan/Test-Harness/bin/prove
|
||||
+++ b/cpan/Test-Harness/bin/prove
|
||||
@@ -1,5 +1,6 @@
|
||||
#!/usr/bin/perl -w
|
||||
|
||||
+BEGIN { pop @INC if $INC[-1] eq '.' }
|
||||
use strict;
|
||||
use warnings;
|
||||
use App::Prove;
|
||||
diff --git a/dist/ExtUtils-ParseXS/lib/ExtUtils/xsubpp b/dist/ExtUtils-ParseXS/lib/ExtUtils/xsubpp
|
||||
index e2ac71a..d596cdf 100644
|
||||
--- a/dist/ExtUtils-ParseXS/lib/ExtUtils/xsubpp
|
||||
+++ b/dist/ExtUtils-ParseXS/lib/ExtUtils/xsubpp
|
||||
@@ -1,5 +1,6 @@
|
||||
#!perl
|
||||
use 5.006;
|
||||
+BEGIN { pop @INC if $INC[-1] eq '.' }
|
||||
use strict;
|
||||
eval {
|
||||
require ExtUtils::ParseXS;
|
||||
diff --git a/dist/Module-CoreList/corelist b/dist/Module-CoreList/corelist
|
||||
index aa4a945..bbe61cc 100644
|
||||
--- a/dist/Module-CoreList/corelist
|
||||
+++ b/dist/Module-CoreList/corelist
|
||||
@@ -130,6 +130,7 @@ requested perl versions.
|
||||
|
||||
=cut
|
||||
|
||||
+BEGIN { pop @INC if $INC[-1] eq '.' }
|
||||
use Module::CoreList;
|
||||
use Getopt::Long qw(:config no_ignore_case);
|
||||
use Pod::Usage;
|
||||
diff --git a/ext/Pod-Html/bin/pod2html b/ext/Pod-Html/bin/pod2html
|
||||
index b022859..7d1d232 100644
|
||||
--- a/ext/Pod-Html/bin/pod2html
|
||||
+++ b/ext/Pod-Html/bin/pod2html
|
||||
@@ -216,6 +216,7 @@ This program is distributed under the Artistic License.
|
||||
|
||||
=cut
|
||||
|
||||
+BEGIN { pop @INC if $INC[-1] eq '.' }
|
||||
use Pod::Html;
|
||||
|
||||
pod2html @ARGV;
|
||||
diff --git a/utils/c2ph.PL b/utils/c2ph.PL
|
||||
index 466223c..ea87a6f 100644
|
||||
--- a/utils/c2ph.PL
|
||||
+++ b/utils/c2ph.PL
|
||||
@@ -280,6 +280,7 @@ Anyway, here it is. Should run on perl v4 or greater. Maybe less.
|
||||
|
||||
$RCSID = '$Id: c2ph,v 1.7 95/10/28 10:41:47 tchrist Exp Locker: tchrist $';
|
||||
|
||||
+BEGIN { pop @INC if $INC[-1] eq '.' }
|
||||
use File::Temp;
|
||||
|
||||
######################################################################
|
||||
diff --git a/utils/h2ph.PL b/utils/h2ph.PL
|
||||
index d082f22..2523c0a 100644
|
||||
--- a/utils/h2ph.PL
|
||||
+++ b/utils/h2ph.PL
|
||||
@@ -36,6 +36,8 @@ $Config{startperl}
|
||||
|
||||
print OUT <<'!NO!SUBS!';
|
||||
|
||||
+BEGIN { pop @INC if $INC[-1] eq '.' }
|
||||
+
|
||||
use strict;
|
||||
|
||||
use Config;
|
||||
diff --git a/utils/h2xs.PL b/utils/h2xs.PL
|
||||
index 4cb0943..8fda87b 100644
|
||||
--- a/utils/h2xs.PL
|
||||
+++ b/utils/h2xs.PL
|
||||
@@ -35,6 +35,8 @@ $Config{startperl}
|
||||
|
||||
print OUT <<'!NO!SUBS!';
|
||||
|
||||
+BEGIN { pop @INC if $INC[-1] eq '.' }
|
||||
+
|
||||
use warnings;
|
||||
|
||||
=head1 NAME
|
||||
diff --git a/utils/libnetcfg.PL b/utils/libnetcfg.PL
|
||||
index 59a2de8..26d2f99 100644
|
||||
--- a/utils/libnetcfg.PL
|
||||
+++ b/utils/libnetcfg.PL
|
||||
@@ -97,6 +97,7 @@ Jarkko Hietaniemi, conversion into libnetcfg for inclusion into Perl 5.8.
|
||||
|
||||
# $Id: Configure,v 1.8 1997/03/04 09:22:32 gbarr Exp $
|
||||
|
||||
+BEGIN { pop @INC if $INC[-1] eq '.' }
|
||||
use strict;
|
||||
use IO::File;
|
||||
use Getopt::Std;
|
||||
diff --git a/utils/perlbug.PL b/utils/perlbug.PL
|
||||
index 720cf12..b0b2c12 100644
|
||||
--- a/utils/perlbug.PL
|
||||
+++ b/utils/perlbug.PL
|
||||
@@ -57,6 +57,7 @@ print OUT <<'!NO!SUBS!';
|
||||
my @patches = Config::local_patches();
|
||||
my $patch_tags = join "", map /(\S+)/ ? "+$1 " : (), @patches;
|
||||
|
||||
+BEGIN { pop @INC if $INC[-1] eq '.' }
|
||||
use warnings;
|
||||
use strict;
|
||||
use Config;
|
||||
diff --git a/utils/perldoc.PL b/utils/perldoc.PL
|
||||
index e201de9..cd60bd4 100644
|
||||
--- a/utils/perldoc.PL
|
||||
+++ b/utils/perldoc.PL
|
||||
@@ -44,7 +44,10 @@ $Config{startperl}
|
||||
# This "$file" file was generated by "$0"
|
||||
|
||||
require 5;
|
||||
-BEGIN { \$^W = 1 if \$ENV{'PERLDOCDEBUG'} }
|
||||
+BEGIN {
|
||||
+ \$^W = 1 if \$ENV{'PERLDOCDEBUG'};
|
||||
+ pop \@INC if \$INC[-1] eq '.';
|
||||
+}
|
||||
use Pod::Perldoc;
|
||||
exit( Pod::Perldoc->run() );
|
||||
|
||||
diff --git a/utils/perlivp.PL b/utils/perlivp.PL
|
||||
index c2f0a11..e522913 100644
|
||||
--- a/utils/perlivp.PL
|
||||
+++ b/utils/perlivp.PL
|
||||
@@ -39,6 +39,8 @@ print OUT "\n# perlivp $^V\n";
|
||||
|
||||
print OUT <<'!NO!SUBS!';
|
||||
|
||||
+BEGIN { pop @INC if $INC[-1] eq '.' }
|
||||
+
|
||||
sub usage {
|
||||
warn "@_\n" if @_;
|
||||
print << " EOUSAGE";
|
||||
diff --git a/utils/splain.PL b/utils/splain.PL
|
||||
index 9c70b61..cae84a0 100644
|
||||
--- a/utils/splain.PL
|
||||
+++ b/utils/splain.PL
|
||||
@@ -38,6 +38,12 @@ $Config{startperl}
|
||||
if \$running_under_some_shell;
|
||||
!GROK!THIS!
|
||||
|
||||
+print <<'!NO!SUBS!';
|
||||
+
|
||||
+BEGIN { pop @INC if $INC[-1] eq '.' }
|
||||
+
|
||||
+!NO!SUBS!
|
||||
+
|
||||
while (<IN>) {
|
||||
print OUT unless /^package diagnostics/;
|
||||
}
|
||||
--
|
||||
2.10.0-rc1-260-gbdd1a2a
|
||||
|
|
@ -9,47 +9,59 @@
|
|||
Summary: Practical Extraction and Report Language
|
||||
Name: perl
|
||||
Version: 5.30.1
|
||||
Release: 3%{?dist}
|
||||
Release: 4%{?dist}
|
||||
License: GPLv1+
|
||||
URL: http://www.perl.org/
|
||||
Group: Development/Languages
|
||||
Vendor: VMware, Inc.
|
||||
Distribution: Photon
|
||||
|
||||
Source0: http://www.cpan.org/src/5.0/%{name}-%{version}.tar.xz
|
||||
%define sha1 perl=4bc190b6ac368f573e6a028f91430f831d40d30a
|
||||
%if %{with_check}
|
||||
%define sha512 %{name}=8f3339efdcd1bb58fa58a90042181bef86bb09e4598c737e446ed43b56d2ab23d67eced5e36fb08fc61e076acfdb572a12e46a1277f5299a3f412054df0b88bf
|
||||
|
||||
%if 0%{?with_check}
|
||||
Patch0: make-check-failure.patch
|
||||
Patch1: make-check-failure2.patch
|
||||
%endif
|
||||
|
||||
Patch2: CVE-2020-10878-1.patch
|
||||
Patch3: CVE-2020-10878-2.patch
|
||||
Patch4: CVE-2020-12723.patch
|
||||
Source1: https://github.com/arsv/perl-cross/releases/download/1.2/perl-cross-1.2.tar.gz
|
||||
%define sha1 perl-cross=ded421469e0295ae6dde40e0cbcb2238b4e724e3
|
||||
Patch5: 0001-Remove-libdb-support.patch
|
||||
|
||||
Source1: https://github.com/arsv/perl-cross/releases/download/1.2/perl-cross-1.2.tar.gz
|
||||
%define sha512 perl-cross=81d86d0ad1dab55da9debcdf705f4937e36f4b3b3c3ce93e7d6eeef4a3b1e1d9498b3db5e2b6abf92525e6767d639da7587d95136c46e50808386767ee7e5b13
|
||||
|
||||
Provides: perl >= 0:5.003000
|
||||
Provides: perl(getopts.pl)
|
||||
Provides: perl(s)
|
||||
Provides: /bin/perl
|
||||
|
||||
BuildRequires: zlib-devel
|
||||
BuildRequires: bzip2-devel
|
||||
BuildRequires: gdbm-devel
|
||||
|
||||
Requires: zlib
|
||||
Requires: gdbm
|
||||
Requires: glibc
|
||||
Requires: libgcc
|
||||
|
||||
%description
|
||||
The Perl package contains the Practical Extraction and
|
||||
Report Language.
|
||||
|
||||
%prep
|
||||
# Using autosetup is not feasible
|
||||
%setup -q
|
||||
sed -i 's/-fstack-protector/&-all/' Configure
|
||||
%if %{with_check}
|
||||
%if 0%{?with_check}
|
||||
%patch0 -p1
|
||||
%patch1 -p1
|
||||
%endif
|
||||
%patch2 -p1
|
||||
%patch3 -p1
|
||||
%patch4 -p1
|
||||
%patch5 -p1
|
||||
|
||||
%build
|
||||
export BUILD_ZLIB=False
|
||||
|
@ -64,7 +76,6 @@ sh ./configure \
|
|||
--target=%{_host} \
|
||||
--prefix=%{_prefix} \
|
||||
-Dpager=%{_bindir}"/less -isR" \
|
||||
-Duseshrplib \
|
||||
-Dusethreads
|
||||
else
|
||||
sh Configure -des \
|
||||
|
@ -78,17 +89,21 @@ sh Configure -des \
|
|||
fi
|
||||
|
||||
make VERBOSE=1 %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
make DESTDIR=%{buildroot} install
|
||||
make DESTDIR=%{buildroot} install %{?_smp_mflags}
|
||||
unset BUILD_ZLIB BUILD_BZIP2
|
||||
|
||||
%check
|
||||
sed -i '/02zlib.t/d' MANIFEST
|
||||
sed -i '/cz-03zlib-v1.t/d' MANIFEST
|
||||
sed -i '/cz-06gzsetp.t/d' MANIFEST
|
||||
sed -i '/porting\/podcheck.t/d' MANIFEST
|
||||
make test TEST_SKIP_VERSION_CHECK=1
|
||||
make test TEST_SKIP_VERSION_CHECK=1 %{?_smp_mflags}
|
||||
|
||||
%post -p /sbin/ldconfig
|
||||
%postun -p /sbin/ldconfig
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%{_bindir}/*
|
||||
|
@ -98,42 +113,44 @@ make test TEST_SKIP_VERSION_CHECK=1
|
|||
%{_mandir}/*/*
|
||||
|
||||
%changelog
|
||||
* Wed Feb 10 2021 Alexey Makhalov <amakhalov@vmware.com> 5.30.1-3
|
||||
- Fix compilation issue with gcc-10.2.0 for aarch64
|
||||
* Mon Nov 02 2020 Prashant S Chauhan <psinghchauha@vmware.com> 5.30.1-2
|
||||
- Fix CVE-2020-10878 CVE-2020-12723
|
||||
* Thu Aug 20 2020 Gerrit Photon <photon-checkins@vmware.com> 5.30.1-1
|
||||
- Upgraded to version 5.30.1
|
||||
* Tue Feb 25 2020 Prashant S Chauhan <psinghchauha@vmware.com> 5.28.0-5
|
||||
- Added a patch to fix make check
|
||||
* Thu Oct 31 2019 Alexey Makhalov <amakhalov@vmware.com> 5.28.0-4
|
||||
- Cross compilation support
|
||||
* Tue Oct 22 2019 Prashant S Chauhan <psinghchauha@vmware.com> 5.28.0-3
|
||||
- Fix for make check failure added a patch
|
||||
* Wed Oct 24 2018 Srivatsa S. Bhat (VMware) <srivatsa@csail.mit.edu> 5.28.0-2
|
||||
- Add provides perl(s)
|
||||
* Fri Sep 21 2018 Dweep Advani <dadvani@vmware.com> 5.28.0-1
|
||||
- Upgrade to version 5.28.0
|
||||
* Tue Oct 03 2017 Dheeraj Shetty <dheerajs@vmware.com> 5.24.1-4
|
||||
- CVE-2017-12837 and CVE-2017-12883 patch from
|
||||
- https://perl5.git.perl.org/perl.git/commitdiff/2be4edede4ae226e2eebd4eff28cedd2041f300f#patch1
|
||||
* Wed Jul 05 2017 Xiaolin Li <xiaolinl@vmware.com> 5.24.1-3
|
||||
- Rebuild perl after adding gdbm-devel package.
|
||||
* Thu Jun 15 2017 Chang Lee <changlee@vmware.com> 5.24.1-2
|
||||
- Updated %check
|
||||
* Mon Apr 3 2017 Robert Qi <qij@vmware.com> 5.24.1-1
|
||||
- Update to 5.24.1.
|
||||
* Thu Oct 20 2016 Xiaolin Li <xiaolinl@vmware.com> 5.22.1-5
|
||||
- CVE-2016-1238 patch from http://perl5.git.perl.org/perl.git/commit/cee96d52c39b1e7b36e1c62d38bcd8d86e9a41ab.
|
||||
* Mon Oct 10 2016 ChangLee <changlee@vmware.com> 5.22.1-4
|
||||
- Modified %check
|
||||
* Tue May 24 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 5.22.1-3
|
||||
- GA - Bump release of all rpms
|
||||
* Tue Jan 26 2016 Anish Swaminathan <anishs@vmware.com> 5.22.1-2
|
||||
- Enable threads
|
||||
* Tue Jan 12 2016 Anish Swaminathan <anishs@vmware.com> 5.22.1-1
|
||||
- Update version
|
||||
* Thu Jun 4 2015 Touseef Liaqat <tliaqat@vmware.com> 5.18.2-2
|
||||
- Provide /bin/perl.
|
||||
* Wed Nov 5 2014 Divya Thaluru <dthaluru@vmware.com> 5.18.2-1
|
||||
- Initial build. First version
|
||||
* Thu Feb 10 2022 Shreenidhi Shedi <sshedi@vmware.com> 5.30.1-4
|
||||
- Drop libdb support
|
||||
* Wed Feb 10 2021 Alexey Makhalov <amakhalov@vmware.com> 5.30.1-3
|
||||
- Fix compilation issue with gcc-10.2.0 for aarch64
|
||||
* Mon Nov 02 2020 Prashant S Chauhan <psinghchauha@vmware.com> 5.30.1-2
|
||||
- Fix CVE-2020-10878 CVE-2020-12723
|
||||
* Thu Aug 20 2020 Gerrit Photon <photon-checkins@vmware.com> 5.30.1-1
|
||||
- Upgraded to version 5.30.1
|
||||
* Tue Feb 25 2020 Prashant S Chauhan <psinghchauha@vmware.com> 5.28.0-5
|
||||
- Added a patch to fix make check
|
||||
* Thu Oct 31 2019 Alexey Makhalov <amakhalov@vmware.com> 5.28.0-4
|
||||
- Cross compilation support
|
||||
* Tue Oct 22 2019 Prashant S Chauhan <psinghchauha@vmware.com> 5.28.0-3
|
||||
- Fix for make check failure added a patch
|
||||
* Wed Oct 24 2018 Srivatsa S. Bhat (VMware) <srivatsa@csail.mit.edu> 5.28.0-2
|
||||
- Add provides perl(s)
|
||||
* Fri Sep 21 2018 Dweep Advani <dadvani@vmware.com> 5.28.0-1
|
||||
- Upgrade to version 5.28.0
|
||||
* Tue Oct 03 2017 Dheeraj Shetty <dheerajs@vmware.com> 5.24.1-4
|
||||
- CVE-2017-12837 and CVE-2017-12883 patch from
|
||||
- https://perl5.git.perl.org/perl.git/commitdiff/2be4edede4ae226e2eebd4eff28cedd2041f300f#patch1
|
||||
* Wed Jul 05 2017 Xiaolin Li <xiaolinl@vmware.com> 5.24.1-3
|
||||
- Rebuild perl after adding gdbm-devel package.
|
||||
* Thu Jun 15 2017 Chang Lee <changlee@vmware.com> 5.24.1-2
|
||||
- Updated %check
|
||||
* Mon Apr 3 2017 Robert Qi <qij@vmware.com> 5.24.1-1
|
||||
- Update to 5.24.1.
|
||||
* Thu Oct 20 2016 Xiaolin Li <xiaolinl@vmware.com> 5.22.1-5
|
||||
- CVE-2016-1238 patch from http://perl5.git.perl.org/perl.git/commit/cee96d52c39b1e7b36e1c62d38bcd8d86e9a41ab.
|
||||
* Mon Oct 10 2016 ChangLee <changlee@vmware.com> 5.22.1-4
|
||||
- Modified %check
|
||||
* Tue May 24 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 5.22.1-3
|
||||
- GA - Bump release of all rpms
|
||||
* Tue Jan 26 2016 Anish Swaminathan <anishs@vmware.com> 5.22.1-2
|
||||
- Enable threads
|
||||
* Tue Jan 12 2016 Anish Swaminathan <anishs@vmware.com> 5.22.1-1
|
||||
- Update version
|
||||
* Thu Jun 4 2015 Touseef Liaqat <tliaqat@vmware.com> 5.18.2-2
|
||||
- Provide /bin/perl.
|
||||
* Wed Nov 5 2014 Divya Thaluru <dthaluru@vmware.com> 5.18.2-1
|
||||
- Initial build. First version
|
||||
|
|
|
@ -42,7 +42,7 @@ Provides: /usr/bin/python
|
|||
Provides: /bin/python
|
||||
Provides: /bin/python3
|
||||
|
||||
%if 0%{with_check}
|
||||
%if 0%{?with_check}
|
||||
BuildRequires: iana-etc
|
||||
BuildRequires: tzdata
|
||||
BuildRequires: curl-devel
|
||||
|
@ -193,7 +193,7 @@ rm %{buildroot}%{_bindir}/2to3
|
|||
mkdir -p %{buildroot}%{_libdir}/rpm/macros.d
|
||||
install -m 644 %{SOURCE1} %{buildroot}%{_libdir}/rpm/macros.d
|
||||
|
||||
%if 0%{?with_gdb_hooks:1}
|
||||
%if 0%{?with_gdb_hooks}
|
||||
DirHoldingGdbPy=%{_libdir}/debug%{_libdir}
|
||||
mkdir -p %{buildroot}$DirHoldingGdbPy
|
||||
PathOfGdbPy=$DirHoldingGdbPy/libpython%{VER}.so.1.0-%{version}-%{release}.%{_arch}.debug-gdb.py
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
Summary: Commit RPMs to an OSTree repository
|
||||
Name: rpm-ostree
|
||||
Version: 2021.12
|
||||
Release: 4%{?dist}
|
||||
Release: 5%{?dist}
|
||||
License: LGPLv2+
|
||||
Group: Applications/System
|
||||
URL: https://github.com/projectatomic/rpm-ostree
|
||||
|
@ -147,6 +147,8 @@ install -p -m 755 -D %{SOURCE3} %{buildroot}%{_bindir}/rpm-ostree-server
|
|||
%{_bindir}/rpm-ostree-server/mkostreerepo
|
||||
|
||||
%changelog
|
||||
* Sun Jul 03 2022 Shreenidhi Shedi <sshedi@vmware.com> 2021.12-5
|
||||
- Bump version as a part of rpm upgrade
|
||||
* Thu Jun 16 2022 Ashwin Dayanand Kamat <kashwindayan@vmware.com> 2021.12-4
|
||||
- Bump version as a part of libxslt upgrade
|
||||
* Wed Nov 10 2021 Satya Naga Vasamsetty <svasamsetty@vmware.com> 2021.12-3
|
||||
|
|
|
@ -1,308 +0,0 @@
|
|||
From 8586c041219bc408500ae083aa506483bdafac7a Mon Sep 17 00:00:00 2001
|
||||
From: Demi Marie Obenour <demi@invisiblethingslab.com>
|
||||
Date: Fri, 30 Apr 2021 15:01:33 +0530
|
||||
Subject: [PATCH] Fix OpenPGP parsing bugs
|
||||
|
||||
- signatures of the wrong type were accepted
|
||||
- signatures were allowed to contain multiple packets
|
||||
- numerous out-of-bounds reads
|
||||
- undefined pointer arithmetic
|
||||
|
||||
[sshedi: Changes to rpmio/rpmpgp.h from original patch are dropped]
|
||||
|
||||
Signed-off-by: Shreenidhi Shedi <sshedi@vmware.com>
|
||||
---
|
||||
rpmio/rpmpgp.c | 146 +++++++++++++++++++++++++++----------------------
|
||||
1 file changed, 81 insertions(+), 65 deletions(-)
|
||||
|
||||
diff --git a/rpmio/rpmpgp.c b/rpmio/rpmpgp.c
|
||||
index d0688ebe9..01dca84db 100644
|
||||
--- a/rpmio/rpmpgp.c
|
||||
+++ b/rpmio/rpmpgp.c
|
||||
@@ -320,14 +320,17 @@ size_t pgpLen(const uint8_t *s, size_t slen, size_t * lenp)
|
||||
if (*s < 192) {
|
||||
lenlen = 1;
|
||||
dlen = *s;
|
||||
- } else if (*s < 255 && slen > 2) {
|
||||
+ } else if (*s < 224 && slen > 2) {
|
||||
lenlen = 2;
|
||||
dlen = (((s[0]) - 192) << 8) + s[1] + 192;
|
||||
- } else if (slen > 5) {
|
||||
+ } else if (slen > 5 && *s == 255) {
|
||||
lenlen = 5;
|
||||
dlen = pgpGrab(s+1, 4);
|
||||
}
|
||||
|
||||
+ /* Check that the buffer can hold the computed amount of bytes */
|
||||
+ if (slen - lenlen < dlen)
|
||||
+ lenlen = 0;
|
||||
if (lenlen)
|
||||
*lenp = dlen;
|
||||
|
||||
@@ -341,12 +344,38 @@ struct pgpPkt {
|
||||
size_t blen; /* length of body in bytes */
|
||||
};
|
||||
|
||||
+/** \ingroup rpmpgp
|
||||
+ * Read a length field `nbytes` long. Checks that the buffer is big enough to
|
||||
+ * hold `nbytes + *valp` bytes.
|
||||
+ * @param s pointer to read from
|
||||
+ * @param nbytes length of length field
|
||||
+ * @param send pointer past end of buffer
|
||||
+ * @param[out] *valp decoded length
|
||||
+ * @return 0 if buffer can hold `nbytes + *valp` of data,
|
||||
+ * otherwise -1.
|
||||
+ */
|
||||
+static int pgpGet(const uint8_t *s, size_t nbytes, const uint8_t *send,
|
||||
+ size_t *valp)
|
||||
+{
|
||||
+ int rc = -1;
|
||||
+
|
||||
+ if (nbytes <= send - s) {
|
||||
+ unsigned int val = pgpGrab(s, nbytes);
|
||||
+ if (val <= send - s - nbytes) {
|
||||
+ rc = 0;
|
||||
+ *valp = val;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ return rc;
|
||||
+}
|
||||
+
|
||||
static int decodePkt(const uint8_t *p, size_t plen, struct pgpPkt *pkt)
|
||||
{
|
||||
int rc = -1; /* assume failure */
|
||||
|
||||
/* Valid PGP packet header must always have two or more bytes in it */
|
||||
- if (p && plen >= 2 && p[0] & 0x80) {
|
||||
+ if (p && plen >= 2 && (p[0] & 0x80)) {
|
||||
size_t lenlen = 0;
|
||||
size_t hlen = 0;
|
||||
|
||||
@@ -357,15 +386,14 @@ static int decodePkt(const uint8_t *p, size_t plen, struct pgpPkt *pkt)
|
||||
} else {
|
||||
/* Old format packet, body length encoding in tag byte */
|
||||
lenlen = (1 << (p[0] & 0x3));
|
||||
- if (plen > lenlen) {
|
||||
- pkt->blen = pgpGrab(p+1, lenlen);
|
||||
- }
|
||||
+ if (lenlen > 4 || pgpGet(p + 1, lenlen, p + plen, &pkt->blen))
|
||||
+ return rc;
|
||||
pkt->tag = (p[0] >> 2) & 0xf;
|
||||
}
|
||||
hlen = lenlen + 1;
|
||||
|
||||
/* Does the packet header and its body fit in our boundaries? */
|
||||
- if (lenlen && (hlen + pkt->blen <= plen)) {
|
||||
+ if (lenlen) {
|
||||
pkt->head = p;
|
||||
pkt->body = pkt->head + hlen;
|
||||
rc = 0;
|
||||
@@ -418,7 +446,7 @@ static int pgpPrtSubType(const uint8_t *h, size_t hlen, pgpSigType sigtype,
|
||||
|
||||
while (hlen > 0) {
|
||||
i = pgpLen(p, hlen, &plen);
|
||||
- if (i == 0 || plen < 1 || i + plen > hlen)
|
||||
+ if (i == 0 || plen < 1)
|
||||
break;
|
||||
|
||||
p += i;
|
||||
@@ -524,9 +552,9 @@ static int pgpPrtSigParams(pgpTag tag, uint8_t pubkey_algo, uint8_t sigtype,
|
||||
int i;
|
||||
pgpDigAlg sigalg = pgpSignatureNew(pubkey_algo);
|
||||
|
||||
- for (i = 0; i < sigalg->mpis && p + 2 <= pend; i++) {
|
||||
+ for (i = 0; i < sigalg->mpis && 2 < pend - p; i++) {
|
||||
int mpil = pgpMpiLen(p);
|
||||
- if (p + mpil > pend)
|
||||
+ if (mpil > pend - p)
|
||||
break;
|
||||
if (sigtype == PGPSIGTYPE_BINARY || sigtype == PGPSIGTYPE_TEXT) {
|
||||
if (sigalg->setmpi(sigalg, i, p))
|
||||
@@ -548,25 +576,12 @@ static int pgpPrtSigParams(pgpTag tag, uint8_t pubkey_algo, uint8_t sigtype,
|
||||
return rc;
|
||||
}
|
||||
|
||||
-static int pgpGet(const uint8_t *s, size_t nbytes, const uint8_t *send,
|
||||
- unsigned int *valp)
|
||||
-{
|
||||
- int rc = -1;
|
||||
-
|
||||
- if (s + nbytes <= send) {
|
||||
- *valp = pgpGrab(s, nbytes);
|
||||
- rc = 0;
|
||||
- }
|
||||
-
|
||||
- return rc;
|
||||
-}
|
||||
-
|
||||
static int pgpPrtSig(pgpTag tag, const uint8_t *h, size_t hlen,
|
||||
pgpDigParams _digp)
|
||||
{
|
||||
uint8_t version = 0;
|
||||
- uint8_t * p;
|
||||
- unsigned int plen;
|
||||
+ const uint8_t * p;
|
||||
+ size_t plen;
|
||||
int rc = 1;
|
||||
|
||||
if (pgpVersion(h, hlen, &version))
|
||||
@@ -608,6 +623,7 @@ static int pgpPrtSig(pgpTag tag, const uint8_t *h, size_t hlen,
|
||||
} break;
|
||||
case 4:
|
||||
{ pgpPktSigV4 v = (pgpPktSigV4)h;
|
||||
+ const uint8_t *const hend = h + hlen;
|
||||
|
||||
if (hlen <= sizeof(*v))
|
||||
return 1;
|
||||
@@ -618,15 +634,12 @@ static int pgpPrtSig(pgpTag tag, const uint8_t *h, size_t hlen,
|
||||
pgpPrtVal(" ", pgpSigTypeTbl, v->sigtype);
|
||||
pgpPrtNL();
|
||||
|
||||
- p = &v->hashlen[0];
|
||||
- if (pgpGet(v->hashlen, sizeof(v->hashlen), h + hlen, &plen))
|
||||
- return 1;
|
||||
- p += sizeof(v->hashlen);
|
||||
-
|
||||
- if ((p + plen) > (h + hlen))
|
||||
+ if (pgpGet(v->hashlen, sizeof(v->hashlen), hend, &plen))
|
||||
return 1;
|
||||
+ p = h + sizeof *v;
|
||||
|
||||
if (_digp->pubkey_algo == 0) {
|
||||
+ /* Get the hashed data */
|
||||
_digp->hashlen = sizeof(*v) + plen;
|
||||
_digp->hash = memcpy(xmalloc(_digp->hashlen), v, _digp->hashlen);
|
||||
}
|
||||
@@ -634,18 +647,15 @@ static int pgpPrtSig(pgpTag tag, const uint8_t *h, size_t hlen,
|
||||
return 1;
|
||||
p += plen;
|
||||
|
||||
- if (pgpGet(p, 2, h + hlen, &plen))
|
||||
+ if (pgpGet(p, 2, hend, &plen))
|
||||
return 1;
|
||||
p += 2;
|
||||
|
||||
- if ((p + plen) > (h + hlen))
|
||||
- return 1;
|
||||
-
|
||||
if (pgpPrtSubType(p, plen, v->sigtype, _digp))
|
||||
return 1;
|
||||
p += plen;
|
||||
|
||||
- if (pgpGet(p, 2, h + hlen, &plen))
|
||||
+ if (hend - p < 2)
|
||||
return 1;
|
||||
pgpPrtHex(" signhash16", p, 2);
|
||||
pgpPrtNL();
|
||||
@@ -658,11 +668,7 @@ static int pgpPrtSig(pgpTag tag, const uint8_t *h, size_t hlen,
|
||||
memcpy(_digp->signhash16, p, sizeof(_digp->signhash16));
|
||||
}
|
||||
|
||||
- p += 2;
|
||||
- if (p > (h + hlen))
|
||||
- return 1;
|
||||
-
|
||||
- rc = pgpPrtSigParams(tag, v->pubkey_algo, v->sigtype, p, h, hlen, _digp);
|
||||
+ rc = pgpPrtSigParams(tag, v->pubkey_algo, v->sigtype, p + 2, h, hlen, _digp);
|
||||
} break;
|
||||
default:
|
||||
rpmlog(RPMLOG_WARNING, _("Unsupported version of key: V%d\n"), version);
|
||||
@@ -717,15 +723,15 @@ static int pgpPrtPubkeyParams(uint8_t pubkey_algo,
|
||||
pgpDigAlg keyalg;
|
||||
if (pubkey_algo == PGPPUBKEYALGO_EDDSA) {
|
||||
int len = p + 1 < pend ? p[0] : 0;
|
||||
- if (len == 0 || len == 0xff || p + 1 + len > pend)
|
||||
+ if (len == 0 || len == 0xff || 1 + len > pend - p)
|
||||
goto exit;
|
||||
curve = pgpCurveByOid(p + 1, len);
|
||||
p += len + 1;
|
||||
}
|
||||
keyalg = pgpPubkeyNew(pubkey_algo, curve);
|
||||
- for (i = 0; i < keyalg->mpis && p + 2 <= pend; i++) {
|
||||
+ for (i = 0; i < keyalg->mpis && 2 < pend - p; i++) {
|
||||
int mpil = pgpMpiLen(p);
|
||||
- if (p + mpil > pend)
|
||||
+ if (mpil > pend - p)
|
||||
break;
|
||||
if (keyalg->setmpi(keyalg, i, p))
|
||||
break;
|
||||
@@ -817,30 +823,34 @@ int pgpPubkeyFingerprint(const uint8_t *h, size_t hlen,
|
||||
int mpis = -1;
|
||||
|
||||
/* Packet must be larger than v to have room for the required MPIs */
|
||||
- if (hlen > sizeof(*v)) {
|
||||
- switch (v->pubkey_algo) {
|
||||
- case PGPPUBKEYALGO_RSA:
|
||||
- mpis = 2;
|
||||
- break;
|
||||
- case PGPPUBKEYALGO_DSA:
|
||||
- mpis = 4;
|
||||
- break;
|
||||
- case PGPPUBKEYALGO_EDDSA:
|
||||
- mpis = 1;
|
||||
- break;
|
||||
- }
|
||||
+ if (hlen <= sizeof(*v))
|
||||
+ return rc;
|
||||
+ se = (uint8_t *)(v + 1);
|
||||
+
|
||||
+ switch (v->pubkey_algo) {
|
||||
+ case PGPPUBKEYALGO_RSA:
|
||||
+ mpis = 2;
|
||||
+ break;
|
||||
+ case PGPPUBKEYALGO_DSA:
|
||||
+ mpis = 4;
|
||||
+ break;
|
||||
+ case PGPPUBKEYALGO_EDDSA:
|
||||
+ mpis = 1;
|
||||
+ /* EdDSA has a curve id before the MPIs */
|
||||
+ if (se[0] == 0x00 || se[0] == 0xff || pend - se <= se[0])
|
||||
+ return rc;
|
||||
+ se += 1 + se[0];
|
||||
+ break;
|
||||
+ default:
|
||||
+ return rc;
|
||||
}
|
||||
|
||||
- se = (uint8_t *)(v + 1);
|
||||
- /* EdDSA has a curve id before the MPIs */
|
||||
- if (v->pubkey_algo == PGPPUBKEYALGO_EDDSA) {
|
||||
- if (se < pend && se[0] != 0x00 && se[0] != 0xff)
|
||||
- se += 1 + se[0];
|
||||
- else
|
||||
- se = pend; /* error out when reading the MPI */
|
||||
+ while (pend - se >= 2 && mpis-- > 0) {
|
||||
+ int i = pgpMpiLen(se);
|
||||
+ if (pend - se < i)
|
||||
+ return rc;
|
||||
+ se += i;
|
||||
}
|
||||
- while (se < pend && mpis-- > 0)
|
||||
- se += pgpMpiLen(se);
|
||||
|
||||
/* Does the size and number of MPI's match our expectations? */
|
||||
if (se == pend && mpis == 0) {
|
||||
@@ -1067,6 +1077,8 @@ int pgpPrtParams(const uint8_t * pkts, size_t pktlen, unsigned int pkttype,
|
||||
break;
|
||||
|
||||
p += (pkt.body - pkt.head) + pkt.blen;
|
||||
+ if (pkttype == PGPTAG_SIGNATURE)
|
||||
+ break;
|
||||
}
|
||||
|
||||
rc = (digp && (p == pend)) ? 0 : -1;
|
||||
@@ -1189,6 +1201,10 @@ rpmRC pgpVerifySignature(pgpDigParams key, pgpDigParams sig, DIGEST_CTX hashctx)
|
||||
if (sig == NULL || ctx == NULL)
|
||||
goto exit;
|
||||
|
||||
+ /* RPM signatures are always binary */
|
||||
+ if (sig->sigtype != PGPSIGTYPE_BINARY)
|
||||
+ goto exit;
|
||||
+
|
||||
if (sig->hash != NULL)
|
||||
rpmDigestUpdate(ctx, sig->hash, sig->hashlen);
|
||||
|
||||
--
|
||||
2.17.1
|
||||
|
|
@ -1,88 +0,0 @@
|
|||
From 0ebfd7295ea7ad26a5cfbfa399803848be03d9a2 Mon Sep 17 00:00:00 2001
|
||||
From: Shreenidhi Shedi <sshedi@vmware.com>
|
||||
Date: Tue, 1 Jun 2021 16:50:38 +0530
|
||||
Subject: [PATCH] Fix regression reading rpm v3 and other rare packages (#1635)
|
||||
|
||||
Commit d6a86b5 introduced far stricter
|
||||
checks on what tags are allowed in signature and main headers than rpm
|
||||
had previously seen, and unsurprisingly this introduced some regressions
|
||||
on less common cases:
|
||||
|
||||
- On rpm v3 packages and some newer 3rd party created packages (such as
|
||||
install4j < 9.0.2), RPMTAG_ARCHIVESIZE resides in the main header
|
||||
to begin with
|
||||
- In rpm 4.13 - 4.14, file IMA signatures were incorrectly placed in
|
||||
the main header.
|
||||
|
||||
As a quirk, permit the existence of RPMTAG_ARCHIVESIZE,
|
||||
RPMTAG_FILESIGNATURES and RPMTAG_FILESIGNATURELENGTH in the main header
|
||||
too provided that the corresponding signature tag is not there (so
|
||||
they can reside in either but not both headers).
|
||||
|
||||
Initial workaround patch by Demi Marie Obenour.
|
||||
|
||||
Fixes: #1635
|
||||
|
||||
Signed-off-by: Shreenidhi Shedi <sshedi@vmware.com>
|
||||
---
|
||||
lib/package.c | 35 ++++++++++++++++++++---------------
|
||||
1 file changed, 20 insertions(+), 15 deletions(-)
|
||||
|
||||
diff --git a/lib/package.c b/lib/package.c
|
||||
index 276e3e554..da0df7779 100644
|
||||
--- a/lib/package.c
|
||||
+++ b/lib/package.c
|
||||
@@ -35,21 +35,22 @@ struct taglate_s {
|
||||
rpmTagVal stag;
|
||||
rpmTagVal xtag;
|
||||
rpm_count_t count;
|
||||
+ int quirk;
|
||||
} const xlateTags[] = {
|
||||
- { RPMSIGTAG_SIZE, RPMTAG_SIGSIZE, 1 },
|
||||
- { RPMSIGTAG_PGP, RPMTAG_SIGPGP, 0 },
|
||||
- { RPMSIGTAG_MD5, RPMTAG_SIGMD5, 16 },
|
||||
- { RPMSIGTAG_GPG, RPMTAG_SIGGPG, 0 },
|
||||
- /* { RPMSIGTAG_PGP5, RPMTAG_SIGPGP5, 0 }, */ /* long obsolete, dont use */
|
||||
- { RPMSIGTAG_PAYLOADSIZE, RPMTAG_ARCHIVESIZE, 1 },
|
||||
- { RPMSIGTAG_FILESIGNATURES, RPMTAG_FILESIGNATURES, 0 },
|
||||
- { RPMSIGTAG_FILESIGNATURELENGTH, RPMTAG_FILESIGNATURELENGTH, 1 },
|
||||
- { RPMSIGTAG_SHA1, RPMTAG_SHA1HEADER, 1 },
|
||||
- { RPMSIGTAG_SHA256, RPMTAG_SHA256HEADER, 1 },
|
||||
- { RPMSIGTAG_DSA, RPMTAG_DSAHEADER, 0 },
|
||||
- { RPMSIGTAG_RSA, RPMTAG_RSAHEADER, 0 },
|
||||
- { RPMSIGTAG_LONGSIZE, RPMTAG_LONGSIGSIZE, 1 },
|
||||
- { RPMSIGTAG_LONGARCHIVESIZE, RPMTAG_LONGARCHIVESIZE, 1 },
|
||||
+ { RPMSIGTAG_SIZE, RPMTAG_SIGSIZE, 1, 0 },
|
||||
+ { RPMSIGTAG_PGP, RPMTAG_SIGPGP, 0, 0 },
|
||||
+ { RPMSIGTAG_MD5, RPMTAG_SIGMD5, 16, 0 },
|
||||
+ { RPMSIGTAG_GPG, RPMTAG_SIGGPG, 0, 0 },
|
||||
+ /* { RPMSIGTAG_PGP5, RPMTAG_SIGPGP5, 0, 0 }, */ /* long obsolete, dont use */
|
||||
+ { RPMSIGTAG_PAYLOADSIZE, RPMTAG_ARCHIVESIZE, 1, 1 },
|
||||
+ { RPMSIGTAG_FILESIGNATURES, RPMTAG_FILESIGNATURES, 0, 1 },
|
||||
+ { RPMSIGTAG_FILESIGNATURELENGTH, RPMTAG_FILESIGNATURELENGTH, 1, 1 },
|
||||
+ { RPMSIGTAG_SHA1, RPMTAG_SHA1HEADER, 1, 0 },
|
||||
+ { RPMSIGTAG_SHA256, RPMTAG_SHA256HEADER, 1, 0 },
|
||||
+ { RPMSIGTAG_DSA, RPMTAG_DSAHEADER, 0, 0 },
|
||||
+ { RPMSIGTAG_RSA, RPMTAG_RSAHEADER, 0, 0 },
|
||||
+ { RPMSIGTAG_LONGSIZE, RPMTAG_LONGSIGSIZE, 1, 0 },
|
||||
+ { RPMSIGTAG_LONGARCHIVESIZE, RPMTAG_LONGARCHIVESIZE, 1, 0 },
|
||||
{ 0 }
|
||||
};
|
||||
|
||||
@@ -67,8 +68,12 @@ rpmTagVal headerMergeLegacySigs(Header h, Header sigh, char **msg)
|
||||
|
||||
for (xl = xlateTags; xl->stag; xl++) {
|
||||
/* There mustn't be one in the main header */
|
||||
- if (headerIsEntry(h, xl->xtag))
|
||||
+ if (headerIsEntry(h, xl->xtag)) {
|
||||
+ /* Some tags may exist in either header, but never both */
|
||||
+ if (xl->quirk && !headerIsEntry(sigh, xl->stag))
|
||||
+ continue;
|
||||
goto exit;
|
||||
+ }
|
||||
}
|
||||
|
||||
rpmtdReset(&td);
|
||||
--
|
||||
2.17.1
|
||||
|
|
@ -1,67 +0,0 @@
|
|||
From 4733c313a82a968739ab35da160d60f0fe0c079a Mon Sep 17 00:00:00 2001
|
||||
From: Demi Marie Obenour <demi@invisiblethingslab.com>
|
||||
Date: Wed, 28 Apr 2021 15:51:17 +0530
|
||||
Subject: [PATCH] Header signatures alone are not sufficient
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This fixes how RPM handles packages that contain a header signature, but
|
||||
neither header+payload signature nor payload digests. Such packages are
|
||||
obviously not properly signed, but RPM previously accepted them.
|
||||
|
||||
This could be used to confuse both ‘rpmkeys -K’ and DNF.
|
||||
Both would report that the package has been properly signed even when it has not.
|
||||
|
||||
[sshedi: Regression test changes from original patch are dropped]
|
||||
|
||||
Signed-off-by: Shreenidhi Shedi <sshedi@vmware.com>
|
||||
---
|
||||
lib/rpmvs.c | 14 +++++++++++---
|
||||
1 file changed, 11 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/lib/rpmvs.c b/lib/rpmvs.c
|
||||
index 7255069fc..d2f4f3170 100644
|
||||
--- a/lib/rpmvs.c
|
||||
+++ b/lib/rpmvs.c
|
||||
@@ -451,7 +451,7 @@ int rpmvsVerify(struct rpmvs_s *sis, int type,
|
||||
{
|
||||
int failed = 0;
|
||||
int cont = 1;
|
||||
- int range = 0;
|
||||
+ int range = 0, vfylevel = sis->vfylevel;
|
||||
int verified[3] = { 0, 0, 0 };
|
||||
|
||||
/* sort for consistency and rough "better comes first" semantics*/
|
||||
@@ -478,6 +478,14 @@ int rpmvsVerify(struct rpmvs_s *sis, int type,
|
||||
}
|
||||
}
|
||||
|
||||
+ /* Unconditionally reject partially signed packages */
|
||||
+ if (verified[RPMSIG_SIGNATURE_TYPE])
|
||||
+ vfylevel |= RPMSIG_SIGNATURE_TYPE;
|
||||
+
|
||||
+ /* Cannot verify payload if RPMVSF_NEEDPAYLOAD is set */
|
||||
+ if (sis->vsflags & RPMVSF_NEEDPAYLOAD)
|
||||
+ range &= ~RPMSIG_PAYLOAD;
|
||||
+
|
||||
for (int i = 0; i < sis->nsigs && cont; i++) {
|
||||
struct rpmsinfo_s *sinfo = &sis->sigs[i];
|
||||
int strength = (sinfo->type | sinfo->strength);
|
||||
@@ -490,11 +498,11 @@ int rpmvsVerify(struct rpmvs_s *sis, int type,
|
||||
sinfo->rc = RPMRC_NOTFOUND;
|
||||
}
|
||||
|
||||
- if (sis->vfylevel & strength & RPMSIG_DIGEST_TYPE) {
|
||||
+ if (vfylevel & strength & RPMSIG_DIGEST_TYPE) {
|
||||
int missing = (range & ~verified[RPMSIG_DIGEST_TYPE]);
|
||||
required |= (missing & sinfo->range);
|
||||
}
|
||||
- if (sis->vfylevel & strength & RPMSIG_SIGNATURE_TYPE) {
|
||||
+ if (vfylevel & strength & RPMSIG_SIGNATURE_TYPE) {
|
||||
int missing = (range & ~verified[RPMSIG_SIGNATURE_TYPE]);
|
||||
required |= (missing & sinfo->range);
|
||||
}
|
||||
--
|
||||
2.17.1
|
||||
|
|
@ -1,41 +0,0 @@
|
|||
From b5c8eb30d3fd9fd40416916b47d9c62eef7a3545 Mon Sep 17 00:00:00 2001
|
||||
From: Shreenidhi Shedi <sshedi@vmware.com>
|
||||
Date: Fri, 11 Dec 2020 15:54:57 +0530
|
||||
Subject: [PATCH] find debuginfo do not generate dir entries
|
||||
|
||||
Signed-off-by: Shreenidhi Shedi <sshedi@vmware.com>
|
||||
---
|
||||
scripts/find-debuginfo.sh | 10 +++++-----
|
||||
1 file changed, 5 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/scripts/find-debuginfo.sh b/scripts/find-debuginfo.sh
|
||||
index e0c36ebb6..7c3c97628 100755
|
||||
--- a/scripts/find-debuginfo.sh
|
||||
+++ b/scripts/find-debuginfo.sh
|
||||
@@ -585,10 +585,10 @@ if [ -s "$SOURCEFILE" ]; then
|
||||
fi
|
||||
|
||||
if [ -d "${RPM_BUILD_ROOT}/usr/lib" ] || [ -d "${RPM_BUILD_ROOT}/usr/src" ]; then
|
||||
- ((nout > 0)) ||
|
||||
- test ! -d "${RPM_BUILD_ROOT}/usr/lib" ||
|
||||
- (cd "${RPM_BUILD_ROOT}/usr/lib"; find debug -type d) |
|
||||
- sed 's,^,%dir /usr/lib/,' >> "$LISTFILE"
|
||||
+# ((nout > 0)) ||
|
||||
+# test ! -d "${RPM_BUILD_ROOT}/usr/lib" ||
|
||||
+# (cd "${RPM_BUILD_ROOT}/usr/lib"; find debug -type d) |
|
||||
+# sed 's,^,%dir /usr/lib/,' >> "$LISTFILE"
|
||||
|
||||
(cd "${RPM_BUILD_ROOT}/usr"
|
||||
test ! -d lib/debug || find lib/debug ! -type d
|
||||
@@ -660,7 +660,7 @@ while ((i < nout)); do
|
||||
mv "${LISTFILE}.new" "$LISTFILE"
|
||||
((++i))
|
||||
done
|
||||
-if ((nout > 0)); then
|
||||
+if ((0 && nout > 0)); then
|
||||
# Generate %dir lines for each output list.
|
||||
generate_percent_dir()
|
||||
{
|
||||
--
|
||||
2.17.1
|
||||
|
|
@ -0,0 +1,68 @@
|
|||
From b093e00225b14fa4ecdd1cd48243e825c0729d86 Mon Sep 17 00:00:00 2001
|
||||
From: Shreenidhi Shedi <sshedi@vmware.com>
|
||||
Date: Thu, 3 Feb 2022 16:17:38 +0530
|
||||
Subject: [PATCH] Migrate rpmdb to /usr/lib/sysimage/rpm
|
||||
|
||||
Reference: https://fedoraproject.org/wiki/Changes/RelocateRPMToUsr
|
||||
|
||||
Signed-off-by: Shreenidhi Shedi <sshedi@vmware.com>
|
||||
---
|
||||
macros.in | 14 +++++++-------
|
||||
1 file changed, 7 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/macros.in b/macros.in
|
||||
index 22f675cdb..fc9c49930 100644
|
||||
--- a/macros.in
|
||||
+++ b/macros.in
|
||||
@@ -140,7 +140,7 @@
|
||||
%_buildshell /bin/sh
|
||||
|
||||
# The location of the rpm database file(s).
|
||||
-%_dbpath %{_var}/lib/rpm
|
||||
+%_dbpath %{_usr}/lib/sysimage/rpm
|
||||
|
||||
# The location of the rpm database file(s) after "rpm --rebuilddb".
|
||||
%_dbpath_rebuild %{_dbpath}
|
||||
@@ -330,7 +330,7 @@ package or when debugging this package.\
|
||||
|
||||
# A colon separated list of desired locales to be installed;
|
||||
# "all" means install all locale specific files.
|
||||
-#
|
||||
+#
|
||||
%_install_langs all
|
||||
|
||||
# Set ModularityLabel: for packages being build
|
||||
@@ -565,17 +565,17 @@ package or when debugging this package.\
|
||||
#%__find_conflicts ???
|
||||
#%__find_obsoletes ???
|
||||
|
||||
-#
|
||||
-# Path to file attribute classifications for automatic dependency
|
||||
+#
|
||||
+# Path to file attribute classifications for automatic dependency
|
||||
# extraction, used when _use_internal_dependency_generator
|
||||
# is used (on by default). Files can have any number of attributes
|
||||
# attached to them, and dependencies are separately extracted for
|
||||
# each attribute.
|
||||
-#
|
||||
+#
|
||||
# To define a new file attribute called "myattr", add a file named
|
||||
# "myattr" to this directory, defining the requires and/or provides
|
||||
# finder script(s) + magic and/or path pattern regex(es).
|
||||
-# provides finder and
|
||||
+# provides finder and
|
||||
# %__myattr_requires path + args to requires finder script for <myattr>
|
||||
# %__myattr_provides path + args to provides finder script for <myattr>
|
||||
# %__myattr_magic libmagic classification match regex
|
||||
@@ -1266,7 +1266,7 @@ end
|
||||
# -S<scm name> Sets the used patch application style, eg '-S git' enables
|
||||
# usage of git repository and per-patch commits.
|
||||
# -N Disable automatic patch application
|
||||
-# -p<num> Use -p<num> for patch application
|
||||
+# -p<num> Use -p<num> for patch application
|
||||
%autosetup(a:b:cDn:TvNS:p:)\
|
||||
%setup %{-a} %{-b} %{-c} %{-D} %{-n} %{-T} %{!-v:-q}\
|
||||
%{-S:%global __scm %{-S*}}\
|
||||
--
|
||||
2.25.1
|
||||
|
|
@ -1 +1 @@
|
|||
rpm-libs=4.16.1.3-1
|
||||
rpm-libs=4.17.0-1
|
||||
|
|
|
@ -1,15 +1,18 @@
|
|||
%define rpmhome %{_libdir}/rpm
|
||||
|
||||
Summary: Package manager
|
||||
Name: rpm
|
||||
Version: 4.16.1.3
|
||||
Release: 4%{?dist}
|
||||
Version: 4.17.1
|
||||
Release: 1%{?dist}
|
||||
License: GPLv2+
|
||||
URL: http://rpm.org
|
||||
Group: Applications/System
|
||||
Vendor: VMware, Inc.
|
||||
Distribution: Photon
|
||||
|
||||
Source0: https://github.com/rpm-software-management/rpm/archive/%{name}-%{version}.tar.gz
|
||||
%define sha1 %{name}=7aa50461dc5500ac5c1b5d4f475cc282add2673e
|
||||
Source0: https://github.com/rpm-software-management/rpm/archive/%{name}-%{version}.tar.bz2
|
||||
%define sha512 %{name}=d0429510140f25a25b6c9441abe2027d27c485bbd4969752f69e1c843435c9508b9f85e5bb68085dd64b7da533801aa5c04d8c9d962e08d2ddd3199d0265cc85
|
||||
|
||||
Source1: brp-strip-debug-symbols
|
||||
Source2: brp-strip-unneeded
|
||||
Source3: macros
|
||||
|
@ -17,33 +20,30 @@ Source4: macros.php
|
|||
Source5: macros.perl
|
||||
Source6: macros.vpath
|
||||
Source7: macros.ldconfig
|
||||
Source8: rpm-rebuilddb.sh
|
||||
Source9: rpmdb-rebuild.service
|
||||
Source10: rpm.conf
|
||||
Source11: lock.c
|
||||
Source8: rpmdb-rebuild.sh
|
||||
Source9: rpmdb-migrate.sh
|
||||
Source10: rpmdb-rebuild.service
|
||||
Source11: rpmdb-migrate.service
|
||||
Source12: rpm.conf
|
||||
Source13: lock.c
|
||||
|
||||
Patch0: find-debuginfo-do-not-generate-dir-entries.patch
|
||||
Patch1: Fix-OpenPGP-parsing-bugs.patch
|
||||
Patch2: Header-signatures-alone-are-not-sufficient.patch
|
||||
Patch3: Fix-regression-reading-rpm-v3.patch
|
||||
Patch4: rpmdb-rename-dir.patch
|
||||
Patch5: silence-warning.patch
|
||||
Patch6: sync-buf-cache.patch
|
||||
Patch7: wait-for-lock.patch
|
||||
Patch0: rpmdb-rename-dir.patch
|
||||
Patch1: silence-warning.patch
|
||||
Patch2: sync-buf-cache.patch
|
||||
Patch3: wait-for-lock.patch
|
||||
Patch4: migrate-rpmdb.patch
|
||||
|
||||
Requires: bash
|
||||
Requires: zstd-libs
|
||||
Requires: lua
|
||||
Requires: openssl >= 1.1.1
|
||||
Requires: libgcrypt
|
||||
Requires: %{name}-libs = %{version}-%{release}
|
||||
|
||||
BuildRequires: pandoc-bin
|
||||
BuildRequires: systemd-devel
|
||||
BuildRequires: dbus-devel >= 1.3
|
||||
BuildRequires: systemd-rpm-macros
|
||||
BuildRequires: libgcrypt-devel
|
||||
BuildRequires: lua-devel
|
||||
BuildRequires: libdb-devel
|
||||
BuildRequires: popt-devel
|
||||
BuildRequires: nss-devel
|
||||
BuildRequires: elfutils-devel
|
||||
|
@ -51,9 +51,12 @@ BuildRequires: libcap-devel
|
|||
BuildRequires: xz-devel
|
||||
BuildRequires: file-devel
|
||||
BuildRequires: python3-devel
|
||||
BuildRequires: openssl >= 1.1.1
|
||||
BuildRequires: openssl-devel >= 1.1.1
|
||||
BuildRequires: zstd-devel
|
||||
BuildRequires: sqlite-devel
|
||||
BuildRequires: debugedit
|
||||
BuildRequires: dwz
|
||||
BuildRequires: python3-setuptools
|
||||
|
||||
%description
|
||||
RPM package manager
|
||||
|
@ -78,15 +81,15 @@ Requires: bzip2-libs
|
|||
Requires: elfutils-libelf
|
||||
Requires: xz-libs
|
||||
Requires: zstd-libs
|
||||
Requires: (procps-ng or toybox)
|
||||
|
||||
Requires: (toybox or coreutils-selinux)
|
||||
Requires: (toybox or findutils)
|
||||
Requires: (toybox or sed)
|
||||
Conflicts: libsolv < 0.7.19
|
||||
|
||||
%description libs
|
||||
Shared libraries librpm and librpmio
|
||||
|
||||
%package build
|
||||
Summary: Binaries, scripts and libraries needed to build rpms.
|
||||
Requires: perl
|
||||
Requires: lua
|
||||
Requires: %{name}-devel = %{version}-%{release}
|
||||
|
@ -94,6 +97,9 @@ Requires: elfutils-libelf
|
|||
Requires: cpio
|
||||
Requires: systemd-rpm-macros
|
||||
Requires: python3-macros
|
||||
Requires: dwz
|
||||
Requires: debugedit
|
||||
Summary: Binaries, scripts and libraries needed to build rpms.
|
||||
|
||||
%description build
|
||||
Binaries, libraries and scripts to build rpms.
|
||||
|
@ -110,6 +116,7 @@ These are the additional language files of rpm.
|
|||
Summary: Python 3 bindings for rpm.
|
||||
Group: Development/Libraries
|
||||
Requires: python3
|
||||
Requires: python3-setuptools
|
||||
|
||||
%description -n python3-rpm
|
||||
Python3 rpm.
|
||||
|
@ -125,22 +132,17 @@ This plugin blocks systemd from entering idle, sleep or shutdown while an rpm
|
|||
transaction is running using the systemd-inhibit mechanism.
|
||||
|
||||
%prep
|
||||
%autosetup -p1 -n rpm-%{name}-%{version}
|
||||
%autosetup -p1 -n %{name}-%{version}
|
||||
|
||||
%build
|
||||
sed -i '/define _GNU_SOURCE/a #include "../config.h"' tools/sepdebugcrcfix.c
|
||||
# pass -L opts to gcc as well to prioritize it over standard libs
|
||||
sed -i 's/-Wl,-L//g' python/setup.py.in
|
||||
sed -i '/library_dirs/d' python/setup.py.in
|
||||
sed -i 's/extra_link_args/library_dirs/g' python/setup.py.in
|
||||
|
||||
# set default db to sqlite
|
||||
sed -i -e "/_db_backend/ s/ bdb/ sqlite/g" macros.in
|
||||
|
||||
sh autogen.sh --noconfigure
|
||||
%configure \
|
||||
CPPFLAGS='-I/usr/include/nspr -I/usr/include/nss -DLUA_COMPAT_APIINTCASTS' \
|
||||
--program-prefix= \
|
||||
--disable-dependency-tracking \
|
||||
--disable-static \
|
||||
--enable-python \
|
||||
|
@ -151,12 +153,14 @@ sh autogen.sh --noconfigure
|
|||
--without-archive \
|
||||
--enable-sqlite \
|
||||
--enable-bdb-ro \
|
||||
--enable-systemd-inhibit \
|
||||
--enable-plugins
|
||||
--enable-plugins \
|
||||
--with-crypto=openssl \
|
||||
--with-lua \
|
||||
--enable-nls
|
||||
|
||||
make %{?_smp_mflags}
|
||||
%make_build %{?_smp_mflags}
|
||||
|
||||
gcc -Wall -o lock %{SOURCE11}
|
||||
gcc -Wall -o lock %{SOURCE13}
|
||||
chmod 700 lock
|
||||
|
||||
pushd python
|
||||
|
@ -164,28 +168,37 @@ pushd python
|
|||
popd
|
||||
|
||||
%check
|
||||
make check %{?_smp_mflags}
|
||||
%if 0%{?with_check}
|
||||
make check TESTSUITEFLAGS=%{?_smp_mflags} || (cat tests/rpmtests.log; exit 1)
|
||||
make clean %{?_smp_mflags}
|
||||
%endif
|
||||
|
||||
%install
|
||||
make DESTDIR=%{buildroot} install %{?_smp_mflags}
|
||||
%make_install %{?_smp_mflags}
|
||||
find %{buildroot} -name '*.la' -delete
|
||||
|
||||
ln -sfv %{_bindir}/find-debuginfo %{buildroot}%{rpmhome}/find-debuginfo.sh
|
||||
|
||||
%find_lang %{name}
|
||||
|
||||
# System macros and prefix
|
||||
install -dm644 %{buildroot}%{_sysconfdir}/rpm
|
||||
install -vm755 %{SOURCE1} %{buildroot}%{_libdir}/rpm
|
||||
install -vm755 %{SOURCE2} %{buildroot}%{_libdir}/rpm
|
||||
install -vm644 %{SOURCE3} %{buildroot}%{_sysconfdir}/rpm
|
||||
install -vm644 %{SOURCE4} %{buildroot}%{_libdir}/rpm/macros.d
|
||||
install -vm644 %{SOURCE5} %{buildroot}%{_libdir}/rpm/macros.d
|
||||
install -vm644 %{SOURCE6} %{buildroot}%{_libdir}/rpm/macros.d
|
||||
install -vm644 %{SOURCE7} %{buildroot}%{_libdir}/rpm/macros.d
|
||||
install -vm644 %{SOURCE4} %{buildroot}%{rpmhome}/macros.d
|
||||
install -vm644 %{SOURCE5} %{buildroot}%{rpmhome}/macros.d
|
||||
install -vm644 %{SOURCE6} %{buildroot}%{rpmhome}/macros.d
|
||||
install -vm644 %{SOURCE7} %{buildroot}%{rpmhome}/macros.d
|
||||
install -vm755 %{SOURCE8} %{buildroot}%{_libdir}/rpm
|
||||
install -vm755 %{SOURCE9} %{buildroot}%{_libdir}/rpm
|
||||
|
||||
mkdir -p %{buildroot}%{_unitdir}
|
||||
install -vm644 %{SOURCE9} %{buildroot}/%{_unitdir}
|
||||
install -vm644 %{SOURCE10} %{buildroot}/%{_unitdir}
|
||||
install -vm644 %{SOURCE11} %{buildroot}/%{_unitdir}
|
||||
|
||||
mkdir -p %{buildroot}%{_sysconfdir}/tdnf/minversions.d
|
||||
install -vm644 %{SOURCE10} %{buildroot}%{_sysconfdir}/tdnf/minversions.d
|
||||
install -vm644 %{SOURCE12} %{buildroot}%{_sysconfdir}/tdnf/minversions.d
|
||||
mv lock %{buildroot}%{_libdir}/rpm
|
||||
|
||||
pushd python
|
||||
|
@ -195,14 +208,27 @@ popd
|
|||
%post libs -p /sbin/ldconfig
|
||||
%postun libs -p /sbin/ldconfig
|
||||
|
||||
%triggerun -- rpm-libs < 4.16.1.3-1
|
||||
if [ -x %{_bindir}/systemctl ]; then
|
||||
systemctl --no-reload preset rpmdb-rebuild || :
|
||||
%pre
|
||||
# Symlink all rpmdb files to the new location if we're still using /var/lib/rpm
|
||||
if [ -d %{_sharedstatedir}/rpm ]; then
|
||||
mkdir -p %{_libdir}/sysimage/rpm
|
||||
rpmdb_files=$(find %{_sharedstatedir}/rpm -maxdepth 1 -type f | sed 's|^/var/lib/rpm/||g' | sort)
|
||||
for fn in ${rpmdb_files[@]}; do
|
||||
ln -sfr %{_sharedstatedir}/rpm/${fn} %{_libdir}/sysimage/rpm/${fn}
|
||||
done
|
||||
fi
|
||||
|
||||
%posttrans libs
|
||||
if [ -f %{_sharedstatedir}/rpm/Packages ]; then
|
||||
nohup bash %{_libdir}/rpm/rpm-rebuilddb.sh &>/dev/null &
|
||||
if [ -x %{_bindir}/systemctl ]; then
|
||||
systemctl --no-reload preset rpmdb-rebuild || :
|
||||
fi
|
||||
nohup bash %{rpmhome}/rpmdb-rebuild.sh &>/dev/null &
|
||||
fi
|
||||
|
||||
if [ -d %{_sharedstatedir}/rpm ] && [ -x %{_bindir}/systemctl ]; then
|
||||
touch %{_sharedstatedir}/rpm/.migratedb
|
||||
systemctl --no-reload preset rpmdb-migrate || :
|
||||
fi
|
||||
|
||||
%clean
|
||||
|
@ -217,16 +243,21 @@ rm -rf %{buildroot}
|
|||
%{_bindir}/rpmkeys
|
||||
%{_bindir}/rpmquery
|
||||
%{_bindir}/rpmverify
|
||||
%{_libdir}/rpm/rpmpopt-*
|
||||
%{_libdir}/rpm/rpm.daily
|
||||
%{_libdir}/rpm/rpm.log
|
||||
%{_libdir}/rpm/rpm.supp
|
||||
%{_libdir}/rpm/rpm2cpio.sh
|
||||
%{_libdir}/rpm/tgpg
|
||||
%{_libdir}/rpm/platform
|
||||
%{rpmhome}/rpmpopt-*
|
||||
%{rpmhome}/rpm.daily
|
||||
%{rpmhome}/rpm.log
|
||||
%{rpmhome}/rpm.supp
|
||||
%{rpmhome}/rpm2cpio.sh
|
||||
%{rpmhome}/tgpg
|
||||
%{rpmhome}/platform
|
||||
%{_libdir}/rpm-plugins/ima.so
|
||||
%{_libdir}/rpm-plugins/syslog.so
|
||||
%{_libdir}/rpm-plugins/prioreset.so
|
||||
%{_libdir}/rpm-plugins/fsverity.so
|
||||
%exclude %{_libdir}/rpm-plugins/dbus_announce.so
|
||||
|
||||
%{_sysconfdir}/dbus-1/system.d/org.rpm.conf
|
||||
|
||||
%{_mandir}/man8/rpm2cpio.8.gz
|
||||
%{_mandir}/man8/rpmdb.8.gz
|
||||
%{_mandir}/man8/rpmgraph.8.gz
|
||||
|
@ -237,6 +268,7 @@ rm -rf %{buildroot}
|
|||
%{_mandir}/man8/rpm-plugin-syslog.8.gz
|
||||
%{_mandir}/man8/rpm-plugins.8.gz
|
||||
%{_mandir}/man8/rpm.8.gz
|
||||
%{_mandir}/man8/rpm-plugin-dbus-announce.8.gz
|
||||
%exclude %{_mandir}/fr/man8/*.gz
|
||||
%exclude %{_mandir}/ja/man8/*.gz
|
||||
%exclude %{_mandir}/ko/man8/*.gz
|
||||
|
@ -250,14 +282,16 @@ rm -rf %{buildroot}
|
|||
%config(noreplace) %{_sysconfdir}/rpm/macros
|
||||
%{_libdir}/librpmio.so.*
|
||||
%{_libdir}/librpm.so.*
|
||||
%{_libdir}/rpm/macros
|
||||
%{_libdir}/rpm/rpmrc
|
||||
%{_libdir}/rpm/rpmdb_*
|
||||
%{_libdir}/rpm/rpm-rebuilddb.sh
|
||||
%{_libdir}/rpm/lock
|
||||
%{rpmhome}/macros
|
||||
%{rpmhome}/rpmrc
|
||||
%{rpmhome}/rpmdb_*
|
||||
%{rpmhome}/rpmdb-rebuild.sh
|
||||
%{rpmhome}/rpmdb-migrate.sh
|
||||
%{rpmhome}/lock
|
||||
%{_bindir}/rpmdb
|
||||
%{_unitdir}/rpmdb-rebuild.service
|
||||
%{_sysconfdir}/tdnf/minversions.d/%{name}.conf
|
||||
%{_unitdir}/rpmdb-migrate.service
|
||||
%config(noreplace) %{_sysconfdir}/tdnf/minversions.d/%{name}.conf
|
||||
|
||||
%files build
|
||||
%{_bindir}/rpmbuild
|
||||
|
@ -265,31 +299,26 @@ rm -rf %{buildroot}
|
|||
%{_bindir}/rpmspec
|
||||
%{_libdir}/librpmbuild.so
|
||||
%{_libdir}/librpmbuild.so.*
|
||||
%{_libdir}/rpm/macros.d/*
|
||||
%{_libdir}/rpm/perl.req
|
||||
%{_libdir}/rpm/find-debuginfo.sh
|
||||
%{_libdir}/rpm/find-lang.sh
|
||||
%{_libdir}/rpm/find-provides
|
||||
%{_libdir}/rpm/find-requires
|
||||
%{_libdir}/rpm/brp-*
|
||||
%{_libdir}/rpm/fileattrs/*
|
||||
%{_libdir}/rpm/script.req
|
||||
%{_libdir}/rpm/check-buildroot
|
||||
%{_libdir}/rpm/check-files
|
||||
%{_libdir}/rpm/check-prereqs
|
||||
%{_libdir}/rpm/check-rpaths
|
||||
%{_libdir}/rpm/check-rpaths-worker
|
||||
%{_libdir}/rpm/debugedit
|
||||
%{_libdir}/rpm/elfdeps
|
||||
%{_libdir}/rpm/libtooldeps.sh
|
||||
%{_libdir}/rpm/mkinstalldirs
|
||||
%{_libdir}/rpm/pkgconfigdeps.sh
|
||||
%{_libdir}/rpm/ocamldeps.sh
|
||||
%{_libdir}/rpm/*.prov
|
||||
%{_libdir}/rpm/sepdebugcrcfix
|
||||
|
||||
%{_libdir}/rpm/rpmdeps
|
||||
%{_libdir}/rpm/pythondistdeps.py
|
||||
%{rpmhome}/macros.d/*
|
||||
%{rpmhome}/perl.req
|
||||
%{rpmhome}/find-lang.sh
|
||||
%{rpmhome}/find-provides
|
||||
%{rpmhome}/find-requires
|
||||
%{rpmhome}/brp-*
|
||||
%{rpmhome}/fileattrs/*
|
||||
%{rpmhome}/script.req
|
||||
%{rpmhome}/check-buildroot
|
||||
%{rpmhome}/check-files
|
||||
%{rpmhome}/check-prereqs
|
||||
%{rpmhome}/check-rpaths
|
||||
%{rpmhome}/check-rpaths-worker
|
||||
%{rpmhome}/elfdeps
|
||||
%{rpmhome}/mkinstalldirs
|
||||
%{rpmhome}/pkgconfigdeps.sh
|
||||
%{rpmhome}/ocamldeps.sh
|
||||
%{rpmhome}/*.prov
|
||||
%{rpmhome}/rpmdeps
|
||||
%{rpmhome}/find-debuginfo.sh
|
||||
|
||||
%{_mandir}/man1/gendiff.1*
|
||||
%{_mandir}/man8/rpmbuild.8*
|
||||
|
@ -318,6 +347,10 @@ rm -rf %{buildroot}
|
|||
%{_mandir}/man8/rpm-plugin-systemd-inhibit.8*
|
||||
|
||||
%changelog
|
||||
* Tue Feb 08 2022 Shreenidhi Shedi <sshedi@vmware.com> 4.17.1-1
|
||||
- Upgrade to v4.17.0
|
||||
- Migrate rpmdb location to /usr/lib/sysimage/rpm
|
||||
- More details at: https://fedoraproject.org/wiki/Changes/RelocateRPMToUsr
|
||||
* Tue Dec 21 2021 Shreenidhi Shedi <sshedi@vmware.com> 4.16.1.3-4
|
||||
- Further fix to rpm-rebuilddb.sh
|
||||
- Introduced a new locking method to handle contention while rebuilding db
|
||||
|
|
|
@ -0,0 +1,18 @@
|
|||
[Unit]
|
||||
Description=RPM database migration to /usr
|
||||
ConditionPathExists=/var/lib/rpm/.migratedb
|
||||
|
||||
# This should run before any daemons that may open the rpmdb
|
||||
DefaultDependencies=no
|
||||
After=sysinit.target
|
||||
Before=basic.target shutdown.target
|
||||
Conflicts=shutdown.target
|
||||
# In case /var is remote-mounted
|
||||
RequiresMountsFor=/var
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=/usr/lib/rpm/rpmdb-migrate.sh
|
||||
|
||||
[Install]
|
||||
WantedBy=basic.target
|
|
@ -0,0 +1,66 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Script to migrate rpmdb from /var/lib/rpm to new rpmdb path at /usr
|
||||
#set -x
|
||||
|
||||
# log file name
|
||||
log_fn="/var/log/rpmdb-migrate.log"
|
||||
|
||||
# redirect stderr & stdout to log file
|
||||
exec > "${log_fn}" 2>&1
|
||||
|
||||
sanity_check()
|
||||
{
|
||||
if command -v rpm &> /dev/null; then
|
||||
if rpm -q rpm &> /dev/null; then
|
||||
return 0
|
||||
fi
|
||||
fi
|
||||
|
||||
if command -v tdnf &> /dev/null; then
|
||||
if tdnf list installed tdnf --disablerepo=* &> /dev/null; then
|
||||
return 0
|
||||
fi
|
||||
fi
|
||||
|
||||
# should not reach here
|
||||
return 1
|
||||
}
|
||||
|
||||
main()
|
||||
{
|
||||
local dbpath_old="/var/lib/rpm"
|
||||
|
||||
if [ ! -f "${dbpath_old}/.migratedb" ]; then
|
||||
echo "${dbpath_old}/.migratedb not preset, exit"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
local dbpath_new="$(rpmdb -E '%_dbpath' 2>/dev/null)"
|
||||
|
||||
if [ "${dbpath_new}" = "${dbpath_old}" ]; then
|
||||
echo "RpmDB path is still at ${dbpath_new}, exit"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ -L "${dbpath_old}" ]; then
|
||||
echo "RpmDB has been migrated, exit"
|
||||
rm -f "${dbpath_old}/.migratedb"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if ! rpmdb --rebuilddb; then
|
||||
echo "ERROR: Failed to rebuild RpmDB" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if ! sanity_check; then
|
||||
echo "ERROR: sanity check failed" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
rm -rfv "${dbpath_old}"
|
||||
ln -sfr "${dbpath_new}" "${dbpath_old}"
|
||||
}
|
||||
|
||||
main
|
|
@ -1,6 +1,6 @@
|
|||
[Unit]
|
||||
Description=RPM database rebuild
|
||||
ConditionPathExists=/var/lib/rpm/.rebuilddb
|
||||
ConditionPathExists=/usr/lib/sysimage/rpm/.rebuilddb
|
||||
|
||||
# This should run before any daemons that may open the rpmdb
|
||||
DefaultDependencies=no
|
||||
|
@ -12,8 +12,8 @@ RequiresMountsFor=/var
|
|||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=/usr/bin/rpmdb --rebuilddb
|
||||
ExecStartPost=rm -f /var/lib/rpm/.rebuilddb
|
||||
ExecStart=/usr/lib/rpm/rpmdb-rebuild.sh
|
||||
ExecStartPost=rm -f /usr/lib/sysimage/rpm/.rebuilddb
|
||||
|
||||
[Install]
|
||||
WantedBy=basic.target
|
||||
|
|
|
@ -5,41 +5,22 @@
|
|||
#set -x
|
||||
|
||||
# log file name
|
||||
log_fn="/var/log/rpm-rebuilddb.log"
|
||||
log_fn="/var/log/rpmdb-rebuild.log"
|
||||
|
||||
# redirect stderr & stdout to log file
|
||||
exec > "${log_fn}" 2>&1
|
||||
|
||||
rpmdb_dir="$(rpmdb -E '%_dbpath' 2>/dev/null)"
|
||||
|
||||
# this serves as a key for systemd service
|
||||
if [ -x /usr/bin/systemctl ]; then
|
||||
touch /var/lib/rpm/.rebuilddb
|
||||
touch "${rpmdb_dir}/.rebuilddb"
|
||||
fi
|
||||
|
||||
rpm_lock_fn="/var/lib/rpm/.rpm.lock"
|
||||
rpm_lock_fn="${rpmdb_dir}/.rpm.lock"
|
||||
lock_bin="/usr/lib/rpm/lock"
|
||||
lock_flag="/var/run/.lkflg"
|
||||
|
||||
# Check if db operation is in progress
|
||||
# Timesout after 900 seconds
|
||||
check_if_db_operation_in_progress()
|
||||
{
|
||||
local retry=900
|
||||
|
||||
while [ "${retry}" -gt 0 ]; do
|
||||
if pgrep -x "tdnf|rpm|rpmdb" &> /dev/null; then
|
||||
echo -e "\nWARNING: tdnf/rpm is still running ..."
|
||||
retry=$((retry-1))
|
||||
sleep 1
|
||||
else
|
||||
echo -e "\nINFO: tdnf/rpm are not running, proceed to next step ..."
|
||||
return 0
|
||||
fi
|
||||
done
|
||||
|
||||
echo -e "\nERROR: tdnf/rpm is running from 15 minutes, retries exceeded ..."
|
||||
return 1
|
||||
}
|
||||
|
||||
# Sometimes rebuilddb succeeds but rpm options won't work
|
||||
# this is a simple sanity check
|
||||
sanity_check()
|
||||
|
@ -64,21 +45,22 @@ lpid=""
|
|||
|
||||
unlock()
|
||||
{
|
||||
rm -f "${lock_flag}"
|
||||
[ -f "${lock_flag}" ] && rm -f "${lock_flag}"
|
||||
kill -9 "${lpid}"
|
||||
}
|
||||
|
||||
get_lock()
|
||||
{
|
||||
local retry=100
|
||||
local retry=1500
|
||||
|
||||
# remove "$lock_flag" file to ensure that there is no leftover
|
||||
rm -f "${lock_flag}"
|
||||
[ -f "${lock_flag}" ] && rm -f "${lock_flag}"
|
||||
|
||||
"${lock_bin}" "${rpm_lock_fn}" &
|
||||
lpid="$!"
|
||||
|
||||
# 20 second max delay
|
||||
# 5 min max delay
|
||||
# while building ova & other images, transactions take time
|
||||
while [ "${retry}" -gt 0 ]; do
|
||||
if [ -f "${lock_flag}" ]; then
|
||||
return 0
|
||||
|
@ -87,7 +69,8 @@ get_lock()
|
|||
retry=$((retry-1))
|
||||
done
|
||||
|
||||
echo -e "\nERROR: failed to get lock ..."
|
||||
unlock
|
||||
echo -e "\nERROR: failed to get lock"
|
||||
exit 1
|
||||
}
|
||||
|
||||
|
@ -104,12 +87,16 @@ try_rpm_rebuilddb()
|
|||
{
|
||||
local retry=10
|
||||
local backup_dir=""
|
||||
local rpmdb_dir="/var/lib/rpm"
|
||||
|
||||
if [ -x /usr/bin/systemctl ] && [ ! -f "${rpmdb_dir}/.rebuilddb" ]; then
|
||||
echo "${rpmdb_dir}/.rebuilddb doesn't exist, quit"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# need 6 Xs, toybox mktemp doesn't work with 4 Xs
|
||||
backup_dir="$(mktemp -d -p /var/lib .rpmdbXXXXXX)"
|
||||
backup_dir="$(mktemp -d -p "${rpmdb_dir}"/.. .rpmdbXXXXXX)"
|
||||
if [ "$?" -ne 0 ]; then
|
||||
echo -e "\nERROR: failed to create backup directory ..."
|
||||
echo -e "\nERROR: failed to create backup directory"
|
||||
return 1
|
||||
fi
|
||||
|
||||
|
@ -124,22 +111,16 @@ try_rpm_rebuilddb()
|
|||
|
||||
if ! cp -ar "${rpmdb_dir}"/* "${backup_dir}"; then
|
||||
unlock
|
||||
rm -rf "${backup_dir}"
|
||||
echo -e "\nERROR: failed to copy contents to backup directory ..."
|
||||
[ -d "${backup_dir}" ] && rm -rf "${backup_dir}"
|
||||
echo -e "\nERROR: failed to copy contents to backup directory"
|
||||
return 1
|
||||
fi
|
||||
unlock
|
||||
fi
|
||||
|
||||
echo -e "\nINFO: took backup of rpmdb at ${backup_dir} ..."
|
||||
echo -e "\nINFO: took backup of rpmdb at ${backup_dir}"
|
||||
|
||||
while [ "${retry}" -gt 0 ]; do
|
||||
while true; do
|
||||
if ! pgrep -x "tdnf|rpm|rpmdb" &> /dev/null; then
|
||||
break
|
||||
fi
|
||||
sleep 0.1
|
||||
done
|
||||
|
||||
if rpmdb --rebuilddb; then
|
||||
if get_lock; then
|
||||
|
@ -147,25 +128,33 @@ try_rpm_rebuilddb()
|
|||
unlock
|
||||
|
||||
rm -rf "${backup_dir}" "${rpmdb_dir}"/.rebuilddb
|
||||
echo -e "\nINFO: rpmdb --rebuild success ..."
|
||||
|
||||
if [ "${rpmdb_dir}" = "/usr/lib/sysimage/rpm" ]; then
|
||||
rm -rf "/var/lib/rpm"
|
||||
ln -sfr "${rpmdb_dir}" "/var/lib/rpm"
|
||||
fi
|
||||
|
||||
echo -e "\nINFO: rpmdb --rebuild success"
|
||||
return 0
|
||||
fi
|
||||
|
||||
local err=0
|
||||
echo -e "\n--- ERROR: SOMETHING WENT TOTALLY WRONG --"
|
||||
echo "Trying to restore RPMDB from backup directory ..."
|
||||
echo -e "\n--- ERROR: SOMETHING WENT TOTALLY WRONG ---"
|
||||
echo "Trying to restore RPMDB from backup directory"
|
||||
|
||||
rm -rf "${rpmdb_dir}"/*
|
||||
if [ "${rpmdb_dir}" = "/var/lib/rpm" ] || [ "${rpmdb_dir}" = "/usr/lib/sysimage/rpm" ]; then
|
||||
rm -f "${rpmdb_dir}"/*
|
||||
fi
|
||||
|
||||
if ! cp -ar "${backup_dir}"/* "${rpmdb_dir}"; then
|
||||
err=1
|
||||
echo -e "\nERROR: failed copy contents from ${backup_dir} to ${rpmdb_dir} ..."
|
||||
echo -e "\nERROR: failed copy contents from ${backup_dir} to ${rpmdb_dir}"
|
||||
else
|
||||
rm -rf "${backup_dir}"
|
||||
[ -d "${backup_dir}" ] && rm -rf "${backup_dir}"
|
||||
fi
|
||||
|
||||
if [ "${err}" -eq 0 ]; then
|
||||
echo -e "\nINFO: Revert from backup directory success ..."
|
||||
echo -e "\nINFO: Revert from backup directory success"
|
||||
fi
|
||||
|
||||
unlock
|
||||
|
@ -173,9 +162,11 @@ try_rpm_rebuilddb()
|
|||
fi
|
||||
fi
|
||||
|
||||
rm -rf /var/lib/rpmrebuilddb.*
|
||||
if ls "${rpmdb_dir}"/../rpmrebuilddb.* &> /dev/null; then
|
||||
rm -rf "${rpmdb_dir}"/../rpmrebuilddb.*
|
||||
fi
|
||||
|
||||
echo -e "\nERROR: failed to rebuild rpmdb, retrying ..."
|
||||
echo -e "\nERROR: failed to rebuild rpmdb, retrying"
|
||||
retry=$((retry-1))
|
||||
|
||||
done
|
||||
|
@ -183,4 +174,4 @@ try_rpm_rebuilddb()
|
|||
return 1
|
||||
}
|
||||
|
||||
check_if_db_operation_in_progress && try_rpm_rebuilddb
|
||||
try_rpm_rebuilddb
|
|
@ -1,6 +1,6 @@
|
|||
From bde4ceb58576e365f156fc05486f49800e16ca03 Mon Sep 17 00:00:00 2001
|
||||
From 1f42872d9902c93d66f0494f6ab3a07b0864cc64 Mon Sep 17 00:00:00 2001
|
||||
From: Shreenidhi Shedi <sshedi@vmware.com>
|
||||
Date: Fri, 13 Aug 2021 17:16:33 +0530
|
||||
Date: Mon, 13 Dec 2021 16:41:52 +0530
|
||||
Subject: [PATCH] lib/rpmdb.c: use a fallback method for renaming directories
|
||||
|
||||
While migrating rpm db from BDB to SQLITE in a docker container rename
|
||||
|
@ -39,7 +39,7 @@ Signed-off-by: Shreenidhi Shedi <sshedi@vmware.com>
|
|||
2 files changed, 306 insertions(+), 21 deletions(-)
|
||||
|
||||
diff --git a/lib/rpmdb.c b/lib/rpmdb.c
|
||||
index 38e1cb5..710c894 100644
|
||||
index 2fa1f00fa..60867119b 100644
|
||||
--- a/lib/rpmdb.c
|
||||
+++ b/lib/rpmdb.c
|
||||
@@ -9,6 +9,15 @@
|
||||
|
@ -306,7 +306,7 @@ index 38e1cb5..710c894 100644
|
|||
static int buildIndexes(rpmdb db)
|
||||
{
|
||||
int rc = 0;
|
||||
@@ -494,7 +744,7 @@ static int openDatabase(const char * prefix,
|
||||
@@ -492,7 +742,7 @@ static int openDatabase(const char * prefix,
|
||||
|
||||
if (dbp)
|
||||
*dbp = NULL;
|
||||
|
@ -315,7 +315,7 @@ index 38e1cb5..710c894 100644
|
|||
return 1;
|
||||
|
||||
db = newRpmdb(prefix, dbpath, mode, perms, flags);
|
||||
@@ -572,7 +822,7 @@ int rpmdbVerify(const char * prefix)
|
||||
@@ -570,7 +820,7 @@ int rpmdbVerify(const char * prefix)
|
||||
|
||||
if (db != NULL) {
|
||||
int xx;
|
||||
|
@ -324,7 +324,7 @@ index 38e1cb5..710c894 100644
|
|||
if (db->db_pkgs)
|
||||
rc += dbiVerify(db->db_pkgs, 0);
|
||||
rc += dbiForeach(db->db_indexes, db->db_ndbi, dbiVerify, 0);
|
||||
@@ -585,7 +835,7 @@ int rpmdbVerify(const char * prefix)
|
||||
@@ -583,7 +833,7 @@ int rpmdbVerify(const char * prefix)
|
||||
}
|
||||
|
||||
Header rpmdbGetHeaderAt(rpmdb db, unsigned int offset)
|
||||
|
@ -333,7 +333,7 @@ index 38e1cb5..710c894 100644
|
|||
rpmdbMatchIterator mi = rpmdbInitIterator(db, RPMDBI_PACKAGES,
|
||||
&offset, sizeof(offset));
|
||||
Header h = headerLink(rpmdbNextIterator(mi));
|
||||
@@ -758,7 +1008,7 @@ static rpmRC dbiFindMatches(rpmdb db, dbiIndex dbi,
|
||||
@@ -755,7 +1005,7 @@ static rpmRC dbiFindMatches(rpmdb db, dbiIndex dbi,
|
||||
/* No matches on the name, anything else wont match either */
|
||||
if (rc != RPMRC_OK)
|
||||
goto exit;
|
||||
|
@ -342,7 +342,7 @@ index 38e1cb5..710c894 100644
|
|||
/* If we got matches on name and nothing else was specified, we're done */
|
||||
if (epoch < 0 && version == NULL && release == NULL && arch == NULL)
|
||||
goto exit;
|
||||
@@ -1303,7 +1553,7 @@ int rpmdbSetIteratorRE(rpmdbMatchIterator mi, rpmTagVal tag,
|
||||
@@ -1300,7 +1550,7 @@ int rpmdbSetIteratorRE(rpmdbMatchIterator mi, rpmTagVal tag,
|
||||
mi->mi_re = xrealloc(mi->mi_re, (mi->mi_nre + 1) * sizeof(*mi->mi_re));
|
||||
mire = mi->mi_re + mi->mi_nre;
|
||||
mi->mi_nre++;
|
||||
|
@ -351,7 +351,7 @@ index 38e1cb5..710c894 100644
|
|||
mire->tag = tag;
|
||||
mire->mode = mode;
|
||||
mire->pattern = allpat;
|
||||
@@ -1755,7 +2005,7 @@ static rpmdbMatchIterator indexIterInit(rpmdb db, rpmDbiTagVal rpmtag,
|
||||
@@ -1752,7 +2002,7 @@ static rpmdbMatchIterator indexIterInit(rpmdb db, rpmDbiTagVal rpmtag,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -360,10 +360,10 @@ index 38e1cb5..710c894 100644
|
|||
return mi;
|
||||
}
|
||||
|
||||
@@ -1814,9 +2064,9 @@ rpmdbMatchIterator rpmdbInitPrefixIterator(rpmdb db, rpmDbiTagVal rpmtag,
|
||||
@@ -1811,9 +2061,9 @@ rpmdbMatchIterator rpmdbInitPrefixIterator(rpmdb db, rpmDbiTagVal rpmtag,
|
||||
* Convert current tag data to db key
|
||||
* @param tagdata Tag data container
|
||||
* @retval keylen Length of key
|
||||
* @param[out] keylen Length of key
|
||||
- * @return Pointer to key value or NULL to signal skip
|
||||
+ * @return Pointer to key value or NULL to signal skip
|
||||
*/
|
||||
|
@ -372,7 +372,7 @@ index 38e1cb5..710c894 100644
|
|||
{
|
||||
const void * data = NULL;
|
||||
unsigned int size = 0;
|
||||
@@ -1964,7 +2214,7 @@ int rpmdbIndexIteratorNextTd(rpmdbIndexIterator ii, rpmtd keytd)
|
||||
@@ -1961,7 +2211,7 @@ int rpmdbIndexIteratorNextTd(rpmdbIndexIterator ii, rpmtd keytd)
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -381,7 +381,7 @@ index 38e1cb5..710c894 100644
|
|||
return rc;
|
||||
}
|
||||
|
||||
@@ -2042,11 +2292,11 @@ static void logAddRemove(const char *dbiname, int removing, rpmtd tagdata)
|
||||
@@ -2039,11 +2289,11 @@ static void logAddRemove(const char *dbiname, int removing, rpmtd tagdata)
|
||||
rpm_count_t c = rpmtdCount(tagdata);
|
||||
if (c == 1 && rpmtdType(tagdata) == RPM_STRING_TYPE) {
|
||||
rpmlog(RPMLOG_DEBUG, "%s \"%s\" %s %s index.\n",
|
||||
|
@ -395,7 +395,7 @@ index 38e1cb5..710c894 100644
|
|||
removing ? "from" : "to", dbiname);
|
||||
}
|
||||
}
|
||||
@@ -2319,7 +2569,7 @@ int rpmdbAdd(rpmdb db, Header h)
|
||||
@@ -2316,7 +2566,7 @@ int rpmdbAdd(rpmdb db, Header h)
|
||||
ret = pkgdbOpen(db, 0, &dbi);
|
||||
if (ret)
|
||||
goto exit;
|
||||
|
@ -404,7 +404,7 @@ index 38e1cb5..710c894 100644
|
|||
rpmsqBlock(SIG_BLOCK);
|
||||
dbCtrl(db, DB_CTRL_LOCK_RW);
|
||||
|
||||
@@ -2329,7 +2579,7 @@ int rpmdbAdd(rpmdb db, Header h)
|
||||
@@ -2326,7 +2576,7 @@ int rpmdbAdd(rpmdb db, Header h)
|
||||
dbiCursorFree(dbi, dbc);
|
||||
|
||||
/* Add associated data to secondary indexes */
|
||||
|
@ -413,7 +413,7 @@ index 38e1cb5..710c894 100644
|
|||
for (int dbix = 0; dbix < db->db_ndbi; dbix++) {
|
||||
rpmDbiTag rpmtag = db->db_tags[dbix];
|
||||
|
||||
@@ -2375,7 +2625,7 @@ static int rpmdbRemoveFiles(char * pattern)
|
||||
@@ -2372,7 +2622,7 @@ static int rpmdbRemoveFiles(char * pattern)
|
||||
|
||||
static int rpmdbRemoveDatabase(const char *dbpath)
|
||||
{
|
||||
|
@ -422,7 +422,7 @@ index 38e1cb5..710c894 100644
|
|||
char *pattern;
|
||||
|
||||
pattern = rpmGetPath(dbpath, "/*", NULL);
|
||||
@@ -2384,11 +2634,23 @@ static int rpmdbRemoveDatabase(const char *dbpath)
|
||||
@@ -2381,11 +2631,23 @@ static int rpmdbRemoveDatabase(const char *dbpath)
|
||||
pattern = rpmGetPath(dbpath, "/.??*", NULL);
|
||||
rc += rpmdbRemoveFiles(pattern);
|
||||
free(pattern);
|
||||
|
@ -447,7 +447,7 @@ index 38e1cb5..710c894 100644
|
|||
static int rpmdbMoveDatabase(const char * prefix, const char * srcdbpath,
|
||||
const char * dbpath, const char * tmppath)
|
||||
{
|
||||
@@ -2401,14 +2663,14 @@ static int rpmdbMoveDatabase(const char * prefix, const char * srcdbpath,
|
||||
@@ -2398,14 +2660,14 @@ static int rpmdbMoveDatabase(const char * prefix, const char * srcdbpath,
|
||||
char * oldkeys = rpmGetPath(old, "/", "pubkeys", NULL);
|
||||
char * destkeys = rpmGetPath(dest, "/", "pubkeys", NULL);
|
||||
|
||||
|
@ -465,7 +465,7 @@ index 38e1cb5..710c894 100644
|
|||
if (xx) {
|
||||
rpmlog(RPMLOG_ERR, _("could also not restore old database from %s\n"),
|
||||
old);
|
||||
@@ -2419,7 +2681,7 @@ static int rpmdbMoveDatabase(const char * prefix, const char * srcdbpath,
|
||||
@@ -2416,7 +2678,7 @@ static int rpmdbMoveDatabase(const char * prefix, const char * srcdbpath,
|
||||
}
|
||||
|
||||
if (access(oldkeys, F_OK ) != -1) {
|
||||
|
@ -474,7 +474,7 @@ index 38e1cb5..710c894 100644
|
|||
if (xx) {
|
||||
rpmlog(RPMLOG_ERR, _("Could not get public keys from %s\n"), oldkeys);
|
||||
goto exit;
|
||||
@@ -2450,7 +2712,7 @@ static int rpmdbSetPermissions(char * src, char * dest)
|
||||
@@ -2447,7 +2709,7 @@ static int rpmdbSetPermissions(char * src, char * dest)
|
||||
struct stat st;
|
||||
int xx, rc = -1;
|
||||
char * filepath;
|
||||
|
@ -483,7 +483,7 @@ index 38e1cb5..710c894 100644
|
|||
if (stat(dest, &st) < 0)
|
||||
goto exit;
|
||||
if (stat(src, &st) < 0)
|
||||
@@ -2583,7 +2845,7 @@ int rpmdbRebuild(const char * prefix, rpmts ts,
|
||||
@@ -2580,7 +2842,7 @@ int rpmdbRebuild(const char * prefix, rpmts ts,
|
||||
rpmdbClose(newdb);
|
||||
|
||||
if (failed) {
|
||||
|
@ -493,7 +493,7 @@ index 38e1cb5..710c894 100644
|
|||
"remains in place\n"));
|
||||
|
||||
diff --git a/lib/rpmdb.h b/lib/rpmdb.h
|
||||
index 8e3ab5a..eb4dac2 100644
|
||||
index c8f838cac..bd91060ac 100644
|
||||
--- a/lib/rpmdb.h
|
||||
+++ b/lib/rpmdb.h
|
||||
@@ -251,6 +251,29 @@ int rpmdbStat(const char *prefix, struct stat *statbuf);
|
||||
|
@ -527,5 +527,5 @@ index 8e3ab5a..eb4dac2 100644
|
|||
}
|
||||
#endif
|
||||
--
|
||||
2.17.1
|
||||
2.25.1
|
||||
|
||||
|
|
|
@ -1,17 +1,19 @@
|
|||
Summary: Rocket-fast system for log processing
|
||||
Name: rsyslog
|
||||
Version: 8.2202.0
|
||||
Release: 1%{?dist}
|
||||
Release: 2%{?dist}
|
||||
License: GPLv3+ and ASL 2.0
|
||||
URL: http://www.rsyslog.com/
|
||||
Source0: http://www.rsyslog.com/files/download/rsyslog/%{name}-%{version}.tar.gz
|
||||
%define sha512 rsyslog=b1c68099236cc0722f52822f8b46d7f2a4a023e0809907f2b0173d5593df3c6f914516310bd832ac028252fb2c467dc90756d4472950e4244f3919b328a8bd6e
|
||||
Source1: rsyslog.service
|
||||
Source2: 50-rsyslog-journald.conf
|
||||
Source3: rsyslog.conf
|
||||
URL: http://www.rsyslog.com
|
||||
Group: System Environment/Base
|
||||
Vendor: VMware, Inc.
|
||||
Distribution: Photon
|
||||
|
||||
Source0: http://www.rsyslog.com/files/download/rsyslog/%{name}-%{version}.tar.gz
|
||||
%define sha512 %{name}=b1c68099236cc0722f52822f8b46d7f2a4a023e0809907f2b0173d5593df3c6f914516310bd832ac028252fb2c467dc90756d4472950e4244f3919b328a8bd6e
|
||||
Source1: rsyslog.service
|
||||
Source2: 50-rsyslog-journald.conf
|
||||
Source3: rsyslog.conf
|
||||
|
||||
BuildRequires: systemd-devel
|
||||
BuildRequires: libestr-devel
|
||||
BuildRequires: libfastjson-devel
|
||||
|
@ -21,6 +23,8 @@ BuildRequires: librelp-devel
|
|||
BuildRequires: autogen
|
||||
BuildRequires: gnutls-devel
|
||||
BuildRequires: curl-devel
|
||||
BuildRequires: libgpg-error-devel
|
||||
|
||||
Requires: gnutls
|
||||
Requires: systemd
|
||||
Requires: libestr
|
||||
|
@ -28,6 +32,7 @@ Requires: libfastjson
|
|||
Requires: libgcrypt
|
||||
Requires: liblogging
|
||||
Requires: librelp
|
||||
Requires: libgpg-error
|
||||
|
||||
%description
|
||||
RSYSLOG is the rocket-fast system for log processing.
|
||||
|
@ -56,17 +61,19 @@ make %{?_smp_mflags}
|
|||
|
||||
%install
|
||||
make DESTDIR=%{buildroot} install %{?_smp_mflags}
|
||||
install -vd %{buildroot}%{_libdir}/systemd/system/
|
||||
install -vd %{buildroot}%{_sysconfdir}/systemd/journald.conf.d/
|
||||
install -vd %{buildroot}%{_unitdir}
|
||||
install -vd %{buildroot}%{_sysconfdir}/systemd/journald.conf.d
|
||||
install -vd %{buildroot}%{_sysconfdir}/rsyslog.d
|
||||
rm -f %{buildroot}/lib/systemd/system/rsyslog.service
|
||||
install -p -m 644 %{SOURCE1} %{buildroot}%{_libdir}/systemd/system/
|
||||
install -p -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/systemd/journald.conf.d/
|
||||
rm -f %{buildroot}%{_unitdir}/rsyslog.service
|
||||
install -p -m 644 %{SOURCE1} %{buildroot}%{_unitdir}
|
||||
install -p -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/systemd/journald.conf.d
|
||||
install -p -m 644 %{SOURCE3} %{buildroot}%{_sysconfdir}/rsyslog.conf
|
||||
find %{buildroot} -name '*.la' -delete
|
||||
|
||||
%check
|
||||
%if 0%{?with_check}
|
||||
make %{?_smp_mflags} check
|
||||
%endif
|
||||
|
||||
%post
|
||||
/sbin/ldconfig
|
||||
|
@ -85,68 +92,70 @@ make %{?_smp_mflags} check
|
|||
%{_libdir}/rsyslog/*.so
|
||||
%{_mandir}/man5/*
|
||||
%{_mandir}/man8/*
|
||||
%{_libdir}/systemd/system/rsyslog.service
|
||||
%{_unitdir}/rsyslog.service
|
||||
%dir %{_sysconfdir}/rsyslog.d
|
||||
%{_sysconfdir}/systemd/journald.conf.d/*
|
||||
%config(noreplace) %{_sysconfdir}/rsyslog.conf
|
||||
|
||||
%changelog
|
||||
* Tue Apr 19 2022 Gerrit Photon <photon-checkins@vmware.com> 8.2202.0-1
|
||||
- Automatic Version Bump
|
||||
* Mon Nov 15 2021 Satya Naga Vasamsetty <svasamsetty@vmware.com> 8.2110.0-2
|
||||
- Bump up release for openssl
|
||||
* Fri Nov 12 2021 Tapas Kundu <tkundu@vmware.com> 8.2110.0-1
|
||||
- Update to 8.2110.0
|
||||
* Thu Jun 24 2021 Tapas Kundu <tkundu@vmware.com> 8.2106.0-1
|
||||
- Update to 8.2106.0
|
||||
* Tue Apr 13 2021 Gerrit Photon <photon-checkins@vmware.com> 8.2104.0-1
|
||||
- Automatic Version Bump
|
||||
* Mon Oct 05 2020 Keerthana K <keerthanak@vmware.com> 8.2008.0-2
|
||||
- Adding rsyslog.d directory
|
||||
* Wed Aug 26 2020 Gerrit Photon <photon-checkins@vmware.com> 8.2008.0-1
|
||||
- Automatic Version Bump
|
||||
* Mon Jun 22 2020 Gerrit Photon <photon-checkins@vmware.com> 8.2006.0-1
|
||||
- Automatic Version Bump
|
||||
* Mon Jan 27 2020 Tapas Kundu <tkundu@vmware.com> 8.2001.0-1
|
||||
- Update to 8.2001.0
|
||||
* Mon Dec 23 2019 Tapas Kundu <tkundu@vmware.com> 8.1910.0-4
|
||||
- Fix typo in conf file.
|
||||
* Thu Nov 21 2019 Tapas Kundu <tkundu@vmware.com> 8.1910.0-3
|
||||
- Added config noreplace for rsyslog.conf
|
||||
* Mon Nov 04 2019 Tapas Kundu <tkundu@vmware.com> 8.1910.0-2
|
||||
- Built with imtcp and openssl
|
||||
- Added patch to fix openssl version in rsyslog source
|
||||
* Wed Oct 16 2019 Tapas Kundu <tkundu@vmware.com> 8.1910.0-1
|
||||
- Update to 8.1910.0 release
|
||||
- Fix CVE-2019-17041 and CVE-2019-17042
|
||||
* Fri Oct 04 2019 Keerthana K <keerthanak@vmware.com> 8.1907.0-1
|
||||
- Update to 8.1907.0
|
||||
- Fix CVE-2019-17040
|
||||
* Mon Sep 10 2018 Keerthana K <keerthanak@vmware.com> 8.37.0-1
|
||||
- Updated to version 8.37.0
|
||||
* Thu Apr 12 2018 Xiaolin Li <xiaolinl@vmware.com> 8.26.0-5
|
||||
- Add $IncludeConfig /etc/rsyslog.d/ to rsyslog.conf
|
||||
* Fri Dec 15 2017 Anish Swaminathan <anishs@vmware.com> 8.26.0-4
|
||||
- Remove kill SIGHUP from service file
|
||||
* Mon Nov 13 2017 Xiaolin Li <xiaolinl@vmware.com> 8.26.0-3
|
||||
- Add a default rsyslog.conf.
|
||||
* Tue Aug 15 2017 Dheeraj Shetty <dheerajs@vmware.com> 8.26.0-2
|
||||
- Fix CVE-2017-12588
|
||||
* Mon Apr 24 2017 Siju Maliakkal <smaliakkal@vmware.com> 8.26.0-1
|
||||
- Update to latest
|
||||
* Fri Nov 18 2016 Anish Swaminathan <anishs@vmware.com> 8.15.0-7
|
||||
- Change systemd dependency
|
||||
* Wed Oct 05 2016 ChangLee <changlee@vmware.com> 8.15.0-6
|
||||
- Modified %check
|
||||
* Thu May 26 2016 Divya Thaluru <dthaluru@vmware.com> 8.15.0-5
|
||||
- Fixed logic to restart the active services after upgrade
|
||||
* Tue May 24 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 8.15.0-4
|
||||
- GA - Bump release of all rpms
|
||||
* Wed May 4 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 8.15.0-3
|
||||
- Use systemd macros for post, preun and postun to respect upgrades
|
||||
* Wed Feb 17 2016 Anish Swaminathan <anishs@vmware.com> 8.15.0-2
|
||||
- Add journald conf and new service file.
|
||||
* Mon Jan 11 2016 Xiaolin Li <xiaolinl@vmware.com> 8.15.0-1
|
||||
- Update rsyslog to 8.15.0
|
||||
* Wed Jun 17 2015 Divya Thaluru <dthaluru@vmware.com> 8.10.0-1
|
||||
- Initial build. First version
|
||||
* Sun May 29 2022 Shreenidhi Shedi <sshedi@vmware.com> 8.2202.0-2
|
||||
- Add libgpg-error-devel to BuildRequires
|
||||
* Tue Apr 19 2022 Gerrit Photon <photon-checkins@vmware.com> 8.2202.0-1
|
||||
- Automatic Version Bump
|
||||
* Mon Nov 15 2021 Satya Naga Vasamsetty <svasamsetty@vmware.com> 8.2110.0-2
|
||||
- Bump up release for openssl
|
||||
* Fri Nov 12 2021 Tapas Kundu <tkundu@vmware.com> 8.2110.0-1
|
||||
- Update to 8.2110.0
|
||||
* Thu Jun 24 2021 Tapas Kundu <tkundu@vmware.com> 8.2106.0-1
|
||||
- Update to 8.2106.0
|
||||
* Tue Apr 13 2021 Gerrit Photon <photon-checkins@vmware.com> 8.2104.0-1
|
||||
- Automatic Version Bump
|
||||
* Mon Oct 05 2020 Keerthana K <keerthanak@vmware.com> 8.2008.0-2
|
||||
- Adding rsyslog.d directory
|
||||
* Wed Aug 26 2020 Gerrit Photon <photon-checkins@vmware.com> 8.2008.0-1
|
||||
- Automatic Version Bump
|
||||
* Mon Jun 22 2020 Gerrit Photon <photon-checkins@vmware.com> 8.2006.0-1
|
||||
- Automatic Version Bump
|
||||
* Mon Jan 27 2020 Tapas Kundu <tkundu@vmware.com> 8.2001.0-1
|
||||
- Update to 8.2001.0
|
||||
* Mon Dec 23 2019 Tapas Kundu <tkundu@vmware.com> 8.1910.0-4
|
||||
- Fix typo in conf file.
|
||||
* Thu Nov 21 2019 Tapas Kundu <tkundu@vmware.com> 8.1910.0-3
|
||||
- Added config noreplace for rsyslog.conf
|
||||
* Mon Nov 04 2019 Tapas Kundu <tkundu@vmware.com> 8.1910.0-2
|
||||
- Built with imtcp and openssl
|
||||
- Added patch to fix openssl version in rsyslog source
|
||||
* Wed Oct 16 2019 Tapas Kundu <tkundu@vmware.com> 8.1910.0-1
|
||||
- Update to 8.1910.0 release
|
||||
- Fix CVE-2019-17041 and CVE-2019-17042
|
||||
* Fri Oct 04 2019 Keerthana K <keerthanak@vmware.com> 8.1907.0-1
|
||||
- Update to 8.1907.0
|
||||
- Fix CVE-2019-17040
|
||||
* Mon Sep 10 2018 Keerthana K <keerthanak@vmware.com> 8.37.0-1
|
||||
- Updated to version 8.37.0
|
||||
* Thu Apr 12 2018 Xiaolin Li <xiaolinl@vmware.com> 8.26.0-5
|
||||
- Add $IncludeConfig /etc/rsyslog.d/ to rsyslog.conf
|
||||
* Fri Dec 15 2017 Anish Swaminathan <anishs@vmware.com> 8.26.0-4
|
||||
- Remove kill SIGHUP from service file
|
||||
* Mon Nov 13 2017 Xiaolin Li <xiaolinl@vmware.com> 8.26.0-3
|
||||
- Add a default rsyslog.conf.
|
||||
* Tue Aug 15 2017 Dheeraj Shetty <dheerajs@vmware.com> 8.26.0-2
|
||||
- Fix CVE-2017-12588
|
||||
* Mon Apr 24 2017 Siju Maliakkal <smaliakkal@vmware.com> 8.26.0-1
|
||||
- Update to latest
|
||||
* Fri Nov 18 2016 Anish Swaminathan <anishs@vmware.com> 8.15.0-7
|
||||
- Change systemd dependency
|
||||
* Wed Oct 05 2016 ChangLee <changlee@vmware.com> 8.15.0-6
|
||||
- Modified %check
|
||||
* Thu May 26 2016 Divya Thaluru <dthaluru@vmware.com> 8.15.0-5
|
||||
- Fixed logic to restart the active services after upgrade
|
||||
* Tue May 24 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 8.15.0-4
|
||||
- GA - Bump release of all rpms
|
||||
* Wed May 4 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 8.15.0-3
|
||||
- Use systemd macros for post, preun and postun to respect upgrades
|
||||
* Wed Feb 17 2016 Anish Swaminathan <anishs@vmware.com> 8.15.0-2
|
||||
- Add journald conf and new service file.
|
||||
* Mon Jan 11 2016 Xiaolin Li <xiaolinl@vmware.com> 8.15.0-1
|
||||
- Update rsyslog to 8.15.0
|
||||
* Wed Jun 17 2015 Divya Thaluru <dthaluru@vmware.com> 8.10.0-1
|
||||
- Initial build. First version
|
||||
|
|
|
@ -1,23 +1,27 @@
|
|||
Summary: Ruby
|
||||
Name: ruby
|
||||
Version: 2.7.1
|
||||
Release: 3%{?dist}
|
||||
Release: 4%{?dist}
|
||||
License: BSDL
|
||||
URL: https://www.ruby-lang.org/en/
|
||||
URL: https://www.ruby-lang.org/en
|
||||
Group: System Environment/Security
|
||||
Vendor: VMware, Inc.
|
||||
Distribution: Photon
|
||||
|
||||
Source0: https://cache.ruby-lang.org/pub/ruby/2.7/%{name}-%{version}.tar.bz2
|
||||
%define sha1 ruby=e83a084a4329e1e3f55591bf5ac0c8ebed6444b3
|
||||
%define sha512 %{name}=4af568f5210379239531dbc54d35739f6ff7ab1d7ffcafc54fed2afeb2b30450d2df386504edf96a494465b3f5fd90cb030974668aa7a1fde5a6b042ea9ca858
|
||||
|
||||
Patch0: 0001-openssl-3.0.0-compatibility.patch
|
||||
|
||||
BuildRequires: openssl-devel
|
||||
BuildRequires: ca-certificates
|
||||
BuildRequires: readline-devel
|
||||
BuildRequires: readline
|
||||
BuildRequires: tzdata
|
||||
|
||||
Requires: ca-certificates
|
||||
Requires: openssl
|
||||
Requires: gmp
|
||||
Patch0: 0001-openssl-3.0.0-compatibility.patch
|
||||
|
||||
%description
|
||||
The Ruby package contains the Ruby development environment.
|
||||
|
@ -35,21 +39,24 @@ for f in `grep -ril "\/usr\/local\/bin\/ruby" ./libexec/`; do
|
|||
head -1 $f
|
||||
done
|
||||
%configure \
|
||||
--enable-shared \
|
||||
--docdir=%{_docdir}/%{name}-%{version} \
|
||||
--with-compress-debug-sections=no
|
||||
--enable-shared \
|
||||
--docdir=%{_docdir}/%{name}-%{version} \
|
||||
--with-compress-debug-sections=no
|
||||
|
||||
make %{?_smp_mflags} COPY="cp -p"
|
||||
|
||||
%install
|
||||
[ %{buildroot} != "/" ] && rm -rf %{buildroot}/*
|
||||
%make_install
|
||||
%make_install %{?_smp_mflags}
|
||||
|
||||
%check
|
||||
%if 0%{?with_check}
|
||||
chmod g+w . -R
|
||||
useradd test -G root -m
|
||||
sudo -u test make check TESTS="-v"
|
||||
sudo -u test make check TESTS="-v" %{?_smp_mflags}
|
||||
%endif
|
||||
|
||||
%post -p /sbin/ldconfig
|
||||
%post -p /sbin/ldconfig
|
||||
%postun -p /sbin/ldconfig
|
||||
|
||||
%clean
|
||||
|
@ -69,50 +76,52 @@ rm -rf %{buildroot}/*
|
|||
%{_mandir}/man5/*
|
||||
|
||||
%changelog
|
||||
* Fri Jun 04 2021 Satya Naga Vasamsetty <svasamsetty@vmware.com> 2.7.1-3
|
||||
- openssl 3.0.0 support
|
||||
* Tue Sep 29 2020 Satya Naga Vasamsetty <svasamsetty@vmware.com> 2.7.1-2
|
||||
- openssl 1.1.1
|
||||
* Tue Sep 01 2020 Sujay G <gsujay@vmware.com> 2.7.1-1
|
||||
- Bump version to 2.7.1
|
||||
* Fri Jul 17 2020 Ankit Jain <ankitja@vmware.com> 2.5.8-2
|
||||
- Added --with-compress-debug-sections=no to fix build issue
|
||||
* Wed May 13 2020 Sujay G <gsujay@vmware.com> 2.5.8-1
|
||||
- Bump version to 2.5.8
|
||||
* Tue Jan 01 2019 Sujay G <gsujay@vmware.com> 2.5.3-1
|
||||
- Update to version 2.5.3, to fix CVE-2018-16395 & CVE-2018-16396
|
||||
* Tue Sep 11 2018 srinidhira0 <srinidhir@vmware.com> 2.5.1-1
|
||||
- Update to version 2.5.1
|
||||
* Fri Jan 12 2018 Xiaolin Li <xiaolinl@vmware.com> 2.4.3-2
|
||||
- Fix CVE-2017-17790
|
||||
* Wed Jan 03 2018 Xiaolin Li <xiaolinl@vmware.com> 2.4.3-1
|
||||
- Update to version 2.4.3, fix CVE-2017-17405
|
||||
* Fri Sep 29 2017 Xiaolin Li <xiaolinl@vmware.com> 2.4.2-1
|
||||
- Update to version 2.4.2
|
||||
* Fri Sep 15 2017 Xiaolin Li <xiaolinl@vmware.com> 2.4.1-5
|
||||
- [security] CVE-2017-14064
|
||||
* Tue Sep 05 2017 Chang Lee <changlee@vmware.com> 2.4.1-4
|
||||
- Built with copy preserve mode and fixed %check
|
||||
* Mon Jul 24 2017 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 2.4.1-3
|
||||
- [security] CVE-2017-9228
|
||||
* Tue Jun 13 2017 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 2.4.1-2
|
||||
- [security] CVE-2017-9224,CVE-2017-9225
|
||||
- [security] CVE-2017-9227,CVE-2017-9229
|
||||
* Thu Apr 13 2017 Siju Maliakkal <smaliakkal@vmware.com> 2.4.1-1
|
||||
- Update to latest 2.4.1
|
||||
* Wed Jan 18 2017 Anish Swaminathan <anishs@vmware.com> 2.4.0-1
|
||||
- Update to 2.4.0 - Fixes CVE-2016-2339
|
||||
* Mon Oct 10 2016 ChangLee <changlee@vmware.com> 2.3.0-4
|
||||
- Modified %check
|
||||
* Tue May 24 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 2.3.0-3
|
||||
- GA - Bump release of all rpms
|
||||
* Wed Mar 09 2016 Divya Thaluru <dthaluru@vmware.com> 2.3.0-2
|
||||
- Adding readline support
|
||||
* Wed Jan 20 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 2.3.0-1
|
||||
- Updated to 2.3.0-1
|
||||
* Tue Apr 28 2015 Fabio Rapposelli <fabio@vmware.com> 2.2.1-2
|
||||
- Added SSL support
|
||||
* Mon Apr 6 2015 Mahmoud Bassiouny <mbassiouny@vmware.com> 2.2.1-1
|
||||
- Version upgrade to 2.2.1
|
||||
* Fri Oct 10 2014 Divya Thaluru <dthaluru@vmware.com> 2.1.3-1
|
||||
- Initial build. First version
|
||||
* Sat Feb 12 2022 Shreenidhi Shedi <sshedi@vmware.com> 2.7.1-4
|
||||
- Drop libdb support
|
||||
* Fri Jun 04 2021 Satya Naga Vasamsetty <svasamsetty@vmware.com> 2.7.1-3
|
||||
- openssl 3.0.0 support
|
||||
* Tue Sep 29 2020 Satya Naga Vasamsetty <svasamsetty@vmware.com> 2.7.1-2
|
||||
- openssl 1.1.1
|
||||
* Tue Sep 01 2020 Sujay G <gsujay@vmware.com> 2.7.1-1
|
||||
- Bump version to 2.7.1
|
||||
* Fri Jul 17 2020 Ankit Jain <ankitja@vmware.com> 2.5.8-2
|
||||
- Added --with-compress-debug-sections=no to fix build issue
|
||||
* Wed May 13 2020 Sujay G <gsujay@vmware.com> 2.5.8-1
|
||||
- Bump version to 2.5.8
|
||||
* Tue Jan 01 2019 Sujay G <gsujay@vmware.com> 2.5.3-1
|
||||
- Update to version 2.5.3, to fix CVE-2018-16395 & CVE-2018-16396
|
||||
* Tue Sep 11 2018 srinidhira0 <srinidhir@vmware.com> 2.5.1-1
|
||||
- Update to version 2.5.1
|
||||
* Fri Jan 12 2018 Xiaolin Li <xiaolinl@vmware.com> 2.4.3-2
|
||||
- Fix CVE-2017-17790
|
||||
* Wed Jan 03 2018 Xiaolin Li <xiaolinl@vmware.com> 2.4.3-1
|
||||
- Update to version 2.4.3, fix CVE-2017-17405
|
||||
* Fri Sep 29 2017 Xiaolin Li <xiaolinl@vmware.com> 2.4.2-1
|
||||
- Update to version 2.4.2
|
||||
* Fri Sep 15 2017 Xiaolin Li <xiaolinl@vmware.com> 2.4.1-5
|
||||
- [security] CVE-2017-14064
|
||||
* Tue Sep 05 2017 Chang Lee <changlee@vmware.com> 2.4.1-4
|
||||
- Built with copy preserve mode and fixed %check
|
||||
* Mon Jul 24 2017 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 2.4.1-3
|
||||
- [security] CVE-2017-9228
|
||||
* Tue Jun 13 2017 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 2.4.1-2
|
||||
- [security] CVE-2017-9224,CVE-2017-9225
|
||||
- [security] CVE-2017-9227,CVE-2017-9229
|
||||
* Thu Apr 13 2017 Siju Maliakkal <smaliakkal@vmware.com> 2.4.1-1
|
||||
- Update to latest 2.4.1
|
||||
* Wed Jan 18 2017 Anish Swaminathan <anishs@vmware.com> 2.4.0-1
|
||||
- Update to 2.4.0 - Fixes CVE-2016-2339
|
||||
* Mon Oct 10 2016 ChangLee <changlee@vmware.com> 2.3.0-4
|
||||
- Modified %check
|
||||
* Tue May 24 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 2.3.0-3
|
||||
- GA - Bump release of all rpms
|
||||
* Wed Mar 09 2016 Divya Thaluru <dthaluru@vmware.com> 2.3.0-2
|
||||
- Adding readline support
|
||||
* Wed Jan 20 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 2.3.0-1
|
||||
- Updated to 2.3.0-1
|
||||
* Tue Apr 28 2015 Fabio Rapposelli <fabio@vmware.com> 2.2.1-2
|
||||
- Added SSL support
|
||||
* Mon Apr 6 2015 Mahmoud Bassiouny <mbassiouny@vmware.com> 2.2.1-1
|
||||
- Version upgrade to 2.2.1
|
||||
* Fri Oct 10 2014 Divya Thaluru <dthaluru@vmware.com> 2.1.3-1
|
||||
- Initial build. First version
|
||||
|
|
|
@ -1,21 +1,27 @@
|
|||
From 7e3105c0a5126624ce8673d6a6028b57cdf90fba Mon Sep 17 00:00:00 2001
|
||||
From: Satya Naga Rajesh Vasamsetty <svasamsetty@vmware.com>
|
||||
Date: Thu, 26 Nov 2020 16:40:08 +0530
|
||||
Subject: [PATCH] sendmail: fix compatibility with openssl 3.0
|
||||
From ffca6997a191a02ef41268d2979909286fe72bea Mon Sep 17 00:00:00 2001
|
||||
From: Shreenidhi Shedi <sshedi@vmware.com>
|
||||
Date: Sat, 12 Feb 2022 23:16:27 +0530
|
||||
Subject: [PATCH] fix compatibility with openssl 3.0
|
||||
|
||||
Signed-off-by: Shreenidhi Shedi <sshedi@vmware.com>
|
||||
---
|
||||
sendmail/tls.c | 88 +++++++++++++++++++++++---------------------------
|
||||
1 file changed, 40 insertions(+), 48 deletions(-)
|
||||
|
||||
diff --git a/sendmail/tls.c b/sendmail/tls.c
|
||||
index 696d32f..2b74828 100644
|
||||
index e2cac76..b31844f 100644
|
||||
--- a/sendmail/tls.c
|
||||
+++ b/sendmail/tls.c
|
||||
@@ -80,31 +80,22 @@ static DH *
|
||||
@@ -86,31 +86,26 @@ static DH *
|
||||
get_dh512()
|
||||
{
|
||||
DH *dh = NULL;
|
||||
-# if MTA_HAVE_DH_set0_pqg
|
||||
- BIGNUM *dhp_bn, *dhg_bn;
|
||||
-# endif
|
||||
-
|
||||
+ BIGNUM *p;
|
||||
+ BIGNUM *g;
|
||||
|
||||
- if ((dh = DH_new()) == NULL)
|
||||
- return NULL;
|
||||
-# if MTA_HAVE_DH_set0_pqg
|
||||
|
@ -36,17 +42,19 @@ index 696d32f..2b74828 100644
|
|||
- return NULL;
|
||||
- }
|
||||
-# endif
|
||||
+ BIGNUM *p;
|
||||
+ BIGNUM *g;
|
||||
+
|
||||
- return dh;
|
||||
+ dh = DH_new();
|
||||
+ p = BN_bin2bn(dh512_p, sizeof(dh512_p), NULL);
|
||||
+ g = BN_bin2bn(dh512_g, sizeof(dh512_g), NULL);
|
||||
+ if (!dh || !p || !g)
|
||||
+
|
||||
+ if (!dh || !p || !g)
|
||||
+ goto err;
|
||||
+ if (!DH_set0_pqg(dh, p, NULL, g))
|
||||
+
|
||||
+ if (!DH_set0_pqg(dh, p, NULL, g))
|
||||
+ goto err;
|
||||
return dh;
|
||||
+
|
||||
+ return dh;
|
||||
+
|
||||
+err:
|
||||
+ DH_free(dh);
|
||||
+ BN_free(p);
|
||||
|
@ -55,14 +63,16 @@ index 696d32f..2b74828 100644
|
|||
}
|
||||
|
||||
# if 0
|
||||
@@ -150,31 +141,22 @@ get_dh2048()
|
||||
@@ -155,32 +150,29 @@ get_dh2048()
|
||||
0x6C,0x79,0xA2,0x83,
|
||||
};
|
||||
static unsigned char dh2048_g[]={ 0x02, };
|
||||
+
|
||||
DH *dh;
|
||||
-# if MTA_HAVE_DH_set0_pqg
|
||||
- BIGNUM *dhp_bn, *dhg_bn;
|
||||
-# endif
|
||||
-
|
||||
|
||||
- if ((dh=DH_new()) == NULL)
|
||||
- return(NULL);
|
||||
-# if MTA_HAVE_DH_set0_pqg
|
||||
|
@ -83,17 +93,22 @@ index 696d32f..2b74828 100644
|
|||
- return(NULL);
|
||||
- }
|
||||
-# endif
|
||||
- return(dh);
|
||||
+ BIGNUM *p;
|
||||
+ BIGNUM *g;
|
||||
+
|
||||
+ dh = DH_new();
|
||||
+ p = BN_bin2bn(dh2048_p,sizeof(dh2048_p),NULL);
|
||||
+ g = BN_bin2bn(dh2048_g,sizeof(dh2048_g),NULL);
|
||||
+ if (!dh || !p || !g)
|
||||
+
|
||||
+ if (!dh || !p || !g)
|
||||
+ goto err;
|
||||
+ if (!DH_set0_pqg(dh, p, NULL, g))
|
||||
+
|
||||
+ if (!DH_set0_pqg(dh, p, NULL, g))
|
||||
+ goto err;
|
||||
return(dh);
|
||||
+
|
||||
+ return(dh);
|
||||
+
|
||||
+err:
|
||||
+ DH_free(dh);
|
||||
+ BN_free(p);
|
||||
|
@ -103,4 +118,5 @@ index 696d32f..2b74828 100644
|
|||
# endif /* !NO_DH */
|
||||
|
||||
--
|
||||
2.7.4
|
||||
2.25.1
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
Summary: Commonly used Mail transport agent (MTA)
|
||||
Name: sendmail
|
||||
Version: 8.17.1
|
||||
Release: 2%{?dist}
|
||||
Release: 3%{?dist}
|
||||
URL: http://www.sendmail.org
|
||||
License: BSD and CDDL1.1 and MIT
|
||||
Group: Email/Server/Library
|
||||
|
@ -10,14 +10,16 @@ Distribution: Photon
|
|||
|
||||
Source0: https://ftp.sendmail.org/sendmail.%{version}.tar.gz
|
||||
%define sha512 %{name}.%{version}=ae42343fb06c09f2db5d919d602afc4241914387dfdae0f15e0967dda3be25bf1d3a4637b57266763679646a3cea6aa07e6453266fd9b7358c1a09ec2b627a15
|
||||
Patch0: 0001-sendmail-fix-compatibility-with-openssl-3.0.patch
|
||||
|
||||
BuildRequires: systemd
|
||||
Patch0: fix-compatibility-with-openssl-3.0.patch
|
||||
|
||||
BuildRequires: systemd-devel
|
||||
BuildRequires: openldap
|
||||
BuildRequires: openssl-devel
|
||||
BuildRequires: libdb-devel
|
||||
BuildRequires: shadow
|
||||
BuildRequires: tinycdb-devel
|
||||
|
||||
Requires: tinycdb
|
||||
Requires: (coreutils or toybox)
|
||||
Requires: systemd
|
||||
Requires: m4
|
||||
|
@ -26,7 +28,6 @@ Requires(pre): /usr/sbin/useradd /usr/sbin/groupadd
|
|||
Requires(postun): /usr/sbin/userdel /usr/sbin/groupdel
|
||||
Requires: /bin/sed
|
||||
Requires: (net-tools or toybox)
|
||||
Requires: libdb
|
||||
|
||||
%description
|
||||
Sendmail is widely used Mail Transport agent which helps in sending
|
||||
|
@ -38,8 +39,8 @@ of email from systems to network and is not just a mail client.
|
|||
|
||||
%build
|
||||
cat >> devtools/Site/site.config.m4 << "EOF"
|
||||
APPENDDEF(`confENVDEF',`-DSTARTTLS -DSASL -DLDAPMAP -DNETINET6 -DHASFLOCK=1')
|
||||
APPENDDEF(`confLIBS', `-lssl -lcrypto -lsasl2 -lldap -llber -ldb')
|
||||
APPENDDEF(`confENVDEF',`-DSTARTTLS -DSASL -DLDAPMAP -DNETINET6 -DCDB')
|
||||
APPENDDEF(`confLIBS', `-lssl -lcrypto -lsasl2 -lldap -llber -lcdb')
|
||||
APPENDDEF(`confINCDIRS', `-I/usr/include/sasl')
|
||||
APPENDDEF(`confLIBS', `-lresolv')
|
||||
define(`confMANGRP',`root')
|
||||
|
@ -49,64 +50,59 @@ define(`confUBINGRP',`root')
|
|||
define(`confUBINOWN',`root')
|
||||
EOF
|
||||
|
||||
sed -i 's|/usr/man/man|/usr/share/man/man|' \
|
||||
devtools/OS/Linux &&
|
||||
sed -i 's|/usr/man/man|/usr/share/man/man|' devtools/OS/Linux
|
||||
|
||||
cd sendmail &&
|
||||
sh Build &&
|
||||
cd ../cf/cf &&
|
||||
cp generic-linux.mc sendmail.mc &&
|
||||
sh Build sendmail.cf
|
||||
cd %{name}
|
||||
sh Build
|
||||
cd ../cf/cf
|
||||
cp generic-linux.mc %{name}.mc
|
||||
sh Build %{name}.cf
|
||||
|
||||
%install
|
||||
groupadd -g 26 smmsp &&
|
||||
useradd -c "Sendmail Daemon" -g smmsp -d /dev/null \
|
||||
-s /bin/false -u 26 smmsp &&
|
||||
groupadd -g 26 smmsp
|
||||
useradd -c "Sendmail Daemon" -g smmsp -d /dev/null -s /bin/false -u 26 smmsp
|
||||
|
||||
cd cf/cf
|
||||
install -v -d -m755 %{buildroot}/etc/mail &&
|
||||
sh Build DESTDIR=%{buildroot} install-cf &&
|
||||
pushd cf/cf
|
||||
install -v -d -m755 %{buildroot}%{_sysconfdir}/mail
|
||||
sh Build DESTDIR=%{buildroot} install-cf
|
||||
popd
|
||||
|
||||
cd ../.. &&
|
||||
install -v -d -m755 %{buildroot}/usr/bin &&
|
||||
install -v -d -m755 %{buildroot}/usr/sbin &&
|
||||
install -v -d -m755 %{buildroot}/usr/share/man/man1 &&
|
||||
install -v -d -m755 %{buildroot}/usr/share/man/man8 &&
|
||||
sh Build DESTDIR=%{buildroot} install &&
|
||||
install -v -d -m755 %{buildroot}%{_bindir}
|
||||
install -v -d -m755 %{buildroot}%{_sbindir}
|
||||
install -v -d -m755 %{buildroot}%{_mandir}/man1
|
||||
install -v -d -m755 %{buildroot}%{_mandir}/man8
|
||||
sh Build DESTDIR=%{buildroot} install
|
||||
|
||||
install -v -m644 cf/cf/{submit,sendmail}.mc %{buildroot}/etc/mail &&
|
||||
cp -v -R cf/* %{buildroot}/etc/mail &&
|
||||
install -v -m644 cf/cf/{submit,%{name}}.mc %{buildroot}%{_sysconfdir}/mail
|
||||
cp -v -R cf/* %{buildroot}%{_sysconfdir}/mail
|
||||
|
||||
install -v -m755 -d %{buildroot}/usr/share/doc/sendmail-8.15.2/{cf,sendmail} &&
|
||||
install -v -m755 -d %{buildroot}%{_docdir}/%{name}-%{version}/{cf,%{name}}
|
||||
|
||||
install -v -m644 CACerts FAQ KNOWNBUGS LICENSE PGPKEYS README RELEASE_NOTES \
|
||||
%{buildroot}/usr/share/doc/sendmail-8.15.2 &&
|
||||
%{buildroot}%{_docdir}/%{name}-%{version}
|
||||
|
||||
install -v -m644 sendmail/{README,SECURITY,TRACEFLAGS,TUNING} \
|
||||
%{buildroot}/usr/share/doc/sendmail-8.15.2/sendmail &&
|
||||
install -v -m644 %{name}/{README,SECURITY,TRACEFLAGS,TUNING} \
|
||||
%{buildroot}%{_docdir}/%{name}-%{version}/%{name}
|
||||
|
||||
install -v -m644 cf/README %{buildroot}/usr/share/doc/sendmail-8.15.2/cf &&
|
||||
install -v -m644 cf/README %{buildroot}%{_docdir}/%{name}-%{version}/cf
|
||||
|
||||
for manpage in sendmail editmap mailstats makemap praliases smrsh
|
||||
do
|
||||
install -v -m644 ${manpage}/${manpage}.8 %{buildroot}/usr/share/man/man8
|
||||
done &&
|
||||
for manpage in %{name} editmap mailstats makemap praliases smrsh; do
|
||||
install -v -m644 ${manpage}/${manpage}.8 %{buildroot}%{_mandir}/man8
|
||||
done
|
||||
|
||||
install -v -m644 sendmail/aliases.5 %{buildroot}/usr/share/man/man5 &&
|
||||
install -v -m644 sendmail/mailq.1 %{buildroot}/usr/share/man/man1 &&
|
||||
install -v -m644 sendmail/newaliases.1 %{buildroot}/usr/share/man/man1 &&
|
||||
install -v -m644 vacation/vacation.1 %{buildroot}/usr/share/man/man1
|
||||
install -v -m644 %{name}/aliases.5 %{buildroot}%{_mandir}/man5
|
||||
install -v -m644 %{name}/mailq.1 %{buildroot}%{_mandir}/man1
|
||||
install -v -m644 %{name}/newaliases.1 %{buildroot}%{_mandir}/man1
|
||||
install -v -m644 vacation/vacation.1 %{buildroot}%{_mandir}/man1
|
||||
|
||||
mkdir -p %{buildroot}/etc/systemd/system/
|
||||
mkdir -p %{buildroot}/etc/sysconfig/
|
||||
mkdir -p %{buildroot}%{_unitdir} %{buildroot}%{_sysconfdir}/sysconfig
|
||||
|
||||
cat > %{buildroot}/etc/sysconfig/sendmail <<- "EOF"
|
||||
cat > %{buildroot}%{_sysconfdir}/sysconfig/%{name} <<- "EOF"
|
||||
DAEMON=yes
|
||||
QUEUE=1h
|
||||
|
||||
EOF
|
||||
|
||||
cat > %{buildroot}/etc/systemd/system/sendmail.service <<- "EOF"
|
||||
cat > %{buildroot}%{_unitdir}/%{name}.service <<- "EOF"
|
||||
[Unit]
|
||||
Description=Sendmail Mail Transport Agent
|
||||
Wants=network-online.target
|
||||
|
@ -114,13 +110,12 @@ After=network-online.target syslog.target network.target
|
|||
|
||||
[Service]
|
||||
Environment=QUEUE=1h
|
||||
EnvironmentFile=/etc/sysconfig/sendmail
|
||||
EnvironmentFile=%{_sysconfdir}/sysconfig/%{name}
|
||||
Type=forking
|
||||
ExecStart=/usr/sbin/sendmail -bd -q $QUEUE $SENDMAIL_OPTARG
|
||||
ExecStart=%{_sbindir}/%{name} -bd -q $QUEUE $SENDMAIL_OPTARG
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
|
||||
EOF
|
||||
|
||||
%if 0%{?with_check}
|
||||
|
@ -130,47 +125,45 @@ make -C test check %{?_smp_mflags}
|
|||
|
||||
%pre
|
||||
if [ $1 -eq 1 ] ; then
|
||||
groupadd -g 26 smmsp &&
|
||||
useradd -c "Sendmail Daemon" -g smmsp -d /dev/null \
|
||||
-s /bin/false -u 26 smmsp &&
|
||||
chmod -v 1777 /var/mail &&
|
||||
install -v -m700 -d /var/spool/mqueue
|
||||
groupadd -g 26 smmsp
|
||||
useradd -c "Sendmail Daemon" -g smmsp -d /dev/null -s /bin/false -u 26 smmsp
|
||||
chmod -v 1777 /var/mail
|
||||
install -v -m700 -d /var/spool/mqueue
|
||||
fi
|
||||
|
||||
%post
|
||||
if [ $1 -eq 1 ] ; then
|
||||
echo $(hostname -f) > /etc/mail/local-host-names
|
||||
cat > /etc/mail/aliases << "EOF"
|
||||
echo $(hostname -f) > %{_sysconfdir}/mail/local-host-names
|
||||
cat > %{_sysconfdir}/mail/aliases << "EOF"
|
||||
postmaster: root
|
||||
MAILER-DAEMON: root
|
||||
EOF
|
||||
/bin/newaliases
|
||||
|
||||
cd /etc/mail
|
||||
m4 m4/cf.m4 sendmail.mc > sendmail.cf
|
||||
|
||||
cd %{_sysconfdir}/mail
|
||||
m4 m4/cf.m4 %{name}.mc > %{name}.cf
|
||||
fi
|
||||
|
||||
chmod 700 /var/spool/clientmqueue
|
||||
chown smmsp:smmsp /var/spool/clientmqueue
|
||||
|
||||
%systemd_post sendmail.service
|
||||
%systemd_post %{name}.service
|
||||
|
||||
%preun
|
||||
%systemd_preun sendmail.service
|
||||
%systemd_preun %{name}.service
|
||||
|
||||
%postun
|
||||
if [ $1 -eq 0 ] ; then
|
||||
userdel smmsp
|
||||
groupdel smmsp
|
||||
|
||||
rm -rf /etc/mail
|
||||
rm -rf %{_sysconfdir}/mail
|
||||
fi
|
||||
%systemd_postun_with_restart sendmail.service
|
||||
%systemd_postun_with_restart %{name}.service
|
||||
|
||||
%files
|
||||
%config(noreplace)%{_sysconfdir}/mail/sendmail.mc
|
||||
%config(noreplace)%{_sysconfdir}/mail/sendmail.cf
|
||||
%config(noreplace)%{_sysconfdir}/mail/%{name}.mc
|
||||
%config(noreplace)%{_sysconfdir}/mail/%{name}.cf
|
||||
%config(noreplace)%{_sysconfdir}/mail/submit.cf
|
||||
%config(noreplace)%{_sysconfdir}/mail/submit.mc
|
||||
%{_sysconfdir}/mail/feature/*
|
||||
|
@ -183,19 +176,23 @@ fi
|
|||
%{_sysconfdir}/mail/domain/*
|
||||
%{_sysconfdir}/mail/README
|
||||
%{_sysconfdir}/mail/helpfile
|
||||
%{_sysconfdir}/mail/sendmail.schema
|
||||
%{_sysconfdir}/mail/%{name}.schema
|
||||
%{_sysconfdir}/mail/statistics
|
||||
%{_bindir}/*
|
||||
%{_sbindir}/*
|
||||
/etc/systemd/system/sendmail.service
|
||||
%{_datadir}/*
|
||||
%{_var}/spool/*
|
||||
%{_unitdir}/%{name}.service
|
||||
%{_sysconfdir}/sysconfig/%{name}
|
||||
%exclude %dir %{_libdir}/debug
|
||||
%exclude %dir %{_usrsrc}
|
||||
%exclude %{_mandir}/*
|
||||
%exclude %{_datadir}/man/*
|
||||
%exclude %{_docdir}/*
|
||||
%exclude %{_sysconfdir}/mail/cf/*
|
||||
|
||||
%changelog
|
||||
* Sat Jul 09 2022 Shreenidhi Shedi <sshedi@vmware.com> 8.17.1-3
|
||||
- Drop libdb support
|
||||
* Sun May 29 2022 Shreenidhi Shedi <sshedi@vmware.com> 8.17.1-2
|
||||
- Fix binary path
|
||||
* Mon Apr 11 2022 Nitesh Kumar <kunitesh@vmware.com> 8.17.1-1
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
Name: systemd
|
||||
URL: http://www.freedesktop.org/wiki/Software/systemd
|
||||
Version: 251.3
|
||||
Release: 1%{?dist}
|
||||
Release: 2%{?dist}
|
||||
License: LGPLv2+ and GPLv2+ and MIT
|
||||
Summary: System and Service Manager
|
||||
Group: System Environment/Security
|
||||
|
@ -41,7 +41,9 @@ Requires: libselinux
|
|||
Requires: lz4
|
||||
Requires: pcre
|
||||
Requires: xz
|
||||
Requires: libgpg-error
|
||||
|
||||
BuildRequires: libgpg-error-devel
|
||||
BuildRequires: bzip2-devel
|
||||
BuildRequires: gnu-efi
|
||||
BuildRequires: curl-devel
|
||||
|
@ -671,6 +673,8 @@ rm -rf %{_libdir}/systemd/tests
|
|||
%files lang -f ../%{name}.lang
|
||||
|
||||
%changelog
|
||||
* Tue Jul 26 2022 Shreenidhi Shedi <sshedi@vmware.com> 251.3-2
|
||||
- Add libgpg-error-devel to BuildRequires
|
||||
* Mon Jul 25 2022 Susant Sahani <ssahani@vmware.com> 251.3-1
|
||||
- Version bump
|
||||
* Mon Jul 18 2022 Ashwin Dayanand Kamat <kashwindayan@vmware.com> 251-4
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
Summary: dnf/yum equivalent using C libs
|
||||
Name: tdnf
|
||||
Version: 3.3.1
|
||||
Release: 3%{?dist}
|
||||
Release: 4%{?dist}
|
||||
Vendor: VMware, Inc.
|
||||
Distribution: Photon
|
||||
License: LGPLv2.1,GPLv2
|
||||
|
@ -229,6 +229,8 @@ systemctl try-restart %{name}-cache-updateinfo.timer >/dev/null 2>&1 || :
|
|||
%{_unitdir}/%{name}-automatic-notifyonly.service
|
||||
|
||||
%changelog
|
||||
* Sun Jul 03 2022 Shreenidhi Shedi <sshedi@vmware.com> 3.3.1-4
|
||||
- Bump version as a part of rpm upgrade
|
||||
* Mon Jun 27 2022 Shreenidhi Shedi <sshedi@vmware.com> 3.3.1-3
|
||||
- Exclude debug symbols properly
|
||||
* Fri Jun 17 2022 Shreenidhi Shedi <sshedi@vmware.com> 3.3.1-2
|
||||
|
|
|
@ -0,0 +1,12 @@
|
|||
# Package Information for pkg-config
|
||||
|
||||
prefix=/usr
|
||||
exec_prefix=${prefix}
|
||||
libdir=${exec_prefix}/lib
|
||||
includedir=${prefix}/include
|
||||
|
||||
Name: libcdb
|
||||
Description: tinycdb - Constant Data Base library
|
||||
Version: 0.78
|
||||
Libs: -L${libdir} -lcdb
|
||||
Cflags: -I${includedir}
|
|
@ -0,0 +1,71 @@
|
|||
Name: tinycdb
|
||||
Summary: Utility and library for manipulating constant databases
|
||||
Version: 0.78
|
||||
Release: 1%{?dist}
|
||||
License: Public Domain
|
||||
URL: http://www.corpit.ru/mjt/tinycdb.html
|
||||
Group: Applications/System
|
||||
Vendor: VMware, Inc.
|
||||
Distribution: Photon
|
||||
|
||||
Source0: http://www.corpit.ru/mjt/%{name}/%{name}-%{version}.tar.gz
|
||||
%define sha512 %{name}=8930086b8e7fddcd4dbd3354c5f5ee05171df68fde1cc222b6c402430042b6e761efbad7e5fa8de18e1d36390f1526cc3e605c5086fe1c363ba1df6c03201553
|
||||
Source1: libcdb.pc
|
||||
|
||||
BuildRequires: make
|
||||
BuildRequires: gcc
|
||||
|
||||
%description
|
||||
tinycdb is a small, fast and reliable utility and subroutine library for
|
||||
creating and reading constant databases. The database structure is tuned
|
||||
for fast reading.
|
||||
|
||||
This package contains tinycdb utility and shared library.
|
||||
|
||||
%package devel
|
||||
Summary: Development files for tinycdb
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
|
||||
%description devel
|
||||
tinycdb is a small, fast and reliable utility set and subroutine
|
||||
library for creating and reading constant databases.
|
||||
|
||||
This package contains tinycdb development library and header file for
|
||||
developing applications that use %{name}.
|
||||
|
||||
%prep
|
||||
%autosetup -p1
|
||||
|
||||
%build
|
||||
make %{?_smp_mflags} staticlib sharedlib cdb-shared CFLAGS="%{optflags}"
|
||||
|
||||
%install
|
||||
mkdir -p %{buildroot}%{_libdir}/pkgconfig
|
||||
|
||||
make DESTDIR=%{buildroot} prefix=%{_prefix} libdir=%{_libdir} mandir=%{_mandir} \
|
||||
install install-sharedlib INSTALLPROG=cdb-shared CP="cp -p" %{?_smp_mflags}
|
||||
|
||||
chmod +x %{buildroot}%{_libdir}/*.so.*
|
||||
rm -f %{buildroot}%{_libdir}/lib*.a
|
||||
cp %{SOURCE1} %{buildroot}%{_libdir}/pkgconfig/
|
||||
|
||||
%ldconfig_scriptlets
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%doc NEWS ChangeLog
|
||||
%{_bindir}/cdb
|
||||
%{_mandir}/man1/*.1*
|
||||
%{_mandir}/man5/*.5*
|
||||
%{_libdir}/*.so.*
|
||||
|
||||
%files devel
|
||||
%defattr(-,root,root)
|
||||
%{_includedir}/*.h
|
||||
%{_mandir}/man3/*.3*
|
||||
%{_libdir}/*.so
|
||||
%{_libdir}/pkgconfig/*.pc
|
||||
|
||||
%changelog
|
||||
* Wed Feb 16 2022 Shreenidhi Shedi <sshedi@vmware.com> 0.78-1
|
||||
- Initial version. Needed for sendmail-8.17.1
|
|
@ -47,10 +47,9 @@ actual_pkg_list=($(tdnf --installroot $TEMP_CHROOT/ \
|
|||
expected_pkg_list=(
|
||||
bash bzip2-libs ca-certificates ca-certificates-pki curl curl-libs
|
||||
e2fsprogs-libs elfutils-libelf expat-libs filesystem glibc krb5
|
||||
libcap libdb libgcc libgcrypt libgpg-error libsolv libssh2 libxml2
|
||||
lua ncurses-libs nspr nss-libs openssl photon-release photon-repos popt
|
||||
readline rpm-libs sqlite-libs tdnf tdnf-cli-libs toybox xz-libs zlib
|
||||
zstd-libs
|
||||
libcap libgcc libsolv libssh2 libxml2 lua ncurses-libs nspr nss-libs
|
||||
openssl photon-release photon-repos popt readline rpm-libs sqlite-libs
|
||||
tdnf tdnf-cli-libs toybox xz-libs zlib zstd-libs
|
||||
)
|
||||
|
||||
actual_pkg_count=${#actual_pkg_list[@]}
|
||||
|
@ -69,6 +68,8 @@ fi
|
|||
|
||||
rpm --root $TEMP_CHROOT/ --import $TEMP_CHROOT/etc/pki/rpm-gpg/*
|
||||
|
||||
ln -sfr ${TEMP_CHROOT}/usr/lib/sysimage/rpm ${TEMP_CHROOT}/var/lib/rpm
|
||||
|
||||
# cleanup anything not needed inside rootfs
|
||||
pushd $TEMP_CHROOT
|
||||
rm -rf usr/src/ home/* var/log/* var/cache/tdnf/
|
||||
|
|
|
@ -490,10 +490,9 @@ class SpecParser(object):
|
|||
def _isConditionalCheckMacro(self, line):
|
||||
data = line.strip()
|
||||
words = data.split()
|
||||
nrWords = len(words)
|
||||
if nrWords != 2:
|
||||
if len(words) != 2:
|
||||
return False
|
||||
if words[0] != "%if" or words[1] != "%{with_check}":
|
||||
if words[0] != "%if" or "with_check" not in words[1]:
|
||||
return False
|
||||
return True
|
||||
|
||||
|
@ -504,13 +503,10 @@ class SpecParser(object):
|
|||
def _isConditionTrue(self, line):
|
||||
data = line.strip()
|
||||
words = data.split()
|
||||
nrWords = len(words)
|
||||
# condition like %if a > b is not supported
|
||||
if nrWords != 2:
|
||||
if len(words) != 2:
|
||||
return True
|
||||
if self._replaceMacros(words[1]) == "0":
|
||||
return False
|
||||
return True
|
||||
return int(self._replaceMacros(words[1]))
|
||||
|
||||
def _isConditionalMacroStart(self, line):
|
||||
return line.startswith("%if")
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
import os.path
|
||||
import traceback
|
||||
import re
|
||||
import time
|
||||
import traceback
|
||||
|
||||
from CommandUtils import CommandUtils
|
||||
from Logger import Logger
|
||||
from PackageUtils import PackageUtils
|
||||
|
@ -72,8 +74,10 @@ class ToolChainUtils(object):
|
|||
packageVersion = None
|
||||
listRPMsToInstall.extend(['binutils-'+constants.targetArch+'-linux-gnu',
|
||||
'gcc-'+constants.targetArch+'-linux-gnu'])
|
||||
|
||||
if packageName:
|
||||
listBuildRequiresPackages = self.getListDependentPackages(packageName, packageVersion)
|
||||
|
||||
for package in listRPMsToInstall:
|
||||
pkgUtils = PackageUtils(self.logName, self.logPath)
|
||||
rpmFile = None
|
||||
|
@ -83,7 +87,7 @@ class ToolChainUtils(object):
|
|||
for depPkg in listBuildRequiresPackages:
|
||||
depPkgName, depPkgVersion = StringUtils.splitPackageNameAndVersion(depPkg)
|
||||
if depPkgName == package:
|
||||
version=depPkgVersion
|
||||
version = depPkgVersion
|
||||
break
|
||||
|
||||
if not version:
|
||||
|
@ -148,6 +152,26 @@ class ToolChainUtils(object):
|
|||
raise Exception("RPM installation failed")
|
||||
self.logger.debug("Successfully installed default toolchain RPMS in Chroot:" + chroot.getID())
|
||||
|
||||
# There is some weird contention with this toolchain package installations and
|
||||
# rpmdb rebuilds. So, let's do it explicitly here.
|
||||
# XXX: Once we use latest ova template in our build env, we can remove this.
|
||||
# Ubuntu build machines also use backend db as sqlite to remove this
|
||||
timeout = 900
|
||||
old_epoch = time.time()
|
||||
while True:
|
||||
if chroot.run("[ -f /var/lib/rpm/Packages ]", logfn=self.logger.debug):
|
||||
break
|
||||
time.sleep(1)
|
||||
# retry for 15 min, ideally this should finish quickly
|
||||
# if not, abort after 15 min
|
||||
if time.time() - old_epoch > timeout:
|
||||
self.logger.debug("--- 15 min elapsed trying to rebuild db ---")
|
||||
break
|
||||
|
||||
if time.time() - old_epoch > timeout and not chroot.run("[ -f /var/lib/rpm/Packages ]", logfn=self.logger.debug):
|
||||
self.logger.error("rpmdb conversion failed after multiple retries")
|
||||
raise Exception("RpmDB conversion error")
|
||||
|
||||
if packageName:
|
||||
self.installExtraToolchainRPMS(chroot, packageName, packageVersion)
|
||||
|
||||
|
|
|
@ -122,10 +122,11 @@ class constants(object):
|
|||
"automake",
|
||||
"openssl",
|
||||
"zstd",
|
||||
"libdb",
|
||||
"libgpg-error",
|
||||
"libgcrypt",
|
||||
"rpm"]
|
||||
"rpm",
|
||||
"dwz",
|
||||
"debugedit",
|
||||
"pandoc-bin",
|
||||
"help2man"]
|
||||
|
||||
# List or RPMS that will be installed in a chroot prior to build each
|
||||
# package. This list should be ordered by install order. On a stage1
|
||||
|
@ -216,20 +217,17 @@ class constants(object):
|
|||
"openssl",
|
||||
"openssl-devel",
|
||||
"libcap",
|
||||
"libdb",
|
||||
"libdb-devel",
|
||||
"zstd",
|
||||
"zstd-libs",
|
||||
"zstd-devel",
|
||||
"lua",
|
||||
"lua-devel",
|
||||
"libgpg-error",
|
||||
"libgcrypt",
|
||||
"rpm",
|
||||
"rpm-build",
|
||||
"rpm-devel",
|
||||
"rpm-libs",
|
||||
"cpio"]
|
||||
"cpio",
|
||||
"debugedit"]
|
||||
|
||||
# List of packages that will be installed in addition for each
|
||||
# package to make check
|
||||
|
@ -266,14 +264,12 @@ class constants(object):
|
|||
"net-tools",
|
||||
"less",
|
||||
"iana-etc",
|
||||
"libdb",
|
||||
"rpm-devel",
|
||||
"rpm",
|
||||
"libxml2",
|
||||
"python3-xml",
|
||||
"libacl",
|
||||
"tzdata",
|
||||
"libgcrypt-devel",
|
||||
"Linux-PAM",
|
||||
"unzip",
|
||||
"systemd-devel",
|
||||
|
|
|
@ -15,6 +15,7 @@ aarch64/bzip2-libs-1.0.8-3.ph4.aarch64.rpm
|
|||
aarch64/coreutils-8.32-3.ph4.aarch64.rpm
|
||||
aarch64/cpio-2.13-2.ph4.aarch64.rpm
|
||||
aarch64/diffutils-3.7-1.ph4.aarch64.rpm
|
||||
aarch64/debugedit-5.0-1.ph4.aarch64.rpm
|
||||
aarch64/elfutils-0.181-2.ph4.aarch64.rpm
|
||||
aarch64/elfutils-devel-0.181-2.ph4.aarch64.rpm
|
||||
aarch64/elfutils-libelf-0.181-2.ph4.aarch64.rpm
|
||||
|
@ -42,16 +43,12 @@ aarch64/grep-3.4-1.ph4.aarch64.rpm
|
|||
aarch64/groff-1.22.4-1.ph4.aarch64.rpm
|
||||
aarch64/gzip-1.10-1.ph4.aarch64.rpm
|
||||
aarch64/libcap-2.43-1.ph4.aarch64.rpm
|
||||
aarch64/libdb-5.3.28-2.ph4.aarch64.rpm
|
||||
aarch64/libdb-devel-5.3.28-2.ph4.aarch64.rpm
|
||||
aarch64/libffi-3.3-1.ph4.aarch64.rpm
|
||||
aarch64/libgcc-10.2.0-1.ph4.aarch64.rpm
|
||||
aarch64/libgcc-atomic-10.2.0-1.ph4.aarch64.rpm
|
||||
aarch64/libgcc-devel-10.2.0-1.ph4.aarch64.rpm
|
||||
aarch64/libgcrypt-1.8.7-1.ph3.aarch64.rpm
|
||||
aarch64/libgomp-10.2.0-1.ph4.aarch64.rpm
|
||||
aarch64/libgomp-devel-10.2.0-1.ph4.aarch64.rpm
|
||||
aarch64/libgpg-error-1.32-1.ph3.aarch64.rpm
|
||||
aarch64/libpipeline-1.5.3-1.ph4.aarch64.rpm
|
||||
aarch64/libstdc++-10.2.0-1.ph4.aarch64.rpm
|
||||
aarch64/libstdc++-devel-10.2.0-1.ph4.aarch64.rpm
|
||||
|
@ -73,10 +70,10 @@ aarch64/nspr-devel-4.29-1.ph4.aarch64.rpm
|
|||
aarch64/nss-3.57-2.ph4.aarch64.rpm
|
||||
aarch64/nss-devel-3.57-2.ph4.aarch64.rpm
|
||||
aarch64/nss-libs-3.57-2.ph4.aarch64.rpm
|
||||
aarch64/openssl-1.1.1i-2.ph4.aarch64.rpm
|
||||
aarch64/openssl-devel-1.1.1i-2.ph4.aarch64.rpm
|
||||
aarch64/openssl-3.0.0-6.ph4.aarch64.rpm
|
||||
aarch64/openssl-devel-3.0.0-6.ph4.aarch64.rpm
|
||||
aarch64/patch-2.7.6-5.ph4.aarch64.rpm
|
||||
aarch64/perl-5.30.1-3.ph4.aarch64.rpm
|
||||
aarch64/perl-5.30.1-5.ph4.aarch64.rpm
|
||||
aarch64/pkg-config-0.29.2-3.ph4.aarch64.rpm
|
||||
aarch64/popt-1.16-5.ph4.aarch64.rpm
|
||||
aarch64/popt-devel-1.16-5.ph4.aarch64.rpm
|
||||
|
@ -85,10 +82,10 @@ aarch64/python3-3.9.1-2.ph4.aarch64.rpm
|
|||
aarch64/python3-libs-3.9.1-2.ph4.aarch64.rpm
|
||||
aarch64/readline-7.0-3.ph4.aarch64.rpm
|
||||
aarch64/readline-devel-7.0-3.ph4.aarch64.rpm
|
||||
aarch64/rpm-4.16.1.3-1.ph4.aarch64.rpm
|
||||
aarch64/rpm-build-4.16.1.3-1.ph4.aarch64.rpm
|
||||
aarch64/rpm-devel-4.16.1.3-1.ph4.aarch64.rpm
|
||||
aarch64/rpm-libs-4.16.1.3-1.ph4.aarch64.rpm
|
||||
aarch64/rpm-4.16.1.3-7.ph4.aarch64.rpm
|
||||
aarch64/rpm-build-4.16.1.3-7.ph4.aarch64.rpm
|
||||
aarch64/rpm-devel-4.16.1.3-7.ph4.aarch64.rpm
|
||||
aarch64/rpm-libs-4.16.1.3-7.ph4.aarch64.rpm
|
||||
aarch64/sed-4.8-1.ph4.aarch64.rpm
|
||||
aarch64/sqlite-3.33.0-1.ph4.aarch64.rpm
|
||||
aarch64/sqlite-libs-3.33.0-1.ph4.aarch64.rpm
|
||||
|
|
|
@ -15,6 +15,7 @@ x86_64/bzip2-libs-1.0.8-3.ph4.x86_64.rpm
|
|||
x86_64/coreutils-8.32-3.ph4.x86_64.rpm
|
||||
x86_64/cpio-2.13-2.ph4.x86_64.rpm
|
||||
x86_64/diffutils-3.7-1.ph4.x86_64.rpm
|
||||
x86_64/debugedit-5.0-1.ph4.x86_64.rpm
|
||||
x86_64/elfutils-0.181-2.ph4.x86_64.rpm
|
||||
x86_64/elfutils-devel-0.181-2.ph4.x86_64.rpm
|
||||
x86_64/elfutils-libelf-0.181-2.ph4.x86_64.rpm
|
||||
|
@ -42,16 +43,12 @@ x86_64/grep-3.4-1.ph4.x86_64.rpm
|
|||
x86_64/groff-1.22.4-1.ph4.x86_64.rpm
|
||||
x86_64/gzip-1.10-1.ph4.x86_64.rpm
|
||||
x86_64/libcap-2.43-1.ph4.x86_64.rpm
|
||||
x86_64/libdb-5.3.28-2.ph4.x86_64.rpm
|
||||
x86_64/libdb-devel-5.3.28-2.ph4.x86_64.rpm
|
||||
x86_64/libffi-3.3-1.ph4.x86_64.rpm
|
||||
x86_64/libgcc-10.2.0-1.ph4.x86_64.rpm
|
||||
x86_64/libgcc-atomic-10.2.0-1.ph4.x86_64.rpm
|
||||
x86_64/libgcc-devel-10.2.0-1.ph4.x86_64.rpm
|
||||
x86_64/libgcrypt-1.8.5-1.ph3.x86_64.rpm
|
||||
x86_64/libgomp-10.2.0-1.ph4.x86_64.rpm
|
||||
x86_64/libgomp-devel-10.2.0-1.ph4.x86_64.rpm
|
||||
x86_64/libgpg-error-1.32-1.ph3.x86_64.rpm
|
||||
x86_64/libpipeline-1.5.3-1.ph4.x86_64.rpm
|
||||
x86_64/libstdc++-10.2.0-1.ph4.x86_64.rpm
|
||||
x86_64/libstdc++-devel-10.2.0-1.ph4.x86_64.rpm
|
||||
|
@ -73,8 +70,8 @@ x86_64/nspr-devel-4.29-1.ph4.x86_64.rpm
|
|||
x86_64/nss-3.57-2.ph4.x86_64.rpm
|
||||
x86_64/nss-devel-3.57-2.ph4.x86_64.rpm
|
||||
x86_64/nss-libs-3.57-2.ph4.x86_64.rpm
|
||||
x86_64/openssl-1.1.1i-2.ph4.x86_64.rpm
|
||||
x86_64/openssl-devel-1.1.1i-2.ph4.x86_64.rpm
|
||||
x86_64/openssl-3.0.0-6.ph4.x86_64.rpm
|
||||
x86_64/openssl-devel-3.0.0-6.ph4.x86_64.rpm
|
||||
x86_64/patch-2.7.6-5.ph4.x86_64.rpm
|
||||
x86_64/perl-5.30.1-3.ph4.x86_64.rpm
|
||||
x86_64/pkg-config-0.29.2-3.ph4.x86_64.rpm
|
||||
|
@ -85,10 +82,10 @@ x86_64/python3-3.9.1-2.ph4.x86_64.rpm
|
|||
x86_64/python3-libs-3.9.1-2.ph4.x86_64.rpm
|
||||
x86_64/readline-7.0-3.ph4.x86_64.rpm
|
||||
x86_64/readline-devel-7.0-3.ph4.x86_64.rpm
|
||||
x86_64/rpm-4.16.1.3-1.ph4.x86_64.rpm
|
||||
x86_64/rpm-build-4.16.1.3-1.ph4.x86_64.rpm
|
||||
x86_64/rpm-devel-4.16.1.3-1.ph4.x86_64.rpm
|
||||
x86_64/rpm-libs-4.16.1.3-1.ph4.x86_64.rpm
|
||||
x86_64/rpm-4.16.1.3-7.ph4.x86_64.rpm
|
||||
x86_64/rpm-build-4.16.1.3-7.ph4.x86_64.rpm
|
||||
x86_64/rpm-devel-4.16.1.3-7.ph4.x86_64.rpm
|
||||
x86_64/rpm-libs-4.16.1.3-7.ph4.x86_64.rpm
|
||||
x86_64/sed-4.8-1.ph4.x86_64.rpm
|
||||
x86_64/sqlite-3.33.0-1.ph4.x86_64.rpm
|
||||
x86_64/sqlite-libs-3.33.0-1.ph4.x86_64.rpm
|
||||
|
|
Loading…
Reference in New Issue