uuid/uuid.spec
Tom Callaway bcaed99e6f new perl
2008-03-07 02:22:59 +00:00

289 lines
7.9 KiB
RPMSpec

Name: uuid
Version: 1.6.1
Release: 3%{?dist}
Summary: Universally Unique Identifier library
License: MIT
Group: System Environment/Libraries
URL: http://www.ossp.org/pkg/lib/uuid/
Source0: ftp://ftp.ossp.org/pkg/lib/uuid/uuid-%{version}.tar.gz
Patch0: uuid-1.6.1-ossp.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: libtool
%description
OSSP uuid is a ISO-C:1999 application programming interface (API)
and corresponding command line interface (CLI) for the generation
of DCE 1.1, ISO/IEC 11578:1996 and RFC 4122 compliant Universally
Unique Identifier (UUID). It supports DCE 1.1 variant UUIDs of version
1 (time and node based), version 3 (name based, MD5), version 4
(random number based) and version 5 (name based, SHA-1). Additional
API bindings are provided for the languages ISO-C++:1998, Perl:5 and
PHP:4/5. Optional backward compatibility exists for the ISO-C DCE-1.1
and Perl Data::UUID APIs.
%package devel
Summary: Development support for Universally Unique Identifier library
Group: Development/Libraries
Requires: %{_libdir}/pkgconfig
Requires: %{name} = %{version}-%{release}
%description devel
Development headers and libraries for OSSP uuid.
%package c++
Summary: C++ support for Universally Unique Identifier library
Group: System Environment/Libraries
Requires: %{name} = %{version}-%{release}
%description c++
C++ libraries for OSSP uuid.
%package c++-devel
Summary: C++ development support for Universally Unique Identifier library
Group: Development/Libraries
Requires: %{name}-c++ = %{version}-%{release}
Requires: %{name}-devel = %{version}-%{release}
%description c++-devel
C++ development headers and libraries for OSSP uuid.
%package perl
Summary: Perl support for Universally Unique Identifier library
Group: Development/Libraries
BuildRequires: perl(ExtUtils::MakeMaker)
BuildRequires: perl(Test::More)
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
Requires: %{name} = %{version}-%{release}
%description perl
Perl OSSP uuid modules, which includes a Data::UUID replacement.
%package php
Summary: PHP support for Universally Unique Identifier library
Group: Development/Libraries
BuildRequires: php-devel
Requires: %{_libdir}/php/modules
Requires: %{name} = %{version}-%{release}
%description php
PHP OSSP uuid module.
%package pgsql
Summary: PostgreSQL support for Universally Unique Identifier library
Group: Development/Libraries
BuildRequires: postgresql-devel
Requires: %{_libdir}/pgsql
Requires: %{_datadir}/pgsql
Requires: %{name} = %{version}-%{release}
%description pgsql
PostgreSQL OSSP uuid module.
%package dce
Summary: DCE support for Universally Unique Identifier library
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
%description dce
DCE OSSP uuid library.
%package dce-devel
Summary: DCE development support for Universally Unique Identifier library
Group: Development/Libraries
Requires: %{name}-dce = %{version}-%{release}
Requires: %{name}-devel = %{version}-%{release}
%description dce-devel
DCE development headers and libraries for OSSP uuid.
%prep
%setup -q
%patch0 -p1
%build
# Build the library.
export LIB_NAME=libossp-uuid.la
export DCE_NAME=libossp-uuid_dce.la
export CXX_NAME=libossp-uuid++.la
export PHP_NAME=$RPM_SOURCE_DIR/php/modules/ossp-uuid.so
export PGSQL_NAME=$RPM_SOURCE_DIR/pgsql/libossp-uuid.so
%configure \
--disable-static \
--without-perl \
--without-php \
--with-dce \
--with-cxx \
--with-pgsql
make LIBTOOL=/usr/bin/libtool %{?_smp_mflags}
# Build the Perl module.
pushd perl
%{__perl} Makefile.PL INSTALLDIRS=vendor OPTIMIZE="$RPM_OPT_FLAGS" COMPAT=1
%{__perl} -pi -e 's/^\tLD_RUN_PATH=[^\s]+\s*/\t/' Makefile
make %{?_smp_mflags}
popd
# Build the PHP module.
pushd php
phpize
CFLAGS="$RPM_OPT_FLAGS -I.. -L.. -L../.libs"
%configure --enable-uuid
sed -i -e '/^LDFLAGS =/s/-Wl,-rpath,[^[:space:]]*//' Makefile
make LIBTOOL=/usr/bin/libtool %{?_smp_mflags}
popd
%install
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT
rm -f $RPM_BUILD_ROOT%{_libdir}/*.la $RPM_BUILD_ROOT%{_libdir}/*.a
chmod 755 $RPM_BUILD_ROOT%{_libdir}/*.so.*.*.*
# Install the Perl modules.
pushd perl
make pure_install PERL_INSTALL_ROOT=$RPM_BUILD_ROOT
find $RPM_BUILD_ROOT -type f -name '*.bs' -size 0 -exec rm -f {} \;
find $RPM_BUILD_ROOT -type f -name .packlist -exec rm -f {} \;
find $RPM_BUILD_ROOT -depth -type d -exec rmdir {} 2>/dev/null \;
%{_fixperms} $RPM_BUILD_ROOT/*
popd
# Install the PHP module.
pushd php
make install INSTALL_ROOT=$RPM_BUILD_ROOT
rm -f $RPM_BUILD_ROOT%{_libdir}/php/modules/*.a
popd
%check
make check
pushd perl
LD_LIBRARY_PATH=../.libs make test
popd
pushd php
LD_LIBRARY_PATH=../.libs make test
popd
%clean
rm -rf $RPM_BUILD_ROOT
%post -p /sbin/ldconfig
%post c++ -p /sbin/ldconfig
%post dce -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%postun c++ -p /sbin/ldconfig
%postun dce -p /sbin/ldconfig
%files
%defattr(-,root,root,-)
%doc AUTHORS ChangeLog HISTORY NEWS PORTING README SEEALSO THANKS TODO USERS
%{_bindir}/uuid
%{_libdir}/libossp-uuid.so.*
%{_mandir}/man1/*
%files devel
%defattr(-,root,root,-)
%{_bindir}/uuid-config
%{_includedir}/uuid.h
%{_libdir}/libossp-uuid.so
%{_libdir}/pkgconfig/ossp-uuid.pc
%{_mandir}/man3/ossp-uuid.3*
%files c++
%defattr(-,root,root,-)
%{_libdir}/libossp-uuid++.so.*
%files c++-devel
%defattr(-,root,root,-)
%{_includedir}/uuid++.hh
%{_libdir}/libossp-uuid++.so
%{_mandir}/man3/uuid++.3*
%files perl
%defattr(-,root,root,-)
%{perl_vendorarch}/auto/*
%{perl_vendorarch}/Data*
%{perl_vendorarch}/OSSP*
%{_mandir}/man3/Data::UUID.3*
%{_mandir}/man3/OSSP::uuid.3*
%files php
%defattr(-,root,root,-)
%{_libdir}/php/modules/*
%files pgsql
%defattr(-,root,root,-)
%{_libdir}/pgsql/*
%{_datadir}/pgsql/*
%files dce
%defattr(-,root,root,-)
%{_libdir}/libossp-uuid_dce.so.*
%files dce-devel
%defattr(-,root,root,-)
%{_includedir}/uuid_dce.h
%{_libdir}/libossp-uuid_dce.so
%changelog
* Thu Mar 06 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 1.6.1-3
Rebuild for new perl
* Thu Mar 6 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 1.6.1-2
- forgot to cvs add patch
* Thu Mar 6 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 1.6.1-1
- 1.6.1
* Thu Mar 6 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 1.6.0-4
- rebuild for new perl
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 1.6.0-3
- Autorebuild for GCC 4.3
* Wed Aug 29 2007 Fedora Release Engineering <rel-eng at fedoraproject dot org> - 1.6.0-2
- Rebuild for selinux ppc32 issue.
* Tue Jul 24 2007 Steven Pritchard <steve@kspei.com> 1.6.0-1
- Update to 1.6.0.
- BR Test::More.
* Tue Apr 17 2007 Steven Pritchard <steve@kspei.com> 1.5.1-3
- Fix find option order.
- Use fixperms macro instead of our own chmod incantation.
- BR ExtUtils::MakeMaker.
* Thu Oct 05 2006 Christian Iseli <Christian.Iseli@licr.org> 1.5.1-2
- rebuilt for unwind info generation, broken in gcc-4.1.1-21
* Mon Aug 28 2006 Steven Pritchard <steve@kspei.com> 1.5.1-1
- Update to 1.5.1.
* Sat Jul 29 2006 Steven Pritchard <steve@kspei.com> 1.5.0-1
- Update to 1.5.0.
- Rename libuuid* to libossp-uuid*, uuid.3 to ossp-uuid.3, and uuid.pc
to ossp-uuid.pc to avoid conflicts with e2fsprogs-devel (#198520).
- Clean out the pgsql directory. (Some cruft shipped with this release.)
* Wed May 24 2006 Steven Pritchard <steve@kspei.com> 1.4.2-4
- Remove static php module.
* Tue May 23 2006 Steven Pritchard <steve@kspei.com> 1.4.2-3
- Force use of system libtool.
- Make libs executable.
* Tue May 23 2006 Steven Pritchard <steve@kspei.com> 1.4.2-2
- License is MIT(-ish).
* Fri May 19 2006 Steven Pritchard <steve@kspei.com> 1.4.2-1
- Initial packaging attempt.