rpms/dejavu-fonts/devel dejavu-fonts-register.xsl, NONE, 1.1 dejavu-fonts.spec, 1.14, 1.15
Nicolas Mailhot (nim)
fedora-extras-commits at redhat.com
Sat Mar 4 12:23:56 UTC 2006
Author: nim
Update of /cvs/extras/rpms/dejavu-fonts/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv29503/devel
Modified Files:
dejavu-fonts.spec
Added Files:
dejavu-fonts-register.xsl
Log Message:
auto-import dejavu-fonts-2.3-2.fc5 on branch devel from dejavu-fonts-2.3-2.fc5.src.rpm
register fontconfig aliases
--- NEW FILE dejavu-fonts-register.xsl ---
<?xml version="1.0" encoding="UTF-8"?>
<!-- Registers DejaVu fonts in fonts.conf
© 2003-2006 Nicolas Mailhot <nicolas.mailhot at laposte.net>
This file is distributed under the terms of the GNU General
Public License (GPL) version 2. Copies of the GPL can be obtained from:
http://www.gnu.org/licenses/gpl.html
-->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:strip-space elements="*"/>
<xsl:output method="xml" indent="yes" encoding="UTF-8" doctype-system="fonts.dtd"/>
<!-- Preserve most nodes -->
<xsl:template match="*" priority="0">
<xsl:copy>
<xsl:apply-templates select="@*"/>
<xsl:apply-templates select="*|text()|comment()"/>
</xsl:copy>
</xsl:template>
<!-- Preserve attributes and comments -->
<xsl:template match="@*|comment()">
<xsl:copy/>
</xsl:template>
<!-- Take care of default families -->
<!-- sans-serif -->
<xsl:template match="fontconfig/alias[default[family = 'sans-serif'] and not(family = 'DejaVu Sans')]/family[1]" priority="1">
<family>DejaVu Sans</family>
<xsl:copy>
<xsl:apply-templates select="@*"/>
<xsl:apply-templates select="*|text()|comment()"/>
</xsl:copy>
</xsl:template>
<!-- serif -->
<xsl:template match="fontconfig/alias[default[family = 'serif'] and not(family = 'DejaVu Serif')]/family[1]" priority="1">
<family>DejaVu Serif</family>
<xsl:copy>
<xsl:apply-templates select="@*"/>
<xsl:apply-templates select="*|text()|comment()"/>
</xsl:copy>
</xsl:template>
<!-- monospace -->
<xsl:template match="fontconfig/alias[default[family = 'monospace'] and not(family = 'DejaVu Sans Mono')]/family[1]" priority="1">
<family>DejaVu Sans Mono</family>
<xsl:copy>
<xsl:apply-templates select="@*"/>
<xsl:apply-templates select="*|text()|comment()"/>
</xsl:copy>
</xsl:template>
<!-- Take care of alias priorities -->
<!-- Registers serif alias -->
<xsl:template match="fontconfig/alias[family = 'serif']/prefer[not(family='DejaVu Serif') and not(family='Bitstream Vera Serif')]/family[1]" priority="2">
<family>DejaVu Serif</family>
<xsl:copy>
<xsl:apply-templates select="@*"/>
<xsl:apply-templates select="*|text()|comment()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="fontconfig/alias[family = 'serif']/prefer[not(family='DejaVu Serif')]/family[text()='Bitstream Vera Serif']" priority="1">
<xsl:copy>
<xsl:apply-templates select="@*"/>
<xsl:apply-templates select="*|text()|comment()"/>
</xsl:copy>
<family>DejaVu Serif</family>
</xsl:template>
<!-- Registers sans-serif alias -->
<xsl:template match="fontconfig/alias[family = 'sans-serif']/prefer[not(family='DejaVu Sans') and not(family='Bitstream Vera Sans')]/family[1]" priority="2">
<family>DejaVu Sans</family>
<xsl:copy>
<xsl:apply-templates select="@*"/>
<xsl:apply-templates select="*|text()|comment()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="fontconfig/alias[family = 'sans-serif']/prefer[not(family='DejaVu Sans')]/family[text()='Bitstream Vera Sans']" priority="1">
<xsl:copy>
<xsl:apply-templates select="@*"/>
<xsl:apply-templates select="*|text()|comment()"/>
</xsl:copy>
<family>DejaVu Sans</family>
</xsl:template>
<!-- Registers monospace alias -->
<xsl:template match="fontconfig/alias[family = 'monospace']/prefer[not(family='DejaVu Sans Mono') and not(family='Bitstream Vera Sans Mono')]/family[1]" priority="2">
<family>DejaVu Sans Mono</family>
<xsl:copy>
<xsl:apply-templates select="@*"/>
<xsl:apply-templates select="*|text()|comment()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="fontconfig/alias[family = 'monospace']/prefer[not(family='DejaVu Sans Mono')]/family[text()='Bitstream Vera Sans Mono']" priority="1">
<xsl:copy>
<xsl:apply-templates select="@*"/>
<xsl:apply-templates select="*|text()|comment()"/>
</xsl:copy>
<family>DejaVu Sans Mono</family>
</xsl:template>
<!-- Create Vera aliases -->
<xsl:template match="fontconfig/alias[family='Bitstream Vera Sans']/accept[not(family='DejaVu Sans')]/family[position()=last()]" priority="1">
<xsl:copy>
<xsl:apply-templates select="@*"/>
<xsl:apply-templates select="*|text()|comment()"/>
</xsl:copy>
<family>DejaVu Sans</family>
</xsl:template>
<xsl:template match="fontconfig/alias[family='Bitstream Vera Serif']/accept[not(family='DejaVu Serif')]/family[position()=last()]" priority="1">
<xsl:copy>
<xsl:apply-templates select="@*"/>
<xsl:apply-templates select="*|text()|comment()"/>
</xsl:copy>
<family>DejaVu Serif</family>
</xsl:template>
<xsl:template match="fontconfig/alias[family='Bitstream Vera Sans Mono']/accept[not(family='DejaVu Sans Mono')]/family[position()=last()]" priority="1">
<xsl:copy>
<xsl:apply-templates select="@*"/>
<xsl:apply-templates select="*|text()|comment()"/>
</xsl:copy>
<family>DejaVu Sans Mono</family>
</xsl:template>
<xsl:template match="fontconfig/alias[accept][position()=last()]" priority="1">
<xsl:copy>
<xsl:apply-templates select="@*"/>
<xsl:apply-templates select="*|text()|comment()"/>
</xsl:copy>
<xsl:if test="not(/fontconfig/alias[family='Bitstream Vera Sans']/accept)">
<alias>
<family>Bitstream Vera Sans</family>
<accept>
<family>Bitstream Vera Sans</family>
<family>DejaVu Sans</family>
</accept>
</alias>
</xsl:if>
<xsl:if test="not(/fontconfig/alias[family='Bitstream Vera Serif']/accept)">
<alias>
<family>Bitstream Vera Serif</family>
<accept>
<family>Bitstream Vera Serif</family>
<family>DejaVu Serif</family>
</accept>
</alias>
</xsl:if>
<xsl:if test="not(/fontconfig/alias[family='Bitstream Vera Sans Mono']/accept)">
<alias>
<family>Bitstream Vera Sans Mono</family>
<accept>
<family>Bitstream Vera Sans Mono</family>
<family>DejaVu Sans Mono</family>
</accept>
</alias>
</xsl:if>
</xsl:template>
</xsl:stylesheet>
Index: dejavu-fonts.spec
===================================================================
RCS file: /cvs/extras/rpms/dejavu-fonts/devel/dejavu-fonts.spec,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- dejavu-fonts.spec 20 Feb 2006 07:18:17 -0000 1.14
+++ dejavu-fonts.spec 4 Mar 2006 12:23:56 -0000 1.15
@@ -1,7 +1,8 @@
%define archivename dejavu-sfd
# This macro has the same value as %{version}, except when testing pre-release snapshots
%define archiveversion %{version}-1
-%define fontdir %{_datadir}/fonts/dejavu
+%define fontdir %{_datadir}/fonts/%{name}
+%define xsldir %{_datadir}/xml/%{name}
# Let the perl Maintainer worry about Unicode.org data files (updates, licensing)
%define Blocks %(eval "$(%{__perl} -V:privlibexp)"; echo $privlibexp)/unicore/Blocks.txt
@@ -9,30 +10,36 @@
Name: dejavu-fonts
Version: 2.3
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: DejaVu Fonts
Group: User Interface/X
License: Redistributable, with restrictions
URL: http://dejavu.sf.net/
Source: http://prdownloads.sourceforge.net/dejavu/%{archivename}-%{archiveversion}.tar.gz
+Source1: dejavu-fonts-register.xsl
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: fontforge
# The CPAN sources do not declare perl(Font::TTF)
BuildRequires: perl-Font-TTF
# Needed to compute unicode coverage
BuildRequires: %{Blocks} %{UnicodeData}
+# Needed for fontconfig alias registration
+Requires: %{_bindir}/xsltproc, /bin/mktemp
BuildArch: noarch
Conflicts: fontconfig < 2.3.93
+
%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 (see Current status
page for more information) while maintaining the original look and feel through
the process of collaborative develop
+
%prep
%setup -q -n %{archivename}-%{version}
+
%build
./generate.sh
./status.pl %{version} status.txt *.sfd > status.txt.new
@@ -42,11 +49,13 @@
DejaVuSerif.sfd Serif \
DejaVuMonoSans.sfd "Sans Mono" > unicover.txt
+
%check
# Current upstream files are full of "problems"
# Do not panic if the output is long
./problems.pl -l 3 *.sfd
+
%install
/bin/rm -rf %{buildroot}
@@ -54,6 +63,11 @@
install -d -m 0755 %{buildroot}%{fontdir}
install -m 0644 generated/*.ttf %{buildroot}%{fontdir}
+#xsl
+install -d -m 755 %{buildroot}%{xsldir}
+install -p -m 644 %{SOURCE1} %{buildroot}%{xsldir}/register-%{name}.xsl
+
+
%clean
/bin/rm -rf %{buildroot}
@@ -63,6 +77,7 @@
%{_bindir}/fc-cache %{_datadir}/fonts
fi
+
%postun
if [ "$1" = "0" ]; then
if [ -x %{_bindir}/fc-cache ]; then
@@ -71,6 +86,16 @@
fi
+%triggerin -- fontconfig, %{_sysconfdir}/fonts/fonts.conf
+
+if [ -x %{_sysconfdir}/fonts/fonts.conf ] ; then
+ TMPFILE=$(/bin/mktemp -q /tmp/fonts.conf.XXXXXX) && \
+ %{_bindir}/xsltproc --novalid --output $TMPFILE \
+ %{xsldir}/register-%{name}.xsl %{_sysconfdir}/fonts/fonts.conf && \
+ /bin/cat $TMPFILE > %{_sysconfdir}/fonts/fonts.conf && /bin/rm $TMPFILE
+fi
+
+
%files
%defattr(0644,root,root,0755)
%doc *.txt AUTHORS BUGS LICENSE NEWS README
@@ -78,7 +103,14 @@
%dir %{fontdir}
%{fontdir}/*.ttf
+%dir %{xsldir}
+%{xsldir}/register-%{name}.xsl
+
+
%changelog
+* Sat Mar 04 2006 Nicolas Mailhot <nicolas.mailhot at laposte.net> - 2.3-2
+- register dejavu in fontconfig aliases
+
* Mon Feb 20 2006 Nicolas Mailhot <nicolas.mailhot at laposte.net> - 2.3-1
- 2.3
More information about the scm-commits
mailing list