Compare commits

...

No commits in common. 'c8-stream-10.3' and 'c9' have entirely different histories.

@ -0,0 +1,23 @@
Regarding the license, upstream has confirmed that the current license is LGPL
v2.1 or later. Also, the source code is really the final say on this, and it
says "GNU Lesser General Public License as published by the Free Software
Foundation; either version 2 of the License, or (at your option) any later
version." Either way, Fedora spec files don't distinguish between v2.1 and v2,
so this is specified as LGPLv2+ for the spec file.
"From dougbaskins@yahoo.com Thu Nov 27 21:45:54 2008
From: Doug Baskins <dougbaskins@yahoo.com>
To: Chuck Anderson <cra@WPI.EDU>
Cc: judy-devel@lists.sourceforge.net
Date: Thu, 27 Nov 2008 18:45:47 -0800 (PST)
Subject: Re: Judy license confusion - (LGPL v2.1 or later applies)
Reply-To: Doug Baskins <dougbaskins@yahoo.com>
Chuck:
I did not know a new version of LGPL existed. You are correct,
the COPYING file is correct (LGPL v2.1 or later applies). I will
change the README file to reflect that in the next release of Judy.
..."
- Chuck Anderson <cra@wpi.edu>

@ -1,16 +1,13 @@
Name: Judy Name: Judy
Version: 1.0.5 Version: 1.0.5
Release: 18%{?dist} Release: 28%{?dist}
Summary: General purpose dynamic array Summary: General purpose dynamic array
License: LGPLv2+ License: LGPLv2+
URL: http://sourceforge.net/projects/judy/ URL: http://sourceforge.net/projects/judy/
Source0: http://downloads.sf.net/judy/Judy-%{version}.tar.gz Source0: http://downloads.sf.net/judy/Judy-%{version}.tar.gz
# Make tests use shared instead of static libJudy Source1: README.Fedora
Patch0: Judy-1.0.4-test-shared.patch Patch0: Judy-1.0.4-test-shared.patch
# The J1* man pages were incorrectly being symlinked to Judy, rather than Judy1
# This patch corrects that; submitted upstream 2008/11/27
Patch1: Judy-1.0.4-fix-Judy1-mans.patch Patch1: Judy-1.0.4-fix-Judy1-mans.patch
# Fix some code with undefined behavior, commented on and removed by gcc
Patch2: Judy-1.0.5-undefined-behavior.patch Patch2: Judy-1.0.5-undefined-behavior.patch
BuildRequires: coreutils BuildRequires: coreutils
BuildRequires: gawk BuildRequires: gawk
@ -19,16 +16,15 @@ BuildRequires: make
BuildRequires: sed BuildRequires: sed
%description %description
Judy is a C library that provides a state-of-the-art core technology Judy is a C library that provides a state-of-the-art core technology that
that implements a sparse dynamic array. Judy arrays are declared implements a sparse dynamic array. Judy arrays are declared simply with a null
simply with a null pointer. A Judy array consumes memory only when it pointer. A Judy array consumes memory only when it is populated, yet can grow
is populated, yet can grow to take advantage of all available memory to take advantage of all available memory if desired. Judy's key benefits are
if desired. Judy's key benefits are scalability, high performance, and scalability, high performance, and memory efficiency. A Judy array is
memory efficiency. A Judy array is extensible and can scale up to a extensible and can scale up to a very large number of elements, bounded only by
very large number of elements, bounded only by machine memory. Since machine memory. Since Judy is designed as an unbounded array, the size of a
Judy is designed as an unbounded array, the size of a Judy array is Judy array is not pre-allocated but grows and shrinks dynamically with the
not pre-allocated but grows and shrinks dynamically with the array array population.
population.
%package devel %package devel
Summary: Development libraries and headers for Judy Summary: Development libraries and headers for Judy
@ -40,20 +36,35 @@ for developing applications that use the Judy library.
%prep %prep
%setup -q -n judy-%{version} %setup -q -n judy-%{version}
# Make tests use shared instead of static libJudy
%patch0 -p1 -b .test-shared %patch0 -p1 -b .test-shared
# The J1* man pages were incorrectly being symlinked to Judy, rather than Judy1
# This patch corrects that; submitted upstream 2008/11/27
%patch1 -p1 -b .fix-Judy1-mans %patch1 -p1 -b .fix-Judy1-mans
# Fix some code with undefined behavior, commented on and removed by gcc
%patch2 -p1 -b .behavior %patch2 -p1 -b .behavior
# README.Fedora
cp -p %{SOURCE1} .
%build %build
export CFLAGS="%{optflags} -fno-strict-aliasing -fno-tree-ccp -fno-tree-dominator-opts -fno-tree-copy-prop -fno-tree-vrp" %set_build_flags
case "%{__cc}" in
gcc) COMPILER_SPECIFIC_FLAGS="-fno-strict-aliasing -fno-tree-ccp -fno-tree-dominator-opts -fno-tree-copy-prop -fno-tree-vrp";;
*) COMPILER_SPECIFIC_FLAGS="-fno-strict-aliasing";;
esac
export CFLAGS="%{optflags} $COMPILER_SPECIFIC_FLAGS"
%configure --disable-static %configure --disable-static
make make
#%{?_smp_mflags} #%{?_smp_mflags}
# fails to compile properly with parallel make: # fails to compile properly with parallel make:
# http://sourceforge.net/tracker/index.php?func=detail&aid=2129019&group_id=55753&atid=478138 # https://sourceforge.net/p/judy/bugs/22/
%install %install
make install DESTDIR=%{buildroot} INSTALL="install -p" %make_install
# get rid of static libs and libtool archives # get rid of static libs and libtool archives
rm -f %{buildroot}%{_libdir}/*.{a,la} rm -f %{buildroot}%{_libdir}/*.{a,la}
# clean out zero length and generated files from doc tree # clean out zero length and generated files from doc tree
@ -62,25 +73,19 @@ rm -f doc/Makefile* doc/ext/README_deliver
[ -s doc/ext/COPYRIGHT ] || rm -f doc/ext/COPYRIGHT [ -s doc/ext/COPYRIGHT ] || rm -f doc/ext/COPYRIGHT
[ -s doc/ext/LICENSE ] || rm -f doc/ext/LICENSE [ -s doc/ext/LICENSE ] || rm -f doc/ext/LICENSE
# multi-lib trick - remove the timestamp from the man page comment
sed -i -e 's|\(Auto-translated to nroff.*\.\./tool/jhton at\).*$|\1 <timestamp removed>|' %{buildroot}%{_mandir}/man3/J*.3*
%check %check
cd test cd test
./Checkit ./Checkit
cd - cd -
%if (0%{?rhel} && 0%{?rhel} <= 7) || (0%{?fedora} && 0%{?fedora} <= 27)
# ldconfig scriptlets replaced by RPM File Triggers from Fedora 28
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%endif
%files %files
%if 0%{?_licensedir:1} %license COPYING README.Fedora
%license COPYING
%else
%doc COPYING
%endif
%doc AUTHORS ChangeLog README examples/ %doc AUTHORS ChangeLog README examples/
%{_libdir}/libJudy.so.* %{_libdir}/libJudy.so.1
%{_libdir}/libJudy.so.1.*
%files devel %files devel
%doc doc %doc doc
@ -89,11 +94,49 @@ cd -
%{_mandir}/man3/J*.3* %{_mandir}/man3/J*.3*
%changelog %changelog
* Thu Oct 11 2018 Michal Schorm <mschorm@redhat.com> - 1.0.5-18 * Mon Aug 09 2021 Honza Horak <hhorak@redhat.com> - 1.0.5-28
- Remove README.Fedora; no longer needed since 1.0.5 version - Remove timestamp to make the man pages non-conflicting
- Resolves: #1638717 Resolves: #1915251
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 1.0.5-27
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
Related: rhbz#1991688
* Thu Apr 15 2021 Mohan Boddu <mboddu@redhat.com> - 1.0.5-26
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
* Mon Jan 25 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.5-25
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.5-24
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Wed Mar 25 2020 Paul Howarth <paul@city-fan.org> - 1.0.5-23
- Don't pass gcc-only compiler flags to other compilers, e.g. clang
(based on https://src.fedoraproject.org/rpms/Judy/pull-request/3 from
Timm Baeder)
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.5-22
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.5-21
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Mon Jul 22 2019 Paul Howarth <paul@city-fan.org> - 1.0.5-20
- Modernize spec
- Use %%make_install
- Use %%set_build_flags
- Drop conditionals for building with old distributions
- Re-format %%description to 80 columns
- Comment patch applications in %%prep section
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.5-19
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.5-18
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Thu Feb 08 2018 Paul Howarth <paul@city-fan.org> - 1.0.5-17 * Thu Feb 8 2018 Paul Howarth <paul@city-fan.org> - 1.0.5-17
- ldconfig scriptlets replaced by RPM File Triggers from Fedora 28 - ldconfig scriptlets replaced by RPM File Triggers from Fedora 28
- Drop legacy BuildRoot: and Group: tags - Drop legacy BuildRoot: and Group: tags
- Drop redundant explicit buildroot cleaning - Drop redundant explicit buildroot cleaning

Loading…
Cancel
Save