1ac6d5
Name:		Judy
1ac6d5
Version:	1.0.5
1ac6d5
Release:	18%{?dist}
1ac6d5
Summary:	General purpose dynamic array
1ac6d5
License:	LGPLv2+
1ac6d5
URL:		http://sourceforge.net/projects/judy/
1ac6d5
Source0:	http://downloads.sf.net/judy/Judy-%{version}.tar.gz
1ac6d5
# Make tests use shared instead of static libJudy
1ac6d5
Patch0:		Judy-1.0.4-test-shared.patch
1ac6d5
# The J1* man pages were incorrectly being symlinked to Judy, rather than Judy1
1ac6d5
# This patch corrects that; submitted upstream 2008/11/27
1ac6d5
Patch1:		Judy-1.0.4-fix-Judy1-mans.patch
1ac6d5
# Fix some code with undefined behavior, commented on and removed by gcc
1ac6d5
Patch2:		Judy-1.0.5-undefined-behavior.patch
1ac6d5
BuildRequires:	coreutils
1ac6d5
BuildRequires:	gawk
1ac6d5
BuildRequires:	gcc >= 4.1
1ac6d5
BuildRequires:	make
1ac6d5
BuildRequires:	sed
1ac6d5
1ac6d5
%description
1ac6d5
Judy is a C library that provides a state-of-the-art core technology
1ac6d5
that implements a sparse dynamic array. Judy arrays are declared
1ac6d5
simply with a null pointer. A Judy array consumes memory only when it
1ac6d5
is populated, yet can grow to take advantage of all available memory
1ac6d5
if desired. Judy's key benefits are scalability, high performance, and
1ac6d5
memory efficiency. A Judy array is extensible and can scale up to a
1ac6d5
very large number of elements, bounded only by machine memory. Since
1ac6d5
Judy is designed as an unbounded array, the size of a Judy array is
1ac6d5
not pre-allocated but grows and shrinks dynamically with the array
1ac6d5
population.
1ac6d5
1ac6d5
%package devel
1ac6d5
Summary:	Development libraries and headers for Judy
1ac6d5
Requires:	%{name} = %{version}-%{release}
1ac6d5
1ac6d5
%description devel
1ac6d5
This package contains the development libraries and header files
1ac6d5
for developing applications that use the Judy library.
1ac6d5
1ac6d5
%prep
1ac6d5
%setup -q -n judy-%{version}
1ac6d5
%patch0 -p1 -b .test-shared
1ac6d5
%patch1 -p1 -b .fix-Judy1-mans
1ac6d5
%patch2 -p1 -b .behavior
1ac6d5
1ac6d5
%build
1ac6d5
export CFLAGS="%{optflags} -fno-strict-aliasing -fno-tree-ccp -fno-tree-dominator-opts -fno-tree-copy-prop -fno-tree-vrp"
1ac6d5
%configure --disable-static
1ac6d5
make
1ac6d5
#%{?_smp_mflags}
1ac6d5
# fails to compile properly with parallel make:
1ac6d5
# http://sourceforge.net/tracker/index.php?func=detail&aid=2129019&group_id=55753&atid=478138
1ac6d5
1ac6d5
%install
1ac6d5
make install DESTDIR=%{buildroot} INSTALL="install -p"
1ac6d5
# get rid of static libs and libtool archives
1ac6d5
rm -f %{buildroot}%{_libdir}/*.{a,la}
1ac6d5
# clean out zero length and generated files from doc tree
1ac6d5
rm -rf doc/man
1ac6d5
rm -f doc/Makefile* doc/ext/README_deliver
1ac6d5
[ -s doc/ext/COPYRIGHT ] || rm -f doc/ext/COPYRIGHT
1ac6d5
[ -s doc/ext/LICENSE ] || rm -f doc/ext/LICENSE
1ac6d5
1ac6d5
%check
1ac6d5
cd test
1ac6d5
./Checkit
1ac6d5
cd -
1ac6d5
1ac6d5
%if (0%{?rhel} && 0%{?rhel} <= 7) || (0%{?fedora} && 0%{?fedora} <= 27)
1ac6d5
# ldconfig scriptlets replaced by RPM File Triggers from Fedora 28
1ac6d5
%post -p /sbin/ldconfig
1ac6d5
%postun -p /sbin/ldconfig
1ac6d5
%endif
1ac6d5
1ac6d5
%files
1ac6d5
%if 0%{?_licensedir:1}
1ac6d5
%license COPYING
1ac6d5
%else
1ac6d5
%doc COPYING
1ac6d5
%endif
1ac6d5
%doc AUTHORS ChangeLog README examples/
1ac6d5
%{_libdir}/libJudy.so.*
1ac6d5
1ac6d5
%files devel
1ac6d5
%doc doc
1ac6d5
%{_includedir}/Judy.h
1ac6d5
%{_libdir}/libJudy.so
1ac6d5
%{_mandir}/man3/J*.3*
1ac6d5
1ac6d5
%changelog
1ac6d5
* Thu Oct 11 2018 Michal Schorm <mschorm@redhat.com> - 1.0.5-18
1ac6d5
- Remove README.Fedora; no longer needed since 1.0.5 version
1ac6d5
- Resolves: #1638717
1ac6d5
1ac6d5
* Thu Feb 08 2018 Paul Howarth <paul@city-fan.org> - 1.0.5-17
1ac6d5
- ldconfig scriptlets replaced by RPM File Triggers from Fedora 28
1ac6d5
- Drop legacy BuildRoot: and Group: tags
1ac6d5
- Drop redundant explicit buildroot cleaning
1ac6d5
- Specify all explicitly-used build requirements
1ac6d5
- Use %%license where possible
1ac6d5
- Drop %%defattr, redundant since rpm 4.4
1ac6d5
1ac6d5
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.5-16
1ac6d5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
1ac6d5
1ac6d5
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.5-15
1ac6d5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
1ac6d5
1ac6d5
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.5-14
1ac6d5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
1ac6d5
1ac6d5
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.5-13
1ac6d5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
1ac6d5
1ac6d5
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.5-12
1ac6d5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
1ac6d5
1ac6d5
* Tue Jun 16 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.5-11
1ac6d5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
1ac6d5
1ac6d5
* Fri Aug 15 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.5-10
1ac6d5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
1ac6d5
1ac6d5
* Fri Jun 06 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.5-9
1ac6d5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
1ac6d5
1ac6d5
* Tue Feb 18 2014 Paul Howarth <paul@city-fan.org> - 1.0.5-8
1ac6d5
- Fix some code with undefined behavior
1ac6d5
- Build with -fno-strict-aliasing
1ac6d5
- Disable various compiler tree optimizations that trigger reproducible
1ac6d5
  crashes in gtkwave without generating compiler warnings (#1064090)
1ac6d5
1ac6d5
* Fri Aug 02 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.5-7
1ac6d5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
1ac6d5
1ac6d5
* Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.5-6
1ac6d5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
1ac6d5
1ac6d5
* Wed Jul 18 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.5-5
1ac6d5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
1ac6d5
1ac6d5
* Thu Jan 12 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.5-4
1ac6d5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
1ac6d5
1ac6d5
* Fri Jan  6 2012 Paul Howarth <paul@city-fan.org> - 1.0.5-3
1ac6d5
- Rebuilt for gcc 4.7
1ac6d5
1ac6d5
* Mon Feb  7 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.5-2
1ac6d5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
1ac6d5
1ac6d5
* Sun Jul 18 2010 Paul Howarth <paul@city-fan.org> - 1.0.5-1
1ac6d5
- Update to 1.0.5
1ac6d5
  - Added proper clean targets to enable multiple builds
1ac6d5
  - Added examples directory
1ac6d5
  - Correctly detects 32/64-bit build environment
1ac6d5
  - Allow explicit configure for 32/64-bit environment
1ac6d5
- Cosmetic spec file clean-ups
1ac6d5
1ac6d5
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.4-6
1ac6d5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
1ac6d5
1ac6d5
* Mon Feb 23 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.4-5
1ac6d5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
1ac6d5
1ac6d5
* Sat Dec 13 2008 Charles R. Anderson <cra@wpi.edu> - 1.0.4-4
1ac6d5
- For Judy1 man page fix, patch Makefile.{am,in} instead of
1ac6d5
  relying on autotools to regenerate the latter
1ac6d5
- Add README.Fedora with upstream's license explanation
1ac6d5
1ac6d5
* Sun Nov 30 2008 Charles R. Anderson <cra@wpi.edu> - 1.0.4-3
1ac6d5
- Fix Judy1 man page symlinks
1ac6d5
- Use valid tag License: LGPLv2+ confirmed with upstream
1ac6d5
- Use version macro in Source0
1ac6d5
- Remove Makefiles from installed doc tree
1ac6d5
1ac6d5
* Thu Nov 27 2008 Charles R. Anderson <cra@wpi.edu> - 1.0.4-2
1ac6d5
- Patch tests to run with shared library
1ac6d5
- Run tests in check section
1ac6d5
1ac6d5
* Sun Oct 05 2008 Charles R. Anderson <cra@wpi.edu> - 1.0.4-1
1ac6d5
- Initial package for Fedora