0dade0e
# Nb: this is temporary. Broadcom is working on getting the firmware released
0dade0e
# under a redistributable, no-modification license.
0dade0e
%define with_firmware %{?_with_firmware: 1} %{?!_with_firmware: 0}
0dade0e
0dade0e
Summary:        Broadcom Crystal HD device interface library
0dade0e
Name:           libcrystalhd
0dade0e
Version:        0.9.25
0dade0e
Release:        2%{?dist}
0dade0e
License:        LGPLv2
0dade0e
Group:          System Environment/Libraries
0dade0e
%if %{with_firmware}
0dade0e
Source:         http://www.broadcom.com/docs/support/crystalhd/crystalhd_linux_20091229.zip
0dade0e
Requires:       crystalhd-firmware
0dade0e
%else
0dade0e
# The source archive contains a firmware image that doesn't yet have an
0dade0e
# acceptable license for redistribution, so we unpack, strip it, and repack the archive.
0dade0e
Source:         %{name}-%{version}.tar.bz2
0dade0e
%endif
0dade0e
URL:            http://www.broadcom.com/support/crystal_hd/
0dade0e
Patch:          libcrystalhd-updates.patch
0dade0e
ExcludeArch:    s390 s390x
0dade0e
BuildRequires:  autoconf automake
0dade0e
0dade0e
%description
0dade0e
The libcrystalhd library provides userspace access to Broadcom Crystal HD
0dade0e
video decoder devices. The device supports hardware decoding of MPEG-2,
0dade0e
h.264 and VC1 video codecs, up to 1080p at 40fps.
0dade0e
0dade0e
%package devel
0dade0e
Summary:       Development libs for libcrystalhd
0dade0e
Group:         Development/Libraries
0dade0e
Requires:      %{name} = %{version}-%{release}
0dade0e
0dade0e
%description devel
0dade0e
Development libraries needed to build applications against libcrystalhd.
0dade0e
0dade0e
%if %{with_firmware}
0dade0e
%package -n crystalhd-firmware
0dade0e
Summary:       Firmware for the Broadcom Crystal HD video decoder
0dade0e
License:       Redistributable, no modification permitted
0dade0e
BuildArch:     noarch
0dade0e
Group:         System Environment/Kernel
0dade0e
Requires:      %{name} = %{version}-%{release}
0dade0e
0dade0e
%description -n crystalhd-firmware
0dade0e
Firmware for the Broadcom Crystal HD (bcm970012) video decoder.
0dade0e
%endif
0dade0e
0dade0e
%prep
0dade0e
%if %{with_firmware}
0dade0e
%setup -q -n crystalhd
0dade0e
%else
0dade0e
%setup -q
0dade0e
%endif
0dade0e
%patch -p1
0dade0e
0dade0e
%build
0dade0e
%if !%{with_firmware}
0dade0e
sed -i -e 's|cp $(ROOTDIR)/firmware/fwbin/70012/bcm70012fw.bin $(DESTDIR)/lib/firmware/|#cp $(ROOTDIR)/firmware/fwbin/70012/bcm70012fw.bin $(DESTDIR)/lib/firmware/|g' linux_lib/libcrystalhd/Makefile
0dade0e
%endif
0dade0e
pushd linux_lib/libcrystalhd/ > /dev/null 2>&1
0dade0e
# FIXME: this doesn't work just yet...
0dade0e
#make CPPFLAGS="%{optflags}" %{?_smp_mflags}
0dade0e
make %{?_smp_mflags}
0dade0e
popd > /dev/null 2>&1
0dade0e
0dade0e
%install
0dade0e
rm -rf $RPM_BUILD_ROOT
0dade0e
pushd linux_lib/libcrystalhd/ > /dev/null 2>&1
0dade0e
make install LIBDIR=%{_libdir} DESTDIR=$RPM_BUILD_ROOT
0dade0e
popd > /dev/null 2>&1
0dade0e
0dade0e
%clean
0dade0e
rm -rf $RPM_BUILD_ROOT
0dade0e
0dade0e
%post -p /sbin/ldconfig
0dade0e
0dade0e
%postun -p /sbin/ldconfig
0dade0e
0dade0e
%files
0dade0e
%defattr(-,root,root,0755)
0dade0e
%{_libdir}/libcrystalhd.so.*
0dade0e
0dade0e
%files devel
0dade0e
%defattr(-,root,root,0755)
0dade0e
%dir %{_includedir}/libcrystalhd
0dade0e
%{_includedir}/libcrystalhd/*
0dade0e
%{_libdir}/libcrystalhd.so
0dade0e
0dade0e
%if %{with_firmware}
0dade0e
%files -n crystalhd-firmware
0dade0e
%defattr(-,root,root,0755)
0dade0e
/lib/firmware/bcm70012fw.bin
0dade0e
%endif
0dade0e
0dade0e
0dade0e
%changelog
0dade0e
* Thu Mar 11 2010 Jarod Wilson <jarod@redhat.com> - 0.9.25-2
0dade0e
- Minor fixups to the as-yet-not-enabled firmware sub-package
0dade0e
0dade0e
* Wed Jan 06 2010 Jarod Wilson <jarod@redhat.com> - 0.9.25-1
0dade0e
- Initial package