Blob Blame History Raw
%define fontname        dejavu
%define fontdir         %{_datadir}/fonts/%{fontname}/
%define fontconfdir     %{_sysconfdir}/fonts/conf.d/

%define archivename     %{fontname}-sfd-%{archiveversion}

#define alphatag        .20070616svn1889
#define alphatag        .rc1

#define archiveversion  20070627-1922
%define archiveversion  %{version}


# Let the perl maintainer worry about Unicode.org data files
%define Blocks          %(eval "$(%{__perl} -V:privlibexp)"; echo $privlibexp)/unicore/Blocks.txt
%define UnicodeData     %(eval "$(%{__perl} -V:privlibexp)"; echo $privlibexp)/unicore/UnicodeData.txt

Name:      %{fontname}-fonts
Version:   2.19
Release:   1%{?alphatag}%{?dist}
Summary:   DejaVu fonts

Group:     User Interface/X
License:   Modifiable & redistributable, with naming restrictions
URL:       http://%{fontname}.sf.net/
Source0:   http://%{fontname}.sourceforge.net/%{?alphatag:snapshots/}%{archivename}.tar.bz2
# DejaVu fontconfig setup
Source1:   %{name}-fontconfig.conf
Source2:   %{name}-fontconfig-unhint-small.conf
# DejaVu fontconfig setup (experimental families)
Source3:   %{name}-experimental-fontconfig.conf
Source4:   %{name}-experimental-fontconfig-unhint-small.conf

BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
# Older fontforge versions will not work due to sfd format changes
BuildRequires: fontforge > 20070501
BuildRequires: perl(Font::TTF)
# Needed to compute unicode coverage
BuildRequires: %{Blocks} %{UnicodeData}
BuildArch: noarch

%description
The DejaVu fonts are a font family based on the "Bitstream Vera" fonts release
1.10. Its purpose is to provide a wider range of characters while maintaining
the original look and feel through the process of collaborative development.

This package includes the typefaces the DejaVu project considers mature.


%package experimental
Group:    User Interface/X
Summary:  Experimental DejaVu typefaces
# Does not really make sense without the core typefaces
Requires: %{name} = %{version}-%{release}


%description experimental
The DejaVu fonts are a font family based on the "Bitstream Vera" fonts release
1.10.

This package includes the typefaces the DejaVu project considers experimental.


%prep
%setup -q -n %{archivename}


%build
./generate.sh
./status.pl %{version} status.txt *.sfd > status.txt.new
mv status.txt.new status.txt
./unicover.pl %{UnicodeData} %{Blocks} \
              DejaVuSans.sfd Sans \
              DejaVuSerif.sfd Serif \
              DejaVuMonoSans.sfd "Sans Mono" > unicover.txt
# We should probably also regenerate langcover.txt
# but it requires resolution of 
# https://bugs.freedesktop.org/show_bug.cgi?id=6316 

# Remove mes files or they end in %doc
rm mes*.txt

%check
# Current upstream files are full of "problems"
# Do not panic if the output is long
./problems.pl *.sfd


%install
rm -fr %{buildroot}

# Fonts
install -m 0755 -d %{buildroot}%{fontdir}
install -m 0644 -p generated/*.ttf  %{buildroot}%{fontdir}

# Fontconfig tweaks
install -m 0755 -d %{buildroot}%{fontconfdir}
install -m 0644 -p %{SOURCE1} %{buildroot}%{fontconfdir}57-%{fontname}.conf
install -m 0644 -p %{SOURCE2} %{buildroot}%{fontconfdir}20-unhint-small-%{fontname}.conf
install -m 0644 -p %{SOURCE3} %{buildroot}%{fontconfdir}61-%{fontname}-experimental.conf
install -m 0644 -p %{SOURCE4} %{buildroot}%{fontconfdir}20-unhint-small-%{fontname}-experimental.conf


%clean
rm -fr %{buildroot}


%post
if [ -x %{_bindir}/fc-cache ]; then
  %{_bindir}/fc-cache %{fontdir}
fi


%postun
if [ "$1" = "0" ]; then
  if [ -x %{_bindir}/fc-cache ]; then
    %{_bindir}/fc-cache %{fontdir}
  fi
fi


%post experimental
if [ -x %{_bindir}/fc-cache ]; then
  %{_bindir}/fc-cache %{fontdir}
fi


%postun experimental
if [ "$1" = "0" ]; then
  if [ -x %{_bindir}/fc-cache ]; then
    %{_bindir}/fc-cache %{fontdir}
  fi
fi


%files
%defattr(0644,root,root,0755)
%doc *.txt AUTHORS BUGS LICENSE NEWS README

%config(noreplace) %{fontconfdir}20-unhint-small-%{fontname}.conf
%config(noreplace) %{fontconfdir}57-%{fontname}.conf

%dir %{fontdir}
%{fontdir}/*.ttf
%exclude %{fontdir}/DejaVu*Condensed*.ttf
%exclude %{fontdir}/DejaVu*ExtraLight*.ttf
%exclude %{fontdir}/DejaVuSerif-*Italic.ttf


%files experimental
%defattr(0644,root,root,0755)

%config(noreplace) %{fontconfdir}20-unhint-small-%{fontname}-experimental.conf
%config(noreplace) %{fontconfdir}61-%{fontname}-experimental.conf

%{fontdir}/DejaVu*Condensed*.ttf
%{fontdir}/DejaVu*ExtraLight*.ttf
%{fontdir}/DejaVuSerif-*Italic.ttf


%changelog
* Sat Aug 11 2007 Nicolas Mailhot <nicolas.mailhot at laposte.net>
☺ 2.19-1
✓ 2.19 final
✓ expand macro use

* Sun Jul 1 2007 Nicolas Mailhot <nicolas.mailhot at laposte.net>
☺ 2.18-1
✓ 2.18 final
✓ Major new release adding Tifinagh (ⵞⵥⴼⴻ), N'ko (ߝߧߜ) and Georgian (ლფჱႫႿ)
  (Georgian created by Besarion Paata Gugushvili ბესარიონ პაატა გუგუშვილი)

* Wed Jun 27 2007 Nicolas Mailhot <nicolas.mailhot at laposte.net>
☺ 2.18-0.2.rc1
✓ 2.18-rc1

* Sun Jun 3 2007 Nicolas Mailhot <nicolas.mailhot at laposte.net>
☢ 2.18-0.1.20070616svn1889
⚠ early snapshot to test new fontforge

* Sun Jun 3 2007 Nicolas Mailhot <nicolas.mailhot at laposte.net>
☺ 2.17-5
✓ declare DejaVu a valid Bitstream Prima™ substitute

* Thu May 31 2007 Nicolas Mailhot <nicolas.mailhot at laposte.net>
☺ 2.17-3
✓ small spec cleanups

* Sat May 26 2007 Nicolas Mailhot <nicolas.mailhot at laposte.net>
☺ 2.17-2
✓ perl-Font-TTF has been fixed upstream, use perl(Font::TTF) BR
✓ remove comment about /etc/fonts/conf.d ownership, as it's now owned
   by filesystem

* Sun May 13 2007 Nicolas Mailhot <nicolas.mailhot at laposte.net>
☺ 2.17-1
✓ rebase scriptlets from guidelines
✓ fontforge broke compat: BR the current version, ask for a version bump
  before 2.18 is released
✓ simplify font directory naming
✓ clean up fc5 obsoletes
✓ remove technical mes files from doc

* Fri May 11 2007 Nicolas Mailhot <nicolas.mailhot at laposte.net>
☺ 2.17-0.3.rc1
✓ fontconfig setup has stabilized and can be marked noreplace now
☺ 2.17-0.2.rc1
✓ mimick Vera unhint conf split
☺ 2.17-0.1.rc1
✓ 2.17 rc1
✓ make room for liberations font conf file

* Mon Apr 2 2007 Nicolas Mailhot <nicolas.mailhot at laposte.net>
☺ 2.16-1

* Tue Mar 20 2007 Nicolas Mailhot <nicolas.mailhot at laposte.net>
☺ 2.16-0.1.20070319svn1699
✓ early snapshot to account for F7T3 freeze

* Tue Jan 30 2007 Nicolas Mailhot <nicolas.mailhot at laposte.net>
☺ 2.14-2
✓ Adds Dejavu Sans Oblique small fixes (by Ben Laenen to address Debian
  bug #408311, collected by Davide Viti)

* Sun Jan 21 2007 Nicolas Mailhot <nicolas.mailhot at laposte.net>
✓ 2.14 final