aboutsummaryrefslogtreecommitdiff
path: root/fontconfig
diff options
context:
space:
mode:
Diffstat (limited to 'fontconfig')
-rw-r--r--fontconfig/COPYING11
-rw-r--r--fontconfig/INSTALL11
-rw-r--r--fontconfig/Makefile.am13
-rw-r--r--fontconfig/acinclude.m4137
-rw-r--r--fontconfig/autogen.sh4
-rw-r--r--fontconfig/conf.d/Makefile.am4
-rw-r--r--fontconfig/config/Makedefs.in4
-rw-r--r--fontconfig/configure.in73
-rw-r--r--fontconfig/doc/Makefile.am23
-rw-r--r--fontconfig/doc/confdir.sgml.in4
-rw-r--r--fontconfig/doc/edit-sgml.c4
-rw-r--r--fontconfig/doc/fcatomic.fncs6
-rw-r--r--fontconfig/doc/fcblanks.fncs4
-rw-r--r--fontconfig/doc/fccache.fncs4
-rw-r--r--fontconfig/doc/fccharset.fncs21
-rw-r--r--fontconfig/doc/fcconfig.fncs8
-rw-r--r--fontconfig/doc/fcconstant.fncs4
-rw-r--r--fontconfig/doc/fcfile.fncs4
-rw-r--r--fontconfig/doc/fcfontset.fncs6
-rw-r--r--fontconfig/doc/fcformat.fncs14
-rw-r--r--fontconfig/doc/fcfreetype.fncs8
-rw-r--r--fontconfig/doc/fcinit.fncs8
-rw-r--r--fontconfig/doc/fclangset.fncs34
-rw-r--r--fontconfig/doc/fcmatrix.fncs8
-rw-r--r--fontconfig/doc/fcobjectset.fncs6
-rw-r--r--fontconfig/doc/fcobjecttype.fncs4
-rw-r--r--fontconfig/doc/fcpattern.fncs6
-rw-r--r--fontconfig/doc/fcstring.fncs8
-rw-r--r--fontconfig/doc/fcstrset.fncs4
-rw-r--r--fontconfig/doc/fcvalue.fncs4
-rw-r--r--fontconfig/doc/fontconfig-devel.sgml156
-rw-r--r--fontconfig/doc/fontconfig-user.sgml24
-rw-r--r--fontconfig/doc/func.sgml4
-rw-r--r--fontconfig/doc/version.sgml.in4
-rw-r--r--fontconfig/fc-arch/Makefile.am54
-rw-r--r--fontconfig/fc-arch/fc-arch.c138
-rw-r--r--fontconfig/fc-arch/fcarch.tmpl.h65
-rw-r--r--fontconfig/fc-cache/Makefile.am4
-rw-r--r--fontconfig/fc-cache/fc-cache.c18
-rw-r--r--fontconfig/fc-cache/fc-cache.sgml12
-rw-r--r--fontconfig/fc-case/CaseFolding.txt15
-rw-r--r--fontconfig/fc-case/Makefile.am18
-rw-r--r--fontconfig/fc-case/fc-case.c4
-rw-r--r--fontconfig/fc-case/fccase.tmpl.h4
-rw-r--r--fontconfig/fc-cat/Makefile.am4
-rw-r--r--fontconfig/fc-cat/fc-cat.c7
-rw-r--r--fontconfig/fc-cat/fc-cat.sgml1
-rw-r--r--fontconfig/fc-glyphname/Makefile.am18
-rw-r--r--fontconfig/fc-glyphname/fc-glyphname.c4
-rw-r--r--fontconfig/fc-glyphname/fcglyphname.tmpl.h4
-rw-r--r--fontconfig/fc-lang/Makefile.am21
-rw-r--r--fontconfig/fc-lang/aa.orth4
-rw-r--r--fontconfig/fc-lang/ab.orth4
-rw-r--r--fontconfig/fc-lang/af.orth4
-rw-r--r--fontconfig/fc-lang/am.orth4
-rw-r--r--fontconfig/fc-lang/ar.orth4
-rw-r--r--fontconfig/fc-lang/ast.orth4
-rw-r--r--fontconfig/fc-lang/av.orth4
-rw-r--r--fontconfig/fc-lang/ay.orth4
-rw-r--r--fontconfig/fc-lang/az_ir.orth4
-rw-r--r--fontconfig/fc-lang/ba.orth4
-rw-r--r--fontconfig/fc-lang/be.orth4
-rw-r--r--fontconfig/fc-lang/bg.orth4
-rw-r--r--fontconfig/fc-lang/bh.orth4
-rw-r--r--fontconfig/fc-lang/bho.orth4
-rw-r--r--fontconfig/fc-lang/bi.orth4
-rw-r--r--fontconfig/fc-lang/bin.orth4
-rw-r--r--fontconfig/fc-lang/bm.orth4
-rw-r--r--fontconfig/fc-lang/bo.orth4
-rw-r--r--fontconfig/fc-lang/br.orth4
-rw-r--r--fontconfig/fc-lang/bs.orth4
-rw-r--r--fontconfig/fc-lang/bua.orth4
-rw-r--r--fontconfig/fc-lang/ca.orth4
-rw-r--r--fontconfig/fc-lang/ce.orth4
-rw-r--r--fontconfig/fc-lang/ch.orth4
-rw-r--r--fontconfig/fc-lang/chm.orth4
-rw-r--r--fontconfig/fc-lang/chr.orth4
-rw-r--r--fontconfig/fc-lang/co.orth4
-rw-r--r--fontconfig/fc-lang/cs.orth4
-rw-r--r--fontconfig/fc-lang/cu.orth4
-rw-r--r--fontconfig/fc-lang/cv.orth4
-rw-r--r--fontconfig/fc-lang/cy.orth4
-rw-r--r--fontconfig/fc-lang/da.orth4
-rw-r--r--fontconfig/fc-lang/de.orth4
-rw-r--r--fontconfig/fc-lang/dz.orth4
-rw-r--r--fontconfig/fc-lang/el.orth4
-rw-r--r--fontconfig/fc-lang/en.orth4
-rw-r--r--fontconfig/fc-lang/eo.orth4
-rw-r--r--fontconfig/fc-lang/es.orth4
-rw-r--r--fontconfig/fc-lang/et.orth4
-rw-r--r--fontconfig/fc-lang/eu.orth4
-rw-r--r--fontconfig/fc-lang/fa.orth4
-rw-r--r--fontconfig/fc-lang/fc-lang.c47
-rw-r--r--fontconfig/fc-lang/fc-lang.man4
-rw-r--r--fontconfig/fc-lang/fclang.tmpl.h4
-rw-r--r--fontconfig/fc-lang/ff.orth4
-rw-r--r--fontconfig/fc-lang/fi.orth4
-rw-r--r--fontconfig/fc-lang/fj.orth4
-rw-r--r--fontconfig/fc-lang/fo.orth4
-rw-r--r--fontconfig/fc-lang/fr.orth4
-rw-r--r--fontconfig/fc-lang/fur.orth4
-rw-r--r--fontconfig/fc-lang/fy.orth4
-rw-r--r--fontconfig/fc-lang/ga.orth4
-rw-r--r--fontconfig/fc-lang/gd.orth4
-rw-r--r--fontconfig/fc-lang/gez.orth4
-rw-r--r--fontconfig/fc-lang/gl.orth4
-rw-r--r--fontconfig/fc-lang/gn.orth4
-rw-r--r--fontconfig/fc-lang/gu.orth4
-rw-r--r--fontconfig/fc-lang/gv.orth4
-rw-r--r--fontconfig/fc-lang/ha.orth4
-rw-r--r--fontconfig/fc-lang/haw.orth4
-rw-r--r--fontconfig/fc-lang/he.orth4
-rw-r--r--fontconfig/fc-lang/hi.orth4
-rw-r--r--fontconfig/fc-lang/ho.orth4
-rw-r--r--fontconfig/fc-lang/hr.orth4
-rw-r--r--fontconfig/fc-lang/hu.orth4
-rw-r--r--fontconfig/fc-lang/hy.orth4
-rw-r--r--fontconfig/fc-lang/ia.orth4
-rw-r--r--fontconfig/fc-lang/id.orth4
-rw-r--r--fontconfig/fc-lang/ie.orth4
-rw-r--r--fontconfig/fc-lang/ig.orth4
-rw-r--r--fontconfig/fc-lang/ik.orth4
-rw-r--r--fontconfig/fc-lang/io.orth4
-rw-r--r--fontconfig/fc-lang/is.orth4
-rw-r--r--fontconfig/fc-lang/it.orth4
-rw-r--r--fontconfig/fc-lang/iu.orth4
-rw-r--r--fontconfig/fc-lang/ja.orth4
-rw-r--r--fontconfig/fc-lang/ka.orth4
-rw-r--r--fontconfig/fc-lang/kaa.orth4
-rw-r--r--fontconfig/fc-lang/ki.orth4
-rw-r--r--fontconfig/fc-lang/kk.orth4
-rw-r--r--fontconfig/fc-lang/kl.orth4
-rw-r--r--fontconfig/fc-lang/kn.orth4
-rw-r--r--fontconfig/fc-lang/ko.orth4
-rw-r--r--fontconfig/fc-lang/kok.orth4
-rw-r--r--fontconfig/fc-lang/ku_am.orth4
-rw-r--r--fontconfig/fc-lang/ku_ir.orth4
-rw-r--r--fontconfig/fc-lang/kum.orth4
-rw-r--r--fontconfig/fc-lang/kv.orth4
-rw-r--r--fontconfig/fc-lang/kw.orth4
-rw-r--r--fontconfig/fc-lang/ky.orth4
-rw-r--r--fontconfig/fc-lang/la.orth4
-rw-r--r--fontconfig/fc-lang/lb.orth4
-rw-r--r--fontconfig/fc-lang/lez.orth4
-rw-r--r--fontconfig/fc-lang/ln.orth4
-rw-r--r--fontconfig/fc-lang/lo.orth4
-rw-r--r--fontconfig/fc-lang/lt.orth4
-rw-r--r--fontconfig/fc-lang/lv.orth4
-rw-r--r--fontconfig/fc-lang/mai.orth4
-rw-r--r--fontconfig/fc-lang/mg.orth4
-rw-r--r--fontconfig/fc-lang/mh.orth4
-rw-r--r--fontconfig/fc-lang/mi.orth4
-rw-r--r--fontconfig/fc-lang/mk.orth4
-rw-r--r--fontconfig/fc-lang/ml.orth4
-rw-r--r--fontconfig/fc-lang/mn_cn.orth4
-rw-r--r--fontconfig/fc-lang/mo.orth4
-rw-r--r--fontconfig/fc-lang/mr.orth4
-rw-r--r--fontconfig/fc-lang/mt.orth4
-rw-r--r--fontconfig/fc-lang/my.orth4
-rw-r--r--fontconfig/fc-lang/nb.orth4
-rw-r--r--fontconfig/fc-lang/nds.orth4
-rw-r--r--fontconfig/fc-lang/ne.orth5
-rw-r--r--fontconfig/fc-lang/nl.orth4
-rw-r--r--fontconfig/fc-lang/nn.orth4
-rw-r--r--fontconfig/fc-lang/no.orth4
-rw-r--r--fontconfig/fc-lang/ny.orth4
-rw-r--r--fontconfig/fc-lang/oc.orth4
-rw-r--r--fontconfig/fc-lang/om.orth4
-rw-r--r--fontconfig/fc-lang/or.orth4
-rw-r--r--fontconfig/fc-lang/os.orth4
-rw-r--r--fontconfig/fc-lang/pes.orth4
-rw-r--r--fontconfig/fc-lang/pl.orth4
-rw-r--r--fontconfig/fc-lang/prs.orth4
-rw-r--r--fontconfig/fc-lang/ps_af.orth4
-rw-r--r--fontconfig/fc-lang/ps_pk.orth4
-rw-r--r--fontconfig/fc-lang/pt.orth4
-rw-r--r--fontconfig/fc-lang/rm.orth4
-rw-r--r--fontconfig/fc-lang/ro.orth4
-rw-r--r--fontconfig/fc-lang/ru.orth4
-rw-r--r--fontconfig/fc-lang/sa.orth4
-rw-r--r--fontconfig/fc-lang/sah.orth4
-rw-r--r--fontconfig/fc-lang/sco.orth4
-rw-r--r--fontconfig/fc-lang/se.orth4
-rw-r--r--fontconfig/fc-lang/sel.orth4
-rw-r--r--fontconfig/fc-lang/sk.orth4
-rw-r--r--fontconfig/fc-lang/sl.orth4
-rw-r--r--fontconfig/fc-lang/sm.orth4
-rw-r--r--fontconfig/fc-lang/sma.orth4
-rw-r--r--fontconfig/fc-lang/smj.orth4
-rw-r--r--fontconfig/fc-lang/smn.orth4
-rw-r--r--fontconfig/fc-lang/sms.orth4
-rw-r--r--fontconfig/fc-lang/so.orth4
-rw-r--r--fontconfig/fc-lang/sq.orth4
-rw-r--r--fontconfig/fc-lang/sr.orth4
-rw-r--r--fontconfig/fc-lang/sv.orth4
-rw-r--r--fontconfig/fc-lang/sw.orth4
-rw-r--r--fontconfig/fc-lang/syr.orth4
-rw-r--r--fontconfig/fc-lang/ta.orth4
-rw-r--r--fontconfig/fc-lang/te.orth4
-rw-r--r--fontconfig/fc-lang/tg.orth4
-rw-r--r--fontconfig/fc-lang/th.orth4
-rw-r--r--fontconfig/fc-lang/ti_er.orth4
-rw-r--r--fontconfig/fc-lang/ti_et.orth4
-rw-r--r--fontconfig/fc-lang/tig.orth4
-rw-r--r--fontconfig/fc-lang/tn.orth4
-rw-r--r--fontconfig/fc-lang/to.orth4
-rw-r--r--fontconfig/fc-lang/tr.orth4
-rw-r--r--fontconfig/fc-lang/ts.orth4
-rw-r--r--fontconfig/fc-lang/tt.orth4
-rw-r--r--fontconfig/fc-lang/tw.orth4
-rw-r--r--fontconfig/fc-lang/tyv.orth4
-rw-r--r--fontconfig/fc-lang/ug.orth37
-rw-r--r--fontconfig/fc-lang/uk.orth4
-rw-r--r--fontconfig/fc-lang/ur.orth4
-rw-r--r--fontconfig/fc-lang/ve.orth4
-rw-r--r--fontconfig/fc-lang/vi.orth4
-rw-r--r--fontconfig/fc-lang/vo.orth4
-rw-r--r--fontconfig/fc-lang/vot.orth4
-rw-r--r--fontconfig/fc-lang/wa.orth4
-rw-r--r--fontconfig/fc-lang/wen.orth4
-rw-r--r--fontconfig/fc-lang/wo.orth4
-rw-r--r--fontconfig/fc-lang/xh.orth4
-rw-r--r--fontconfig/fc-lang/yap.orth4
-rw-r--r--fontconfig/fc-lang/yi.orth4
-rw-r--r--fontconfig/fc-lang/yo.orth4
-rw-r--r--fontconfig/fc-lang/zh_cn.orth4
-rw-r--r--fontconfig/fc-lang/zh_hk.orth4
-rw-r--r--fontconfig/fc-lang/zh_mo.orth4
-rw-r--r--fontconfig/fc-lang/zh_sg.orth4
-rw-r--r--fontconfig/fc-lang/zh_tw.orth4
-rw-r--r--fontconfig/fc-lang/zu.orth4
-rw-r--r--fontconfig/fc-list/Makefile.am4
-rw-r--r--fontconfig/fc-list/fc-list.c4
-rw-r--r--fontconfig/fc-list/fc-list.sgml1
-rw-r--r--fontconfig/fc-match/Makefile.am4
-rw-r--r--fontconfig/fc-match/fc-match.c4
-rw-r--r--fontconfig/fc-match/fc-match.sgml3
-rw-r--r--fontconfig/fc-pattern/Makefile.am59
-rw-r--r--fontconfig/fc-pattern/fc-pattern.c195
-rw-r--r--fontconfig/fc-pattern/fc-pattern.sgml204
-rw-r--r--fontconfig/fc-query/Makefile.am4
-rw-r--r--fontconfig/fc-query/fc-query.c4
-rw-r--r--fontconfig/fc-query/fc-query.sgml1
-rw-r--r--fontconfig/fc-scan/Makefile.am4
-rw-r--r--fontconfig/fc-scan/fc-scan.c4
-rw-r--r--fontconfig/fc-scan/fc-scan.sgml1
-rw-r--r--fontconfig/fontconfig.pc.in5
-rw-r--r--fontconfig/fontconfig/fcfreetype.h4
-rw-r--r--fontconfig/fontconfig/fcprivate.h4
-rw-r--r--fontconfig/fontconfig/fontconfig.h17
-rw-r--r--fontconfig/fonts.dtd11
-rw-r--r--fontconfig/src/Makefile.am14
-rw-r--r--fontconfig/src/fcarch.c73
-rw-r--r--fontconfig/src/fcarch.h71
-rw-r--r--fontconfig/src/fcatomic.c10
-rw-r--r--fontconfig/src/fcblanks.c4
-rw-r--r--fontconfig/src/fccache.c86
-rw-r--r--fontconfig/src/fccfg.c167
-rw-r--r--fontconfig/src/fccharset.c171
-rw-r--r--fontconfig/src/fcdbg.c26
-rw-r--r--fontconfig/src/fcdefault.c6
-rw-r--r--fontconfig/src/fcdir.c22
-rw-r--r--fontconfig/src/fcformat.c14
-rw-r--r--fontconfig/src/fcfreetype.c99
-rw-r--r--fontconfig/src/fcfs.c10
-rw-r--r--fontconfig/src/fcinit.c12
-rw-r--r--fontconfig/src/fcint.h68
-rw-r--r--fontconfig/src/fclang.c96
-rw-r--r--fontconfig/src/fclist.c34
-rw-r--r--fontconfig/src/fcmatch.c38
-rw-r--r--fontconfig/src/fcname.c32
-rw-r--r--fontconfig/src/fcpat.c74
-rw-r--r--fontconfig/src/fcstr.c78
-rw-r--r--fontconfig/src/fcxml.c371
274 files changed, 2331 insertions, 1607 deletions
diff --git a/fontconfig/COPYING b/fontconfig/COPYING
index d68372289..2a5d777ff 100644
--- a/fontconfig/COPYING
+++ b/fontconfig/COPYING
@@ -1,14 +1,19 @@
fontconfig/COPYING
-Copyright © 2001,2003 Keith Packard
+Copyright © 2000,2001,2002,2003,2004,2006,2007 Keith Packard
+Copyright © 2005 Patrick Lam
+Copyright © 2009 Roozbeh Pournader
+Copyright © 2008,2009 Red Hat, Inc.
+Copyright © 2008 Danilo Šegan
+
Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
-documentation, and that the name of Keith Packard not be used in
+documentation, and that the name of the author(s) not be used in
advertising or publicity pertaining to distribution of the software without
-specific, written prior permission. Keith Packard makes no
+specific, written prior permission. The authors make no
representations about the suitability of this software for any purpose. It
is provided "as is" without express or implied warranty.
diff --git a/fontconfig/INSTALL b/fontconfig/INSTALL
index 0017eed40..754a32b93 100644
--- a/fontconfig/INSTALL
+++ b/fontconfig/INSTALL
@@ -2,7 +2,12 @@ Fontconfig is built with the traditional configure script:
$ ./configure --sysconfdir=/etc --prefix=/usr --mandir=/usr/share/man
-This should generate valid Makefiles, then:
+If you checked out from the git repository (as opposed to downloading a
+tarball), you need to run autogen.sh instead of configure:
+
+ $ ./autogen.sh --sysconfdir=/etc --prefix=/usr --mandir=/usr/share/man
+
+Either way, that should generate valid Makefiles, then:
$ make
$ make install
@@ -14,9 +19,9 @@ important steps:
sh new-version.sh 2.xx.xx
2. rebuild the configuration files with autogen.sh
- sh autogen.sh --sysconfdir=/etc --prefix=/usr --mandir=/usr/share/man --localstatedir=/var
+ ./autogen.sh --sysconfdir=/etc --prefix=/usr --mandir=/usr/share/man --localstatedir=/var
- 3. make distcheck (NB: won't work without docbook-utils -PL)
+ 3. make distcheck
4. Copy ChangeLog-2.x.y and fontconfig-2.x.y.tar.gz to
diff --git a/fontconfig/Makefile.am b/fontconfig/Makefile.am
index e08857e59..7931717a2 100644
--- a/fontconfig/Makefile.am
+++ b/fontconfig/Makefile.am
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
@@ -22,8 +22,9 @@
# PERFORMANCE OF THIS SOFTWARE.
DOCSRC=@DOCSRC@
-SUBDIRS=fontconfig fc-case fc-lang fc-glyphname fc-arch src \
- fc-cache fc-cat fc-list fc-match fc-query fc-scan conf.d $(DOCSRC) test
+SUBDIRS=fontconfig fc-case fc-lang fc-glyphname src \
+ fc-cache fc-cat fc-list fc-match fc-pattern fc-query fc-scan \
+ conf.d $(DOCSRC) test
EXTRA_DIST = \
fontconfig.pc.in \
@@ -105,8 +106,8 @@ install-data-local: fonts.conf
$(INSTALL_DATA) fonts.conf $(DESTDIR)$(configdir)/fonts.conf; \
fi; fi
@(if $(RUN_FC_CACHE_TEST); then \
- echo " $(bindir)/fc-cache -s -f -v"; \
- $(bindir)/fc-cache -s -f -v; \
+ echo "fc-cache$(EXEEXT) -s -f -v"; \
+ fc-cache/fc-cache$(EXEEXT) -s -f -v; \
else \
echo "***"; \
echo "*** Warning: fonts.cache not built"; \
diff --git a/fontconfig/acinclude.m4 b/fontconfig/acinclude.m4
deleted file mode 100644
index 1195da380..000000000
--- a/fontconfig/acinclude.m4
+++ /dev/null
@@ -1,137 +0,0 @@
-dnl dolt, a replacement for libtool
-dnl Copyright © 2007-2008 Josh Triplett <josh@freedesktop.org>
-dnl Copying and distribution of this file, with or without modification,
-dnl are permitted in any medium without royalty provided the copyright
-dnl notice and this notice are preserved.
-dnl
-dnl To use dolt, invoke the DOLT macro immediately after the libtool macros.
-dnl Optionally, copy this file into acinclude.m4, to avoid the need to have it
-dnl installed when running autoconf on your project.
-
-AC_DEFUN([DOLT], [
-AC_REQUIRE([AC_CANONICAL_HOST])
-# dolt, a replacement for libtool
-# Josh Triplett <josh@freedesktop.org>
-AC_PATH_PROG(DOLT_BASH, bash)
-AC_MSG_CHECKING([if dolt supports this host])
-dolt_supported=yes
-if test x$DOLT_BASH = x; then
- dolt_supported=no
-fi
-if test x$GCC != xyes; then
- dolt_supported=no
-fi
-case $host in
-i?86-*-linux*|x86_64-*-linux*|powerpc-*-linux*) ;;
-amd64-*-freebsd*|i?86-*-freebsd*|ia64-*-freebsd*) ;;
-*) dolt_supported=no ;;
-esac
-if test x$dolt_supported = xno ; then
- AC_MSG_RESULT([no, falling back to libtool])
- LTCOMPILE='$(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(COMPILE)'
- LTCXXCOMPILE='$(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXXCOMPILE)'
-else
- AC_MSG_RESULT([yes, replacing libtool])
-
-dnl Start writing out doltcompile.
- cat <<__DOLTCOMPILE__EOF__ >doltcompile
-#!$DOLT_BASH
-__DOLTCOMPILE__EOF__
- cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
-args=("$[]@")
-for ((arg=0; arg<${#args@<:@@@:>@}; arg++)) ; do
- if test x"${args@<:@$arg@:>@}" = x-o ; then
- objarg=$((arg+1))
- break
- fi
-done
-if test x$objarg = x ; then
- echo 'Error: no -o on compiler command line' 1>&2
- exit 1
-fi
-lo="${args@<:@$objarg@:>@}"
-obj="${lo%.lo}"
-if test x"$lo" = x"$obj" ; then
- echo "Error: libtool object file name \"$lo\" does not end in .lo" 1>&2
- exit 1
-fi
-objbase="${obj##*/}"
-__DOLTCOMPILE__EOF__
-
-dnl Write out shared compilation code.
- if test x$enable_shared = xyes; then
- cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
-libobjdir="${obj%$objbase}.libs"
-if test ! -d "$libobjdir" ; then
- mkdir_out="$(mkdir "$libobjdir" 2>&1)"
- mkdir_ret=$?
- if test "$mkdir_ret" -ne 0 && test ! -d "$libobjdir" ; then
- echo "$mkdir_out" 1>&2
- exit $mkdir_ret
- fi
-fi
-pic_object="$libobjdir/$objbase.o"
-args@<:@$objarg@:>@="$pic_object"
-"${args@<:@@@:>@}" -fPIC -DPIC || exit $?
-__DOLTCOMPILE__EOF__
- fi
-
-dnl Write out static compilation code.
-dnl Avoid duplicate compiler output if also building shared objects.
- if test x$enable_static = xyes; then
- cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
-non_pic_object="$obj.o"
-args@<:@$objarg@:>@="$non_pic_object"
-__DOLTCOMPILE__EOF__
- if test x$enable_shared = xyes; then
- cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
-"${args@<:@@@:>@}" >/dev/null 2>&1 || exit $?
-__DOLTCOMPILE__EOF__
- else
- cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
-"${args@<:@@@:>@}" || exit $?
-__DOLTCOMPILE__EOF__
- fi
- fi
-
-dnl Write out the code to write the .lo file.
-dnl The second line of the .lo file must match "^# Generated by .*libtool"
- cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
-{
-echo "# $lo - a libtool object file"
-echo "# Generated by doltcompile, not libtool"
-__DOLTCOMPILE__EOF__
-
- if test x$enable_shared = xyes; then
- cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
-echo "pic_object='$pic_object'"
-__DOLTCOMPILE__EOF__
- else
- cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
-echo pic_object=none
-__DOLTCOMPILE__EOF__
- fi
-
- if test x$enable_static = xyes; then
- cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
-echo "non_pic_object='$non_pic_object'"
-__DOLTCOMPILE__EOF__
- else
- cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
-echo non_pic_object=none
-__DOLTCOMPILE__EOF__
- fi
-
- cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
-} > "$lo"
-__DOLTCOMPILE__EOF__
-
-dnl Done writing out doltcompile; substitute it for libtool compilation.
- chmod +x doltcompile
- LTCOMPILE='$(top_builddir)/doltcompile $(COMPILE)'
- LTCXXCOMPILE='$(top_builddir)/doltcompile $(CXXCOMPILE)'
-fi
-AC_SUBST(LTCOMPILE)
-AC_SUBST(LTCXXCOMPILE)
-# end dolt
-])
diff --git a/fontconfig/autogen.sh b/fontconfig/autogen.sh
index 820c457fe..df4cd4142 100644
--- a/fontconfig/autogen.sh
+++ b/fontconfig/autogen.sh
@@ -115,8 +115,8 @@ $AUTOCONF
cd $ORIGDIR
if test -z "$AUTOGEN_SUBDIR_MODE"; then
- echo Running $srcdir/configure --enable-maintainer-mode "$@"
- $srcdir/configure --enable-maintainer-mode "$@"
+ echo Running $srcdir/configure "$@"
+ $srcdir/configure "$@"
echo
echo "Now type 'make' to compile $PROJECT."
diff --git a/fontconfig/conf.d/Makefile.am b/fontconfig/conf.d/Makefile.am
index bff1171c1..3f5255fad 100644
--- a/fontconfig/conf.d/Makefile.am
+++ b/fontconfig/conf.d/Makefile.am
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/config/Makedefs.in b/fontconfig/config/Makedefs.in
index da156b6f2..ae75aff49 100644
--- a/fontconfig/config/Makedefs.in
+++ b/fontconfig/config/Makedefs.in
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/configure.in b/fontconfig/configure.in
index 589b0c4f8..9f671abe7 100644
--- a/fontconfig/configure.in
+++ b/fontconfig/configure.in
@@ -7,9 +7,9 @@ dnl Permission to use, copy, modify, distribute, and sell this software and its
dnl documentation for any purpose is hereby granted without fee, provided that
dnl the above copyright notice appear in all copies and that both that
dnl copyright notice and this permission notice appear in supporting
-dnl documentation, and that the name of Keith Packard not be used in
+dnl documentation, and that the name of the author(s) not be used in
dnl advertising or publicity pertaining to distribution of the software without
-dnl specific, written prior permission. Keith Packard makes no
+dnl specific, written prior permission. The authors make no
dnl representations about the suitability of this software for any purpose. It
dnl is provided "as is" without express or implied warranty.
dnl
@@ -33,9 +33,8 @@ dnl This is the package version number, not the shared library
dnl version. This same version number must appear in fontconfig/fontconfig.h
dnl Yes, it is a pain to synchronize version numbers. Unfortunately, it's
dnl not possible to extract the version number here from fontconfig.h
-AM_INIT_AUTOMAKE(fontconfig, 2.8.0)
+AM_INIT_AUTOMAKE(fontconfig, 2.8.90)
m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
-AM_MAINTAINER_MODE
dnl libtool versioning
@@ -56,14 +55,13 @@ AC_SUBST(LIBT_CURRENT_MINUS_AGE)
dnl ==========================================================================
-AM_CONFIG_HEADER(config.h)
+AC_CONFIG_HEADERS(config.h)
AC_PROG_CC
AC_PROG_INSTALL
AC_PROG_LN_S
AC_LIBTOOL_WIN32_DLL
AM_PROG_LIBTOOL
-DOLT
AC_PROG_MAKE_SET
dnl ==========================================================================
@@ -99,59 +97,12 @@ AM_CONDITIONAL(CROSS_COMPILING, test $cross_compiling = yes)
dnl ==========================================================================
-# Setup for compiling build tools (fc-glyphname, etc)
-AC_MSG_CHECKING([for a C compiler for build tools])
-if test $cross_compiling = yes; then
- AC_CHECK_PROGS(CC_FOR_BUILD, gcc cc)
-else
- CC_FOR_BUILD=$CC
-fi
-AC_MSG_RESULT([$CC_FOR_BUILD])
-AC_SUBST(CC_FOR_BUILD)
-
-AC_MSG_CHECKING([for suffix of executable build tools])
-if test $cross_compiling = yes; then
- cat >conftest.c <<\_______EOF
-int
-main ()
-{
- exit (0);
-}
-_______EOF
- for i in .exe ""; do
- compile="$CC_FOR_BUILD conftest.c -o conftest$i"
- if AC_TRY_EVAL(compile); then
- if (./conftest) 2>&AC_FD_CC; then
- EXEEXT_FOR_BUILD=$i
- break
- fi
- fi
- done
- rm -f conftest*
- if test "${EXEEXT_FOR_BUILD+set}" != set; then
- AC_MSG_ERROR([Cannot determine suffix of executable build tools])
- fi
-else
- EXEEXT_FOR_BUILD=$EXEEXT
-fi
-AC_MSG_RESULT([$EXEEXT_FOR_BUILD])
-AC_SUBST(EXEEXT_FOR_BUILD)
-
-dnl ==========================================================================
-
AC_ARG_WITH(arch, [ --with-arch=ARCH Force architecture to ARCH], arch="$withval", arch=auto)
-if test $cross_compiling = yes; then
- case "$arch" in
- auto)
- AC_MSG_ERROR([Cannot autodetect architecture in cross compile environment]
- [Use --with-arch=ARCH to specify architecture])
- ;;
- esac
+if test "x$arch" != xauto; then
+ AC_DEFINE_UNQUOTED([FC_ARCHITECTURE], "$arch", [Architecture prefix to use for cache file names])
fi
-ARCHITECTURE=$arch
-AC_SUBST(ARCHITECTURE)
dnl ==========================================================================
@@ -530,19 +481,27 @@ fi
AC_SUBST(DOCSRC)
AC_SUBST(DOCMAN3)
+
+dnl Figure out what cache format suffix to use for this architecture
+AC_C_BIGENDIAN
+AC_CHECK_SIZEOF([void *])
+AC_CHECK_ALIGNOF([double])
+
+
+
AC_OUTPUT([
-Makefile
+Makefile
fontconfig/Makefile
fc-lang/Makefile
fc-glyphname/Makefile
fc-case/Makefile
-fc-arch/Makefile
src/Makefile
conf.d/Makefile
fc-cache/Makefile
fc-cat/Makefile
fc-list/Makefile
fc-match/Makefile
+fc-pattern/Makefile
fc-query/Makefile
fc-scan/Makefile
doc/Makefile
diff --git a/fontconfig/doc/Makefile.am b/fontconfig/doc/Makefile.am
index 49e00e155..8d7d5c8ba 100644
--- a/fontconfig/doc/Makefile.am
+++ b/fontconfig/doc/Makefile.am
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
@@ -21,10 +21,6 @@
# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
-CC = @CC_FOR_BUILD@
-EXEEXT = @EXEEXT_FOR_BUILD@
-LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
-
DOC_SRC = $(srcdir)
DOC_MODULE = fontconfig
DOC2HTML = docbook2html
@@ -83,7 +79,7 @@ DOC_FUNCS_SGML=\
fcstrset.sgml \
fcvalue.sgml
-man5_MANS=fonts-conf.5
+man5_MANS=fonts-conf.5
man3_MANS=$(DOCMAN3)
noinst_PROGRAMS=edit-sgml
@@ -96,15 +92,20 @@ check_SCRIPTS=check-missing-doc
TESTS_ENVIRONMENT=top_srcdir=${top_srcdir} sh
TESTS=check-missing-doc
-EXTRA_DIST=$(LOCAL_DOCS) $(SGML) $(DOC_FUNCS_FNCS) $(check_SCRIPTS) func.sgml confdir.sgml.in
+EXTRA_DIST=$(LOCAL_DOCS) $(SGML) $(DOC_FUNCS_FNCS) $(DOC_FUNCS_SGML) $(check_SCRIPTS) func.sgml confdir.sgml.in
SUFFIXES=.fncs .sgml .txt .html
if USEDOCBOOK
+if CROSS_COMPILING
+.fncs.sgml:
+ @echo Warning: cannot rebuild $@ when cross-compiling
+else
.fncs.sgml:
$(RM) $@
./edit-sgml$(EXEEXT) $(FNCS_TMPL) < '$<' > $*.sgml
+endif
.sgml.txt:
$(RM) $@
@@ -127,7 +128,7 @@ func.refs: local-fontconfig-devel.sgml $(DOC_FUNCS_SGML) version.sgml confdir.sg
local-fontconfig-devel.sgml: fontconfig-devel.sgml
$(LN_S) $< $@
-$(DOC_FUNCS_SGML): edit-sgml$(EXEEXT) $(FNCS_TMPL)
+$(DOC_FUNCS_SGML): edit-sgml.c $(FNCS_TMPL)
fonts-conf.5: local-fontconfig-user.sgml version.sgml confdir.sgml
$(RM) $@
@@ -140,9 +141,11 @@ local-fontconfig-user.sgml: fontconfig-user.sgml
all-local: $(LOCAL_DOCS)
clean-local:
- $(RM) $(man3_MANS) $(man5_MANS) $(DOC_FILES) $(DOC_FUNCS_SGML) func.refs
+ $(RM) $(man3_MANS) $(man5_MANS) $(DOC_FILES) func.refs
$(RM) -r $(HTML_DIR)
+MAINTAINERCLEANFILES = $(DOC_FUNCS_SGML)
+
$(HTML_DIR): local-fontconfig-devel.sgml $(DOC_FUNCS_SGML) version.sgml confdir.sgml
$(RM) -r $(HTML_DIR)
$(DOC2HTML) -V '%use-id-as-filename%' -o $(HTML_DIR) local-fontconfig-devel.sgml
diff --git a/fontconfig/doc/confdir.sgml.in b/fontconfig/doc/confdir.sgml.in
index 291b26bb3..cfcaa9f6e 100644
--- a/fontconfig/doc/confdir.sgml.in
+++ b/fontconfig/doc/confdir.sgml.in
@@ -7,9 +7,9 @@
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
- documentation, and that the name of Keith Packard not be used in
+ documentation, and that the name of the author(s) not be used in
advertising or publicity pertaining to distribution of the software without
- specific, written prior permission. Keith Packard makes no
+ specific, written prior permission. The authors make no
representations about the suitability of this software for any purpose. It
is provided "as is" without express or implied warranty.
diff --git a/fontconfig/doc/edit-sgml.c b/fontconfig/doc/edit-sgml.c
index b69c93ed7..cc2ee7633 100644
--- a/fontconfig/doc/edit-sgml.c
+++ b/fontconfig/doc/edit-sgml.c
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
diff --git a/fontconfig/doc/fcatomic.fncs b/fontconfig/doc/fcatomic.fncs
index c6b924d84..017756af1 100644
--- a/fontconfig/doc/fcatomic.fncs
+++ b/fontconfig/doc/fcatomic.fncs
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -57,7 +57,7 @@ by <parameter>atomic</parameter>.
@TYPE1@ FcAtomic * @ARG1@ atomic
@PURPOSE@ return original file name
@DESC@
-Returns the file refernced by <parameter>atomic</parameter>.
+Returns the file referenced by <parameter>atomic</parameter>.
@@
@RET@ FcBool
diff --git a/fontconfig/doc/fcblanks.fncs b/fontconfig/doc/fcblanks.fncs
index b8ce47d24..b0996d644 100644
--- a/fontconfig/doc/fcblanks.fncs
+++ b/fontconfig/doc/fcblanks.fncs
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
diff --git a/fontconfig/doc/fccache.fncs b/fontconfig/doc/fccache.fncs
index f0c984d79..f35c5d7cb 100644
--- a/fontconfig/doc/fccache.fncs
+++ b/fontconfig/doc/fccache.fncs
@@ -5,9 +5,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
diff --git a/fontconfig/doc/fccharset.fncs b/fontconfig/doc/fccharset.fncs
index b12064a55..036870d3b 100644
--- a/fontconfig/doc/fccharset.fncs
+++ b/fontconfig/doc/fccharset.fncs
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -46,11 +46,22 @@ memory referenced is freed.
@TYPE2@ FcChar32% @ARG2@ ucs4
@PURPOSE@ Add a character to a charset
@DESC@
-<function>FcCharSetAddChar</function> adds a single unicode char to the set,
+<function>FcCharSetAddChar</function> adds a single Unicode char to the set,
returning FcFalse on failure, either as a result of a constant set or from
running out of memory.
@@
+@RET@ FcBool
+@FUNC@ FcCharSetDelChar
+@TYPE1@ FcCharSet * @ARG1@ fcs
+@TYPE2@ FcChar32% @ARG2@ ucs4
+@PURPOSE@ Add a character to a charset
+@DESC@
+<function>FcCharSetDelChar</function> deletes a single Unicode char from the set,
+returning FcFalse on failure, either as a result of a constant set or from
+running out of memory.
+@@
+
@RET@ FcCharSet *
@FUNC@ FcCharSetCopy
@TYPE1@ FcCharSet * @ARG1@ src
@@ -67,7 +78,7 @@ than increment the reference count on <parameter>src</parameter>.
@PURPOSE@ Compare two charsets
@DESC@
Returns whether <parameter>a</parameter> and <parameter>b</parameter>
-contain the same set of unicode chars.
+contain the same set of Unicode chars.
@@
@RET@ FcCharSet *
@@ -127,7 +138,7 @@ Returns whether <parameter>fcs</parameter> contains the char <parameter>ucs4</pa
@TYPE1@ const FcCharSet * @ARG1@ a
@PURPOSE@ Count entries in a charset
@DESC@
-Returns the total number of unicode chars in <parameter>a</parameter>.
+Returns the total number of Unicode chars in <parameter>a</parameter>.
@@
@RET@ FcChar32
diff --git a/fontconfig/doc/fcconfig.fncs b/fontconfig/doc/fcconfig.fncs
index 8bb953b34..fb55adece 100644
--- a/fontconfig/doc/fcconfig.fncs
+++ b/fontconfig/doc/fcconfig.fncs
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -90,7 +90,7 @@ is enabled, and NULL otherwise.
See also <function>FcConfigEnableHome</function>).
@@
-@RET@ FcBol
+@RET@ FcBool
@FUNC@ FcConfigEnableHome
@TYPE1@ FcBool% @ARG1@ enable
@PURPOSE@ controls use of the home directory.
@@ -309,7 +309,7 @@ by the return value from multiple FcFontSort calls, applications must not
modify these patterns. Instead, they should be passed, along with <parameter>p</parameter> to
<function>FcFontRenderPrepare</function> which combines them into a complete pattern.
</para><para>
-The FcFontSet returned by FcFontSort is destroyed by caling FcFontSetDestroy.
+The FcFontSet returned by FcFontSort is destroyed by calling FcFontSetDestroy.
If <parameter>config</parameter> is NULL, the current configuration is used.
@@
diff --git a/fontconfig/doc/fcconstant.fncs b/fontconfig/doc/fcconstant.fncs
index 86150f203..2ead0a6f0 100644
--- a/fontconfig/doc/fcconstant.fncs
+++ b/fontconfig/doc/fcconstant.fncs
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
diff --git a/fontconfig/doc/fcfile.fncs b/fontconfig/doc/fcfile.fncs
index d15ab27a3..5f5f32a8a 100644
--- a/fontconfig/doc/fcfile.fncs
+++ b/fontconfig/doc/fcfile.fncs
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
diff --git a/fontconfig/doc/fcfontset.fncs b/fontconfig/doc/fcfontset.fncs
index 57005fdd0..e076d8b92 100644
--- a/fontconfig/doc/fcfontset.fncs
+++ b/fontconfig/doc/fcfontset.fncs
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -125,7 +125,7 @@ modify these patterns. Instead, they should be passed, along with
<parameter>pattern</parameter> to
<function>FcFontRenderPrepare</function> which combines them into a complete pattern.
</para><para>
-The FcFontSet returned by FcFontSetSort is destroyed by caling FcFontSetDestroy.
+The FcFontSet returned by FcFontSetSort is destroyed by calling FcFontSetDestroy.
@@
@RET@
diff --git a/fontconfig/doc/fcformat.fncs b/fontconfig/doc/fcformat.fncs
index b092449cf..125e6b437 100644
--- a/fontconfig/doc/fcformat.fncs
+++ b/fontconfig/doc/fcformat.fncs
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -36,7 +36,7 @@ caller using free(), or NULL if <parameter>format</parameter> is invalid.
</para><para>
-The format is loosely modelled after printf-style format string.
+The format is loosely modeled after printf-style format string.
The format string is composed of zero or more directives: ordinary
characters (not "%"), which are copied unchanged to the output stream;
and tags which are interpreted to construct text from the pattern in a
@@ -50,7 +50,7 @@ are meant to be copied to the output as ordinary characters.
</para><para>
-Each tags is introduced by the character "%",
+Each tag is introduced by the character "%",
followed by an optional minimum field width,
followed by tag contents in curly braces ({}).
If the minimum field width value is provided the tag
@@ -66,7 +66,7 @@ A <firstterm>simple</firstterm> tag
is one where the content is an identifier. When simple
tags are expanded, the named identifier will be looked up in
<parameter>pattern</parameter> and the resulting list of values returned,
-joined together using comma. For example, to print the family name and style the
+joined together using comma. For example, to print the family name and style of the
pattern, use the format "%{family} %{style}\n". To extend the family column
to forty characters use "%-40{family}%{style}\n".
@@ -112,7 +112,7 @@ A <firstterm>sub-expression</firstterm> tag
is one that expands a sub-expression. The tag contents
are the sub-expression to expand placed inside another set of curly braces.
Sub-expression tags are useful for aligning an entire sub-expression, or to
-apply converters (explained later) on an entire sub-expression.
+apply converters (explained later) to the entire sub-expression output.
For example, the format "%40{{%{family} %{style}}}" expands the sub-expression
to construct the family name followed by the style, then takes the entire
string and pads it on the left to be at least forty characters.
@@ -164,7 +164,7 @@ a single value for those elements, starting from the first value and
continuing as long as any of those elements has a value.
For example, the format "%{[]family,familylang{%{family} (%{familylang})\n}}"
will expand the pattern "%{family} (%{familylang})\n" with a pattern
-having only the first value of the family and familylang elemtns, then expands
+having only the first value of the family and familylang elements, then expands
it with the second values, then the third, etc.
</para><para>
diff --git a/fontconfig/doc/fcfreetype.fncs b/fontconfig/doc/fcfreetype.fncs
index 366cfaef8..e4cca46a3 100644
--- a/fontconfig/doc/fcfreetype.fncs
+++ b/fontconfig/doc/fcfreetype.fncs
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -45,7 +45,7 @@ higher level functions.
@FUNC@ FcFreeTypeCharSet
@TYPE1@ FT_Face% @ARG1@ face
@TYPE2@ FcBlanks * @ARG2@ blanks
-@PURPOSE@ compute unicode coverage
+@PURPOSE@ compute Unicode coverage
@DESC@
Scans a FreeType face and returns the set of encoded Unicode chars. This scans
several encoding tables to build as complete a list as possible.
@@ -61,7 +61,7 @@ not in 'blanks' are not placed in the returned FcCharSet.
@TYPE1@ FT_Face% @ARG1@ face
@TYPE2@ FcBlanks * @ARG2@ blanks
@TYPE3@ int * @ARG3@ spacing
-@PURPOSE@ compute unicode coverage and spacing type
+@PURPOSE@ compute Unicode coverage and spacing type
@DESC@
Scans a FreeType face and returns the set of encoded Unicode chars.
This scans
diff --git a/fontconfig/doc/fcinit.fncs b/fontconfig/doc/fcinit.fncs
index e9b7947b8..014af0dea 100644
--- a/fontconfig/doc/fcinit.fncs
+++ b/fontconfig/doc/fcinit.fncs
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -53,7 +53,7 @@ been loaded, this routine does nothing and returns FcTrue.
@RET@ void
@FUNC@ FcFini
@TYPE1@ void
-@PURPOSE@ finalize fonconfig library
+@PURPOSE@ finalize fontconfig library
@DESC@
Frees all data structures allocated by previous calls to fontconfig
functions. Fontconfig returns to an uninitialized state, requiring a
@@ -76,7 +76,7 @@ Returns the version number of the library.
@DESC@
Forces the default configuration file to be reloaded and resets the default
configuration. Returns FcFalse if the configuration cannot be reloaded (due
-to config file errors, allocation failures or other issues) and leaves the
+to configuration file errors, allocation failures or other issues) and leaves the
existing configuration unchanged. Otherwise returns FcTrue.
@@
diff --git a/fontconfig/doc/fclangset.fncs b/fontconfig/doc/fclangset.fncs
index f9d578e65..0a44b38c2 100644
--- a/fontconfig/doc/fclangset.fncs
+++ b/fontconfig/doc/fclangset.fncs
@@ -58,6 +58,36 @@ two or three letter language from ISO 639 and Tt is a territory from ISO
3166.
@@
+@RET@ FcBool
+@FUNC@ FcLangSetDel
+@TYPE1@ FcLangSet * @ARG1@ ls
+@TYPE2@ const FcChar8 * @ARG2@ lang
+@PURPOSE@ delete a language from a langset
+@DESC@
+<parameter>lang</parameter> is removed from <parameter>ls</parameter>.
+<parameter>lang</parameter> should be of the form Ll-Tt where Ll is a
+two or three letter language from ISO 639 and Tt is a territory from ISO
+3166.
+@@
+
+@RET@ FcLangSet *
+@FUNC@ FcLangSetUnion
+@TYPE1@ const FcLangSet * @ARG1@ ls_a
+@TYPE2@ const FcLangSet * @ARG2@ ls_b
+@PURPOSE@ Add langsets
+@DESC@
+Returns a set including only those languages found in either <parameter>ls_a</parameter> or <parameter>ls_b</parameter>.
+@@
+
+@RET@ FcLangSet *
+@FUNC@ FcLangSetSubtract
+@TYPE1@ const FcLangSet * @ARG1@ ls_a
+@TYPE2@ const FcLangSet * @ARG2@ ls_b
+@PURPOSE@ Subtract langsets
+@DESC@
+Returns a set including only those languages found in <parameter>ls_a</parameter> but not in <parameter>ls_b</parameter>.
+@@
+
@RET@ FcLangResult
@FUNC@ FcLangSetCompare
@TYPE1@ const FcLangSet * @ARG1@ ls_a
@@ -68,7 +98,7 @@ two or three letter language from ISO 639 and Tt is a territory from ISO
<parameter>ls_a</parameter> and <parameter>ls_b</parameter>. If they share
any language and territory pair, this function returns FcLangEqual. If they
share a language but differ in which territory that language is for, this
-function returns FcLangDiffentTerritory. If they share no languages in
+function returns FcLangDifferentTerritory. If they share no languages in
common, this function returns FcLangDifferentLang.
@@
@@ -119,7 +149,7 @@ value may not be equal.
<parameter>ls</parameter> has a matching language and territory pair,
this function returns FcLangEqual. If <parameter>ls</parameter> has
a matching language but differs in which territory that language is for, this
-function returns FcLangDiffentTerritory. If <parameter>ls</parameter>
+function returns FcLangDifferentTerritory. If <parameter>ls</parameter>
has no matching language, this function returns FcLangDifferentLang.
@@
diff --git a/fontconfig/doc/fcmatrix.fncs b/fontconfig/doc/fcmatrix.fncs
index fd680e458..a53ade946 100644
--- a/fontconfig/doc/fcmatrix.fncs
+++ b/fontconfig/doc/fcmatrix.fncs
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -97,11 +97,11 @@ matrix:
@DESC@
<function>FcMatrixScale</function> multiplies <parameter>matrix</parameter>
x values by <parameter>sx</parameter> and y values by
-<parameter>sy</parameter>. This is done by multiplying by
+<parameter>dy</parameter>. This is done by multiplying by
the matrix:
<programlisting>
sx 0
- 0 sy
+ 0 dy
</programlisting>
@@
diff --git a/fontconfig/doc/fcobjectset.fncs b/fontconfig/doc/fcobjectset.fncs
index 468a7bfc1..57e1750d1 100644
--- a/fontconfig/doc/fcobjectset.fncs
+++ b/fontconfig/doc/fcobjectset.fncs
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -35,7 +35,7 @@ Creates an empty set.
@TYPE2@ const char * @ARG2@ object
@PURPOSE@ Add to an object set
@DESC@
-Adds a proprety name to the set. Returns FcFalse if the property name cannot be
+Adds a property name to the set. Returns FcFalse if the property name cannot be
inserted into the set (due to allocation failure). Otherwise returns FcTrue.
@@
diff --git a/fontconfig/doc/fcobjecttype.fncs b/fontconfig/doc/fcobjecttype.fncs
index bc254f3b9..45f3a31a0 100644
--- a/fontconfig/doc/fcobjecttype.fncs
+++ b/fontconfig/doc/fcobjecttype.fncs
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
diff --git a/fontconfig/doc/fcpattern.fncs b/fontconfig/doc/fcpattern.fncs
index e2c2953df..1df1c4f61 100644
--- a/fontconfig/doc/fcpattern.fncs
+++ b/fontconfig/doc/fcpattern.fncs
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -108,7 +108,7 @@ equal.
@DESC@
Adds a single value to the list of values associated with the property named
`object<parameter>. If `append</parameter> is FcTrue, the value is added at the end of any
-existing list, otherwise it is inserted at the begining. `value' is saved
+existing list, otherwise it is inserted at the beginning. `value' is saved
(with FcValueSave) when inserted into the pattern so that the library
retains no reference to any application-supplied data structure.
@@
diff --git a/fontconfig/doc/fcstring.fncs b/fontconfig/doc/fcstring.fncs
index 5f1f93ac1..0412bbd1a 100644
--- a/fontconfig/doc/fcstring.fncs
+++ b/fontconfig/doc/fcstring.fncs
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -58,7 +58,7 @@ the char.
Counts the number of Unicode chars in <parameter>len</parameter> bytes of
<parameter>src</parameter>. Places that count in
<parameter>nchar</parameter>. <parameter>wchar</parameter> contains 1, 2 or
-4 depending on the number of bytes needed to hold the largest unicode char
+4 depending on the number of bytes needed to hold the largest Unicode char
counted. The return value indicates whether <parameter>src</parameter> is a
well-formed UTF8 string.
@@
@@ -92,7 +92,7 @@ Counts the number of Unicode chars in <parameter>len</parameter> bytes of
combined into 16-bit units according to <parameter>endian</parameter>.
Places that count in <parameter>nchar</parameter>.
<parameter>wchar</parameter> contains 1, 2 or 4 depending on the number of
-bytes needed to hold the largest unicode char counted. The return value
+bytes needed to hold the largest Unicode char counted. The return value
indicates whether <parameter>string</parameter> is a well-formed UTF16
string.
@@
diff --git a/fontconfig/doc/fcstrset.fncs b/fontconfig/doc/fcstrset.fncs
index 61af37b63..737347b00 100644
--- a/fontconfig/doc/fcstrset.fncs
+++ b/fontconfig/doc/fcstrset.fncs
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
diff --git a/fontconfig/doc/fcvalue.fncs b/fontconfig/doc/fcvalue.fncs
index d0c669b1f..83a5b3aa9 100644
--- a/fontconfig/doc/fcvalue.fncs
+++ b/fontconfig/doc/fcvalue.fncs
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
diff --git a/fontconfig/doc/fontconfig-devel.sgml b/fontconfig/doc/fontconfig-devel.sgml
index 891251f30..87339511c 100644
--- a/fontconfig/doc/fontconfig-devel.sgml
+++ b/fontconfig/doc/fontconfig-devel.sgml
@@ -30,9 +30,9 @@
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
- documentation, and that the name of Keith Packard not be used in
+ documentation, and that the name of the author(s) not be used in
advertising or publicity pertaining to distribution of the software without
- specific, written prior permission. Keith Packard makes no
+ specific, written prior permission. The authors make no
representations about the suitability of this software for any purpose. It
is provided "as is" without express or implied warranty.
@@ -65,9 +65,9 @@ Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
-documentation, and that the name of Keith Packard not be used in
+documentation, and that the name of the author(s) not be used in
advertising or publicity pertaining to distribution of the software without
-specific, written prior permission. Keith Packard makes no
+specific, written prior permission. The authors make no
representations about the suitability of this software for any purpose. It
is provided "as is" without express or implied warranty.
</simpara><simpara>
@@ -96,7 +96,7 @@ which accepts font patterns and returns the nearest matching font.
<sect2><title>FONT CONFIGURATION</title>
<para>
The configuration module consists of the FcConfig datatype, libexpat and
-FcConfigParse which walks over an XML tree and ammends a configuration with
+FcConfigParse which walks over an XML tree and amends a configuration with
data found within. From an external perspective, configuration of the
library consists of generating a valid XML tree and feeding that to
FcConfigParse. The only other mechanism provided to applications for
@@ -126,83 +126,83 @@ simplify and regularize font installation and customization.
While font patterns may contain essentially any properties, there are some
well known properties with associated types. Fontconfig uses some of these
properties for font matching and font completion. Others are provided as a
-convenience for the applications rendering mechanism.
+convenience for the application's rendering mechanism.
</para>
<programlisting>
Property Definitions
- Property CPP Symbol Type Description
+ Property C Preprocessor Symbol Type Description
----------------------------------------------------
- family FC_FAMILY String Font family names
- familylang FC_FAMILYLANG String Language cooresponding to
- each family name
- style FC_STYLE String Font style. Overrides weight
- and slant
- stylelang FC_STYLELANG String Language cooresponding to
- each style name
- fullname FC_FULLNAME String Font face full name where
- different from family and
- family + style
- fullnamelang FC_FULLNAMELANG String Language cooresponding to
- each fullname
- slant FC_SLANT Int Italic, oblique or roman
- weight FC_WEIGHT Int Light, medium, demibold,
- bold or black
- size FC_SIZE Double Point size
- width FC_WIDTH Int Condensed, normal or expanded
- aspect FC_ASPECT Double Stretches glyphs horizontally
- before hinting
- pixelsize FC_PIXEL_SIZE Double Pixel size
- spacing FC_SPACING Int Proportional, dual-width,
- monospace or charcell
- foundry FC_FOUNDRY String Font foundry name
- antialias FC_ANTIALIAS Bool Whether glyphs can be
- antialiased
- hinting FC_HINTING Bool Whether the rasterizer should
- use hinting
- hintstyle FC_HINT_STYLE Int Automatic hinting style
- verticallayout FC_VERTICAL_LAYOUT Bool Use vertical layout
- autohint FC_AUTOHINT Bool Use autohinter instead of
- normal hinter
- globaladvance FC_GLOBAL_ADVANCE Bool Use font global advance data
- file FC_FILE String The filename holding the font
- index FC_INDEX Int The index of the font within
- the file
- ftface FC_FT_FACE FT_Face Use the specified FreeType
- face object
- rasterizer FC_RASTERIZER String Which rasterizer is in use
- outline FC_OUTLINE Bool Whether the glyphs are outlines
- scalable FC_SCALABLE Bool Whether glyphs can be scaled
- scale FC_SCALE Double Scale factor for point->pixel
- conversions
- dpi FC_DPI Double Target dots per inch
- rgba FC_RGBA Int unknown, rgb, bgr, vrgb,
- vbgr, none - subpixel geometry
- lcdfilter FC_LCD_FILTER Int Type of LCD filter
- minspace FC_MINSPACE Bool Eliminate leading from line
- spacing
- charset FC_CHARSET CharSet Unicode chars encoded by
- the font
- lang FC_LANG LangSet Set of RFC-3066-style
- languages this font supports
- fontversion FC_FONTVERSION Int Version number of the font
- capability FC_CAPABILITY String List of layout capabilities in
- the font
- embolden FC_EMBOLDEN Bool Rasterizer should
- synthetically embolden the font
+ family FC_FAMILY String Font family names
+ familylang FC_FAMILYLANG String Language corresponding to
+ each family name
+ style FC_STYLE String Font style. Overrides weight
+ and slant
+ stylelang FC_STYLELANG String Language corresponding to
+ each style name
+ fullname FC_FULLNAME String Font face full name where
+ different from family and
+ family + style
+ fullnamelang FC_FULLNAMELANG String Language corresponding to
+ each fullname
+ slant FC_SLANT Int Italic, oblique or roman
+ weight FC_WEIGHT Int Light, medium, demibold,
+ bold or black
+ size FC_SIZE Double Point size
+ width FC_WIDTH Int Condensed, normal or expanded
+ aspect FC_ASPECT Double Stretches glyphs horizontally
+ before hinting
+ pixelsize FC_PIXEL_SIZE Double Pixel size
+ spacing FC_SPACING Int Proportional, dual-width,
+ monospace or charcell
+ foundry FC_FOUNDRY String Font foundry name
+ antialias FC_ANTIALIAS Bool Whether glyphs can be
+ antialiased
+ hinting FC_HINTING Bool Whether the rasterizer should
+ use hinting
+ hintstyle FC_HINT_STYLE Int Automatic hinting style
+ verticallayout FC_VERTICAL_LAYOUT Bool Use vertical layout
+ autohint FC_AUTOHINT Bool Use autohinter instead of
+ normal hinter
+ globaladvance FC_GLOBAL_ADVANCE Bool Use font global advance data
+ file FC_FILE String The filename holding the font
+ index FC_INDEX Int The index of the font within
+ the file
+ ftface FC_FT_FACE FT_Face Use the specified FreeType
+ face object
+ rasterizer FC_RASTERIZER String Which rasterizer is in use
+ outline FC_OUTLINE Bool Whether the glyphs are outlines
+ scalable FC_SCALABLE Bool Whether glyphs can be scaled
+ scale FC_SCALE Double Scale factor for point->pixel
+ conversions
+ dpi FC_DPI Double Target dots per inch
+ rgba FC_RGBA Int unknown, rgb, bgr, vrgb,
+ vbgr, none - subpixel geometry
+ lcdfilter FC_LCD_FILTER Int Type of LCD filter
+ minspace FC_MINSPACE Bool Eliminate leading from line
+ spacing
+ charset FC_CHARSET CharSet Unicode chars encoded by
+ the font
+ lang FC_LANG LangSet Set of RFC-3066-style
+ languages this font supports
+ fontversion FC_FONTVERSION Int Version number of the font
+ capability FC_CAPABILITY String List of layout capabilities in
+ the font
+ embolden FC_EMBOLDEN Bool Rasterizer should
+ synthetically embolden the font
</programlisting>
</sect2>
</sect1>
<sect1><title>Datatypes</title>
<para>
-Fontconfig uses abstract datatypes to hide internal implementation details
+Fontconfig uses abstract data types to hide internal implementation details
for most data structures. A few structures are exposed where appropriate.
</para>
<sect2><title>FcChar8, FcChar16, FcChar32, FcBool</title>
<para>
-These are primitive datatypes; the FcChar* types hold precisely the number
+These are primitive data types; the FcChar* types hold precisely the number
of bits stated (if supported by the C implementation). FcBool holds
-one of two CPP symbols: FcFalse or FcTrue.
+one of two C preprocessor symbols: FcFalse or FcTrue.
</para>
</sect2>
<sect2><title>FcMatrix</title>
@@ -218,7 +218,7 @@ A small set of matrix operations are provided to manipulate these.
</sect2>
<sect2><title>FcCharSet</title>
<para>
-An FcCharSet is an abstract type that holds the set of encoded unicode chars
+An FcCharSet is an abstract type that holds the set of encoded Unicode chars
in a font. Operations to build and compare these sets are provided.
</para>
</sect2>
@@ -378,7 +378,7 @@ public entry points that need global data can take an optional FcConfig*
argument; passing 0 uses the default configuration. FcConfig objects hold two
sets of fonts, the first contains those specified by the configuration, the
second set holds those added by the application at run-time. Interfaces
-that need to reference a particulat set use one of the FcSetName enumerated
+that need to reference a particular set use one of the FcSetName enumerated
values.
</para>
</sect2>
@@ -401,13 +401,13 @@ Used as a return type for functions manipulating FcPattern objects.
FcResultTypeMismatch Object exists, but the type doesn't match
FcResultNoId Object exists, but has fewer values
than specified
- FcResultOutOfMemory Malloc failed
+ FcResultOutOfMemory malloc failed
</programlisting>
</para>
</sect2>
<sect2><title>FcAtomic</title>
<para>
-Used for locking access to config files. Provides a safe way to update
+Used for locking access to configuration files. Provides a safe way to update
configuration files.
</para>
</sect2>
@@ -423,7 +423,7 @@ included 'fc-cache' program generally suffices for all of that.
</sect1>
<sect1><title>FUNCTIONS</title>
<para>
-These are grouped by functionality, often using the main datatype being
+These are grouped by functionality, often using the main data type being
manipulated.
</para>
<sect2><title>Initialization</title>
@@ -450,7 +450,7 @@ results of listing available fonts.
<sect2><title>FcObjectSet</title>
<para>
An FcObjectSet holds a list of pattern property names; it is used to
-indiciate which properties are to be returned in the patterns from
+indicate which properties are to be returned in the patterns from
FcFontList.
</para>
&fcobjectset;
@@ -475,7 +475,7 @@ typechecking, although that depends on careful programming.
</sect2>
<sect2><title>FcCharSet</title>
<para>
-An FcCharSet is a boolean array indicating a set of unicode chars. Those
+An FcCharSet is a boolean array indicating a set of Unicode chars. Those
associated with a font are marked constant and cannot be edited.
FcCharSets may be reference counted internally to reduce memory consumption;
this may be visible to applications as the result of FcCharSetCopy may
@@ -509,7 +509,7 @@ any function using the data within an FcConfig.
</sect2>
<sect2><title>FcObjectType</title>
<para>
-Provides for applcation-specified font name object types so that new
+Provides for application-specified font name object types so that new
pattern elements can be generated from font names.
</para>
&fcobjecttype;
@@ -532,9 +532,9 @@ accurate CharSet for applications.
</sect2>
<sect2><title>FcAtomic</title>
<para>
-These functions provide a safe way to update config files, allowing ongoing
-reading of the old config file while locked for writing and ensuring that a
-consistent and complete version of the config file is always available.
+These functions provide a safe way to update configuration files, allowing ongoing
+reading of the old configuration file while locked for writing and ensuring that a
+consistent and complete version of the configuration file is always available.
</para>
&fcatomic;
</sect2>
diff --git a/fontconfig/doc/fontconfig-user.sgml b/fontconfig/doc/fontconfig-user.sgml
index 298f8d5f5..217feb97a 100644
--- a/fontconfig/doc/fontconfig-user.sgml
+++ b/fontconfig/doc/fontconfig-user.sgml
@@ -9,9 +9,9 @@
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
- documentation, and that the name of Keith Packard not be used in
+ documentation, and that the name of the author(s) not be used in
advertising or publicity pertaining to distribution of the software without
- specific, written prior permission. Keith Packard makes no
+ specific, written prior permission. The authors make no
representations about the suitability of this software for any purpose. It
is provided "as is" without express or implied warranty.
@@ -216,9 +216,9 @@ Here are some examples:
with artificial obliquing
</programlisting>
<para>
-The '\', '-', ':' and ',' characters in family names must be preceeded by a
+The '\', '-', ':' and ',' characters in family names must be preceded by a
'\' character to avoid having them misinterpreted. Similarly, values
-containing '\', '=', '_', ':' and ',' must also have them preceeded by a
+containing '\', '=', '_', ':' and ',' must also have them preceded by a
'\' character. The '\' characters are stripped out of the family name and
values as the font name is read.
</para>
@@ -432,6 +432,18 @@ instead of -.5).
This element holds the four <literal>&lt;double&gt;</literal> elements of an affine
transformation.
</para></refsect2>
+ <refsect2><title><literal>&lt;range&gt;</literal></title><para>
+This element holds the two <literal>&lt;int&gt;</literal> elements of a range
+representation.
+ </para></refsect2>
+ <refsect2><title><literal>&lt;charset&gt;</literal></title><para>
+This element holds at least one <literal>&lt;int&gt;</literal> element of
+an Unicode code point or more.
+ </para></refsect2>
+ <refsect2><title><literal>&lt;langset&gt;</literal></title><para>
+This element holds at least one <literal>&lt;string&gt;</literal> element of
+a RFC-3066-style languages or more.
+ </para></refsect2>
<refsect2><title><literal>&lt;name&gt;</literal></title><para>
Holds a property name. Evaluates to the first value from the property of
the font, not the pattern.
@@ -647,14 +659,14 @@ This is an example of a per-user configuration file that lives in
contains configuration information for the fontconfig library
consisting of directories to look at for font information as well as
instructions on editing program specified font patterns before attempting to
-match the available fonts. It is in xml format.
+match the available fonts. It is in XML format.
</para>
<para>
<emphasis>conf.d</emphasis>
is the conventional name for a directory of additional configuration files
managed by external applications or the local administrator. The
filenames starting with decimal digits are sorted in lexicographic order
-and used as additional configuration files. All of these files are in xml
+and used as additional configuration files. All of these files are in XML
format. The master fonts.conf file references this directory in an
&lt;include&gt; directive.
</para>
diff --git a/fontconfig/doc/func.sgml b/fontconfig/doc/func.sgml
index 0da5ae4a6..88be32047 100644
--- a/fontconfig/doc/func.sgml
+++ b/fontconfig/doc/func.sgml
@@ -7,9 +7,9 @@
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
- documentation, and that the name of Keith Packard not be used in
+ documentation, and that the name of the author(s) not be used in
advertising or publicity pertaining to distribution of the software without
- specific, written prior permission. Keith Packard makes no
+ specific, written prior permission. The authors make no
representations about the suitability of this software for any purpose. It
is provided "as is" without express or implied warranty.
diff --git a/fontconfig/doc/version.sgml.in b/fontconfig/doc/version.sgml.in
index 9981b1c74..13315ba6d 100644
--- a/fontconfig/doc/version.sgml.in
+++ b/fontconfig/doc/version.sgml.in
@@ -7,9 +7,9 @@
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
- documentation, and that the name of Keith Packard not be used in
+ documentation, and that the name of the author(s) not be used in
advertising or publicity pertaining to distribution of the software without
- specific, written prior permission. Keith Packard makes no
+ specific, written prior permission. The authors make no
representations about the suitability of this software for any purpose. It
is provided "as is" without express or implied warranty.
diff --git a/fontconfig/fc-arch/Makefile.am b/fontconfig/fc-arch/Makefile.am
deleted file mode 100644
index 806c730b4..000000000
--- a/fontconfig/fc-arch/Makefile.am
+++ /dev/null
@@ -1,54 +0,0 @@
-#
-# $Id $
-#
-# Copyright © 2003 Keith Packard
-#
-# Permission to use, copy, modify, distribute, and sell this software and its
-# documentation for any purpose is hereby granted without fee, provided that
-# the above copyright notice appear in all copies and that both that
-# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
-# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
-# representations about the suitability of this software for any purpose. It
-# is provided "as is" without express or implied warranty.
-#
-# THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
-# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
-# EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
-# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
-# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
-# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
-# PERFORMANCE OF THIS SOFTWARE.
-#
-
-CC = @CC_FOR_BUILD@
-EXEEXT = @EXEEXT_FOR_BUILD@
-LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
-
-INCLUDES=-I${top_srcdir}/src -I${top_srcdir} $(WARN_CFLAGS)
-
-TMPL=fcarch.tmpl.h
-STMPL=${top_srcdir}/fc-arch/fcarch.tmpl.h
-TARG=fcarch.h
-
-ARCHITECTURE=@ARCHITECTURE@
-.PRECIOUS: $(TARG)
-
-noinst_PROGRAMS=fc-arch
-
-EXTRA_DIST=$(TMPL)
-
-$(TARG):fc-arch${EXEEXT} $(STMPL) ${top_srcdir}/src/fcint.h ../config.h
- $(AM_V_GEN) $(RM) $(TARG); \
- ./fc-arch${EXEEXT} $(ARCHITECTURE) < $(STMPL) > $(TARG).tmp && \
- mv $(TARG).tmp $(TARG)
-
-ALIAS_FILES = fcalias.h fcaliastail.h
-
-BUILT_SOURCES = $(ALIAS_FILES) $(TARG)
-
-$(ALIAS_FILES):
- touch $(ALIAS_FILES)
-
-CLEANFILES=$(TARG) $(ALIAS_FILES)
diff --git a/fontconfig/fc-arch/fc-arch.c b/fontconfig/fc-arch/fc-arch.c
deleted file mode 100644
index 1ef0cf18a..000000000
--- a/fontconfig/fc-arch/fc-arch.c
+++ /dev/null
@@ -1,138 +0,0 @@
-/*
- * Copyright © 2006 Keith Packard
- * Copyright © 2005 Patrick Lam
- *
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, provided that
- * the above copyright notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting documentation, and
- * that the name of the copyright holders not be used in advertising or
- * publicity pertaining to distribution of the software without specific,
- * written prior permission. The copyright holders make no representations
- * about the suitability of this software for any purpose. It is provided "as
- * is" without express or implied warranty.
- *
- * THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
- * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
- * EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
- * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
- * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
- * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
- * OF THIS SOFTWARE.
- */
-
-#include "fcint.h"
-#include <ctype.h>
-
-#define ENDIAN_TEST 0x01020304
-#define MACHINE_SIGNATURE_SIZE 1024
-
-static char *
-FcCacheMachineSignature (void)
-{
- static char buf[MACHINE_SIGNATURE_SIZE];
- int32_t magic = ENDIAN_TEST;
- char * m = (char *)&magic;
-
- sprintf (buf, "%01x%01x%01x%01x_"
- "%02x_%02x_%02x_%02x_%02x_%02x_%02x_%02x_%02x_%02x_%02x_%02x_"
- "%02x_%02x_%02x_%02x_%02x_%02x_%02x_%02x_%02x_%02x",
- m[0], m[1], m[2], m[3],
- (unsigned int)sizeof (FcAlign),
- (unsigned int)sizeof (char),
- (unsigned int)sizeof (char *),
- (unsigned int)sizeof (int),
- (unsigned int)sizeof (intptr_t),
- (unsigned int)sizeof (FcPattern),
- (unsigned int)sizeof (FcPatternEltPtr),
- (unsigned int)sizeof (struct FcPatternElt *),
- (unsigned int)sizeof (FcPatternElt),
- (unsigned int)sizeof (FcObject),
- (unsigned int)sizeof (FcValueListPtr),
- (unsigned int)sizeof (FcValue),
- (unsigned int)sizeof (FcValueBinding),
- (unsigned int)sizeof (struct FcValueList *),
- (unsigned int)sizeof (FcStrSet *), /* For FcLangSet */
- (unsigned int)sizeof (FcCharSet),
- (unsigned int)sizeof (FcCharLeaf **),
- (unsigned int)sizeof (FcChar16 *),
- (unsigned int)sizeof (FcChar16),
- (unsigned int)sizeof (FcCharLeaf),
- (unsigned int)sizeof (FcChar32),
- (unsigned int)sizeof (FcCache));
-
- return buf;
-}
-
-int
-main (int argc, char **argv)
-{
- static char line[1024];
- char *signature;
- int signature_length;
- char *space;
- char *arch = NULL;
- int lineno = 0;
-
- if (argc != 2)
- fprintf (stderr, "Usage: %s <architecture>|auto < fcarch.tmpl.h > fcarch.h\n",
- argv[0]);
- arch = argv[1];
- /*
- * Scan the input until the marker is found
- */
-
- while (fgets (line, sizeof (line), stdin))
- {
- lineno++;
- if (!strncmp (line, "@@@", 3))
- break;
- fputs (line, stdout);
- }
- signature = FcCacheMachineSignature();
- signature_length = strlen (signature);
-
- if (strcmp (arch, "auto") == 0)
- {
- arch = NULL;
- /*
- * Search for signature
- */
- while (fgets (line, sizeof (line), stdin))
- {
- lineno++;
- /*
- * skip comments
- */
- if (!strncmp (line, "@@@", 3))
- continue;
- space = line;
- while (*space && !isspace (*space))
- space++;
- if (!space)
- {
- fprintf (stderr, "%s: malformed input on line %d\n",
- argv[0], lineno);
- exit (1);
- }
- *space++ = '\0';
- while (isspace (*space))
- space++;
- if (!strncmp (space, signature, signature_length))
- {
- arch = line;
- break;
- }
- }
- }
- if (!arch)
- {
- fprintf (stderr, "%s: unknown signature \"%s\"\n", argv[0], signature);
- fprintf (stderr, "\tPlease update fcarch.tmpl.h and rebuild\n");
- exit (1);
- }
- printf ("#define FC_ARCHITECTURE \"%s\"\n", arch);
- fflush (stdout);
- exit (ferror (stdout));
-}
-
diff --git a/fontconfig/fc-arch/fcarch.tmpl.h b/fontconfig/fc-arch/fcarch.tmpl.h
deleted file mode 100644
index 363e11aa1..000000000
--- a/fontconfig/fc-arch/fcarch.tmpl.h
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- * Copyright © 2006 Keith Packard
- *
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, provided that
- * the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
- * advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
- * representations about the suitability of this software for any purpose. It
- * is provided "as is" without express or implied warranty.
- *
- * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
- * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
- * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
- * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
- * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
- * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- * PERFORMANCE OF THIS SOFTWARE.
- */
-
-@@@
-@@@ Each unique machine architecture needs an entry in this file
-@@@ If fc-arch runs and doesn't find a matching entry, it will print
-@@@ out the archtecture signature in the error message. Take that
-@@@ signature and place it in this file along with a suitable architecture
-@@@ name. Architecture names are used to construct file names, so
-@@@ use something reasonable and don't include any spaces
-@@@
-@@@ So far the differences boil down to: endianness, 32 vs 64 bit pointers,
-@@@ and on @@@ 32bit ones, whether double is aligned to one word or two words.
-@@@ Those result in the 6 formats listed below.
-@@@
-@@@ ,name (endianness,pointer-size,double-alignment)
-@@@ | ,endian
-@@@ | | ,FcAlign
-@@@ | | | ,char
-@@@ | | | | ,char*
-@@@ | | | | | ,int
-@@@ | | | | | | ,intptr_t
-@@@ | | | | | | | ,Pattern
-@@@ | | | | | | | | ,EltPtr
-@@@ | | | | | | | | | ,Elt *
-@@@ | | | | | | | | | | ,Elt
-@@@ | | | | | | | | | | | ,ObjPtr
-@@@ | | | | | | | | | | | | ,ValueListPtr
-@@@ | | | | | | | | | | | | | ,Value
-@@@ | | | | | | | | | | | | | | ,ValueBinding
-@@@ | | | | | | | | | | | | | | | ,ValueList *
-@@@ | | | | | | | | | | | | | | | | ,StrSet *
-@@@ | | | | | | | | | | | | | | | | | ,CharSet
-@@@ | | | | | | | | | | | | | | | | | | ,CharLeaf **
-@@@ | | | | | | | | | | | | | | | | | | | ,Char16 *
-@@@ | | | | | | | | | | | | | | | | | | | | ,Char16
-@@@ | | | | | | | | | | | | | | | | | | | | | ,CharLeaf
-@@@ | | | | | | | | | | | | | | | | | | | | | | ,Char32
-@@@ | | | | | | | | | | | | | | | | | | | | | | | ,Cache
-@@@ | | | | | | | | | | | | | | | | | | | | | | | |
-le32d4 4321_08_01_04_04_04_10_04_04_08_04_04_0c_04_04_04_10_04_04_02_20_04_20
-le32d8 4321_08_01_04_04_04_10_04_04_08_04_04_10_04_04_04_10_04_04_02_20_04_20
-le64 4321_08_01_08_04_08_18_08_08_10_04_08_10_04_08_08_18_08_08_02_20_04_38
-be32d4 1234_08_01_04_04_04_10_04_04_08_04_04_0c_04_04_04_10_04_04_02_20_04_20
-be32d8 1234_08_01_04_04_04_10_04_04_08_04_04_10_04_04_04_10_04_04_02_20_04_20
-be64 1234_08_01_08_04_08_18_08_08_10_04_08_10_04_08_08_18_08_08_02_20_04_38
diff --git a/fontconfig/fc-cache/Makefile.am b/fontconfig/fc-cache/Makefile.am
index 5067c04c0..300c96697 100644
--- a/fontconfig/fc-cache/Makefile.am
+++ b/fontconfig/fc-cache/Makefile.am
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-cache/fc-cache.c b/fontconfig/fc-cache/fc-cache.c
index 19e9d0df6..d2653507e 100644
--- a/fontconfig/fc-cache/fc-cache.c
+++ b/fontconfig/fc-cache/fc-cache.c
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -22,7 +22,7 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
-#include "../fc-arch/fcarch.h"
+#include "../src/fcarch.h"
#ifdef HAVE_CONFIG_H
#include <config.h>
@@ -117,7 +117,7 @@ usage (char *program, int error)
static FcStrSet *processed_dirs;
static int
-scanDirs (FcStrList *list, FcConfig *config, FcBool force, FcBool really_force, FcBool verbose)
+scanDirs (FcStrList *list, FcConfig *config, FcBool force, FcBool really_force, FcBool verbose, int *changed)
{
int ret = 0;
const FcChar8 *dir;
@@ -190,6 +190,7 @@ scanDirs (FcStrList *list, FcConfig *config, FcBool force, FcBool really_force,
if (!cache)
{
+ (*changed)++;
cache = FcDirCacheRead (dir, FcTrue, config);
if (!cache)
{
@@ -241,7 +242,7 @@ scanDirs (FcStrList *list, FcConfig *config, FcBool force, FcBool really_force,
continue;
}
FcStrSetAdd (processed_dirs, dir);
- ret += scanDirs (sublist, config, force, really_force, verbose);
+ ret += scanDirs (sublist, config, force, really_force, verbose, changed);
}
FcStrListDone (list);
return ret;
@@ -369,6 +370,7 @@ main (int argc, char **argv)
FcBool systemOnly = FcFalse;
FcConfig *config;
int i;
+ int changed;
int ret;
#if HAVE_GETOPT_LONG || HAVE_GETOPT
int c;
@@ -446,7 +448,8 @@ main (int argc, char **argv)
return 1;
}
- ret = scanDirs (list, config, force, really_force, verbose);
+ changed = 0;
+ ret = scanDirs (list, config, force, really_force, verbose, &changed);
FcStrSetDestroy (processed_dirs);
@@ -461,7 +464,8 @@ main (int argc, char **argv)
*/
FcConfigDestroy (config);
FcFini ();
- sleep (2);
+ if (changed)
+ sleep (2);
if (verbose)
printf ("%s: %s\n", argv[0], ret ? "failed" : "succeeded");
return ret;
diff --git a/fontconfig/fc-cache/fc-cache.sgml b/fontconfig/fc-cache/fc-cache.sgml
index 0b602a39d..3740be77f 100644
--- a/fontconfig/fc-cache/fc-cache.sgml
+++ b/fontconfig/fc-cache/fc-cache.sgml
@@ -63,8 +63,9 @@ manpage.1: manpage.sgml
<cmdsynopsis>
<command>&dhpackage;</command>
- <arg><option>-fsvVh</option></arg>
+ <arg><option>-frsvVh</option></arg>
<arg><option>--force</option></arg>
+ <arg><option>--really-force</option></arg>
<arg><option>--system-only</option></arg>
<arg><option>--verbose</option></arg>
<arg><option>--version</option></arg>
@@ -111,6 +112,14 @@ manpage.1: manpage.sgml
</listitem>
</varlistentry>
<varlistentry>
+ <term><option>-r</option>
+ <option>--really-force</option>
+ </term>
+ <listitem>
+ <para>Erase all existing cache files and rescan.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
<term><option>-s</option>
<option>--system-only</option>
</term>
@@ -175,6 +184,7 @@ manpage.1: manpage.sgml
<command>fc-cat</command>(1)
<command>fc-list</command>(1)
<command>fc-match</command>(1)
+ <command>fc-pattern</command>(1)
<command>fc-query</command>(1)
<command>fc-scan</command>(1)
</para>
diff --git a/fontconfig/fc-case/CaseFolding.txt b/fontconfig/fc-case/CaseFolding.txt
index bd0e86d03..ffe6173d7 100644
--- a/fontconfig/fc-case/CaseFolding.txt
+++ b/fontconfig/fc-case/CaseFolding.txt
@@ -1,8 +1,8 @@
-# CaseFolding-5.2.0.txt
-# Date: 2009-05-28, 23:02:34 GMT [MD]
+# CaseFolding-6.0.0.txt
+# Date: 2010-05-18, 00:48:57 GMT [MD]
#
# Unicode Character Database
-# Copyright (c) 1991-2009 Unicode, Inc.
+# Copyright (c) 1991-2010 Unicode, Inc.
# For terms of use, see http://www.unicode.org/terms_of_use.html
# For documentation, see http://www.unicode.org/reports/tr44/
#
@@ -496,6 +496,7 @@
0520; C; 0521; # CYRILLIC CAPITAL LETTER EL WITH MIDDLE HOOK
0522; C; 0523; # CYRILLIC CAPITAL LETTER EN WITH MIDDLE HOOK
0524; C; 0525; # CYRILLIC CAPITAL LETTER PE WITH DESCENDER
+0526; C; 0527; # CYRILLIC CAPITAL LETTER SHHA WITH DESCENDER
0531; C; 0561; # ARMENIAN CAPITAL LETTER AYB
0532; C; 0562; # ARMENIAN CAPITAL LETTER BEN
0533; C; 0563; # ARMENIAN CAPITAL LETTER GIM
@@ -1057,6 +1058,7 @@ A658; C; A659; # CYRILLIC CAPITAL LETTER CLOSED LITTLE YUS
A65A; C; A65B; # CYRILLIC CAPITAL LETTER BLENDED YUS
A65C; C; A65D; # CYRILLIC CAPITAL LETTER IOTIFIED CLOSED LITTLE YUS
A65E; C; A65F; # CYRILLIC CAPITAL LETTER YN
+A660; C; A661; # CYRILLIC CAPITAL LETTER REVERSED TSE
A662; C; A663; # CYRILLIC CAPITAL LETTER SOFT DE
A664; C; A665; # CYRILLIC CAPITAL LETTER SOFT EL
A666; C; A667; # CYRILLIC CAPITAL LETTER SOFT EM
@@ -1122,6 +1124,13 @@ A782; C; A783; # LATIN CAPITAL LETTER INSULAR R
A784; C; A785; # LATIN CAPITAL LETTER INSULAR S
A786; C; A787; # LATIN CAPITAL LETTER INSULAR T
A78B; C; A78C; # LATIN CAPITAL LETTER SALTILLO
+A78D; C; 0265; # LATIN CAPITAL LETTER TURNED H
+A790; C; A791; # LATIN CAPITAL LETTER N WITH DESCENDER
+A7A0; C; A7A1; # LATIN CAPITAL LETTER G WITH OBLIQUE STROKE
+A7A2; C; A7A3; # LATIN CAPITAL LETTER K WITH OBLIQUE STROKE
+A7A4; C; A7A5; # LATIN CAPITAL LETTER N WITH OBLIQUE STROKE
+A7A6; C; A7A7; # LATIN CAPITAL LETTER R WITH OBLIQUE STROKE
+A7A8; C; A7A9; # LATIN CAPITAL LETTER S WITH OBLIQUE STROKE
FB00; F; 0066 0066; # LATIN SMALL LIGATURE FF
FB01; F; 0066 0069; # LATIN SMALL LIGATURE FI
FB02; F; 0066 006C; # LATIN SMALL LIGATURE FL
diff --git a/fontconfig/fc-case/Makefile.am b/fontconfig/fc-case/Makefile.am
index bf0198454..4f255fc71 100644
--- a/fontconfig/fc-case/Makefile.am
+++ b/fontconfig/fc-case/Makefile.am
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
@@ -22,10 +22,6 @@
# PERFORMANCE OF THIS SOFTWARE.
#
-CC = @CC_FOR_BUILD@
-EXEEXT = @EXEEXT_FOR_BUILD@
-LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
-
INCLUDES=-I${top_srcdir}/src -I${top_srcdir} $(WARN_CFLAGS)
TMPL=fccase.tmpl.h
@@ -44,12 +40,17 @@ fc_case_SRCS= \
CASEFOLDING=CaseFolding.txt
SCASEFOLDING=${top_srcdir}/fc-case/CaseFolding.txt
-EXTRA_DIST=$(TMPL) $(CASEFOLDING)
+EXTRA_DIST = $(TARG) $(TMPL) $(CASEFOLDING)
+if CROSS_COMPILING
+$(TARG): $(STMPL) fc-case.c $(SCASEFOLDING)
+ @echo Warning: cannot rebuild $(TARG) when cross-compiling
+else
$(TARG): $(STMPL) fc-case$(EXEEXT) $(SCASEFOLDING)
$(AM_V_GEN) $(RM) $(TARG); \
./fc-case$(EXEEXT) $(SCASEFOLDING) < $(STMPL) > $(TARG).tmp && \
mv $(TARG).tmp $(TARG)
+endif
ALIAS_FILES = fcalias.h fcaliastail.h
@@ -58,5 +59,6 @@ BUILT_SOURCES = $(ALIAS_FILES)
$(ALIAS_FILES):
touch $(ALIAS_FILES)
-CLEANFILES=$(TARG) $(ALIAS_FILES)
+CLEANFILES = $(ALIAS_FILES)
+MAINTAINERCLEANFILES = $(TARG)
diff --git a/fontconfig/fc-case/fc-case.c b/fontconfig/fc-case/fc-case.c
index e86b34783..236bff5f0 100644
--- a/fontconfig/fc-case/fc-case.c
+++ b/fontconfig/fc-case/fc-case.c
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
diff --git a/fontconfig/fc-case/fccase.tmpl.h b/fontconfig/fc-case/fccase.tmpl.h
index 62633293a..c8e2925b9 100644
--- a/fontconfig/fc-case/fccase.tmpl.h
+++ b/fontconfig/fc-case/fccase.tmpl.h
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
diff --git a/fontconfig/fc-cat/Makefile.am b/fontconfig/fc-cat/Makefile.am
index 27b637534..587459591 100644
--- a/fontconfig/fc-cat/Makefile.am
+++ b/fontconfig/fc-cat/Makefile.am
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-cat/fc-cat.c b/fontconfig/fc-cat/fc-cat.c
index a9326c8eb..c6c399343 100644
--- a/fontconfig/fc-cat/fc-cat.c
+++ b/fontconfig/fc-cat/fc-cat.c
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -32,7 +32,7 @@
#endif
#include <fontconfig/fontconfig.h>
-#include "../fc-arch/fcarch.h"
+#include "../src/fcarch.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
@@ -404,5 +404,6 @@ main (int argc, char **argv)
FcStrFree (cache_file);
}
+ FcFini ();
return 0;
}
diff --git a/fontconfig/fc-cat/fc-cat.sgml b/fontconfig/fc-cat/fc-cat.sgml
index b042dc65f..ce4736de5 100644
--- a/fontconfig/fc-cat/fc-cat.sgml
+++ b/fontconfig/fc-cat/fc-cat.sgml
@@ -134,6 +134,7 @@ manpage.1: manpage.sgml
<command>fc-cache</command>(1)
<command>fc-list</command>(1)
<command>fc-match</command>(1)
+ <command>fc-pattern</command>(1)
<command>fc-query</command>(1)
<command>fc-scan</command>(1)
</para>
diff --git a/fontconfig/fc-glyphname/Makefile.am b/fontconfig/fc-glyphname/Makefile.am
index bcb4d0746..3799880e5 100644
--- a/fontconfig/fc-glyphname/Makefile.am
+++ b/fontconfig/fc-glyphname/Makefile.am
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
@@ -22,10 +22,6 @@
# PERFORMANCE OF THIS SOFTWARE.
#
-CC = @CC_FOR_BUILD@
-EXEEXT = @EXEEXT_FOR_BUILD@
-LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
-
INCLUDES=-I${top_srcdir}/src -I${top_srcdir} $(WARN_CFLAGS)
TMPL=fcglyphname.tmpl.h
@@ -37,12 +33,17 @@ noinst_PROGRAMS=fc-glyphname
GLYPHNAME=zapfdingbats.txt
SGLYPHNAME=${top_srcdir}/fc-glyphname/zapfdingbats.txt
-EXTRA_DIST=$(TMPL) $(GLYPHNAME)
+EXTRA_DIST = $(TARG) $(TMPL) $(GLYPHNAME)
+if CROSS_COMPILING
+$(TARG): $(STMPL) fc-glyphname.c $(SGLYPHNAME)
+ @echo Warning: cannot rebuild $(TARG) when cross-compiling
+else
$(TARG): $(STMPL) fc-glyphname$(EXEEXT) $(SGLYPHNAME)
$(AM_V_GEN) $(RM) $(TARG); \
./fc-glyphname$(EXEEXT) $(SGLYPHNAME) < $(STMPL) > $(TARG).tmp && \
mv $(TARG).tmp $(TARG)
+endif
ALIAS_FILES = fcalias.h fcaliastail.h
@@ -51,5 +52,6 @@ BUILT_SOURCES = $(ALIAS_FILES) $(TARG)
$(ALIAS_FILES):
touch $(ALIAS_FILES)
-CLEANFILES=$(TARG) $(ALIAS_FILES)
+CLEANFILES = $(ALIAS_FILES)
+MAINTAINERCLEANFILES = $(TARG)
diff --git a/fontconfig/fc-glyphname/fc-glyphname.c b/fontconfig/fc-glyphname/fc-glyphname.c
index 5e1e8816f..b790d986f 100644
--- a/fontconfig/fc-glyphname/fc-glyphname.c
+++ b/fontconfig/fc-glyphname/fc-glyphname.c
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
diff --git a/fontconfig/fc-glyphname/fcglyphname.tmpl.h b/fontconfig/fc-glyphname/fcglyphname.tmpl.h
index e2f76a2a5..d4f8a9524 100644
--- a/fontconfig/fc-glyphname/fcglyphname.tmpl.h
+++ b/fontconfig/fc-glyphname/fcglyphname.tmpl.h
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
diff --git a/fontconfig/fc-lang/Makefile.am b/fontconfig/fc-lang/Makefile.am
index 923a4fff6..29cee5934 100644
--- a/fontconfig/fc-lang/Makefile.am
+++ b/fontconfig/fc-lang/Makefile.am
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
@@ -22,10 +22,6 @@
# PERFORMANCE OF THIS SOFTWARE.
#
-CC = @CC_FOR_BUILD@
-EXEEXT = @EXEEXT_FOR_BUILD@
-LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
-
INCLUDES=-I${top_srcdir}/src -I${top_srcdir} $(WARN_CFLAGS)
TMPL=fclang.tmpl.h
@@ -36,21 +32,28 @@ noinst_PROGRAMS=fc-lang
noinst_MANS=fc-lang.man
-EXTRA_DIST=$(TMPL) $(ORTH)
+EXTRA_DIST = $(TARG) $(TMPL) $(ORTH)
+if CROSS_COMPILING
+$(TARG):$(ORTH) fc-lang.c $(STMPL)
+ @echo Warning: cannot rebuild $(TARG) when cross-compiling
+else
$(TARG):$(ORTH) fc-lang${EXEEXT} $(STMPL)
$(AM_V_GEN) $(RM) $(TARG); \
./fc-lang${EXEEXT} -d ${srcdir} $(ORTH) < $(STMPL) > $(TARG).tmp && \
mv $(TARG).tmp $(TARG)
+endif
ALIAS_FILES = fcalias.h fcaliastail.h
BUILT_SOURCES = $(ALIAS_FILES) $(TARG)
-$(ALIAS_FILES):
+$(ALIAS_FILES):
touch $(ALIAS_FILES)
-CLEANFILES = $(TARG) $(ALIAS_FILES)
+CLEANFILES = $(ALIAS_FILES)
+
+MAINTAINERCLEANFILES = $(TARG)
# NOTE:
#
diff --git a/fontconfig/fc-lang/aa.orth b/fontconfig/fc-lang/aa.orth
index 58658ce84..cd5ac64c3 100644
--- a/fontconfig/fc-lang/aa.orth
+++ b/fontconfig/fc-lang/aa.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ab.orth b/fontconfig/fc-lang/ab.orth
index 7049ac1e8..82ab4290d 100644
--- a/fontconfig/fc-lang/ab.orth
+++ b/fontconfig/fc-lang/ab.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/af.orth b/fontconfig/fc-lang/af.orth
index 4c34460e9..d8b377660 100644
--- a/fontconfig/fc-lang/af.orth
+++ b/fontconfig/fc-lang/af.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/am.orth b/fontconfig/fc-lang/am.orth
index 2f00a9616..42c8d49fb 100644
--- a/fontconfig/fc-lang/am.orth
+++ b/fontconfig/fc-lang/am.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ar.orth b/fontconfig/fc-lang/ar.orth
index 39fcfa05d..fd673c672 100644
--- a/fontconfig/fc-lang/ar.orth
+++ b/fontconfig/fc-lang/ar.orth
@@ -8,9 +8,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ast.orth b/fontconfig/fc-lang/ast.orth
index 20b81f418..634f07910 100644
--- a/fontconfig/fc-lang/ast.orth
+++ b/fontconfig/fc-lang/ast.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/av.orth b/fontconfig/fc-lang/av.orth
index 21e4c22de..bb3e6abca 100644
--- a/fontconfig/fc-lang/av.orth
+++ b/fontconfig/fc-lang/av.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ay.orth b/fontconfig/fc-lang/ay.orth
index 8055e9336..538bc80f7 100644
--- a/fontconfig/fc-lang/ay.orth
+++ b/fontconfig/fc-lang/ay.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/az_ir.orth b/fontconfig/fc-lang/az_ir.orth
index 6899791b6..1a5aea9a7 100644
--- a/fontconfig/fc-lang/az_ir.orth
+++ b/fontconfig/fc-lang/az_ir.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ba.orth b/fontconfig/fc-lang/ba.orth
index 169083564..9c91dda6c 100644
--- a/fontconfig/fc-lang/ba.orth
+++ b/fontconfig/fc-lang/ba.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/be.orth b/fontconfig/fc-lang/be.orth
index ebcd19587..1bf5e3234 100644
--- a/fontconfig/fc-lang/be.orth
+++ b/fontconfig/fc-lang/be.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/bg.orth b/fontconfig/fc-lang/bg.orth
index 7c84790c8..c947490f0 100644
--- a/fontconfig/fc-lang/bg.orth
+++ b/fontconfig/fc-lang/bg.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/bh.orth b/fontconfig/fc-lang/bh.orth
index 4dc39ef6c..2dd749cb4 100644
--- a/fontconfig/fc-lang/bh.orth
+++ b/fontconfig/fc-lang/bh.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/bho.orth b/fontconfig/fc-lang/bho.orth
index d5998b4d9..b5e34d851 100644
--- a/fontconfig/fc-lang/bho.orth
+++ b/fontconfig/fc-lang/bho.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/bi.orth b/fontconfig/fc-lang/bi.orth
index 451783e7a..521d52981 100644
--- a/fontconfig/fc-lang/bi.orth
+++ b/fontconfig/fc-lang/bi.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/bin.orth b/fontconfig/fc-lang/bin.orth
index 1ff2c4b14..b9db3a182 100644
--- a/fontconfig/fc-lang/bin.orth
+++ b/fontconfig/fc-lang/bin.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/bm.orth b/fontconfig/fc-lang/bm.orth
index d87a5bf8f..fca67e86e 100644
--- a/fontconfig/fc-lang/bm.orth
+++ b/fontconfig/fc-lang/bm.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/bo.orth b/fontconfig/fc-lang/bo.orth
index f09d18e74..a347759c5 100644
--- a/fontconfig/fc-lang/bo.orth
+++ b/fontconfig/fc-lang/bo.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/br.orth b/fontconfig/fc-lang/br.orth
index fb90f0ff7..9d126ab59 100644
--- a/fontconfig/fc-lang/br.orth
+++ b/fontconfig/fc-lang/br.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/bs.orth b/fontconfig/fc-lang/bs.orth
index 5df47069a..3ef930908 100644
--- a/fontconfig/fc-lang/bs.orth
+++ b/fontconfig/fc-lang/bs.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/bua.orth b/fontconfig/fc-lang/bua.orth
index cb6729964..8618310f3 100644
--- a/fontconfig/fc-lang/bua.orth
+++ b/fontconfig/fc-lang/bua.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ca.orth b/fontconfig/fc-lang/ca.orth
index 6ace8fa02..3436ab995 100644
--- a/fontconfig/fc-lang/ca.orth
+++ b/fontconfig/fc-lang/ca.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ce.orth b/fontconfig/fc-lang/ce.orth
index 4db7fbdab..fb9785a2e 100644
--- a/fontconfig/fc-lang/ce.orth
+++ b/fontconfig/fc-lang/ce.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ch.orth b/fontconfig/fc-lang/ch.orth
index 795c821a1..8e8ac6fb3 100644
--- a/fontconfig/fc-lang/ch.orth
+++ b/fontconfig/fc-lang/ch.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/chm.orth b/fontconfig/fc-lang/chm.orth
index 0f4b13cc6..3ff7d3b24 100644
--- a/fontconfig/fc-lang/chm.orth
+++ b/fontconfig/fc-lang/chm.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/chr.orth b/fontconfig/fc-lang/chr.orth
index f41951164..22972613d 100644
--- a/fontconfig/fc-lang/chr.orth
+++ b/fontconfig/fc-lang/chr.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/co.orth b/fontconfig/fc-lang/co.orth
index ccfc7d4c9..4c67f755f 100644
--- a/fontconfig/fc-lang/co.orth
+++ b/fontconfig/fc-lang/co.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/cs.orth b/fontconfig/fc-lang/cs.orth
index aa7e7aa5d..3c03e80d2 100644
--- a/fontconfig/fc-lang/cs.orth
+++ b/fontconfig/fc-lang/cs.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/cu.orth b/fontconfig/fc-lang/cu.orth
index 043ad74fb..f4f512778 100644
--- a/fontconfig/fc-lang/cu.orth
+++ b/fontconfig/fc-lang/cu.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/cv.orth b/fontconfig/fc-lang/cv.orth
index 3fe1b02f7..58c739b23 100644
--- a/fontconfig/fc-lang/cv.orth
+++ b/fontconfig/fc-lang/cv.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/cy.orth b/fontconfig/fc-lang/cy.orth
index db790c9ad..7d1b8a4db 100644
--- a/fontconfig/fc-lang/cy.orth
+++ b/fontconfig/fc-lang/cy.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/da.orth b/fontconfig/fc-lang/da.orth
index b1f646714..a10ac7370 100644
--- a/fontconfig/fc-lang/da.orth
+++ b/fontconfig/fc-lang/da.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/de.orth b/fontconfig/fc-lang/de.orth
index 15bf17855..63a2eebf4 100644
--- a/fontconfig/fc-lang/de.orth
+++ b/fontconfig/fc-lang/de.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/dz.orth b/fontconfig/fc-lang/dz.orth
index c7843af22..0d5306572 100644
--- a/fontconfig/fc-lang/dz.orth
+++ b/fontconfig/fc-lang/dz.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/el.orth b/fontconfig/fc-lang/el.orth
index 0b9782ea6..460d74074 100644
--- a/fontconfig/fc-lang/el.orth
+++ b/fontconfig/fc-lang/el.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/en.orth b/fontconfig/fc-lang/en.orth
index c521e2183..94e74dbcf 100644
--- a/fontconfig/fc-lang/en.orth
+++ b/fontconfig/fc-lang/en.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/eo.orth b/fontconfig/fc-lang/eo.orth
index 80501c7bf..65351c829 100644
--- a/fontconfig/fc-lang/eo.orth
+++ b/fontconfig/fc-lang/eo.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/es.orth b/fontconfig/fc-lang/es.orth
index 603ef6062..b9db47bac 100644
--- a/fontconfig/fc-lang/es.orth
+++ b/fontconfig/fc-lang/es.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/et.orth b/fontconfig/fc-lang/et.orth
index db2d2c140..16c3684c5 100644
--- a/fontconfig/fc-lang/et.orth
+++ b/fontconfig/fc-lang/et.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/eu.orth b/fontconfig/fc-lang/eu.orth
index 6ff35779d..ab7b9070e 100644
--- a/fontconfig/fc-lang/eu.orth
+++ b/fontconfig/fc-lang/eu.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/fa.orth b/fontconfig/fc-lang/fa.orth
index 2d9d7fa59..6e680f2d2 100644
--- a/fontconfig/fc-lang/fa.orth
+++ b/fontconfig/fc-lang/fa.orth
@@ -8,9 +8,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/fc-lang.c b/fontconfig/fc-lang/fc-lang.c
index 21d568d7e..51717f952 100644
--- a/fontconfig/fc-lang/fc-lang.c
+++ b/fontconfig/fc-lang/fc-lang.c
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -76,10 +76,14 @@ fatal (const char *file, int lineno, const char *msg)
}
static char *
-get_line (FILE *f, char *line, int *lineno)
+get_line (FILE *f, char *buf, int *lineno)
{
char *hash;
+ char *line;
int end;
+
+next:
+ line = buf;
if (!fgets (line, 1024, f))
return 0;
++(*lineno);
@@ -87,12 +91,15 @@ get_line (FILE *f, char *line, int *lineno)
if (hash)
*hash = '\0';
+ while (line[0] && isspace (line[0]))
+ line++;
end = strlen (line);
while (end > 0 && isspace (line[end-1]))
line[--end] = '\0';
- if (line[0] == '\0' || line[0] == '\n' || line[0] == '\032' || line[0] == '\r')
- return get_line (f, line, lineno);
+ if (line[0] == '\0' || line[0] == '\n' || line[0] == '\r')
+ goto next;
+
return line;
}
@@ -125,16 +132,18 @@ scanopen (char *file)
* Comments begin with '#'
*/
-static const FcCharSet *
+static FcCharSet *
scan (FILE *f, char *file, FcCharSetFreezer *freezer)
{
FcCharSet *c = 0;
FcCharSet *n;
+ FcBool del;
int start, end, ucs4;
- char line[1024];
+ char buf[1024];
+ char *line;
int lineno = 0;
- while (get_line (f, line, &lineno))
+ while ((line = get_line (f, buf, &lineno)))
{
if (!strncmp (line, "include", 7))
{
@@ -158,6 +167,12 @@ scan (FILE *f, char *file, FcCharSetFreezer *freezer)
FcCharSetDestroy (n);
continue;
}
+ del = FcFalse;
+ if (line[0] == '-')
+ {
+ del = FcTrue;
+ line++;
+ }
if (strchr (line, '-'))
{
if (sscanf (line, "%x-%x", &start, &end) != 2)
@@ -173,11 +188,11 @@ scan (FILE *f, char *file, FcCharSetFreezer *freezer)
c = FcCharSetCreate ();
for (ucs4 = start; ucs4 <= end; ucs4++)
{
- if (!FcCharSetAddChar (c, ucs4))
+ if (!((del ? FcCharSetDelChar : FcCharSetAddChar) (c, ucs4)))
fatal (file, lineno, "out of memory");
}
}
- n = FcCharSetFreeze (freezer, c);
+ n = (FcCharSet *) FcCharSetFreeze (freezer, c);
FcCharSetDestroy (c);
return n;
}
@@ -231,8 +246,8 @@ typedef struct _Entry {
static int compare (const void *a, const void *b)
{
- const Entry const *as = a, *bs = b;
- return FcStrCmpIgnoreCase (as->file, bs->file);
+ const Entry *as = a, *bs = b;
+ return FcStrCmpIgnoreCase ((const FcChar8 *) as->file, (const FcChar8 *) bs->file);
}
#define MAX_LANG 1024
@@ -245,7 +260,7 @@ int
main (int argc, char **argv)
{
static Entry entries[MAX_LANG];
- static const FcCharSet *sets[MAX_LANG];
+ static FcCharSet *sets[MAX_LANG];
static int duplicate[MAX_LANG];
static int country[MAX_LANG];
static char *names[MAX_LANG];
@@ -363,9 +378,9 @@ main (int argc, char **argv)
printf ("#define LEAF0 (%d * sizeof (FcLangCharSet))\n", nsets);
printf ("#define OFF0 (LEAF0 + %d * sizeof (FcCharLeaf))\n", tl);
- printf ("#define NUM0 (OFF0 + %d * sizeof (intptr_t))\n", tn);
+ printf ("#define NUM0 (OFF0 + %d * sizeof (uintptr_t))\n", tn);
printf ("#define SET(n) (n * sizeof (FcLangCharSet) + offsetof (FcLangCharSet, charset))\n");
- printf ("#define OFF(s,o) (OFF0 + o * sizeof (intptr_t) - SET(s))\n");
+ printf ("#define OFF(s,o) (OFF0 + o * sizeof (uintptr_t) - SET(s))\n");
printf ("#define NUM(s,n) (NUM0 + n * sizeof (FcChar16) - SET(s))\n");
printf ("#define LEAF(o,l) (LEAF0 + l * sizeof (FcCharLeaf) - (OFF0 + o * sizeof (intptr_t)))\n");
printf ("#define fcLangCharSets (fcLangData.langCharSets)\n");
@@ -376,7 +391,7 @@ main (int argc, char **argv)
printf ("static const struct {\n"
" FcLangCharSet langCharSets[%d];\n"
" FcCharLeaf leaves[%d];\n"
- " intptr_t leaf_offsets[%d];\n"
+ " uintptr_t leaf_offsets[%d];\n"
" FcChar16 numbers[%d];\n"
" FcChar%s langIndices[%d];\n"
" FcChar%s langIndicesInv[%d];\n"
diff --git a/fontconfig/fc-lang/fc-lang.man b/fontconfig/fc-lang/fc-lang.man
index 8767be6fc..f520c5115 100644
--- a/fontconfig/fc-lang/fc-lang.man
+++ b/fontconfig/fc-lang/fc-lang.man
@@ -5,9 +5,9 @@
.\" documentation for any purpose is hereby granted without fee, provided that
.\" the above copyright notice appear in all copies and that both that
.\" copyright notice and this permission notice appear in supporting
-.\" documentation, and that the name of Keith Packard not be used in
+.\" documentation, and that the name of the author(s) not be used in
.\" advertising or publicity pertaining to distribution of the software without
-.\" specific, written prior permission. Keith Packard makes no
+.\" specific, written prior permission. The authors make no
.\" representations about the suitability of this software for any purpose. It
.\" is provided "as is" without express or implied warranty.
.\"
diff --git a/fontconfig/fc-lang/fclang.tmpl.h b/fontconfig/fc-lang/fclang.tmpl.h
index c7d388918..605614870 100644
--- a/fontconfig/fc-lang/fclang.tmpl.h
+++ b/fontconfig/fc-lang/fclang.tmpl.h
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
diff --git a/fontconfig/fc-lang/ff.orth b/fontconfig/fc-lang/ff.orth
index 25b4e359c..bed81aeed 100644
--- a/fontconfig/fc-lang/ff.orth
+++ b/fontconfig/fc-lang/ff.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/fi.orth b/fontconfig/fc-lang/fi.orth
index ccac86e21..c0e19d99e 100644
--- a/fontconfig/fc-lang/fi.orth
+++ b/fontconfig/fc-lang/fi.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/fj.orth b/fontconfig/fc-lang/fj.orth
index 5b7b6fb3f..07f2f518d 100644
--- a/fontconfig/fc-lang/fj.orth
+++ b/fontconfig/fc-lang/fj.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/fo.orth b/fontconfig/fc-lang/fo.orth
index 9d5d8c585..d4b055b36 100644
--- a/fontconfig/fc-lang/fo.orth
+++ b/fontconfig/fc-lang/fo.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/fr.orth b/fontconfig/fc-lang/fr.orth
index 3441b9ec4..6e88ff927 100644
--- a/fontconfig/fc-lang/fr.orth
+++ b/fontconfig/fc-lang/fr.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/fur.orth b/fontconfig/fc-lang/fur.orth
index 066feb0f1..bf47ccd44 100644
--- a/fontconfig/fc-lang/fur.orth
+++ b/fontconfig/fc-lang/fur.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/fy.orth b/fontconfig/fc-lang/fy.orth
index b17f4d68e..b75112e62 100644
--- a/fontconfig/fc-lang/fy.orth
+++ b/fontconfig/fc-lang/fy.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ga.orth b/fontconfig/fc-lang/ga.orth
index 880114e4d..57fa7f5d3 100644
--- a/fontconfig/fc-lang/ga.orth
+++ b/fontconfig/fc-lang/ga.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/gd.orth b/fontconfig/fc-lang/gd.orth
index 39c308efd..035a3df04 100644
--- a/fontconfig/fc-lang/gd.orth
+++ b/fontconfig/fc-lang/gd.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/gez.orth b/fontconfig/fc-lang/gez.orth
index 7d915fa28..70c369485 100644
--- a/fontconfig/fc-lang/gez.orth
+++ b/fontconfig/fc-lang/gez.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/gl.orth b/fontconfig/fc-lang/gl.orth
index 5538be580..5617088a3 100644
--- a/fontconfig/fc-lang/gl.orth
+++ b/fontconfig/fc-lang/gl.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/gn.orth b/fontconfig/fc-lang/gn.orth
index 36ddb7657..644ab9330 100644
--- a/fontconfig/fc-lang/gn.orth
+++ b/fontconfig/fc-lang/gn.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/gu.orth b/fontconfig/fc-lang/gu.orth
index 464690737..5e556ce12 100644
--- a/fontconfig/fc-lang/gu.orth
+++ b/fontconfig/fc-lang/gu.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/gv.orth b/fontconfig/fc-lang/gv.orth
index c22c666bb..3d44e80a8 100644
--- a/fontconfig/fc-lang/gv.orth
+++ b/fontconfig/fc-lang/gv.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ha.orth b/fontconfig/fc-lang/ha.orth
index cea4faf73..3a3d28670 100644
--- a/fontconfig/fc-lang/ha.orth
+++ b/fontconfig/fc-lang/ha.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/haw.orth b/fontconfig/fc-lang/haw.orth
index 563fbd0d9..cdd24477a 100644
--- a/fontconfig/fc-lang/haw.orth
+++ b/fontconfig/fc-lang/haw.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/he.orth b/fontconfig/fc-lang/he.orth
index bd68fa42a..756c191b2 100644
--- a/fontconfig/fc-lang/he.orth
+++ b/fontconfig/fc-lang/he.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/hi.orth b/fontconfig/fc-lang/hi.orth
index 3e2226a90..3d18da5b8 100644
--- a/fontconfig/fc-lang/hi.orth
+++ b/fontconfig/fc-lang/hi.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ho.orth b/fontconfig/fc-lang/ho.orth
index f488c3c0e..ade4e8afb 100644
--- a/fontconfig/fc-lang/ho.orth
+++ b/fontconfig/fc-lang/ho.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/hr.orth b/fontconfig/fc-lang/hr.orth
index 755c3670b..008ff7921 100644
--- a/fontconfig/fc-lang/hr.orth
+++ b/fontconfig/fc-lang/hr.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/hu.orth b/fontconfig/fc-lang/hu.orth
index 76c024ae9..3e597fd4d 100644
--- a/fontconfig/fc-lang/hu.orth
+++ b/fontconfig/fc-lang/hu.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/hy.orth b/fontconfig/fc-lang/hy.orth
index 22dd8291b..0ccc9eb74 100644
--- a/fontconfig/fc-lang/hy.orth
+++ b/fontconfig/fc-lang/hy.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ia.orth b/fontconfig/fc-lang/ia.orth
index e1ee8e76a..60a9582f9 100644
--- a/fontconfig/fc-lang/ia.orth
+++ b/fontconfig/fc-lang/ia.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/id.orth b/fontconfig/fc-lang/id.orth
index 313c14643..36071be29 100644
--- a/fontconfig/fc-lang/id.orth
+++ b/fontconfig/fc-lang/id.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ie.orth b/fontconfig/fc-lang/ie.orth
index 7c9440558..19b35a2d6 100644
--- a/fontconfig/fc-lang/ie.orth
+++ b/fontconfig/fc-lang/ie.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ig.orth b/fontconfig/fc-lang/ig.orth
index 5486fea17..9999117cb 100644
--- a/fontconfig/fc-lang/ig.orth
+++ b/fontconfig/fc-lang/ig.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ik.orth b/fontconfig/fc-lang/ik.orth
index 138018849..87e26207c 100644
--- a/fontconfig/fc-lang/ik.orth
+++ b/fontconfig/fc-lang/ik.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/io.orth b/fontconfig/fc-lang/io.orth
index eaaac3953..407261d10 100644
--- a/fontconfig/fc-lang/io.orth
+++ b/fontconfig/fc-lang/io.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/is.orth b/fontconfig/fc-lang/is.orth
index c33e7d271..2867f8e35 100644
--- a/fontconfig/fc-lang/is.orth
+++ b/fontconfig/fc-lang/is.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/it.orth b/fontconfig/fc-lang/it.orth
index ad1a22d6c..329d2f104 100644
--- a/fontconfig/fc-lang/it.orth
+++ b/fontconfig/fc-lang/it.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/iu.orth b/fontconfig/fc-lang/iu.orth
index 1c1300a0b..24d4102c1 100644
--- a/fontconfig/fc-lang/iu.orth
+++ b/fontconfig/fc-lang/iu.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ja.orth b/fontconfig/fc-lang/ja.orth
index 572ca91e4..e87269b85 100644
--- a/fontconfig/fc-lang/ja.orth
+++ b/fontconfig/fc-lang/ja.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ka.orth b/fontconfig/fc-lang/ka.orth
index dda35ade5..f135f3bc5 100644
--- a/fontconfig/fc-lang/ka.orth
+++ b/fontconfig/fc-lang/ka.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/kaa.orth b/fontconfig/fc-lang/kaa.orth
index fe641a567..b5ee6315c 100644
--- a/fontconfig/fc-lang/kaa.orth
+++ b/fontconfig/fc-lang/kaa.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ki.orth b/fontconfig/fc-lang/ki.orth
index 147ce8584..6de49253c 100644
--- a/fontconfig/fc-lang/ki.orth
+++ b/fontconfig/fc-lang/ki.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/kk.orth b/fontconfig/fc-lang/kk.orth
index 009a97ec8..8fbe803ad 100644
--- a/fontconfig/fc-lang/kk.orth
+++ b/fontconfig/fc-lang/kk.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/kl.orth b/fontconfig/fc-lang/kl.orth
index 2763de26d..a32d926ce 100644
--- a/fontconfig/fc-lang/kl.orth
+++ b/fontconfig/fc-lang/kl.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/kn.orth b/fontconfig/fc-lang/kn.orth
index 7b525304a..781d775d7 100644
--- a/fontconfig/fc-lang/kn.orth
+++ b/fontconfig/fc-lang/kn.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ko.orth b/fontconfig/fc-lang/ko.orth
index 1b02d9a8c..39114a5af 100644
--- a/fontconfig/fc-lang/ko.orth
+++ b/fontconfig/fc-lang/ko.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/kok.orth b/fontconfig/fc-lang/kok.orth
index e77de6627..f7661e923 100644
--- a/fontconfig/fc-lang/kok.orth
+++ b/fontconfig/fc-lang/kok.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ku_am.orth b/fontconfig/fc-lang/ku_am.orth
index 80e434079..c9f482100 100644
--- a/fontconfig/fc-lang/ku_am.orth
+++ b/fontconfig/fc-lang/ku_am.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ku_ir.orth b/fontconfig/fc-lang/ku_ir.orth
index 6ca2e70f2..233b4aab6 100644
--- a/fontconfig/fc-lang/ku_ir.orth
+++ b/fontconfig/fc-lang/ku_ir.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/kum.orth b/fontconfig/fc-lang/kum.orth
index 0107bfebd..20f0b51b6 100644
--- a/fontconfig/fc-lang/kum.orth
+++ b/fontconfig/fc-lang/kum.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/kv.orth b/fontconfig/fc-lang/kv.orth
index 87d4d93c2..5dbb28bb6 100644
--- a/fontconfig/fc-lang/kv.orth
+++ b/fontconfig/fc-lang/kv.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/kw.orth b/fontconfig/fc-lang/kw.orth
index 11824b799..3933a6801 100644
--- a/fontconfig/fc-lang/kw.orth
+++ b/fontconfig/fc-lang/kw.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ky.orth b/fontconfig/fc-lang/ky.orth
index ba8425027..bf7dbe0d2 100644
--- a/fontconfig/fc-lang/ky.orth
+++ b/fontconfig/fc-lang/ky.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/la.orth b/fontconfig/fc-lang/la.orth
index b28cbcce7..359b36be7 100644
--- a/fontconfig/fc-lang/la.orth
+++ b/fontconfig/fc-lang/la.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/lb.orth b/fontconfig/fc-lang/lb.orth
index 6f7b2c299..51cbcc5d5 100644
--- a/fontconfig/fc-lang/lb.orth
+++ b/fontconfig/fc-lang/lb.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/lez.orth b/fontconfig/fc-lang/lez.orth
index 3fe9ac2eb..541d2faa6 100644
--- a/fontconfig/fc-lang/lez.orth
+++ b/fontconfig/fc-lang/lez.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ln.orth b/fontconfig/fc-lang/ln.orth
index c32d66d74..659e2be20 100644
--- a/fontconfig/fc-lang/ln.orth
+++ b/fontconfig/fc-lang/ln.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/lo.orth b/fontconfig/fc-lang/lo.orth
index 7c2dd0320..42cfaeb3b 100644
--- a/fontconfig/fc-lang/lo.orth
+++ b/fontconfig/fc-lang/lo.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/lt.orth b/fontconfig/fc-lang/lt.orth
index 4bdfe7633..582300a55 100644
--- a/fontconfig/fc-lang/lt.orth
+++ b/fontconfig/fc-lang/lt.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/lv.orth b/fontconfig/fc-lang/lv.orth
index fad04257e..e83cbd7d1 100644
--- a/fontconfig/fc-lang/lv.orth
+++ b/fontconfig/fc-lang/lv.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/mai.orth b/fontconfig/fc-lang/mai.orth
index fd3971c01..943e74801 100644
--- a/fontconfig/fc-lang/mai.orth
+++ b/fontconfig/fc-lang/mai.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/mg.orth b/fontconfig/fc-lang/mg.orth
index 3482c8f52..99778b84e 100644
--- a/fontconfig/fc-lang/mg.orth
+++ b/fontconfig/fc-lang/mg.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/mh.orth b/fontconfig/fc-lang/mh.orth
index cdd6fb46d..1ebf23b34 100644
--- a/fontconfig/fc-lang/mh.orth
+++ b/fontconfig/fc-lang/mh.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/mi.orth b/fontconfig/fc-lang/mi.orth
index 1bc6832f7..a506c2b18 100644
--- a/fontconfig/fc-lang/mi.orth
+++ b/fontconfig/fc-lang/mi.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/mk.orth b/fontconfig/fc-lang/mk.orth
index 0dac53489..908e5922c 100644
--- a/fontconfig/fc-lang/mk.orth
+++ b/fontconfig/fc-lang/mk.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ml.orth b/fontconfig/fc-lang/ml.orth
index 744eb7ce9..2d62d65ea 100644
--- a/fontconfig/fc-lang/ml.orth
+++ b/fontconfig/fc-lang/ml.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/mn_cn.orth b/fontconfig/fc-lang/mn_cn.orth
index c20497917..5c4a8af23 100644
--- a/fontconfig/fc-lang/mn_cn.orth
+++ b/fontconfig/fc-lang/mn_cn.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/mo.orth b/fontconfig/fc-lang/mo.orth
index 5b4263385..5b22c61f4 100644
--- a/fontconfig/fc-lang/mo.orth
+++ b/fontconfig/fc-lang/mo.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/mr.orth b/fontconfig/fc-lang/mr.orth
index 029d51e4d..26399093f 100644
--- a/fontconfig/fc-lang/mr.orth
+++ b/fontconfig/fc-lang/mr.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/mt.orth b/fontconfig/fc-lang/mt.orth
index 51edc4efb..0172ad5e2 100644
--- a/fontconfig/fc-lang/mt.orth
+++ b/fontconfig/fc-lang/mt.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/my.orth b/fontconfig/fc-lang/my.orth
index 9046d26e5..3e3ecf890 100644
--- a/fontconfig/fc-lang/my.orth
+++ b/fontconfig/fc-lang/my.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/nb.orth b/fontconfig/fc-lang/nb.orth
index ff8417687..1cac7f584 100644
--- a/fontconfig/fc-lang/nb.orth
+++ b/fontconfig/fc-lang/nb.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/nds.orth b/fontconfig/fc-lang/nds.orth
index 3b2db30ce..8a6546aa0 100644
--- a/fontconfig/fc-lang/nds.orth
+++ b/fontconfig/fc-lang/nds.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ne.orth b/fontconfig/fc-lang/ne.orth
index 18cf01119..246386f0b 100644
--- a/fontconfig/fc-lang/ne.orth
+++ b/fontconfig/fc-lang/ne.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
@@ -23,3 +23,4 @@
#
# Nepali (Devanagari script) (NE)
include hi.orth
+-090C-090E # See bug 30685
diff --git a/fontconfig/fc-lang/nl.orth b/fontconfig/fc-lang/nl.orth
index 6f6315fd7..ea896fb51 100644
--- a/fontconfig/fc-lang/nl.orth
+++ b/fontconfig/fc-lang/nl.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/nn.orth b/fontconfig/fc-lang/nn.orth
index b21e90f66..3e9224d50 100644
--- a/fontconfig/fc-lang/nn.orth
+++ b/fontconfig/fc-lang/nn.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/no.orth b/fontconfig/fc-lang/no.orth
index 305c361cd..67e0ae9ac 100644
--- a/fontconfig/fc-lang/no.orth
+++ b/fontconfig/fc-lang/no.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ny.orth b/fontconfig/fc-lang/ny.orth
index b846647e9..6ffacd956 100644
--- a/fontconfig/fc-lang/ny.orth
+++ b/fontconfig/fc-lang/ny.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/oc.orth b/fontconfig/fc-lang/oc.orth
index 55b237e6c..07822e758 100644
--- a/fontconfig/fc-lang/oc.orth
+++ b/fontconfig/fc-lang/oc.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/om.orth b/fontconfig/fc-lang/om.orth
index 7f28d39bd..21422bf55 100644
--- a/fontconfig/fc-lang/om.orth
+++ b/fontconfig/fc-lang/om.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/or.orth b/fontconfig/fc-lang/or.orth
index 3c54fe397..eeb1dbe84 100644
--- a/fontconfig/fc-lang/or.orth
+++ b/fontconfig/fc-lang/or.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/os.orth b/fontconfig/fc-lang/os.orth
index a5929df3e..e689d908f 100644
--- a/fontconfig/fc-lang/os.orth
+++ b/fontconfig/fc-lang/os.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/pes.orth b/fontconfig/fc-lang/pes.orth
index 81b39107f..0c160f9b4 100644
--- a/fontconfig/fc-lang/pes.orth
+++ b/fontconfig/fc-lang/pes.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/pl.orth b/fontconfig/fc-lang/pl.orth
index e2d494e3f..4b069dfbb 100644
--- a/fontconfig/fc-lang/pl.orth
+++ b/fontconfig/fc-lang/pl.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/prs.orth b/fontconfig/fc-lang/prs.orth
index 98cf654bc..b6a2ef5bf 100644
--- a/fontconfig/fc-lang/prs.orth
+++ b/fontconfig/fc-lang/prs.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ps_af.orth b/fontconfig/fc-lang/ps_af.orth
index 5cae9eda9..47c19dda9 100644
--- a/fontconfig/fc-lang/ps_af.orth
+++ b/fontconfig/fc-lang/ps_af.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ps_pk.orth b/fontconfig/fc-lang/ps_pk.orth
index 1ce76d5ad..659f4fb0e 100644
--- a/fontconfig/fc-lang/ps_pk.orth
+++ b/fontconfig/fc-lang/ps_pk.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/pt.orth b/fontconfig/fc-lang/pt.orth
index 77e97bfdd..07aa83d76 100644
--- a/fontconfig/fc-lang/pt.orth
+++ b/fontconfig/fc-lang/pt.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/rm.orth b/fontconfig/fc-lang/rm.orth
index 4c62810ed..9a54d879e 100644
--- a/fontconfig/fc-lang/rm.orth
+++ b/fontconfig/fc-lang/rm.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ro.orth b/fontconfig/fc-lang/ro.orth
index 8c97d4d27..0433de951 100644
--- a/fontconfig/fc-lang/ro.orth
+++ b/fontconfig/fc-lang/ro.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ru.orth b/fontconfig/fc-lang/ru.orth
index b8cb2ee99..d4391f33a 100644
--- a/fontconfig/fc-lang/ru.orth
+++ b/fontconfig/fc-lang/ru.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/sa.orth b/fontconfig/fc-lang/sa.orth
index c7b08e16c..9b8e399da 100644
--- a/fontconfig/fc-lang/sa.orth
+++ b/fontconfig/fc-lang/sa.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/sah.orth b/fontconfig/fc-lang/sah.orth
index b4f25d97e..f22317d4d 100644
--- a/fontconfig/fc-lang/sah.orth
+++ b/fontconfig/fc-lang/sah.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/sco.orth b/fontconfig/fc-lang/sco.orth
index 26bf0d60c..11022e164 100644
--- a/fontconfig/fc-lang/sco.orth
+++ b/fontconfig/fc-lang/sco.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/se.orth b/fontconfig/fc-lang/se.orth
index e08733b8a..6ed02f888 100644
--- a/fontconfig/fc-lang/se.orth
+++ b/fontconfig/fc-lang/se.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/sel.orth b/fontconfig/fc-lang/sel.orth
index d76466a80..ba8fe5981 100644
--- a/fontconfig/fc-lang/sel.orth
+++ b/fontconfig/fc-lang/sel.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/sk.orth b/fontconfig/fc-lang/sk.orth
index c7c870d87..c2a36f0d3 100644
--- a/fontconfig/fc-lang/sk.orth
+++ b/fontconfig/fc-lang/sk.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/sl.orth b/fontconfig/fc-lang/sl.orth
index f37147587..ea28aa376 100644
--- a/fontconfig/fc-lang/sl.orth
+++ b/fontconfig/fc-lang/sl.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/sm.orth b/fontconfig/fc-lang/sm.orth
index fba7d3dfb..e8dc63ab3 100644
--- a/fontconfig/fc-lang/sm.orth
+++ b/fontconfig/fc-lang/sm.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/sma.orth b/fontconfig/fc-lang/sma.orth
index f6e65ecb5..4292ec7c5 100644
--- a/fontconfig/fc-lang/sma.orth
+++ b/fontconfig/fc-lang/sma.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/smj.orth b/fontconfig/fc-lang/smj.orth
index e708a907b..3d466fdda 100644
--- a/fontconfig/fc-lang/smj.orth
+++ b/fontconfig/fc-lang/smj.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/smn.orth b/fontconfig/fc-lang/smn.orth
index 4c2e2d6db..54ac9cef7 100644
--- a/fontconfig/fc-lang/smn.orth
+++ b/fontconfig/fc-lang/smn.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/sms.orth b/fontconfig/fc-lang/sms.orth
index 04d1de366..b9391ae42 100644
--- a/fontconfig/fc-lang/sms.orth
+++ b/fontconfig/fc-lang/sms.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/so.orth b/fontconfig/fc-lang/so.orth
index 243657802..0867a4595 100644
--- a/fontconfig/fc-lang/so.orth
+++ b/fontconfig/fc-lang/so.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/sq.orth b/fontconfig/fc-lang/sq.orth
index 252230202..21c885acf 100644
--- a/fontconfig/fc-lang/sq.orth
+++ b/fontconfig/fc-lang/sq.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/sr.orth b/fontconfig/fc-lang/sr.orth
index 5439d6334..0350a687c 100644
--- a/fontconfig/fc-lang/sr.orth
+++ b/fontconfig/fc-lang/sr.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/sv.orth b/fontconfig/fc-lang/sv.orth
index ac627c81f..4f40fff33 100644
--- a/fontconfig/fc-lang/sv.orth
+++ b/fontconfig/fc-lang/sv.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/sw.orth b/fontconfig/fc-lang/sw.orth
index 81975e9f3..f4bff3d19 100644
--- a/fontconfig/fc-lang/sw.orth
+++ b/fontconfig/fc-lang/sw.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/syr.orth b/fontconfig/fc-lang/syr.orth
index b1f4a8dfc..97d6edc48 100644
--- a/fontconfig/fc-lang/syr.orth
+++ b/fontconfig/fc-lang/syr.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ta.orth b/fontconfig/fc-lang/ta.orth
index cb6b215cd..52a6f1d58 100644
--- a/fontconfig/fc-lang/ta.orth
+++ b/fontconfig/fc-lang/ta.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/te.orth b/fontconfig/fc-lang/te.orth
index cb9989e9e..141c932ed 100644
--- a/fontconfig/fc-lang/te.orth
+++ b/fontconfig/fc-lang/te.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/tg.orth b/fontconfig/fc-lang/tg.orth
index f11e6af47..fc99ab1da 100644
--- a/fontconfig/fc-lang/tg.orth
+++ b/fontconfig/fc-lang/tg.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/th.orth b/fontconfig/fc-lang/th.orth
index 47396bf30..03c3c32ea 100644
--- a/fontconfig/fc-lang/th.orth
+++ b/fontconfig/fc-lang/th.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ti_er.orth b/fontconfig/fc-lang/ti_er.orth
index b1f7dc634..91b37acc5 100644
--- a/fontconfig/fc-lang/ti_er.orth
+++ b/fontconfig/fc-lang/ti_er.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ti_et.orth b/fontconfig/fc-lang/ti_et.orth
index 37ee0f7f7..b80be9915 100644
--- a/fontconfig/fc-lang/ti_et.orth
+++ b/fontconfig/fc-lang/ti_et.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/tig.orth b/fontconfig/fc-lang/tig.orth
index c5b9c0633..d731ebc2b 100644
--- a/fontconfig/fc-lang/tig.orth
+++ b/fontconfig/fc-lang/tig.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/tn.orth b/fontconfig/fc-lang/tn.orth
index 342281e03..2a1510a82 100644
--- a/fontconfig/fc-lang/tn.orth
+++ b/fontconfig/fc-lang/tn.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/to.orth b/fontconfig/fc-lang/to.orth
index 3b85a1e8d..2a5f73670 100644
--- a/fontconfig/fc-lang/to.orth
+++ b/fontconfig/fc-lang/to.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/tr.orth b/fontconfig/fc-lang/tr.orth
index 155a69d37..11031bb4e 100644
--- a/fontconfig/fc-lang/tr.orth
+++ b/fontconfig/fc-lang/tr.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ts.orth b/fontconfig/fc-lang/ts.orth
index ffc180797..ade4e3bbf 100644
--- a/fontconfig/fc-lang/ts.orth
+++ b/fontconfig/fc-lang/ts.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/tt.orth b/fontconfig/fc-lang/tt.orth
index a91d7c4fc..0292d1ff0 100644
--- a/fontconfig/fc-lang/tt.orth
+++ b/fontconfig/fc-lang/tt.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/tw.orth b/fontconfig/fc-lang/tw.orth
index b6e654638..4cee88b63 100644
--- a/fontconfig/fc-lang/tw.orth
+++ b/fontconfig/fc-lang/tw.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/tyv.orth b/fontconfig/fc-lang/tyv.orth
index 9d5bd742e..9498541f9 100644
--- a/fontconfig/fc-lang/tyv.orth
+++ b/fontconfig/fc-lang/tyv.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ug.orth b/fontconfig/fc-lang/ug.orth
index bf8e67450..1a6f28d99 100644
--- a/fontconfig/fc-lang/ug.orth
+++ b/fontconfig/fc-lang/ug.orth
@@ -1,15 +1,19 @@
#
# fontconfig/fc-lang/ug.orth
#
-# Copyright © 2002 Keith Packard
+# Copyright © 2010
+# UKIJ - Uyghur Computer Science Association (http://www.ukij.org/)
+# Ubuntu Uyghur Translation Team (https://launchpad.net/~ubuntu-l10n-ug)
+# Kenjisoft (http://kenjisoft.homelinux.com/)
+# Bilik (http://www.bilik.cn/)
#
# Permission to use, copy, modify, distribute, and sell this software and its
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors makes no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
@@ -21,9 +25,26 @@
# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
#
-# Uighur (UG)
+# Uyghur (UG)
#
-# Uighur is written in a varient of Perso-Arabic, but I haven't found
-# any references which define the variations. So, for now we'll use Arabic
-# fonts
-include ar.orth
+# Uyghur is written in a modified Persian-Arabic script. For detailed
+# information, refer to http://en.wikipedia.org/wiki/Uyghur_language
+#
+0626-0628
+062A
+062C
+062E-062F
+0631-0634
+063A
+0641-0646
+0648-064A
+067E
+0686
+0698
+06AD
+06AF
+06BE
+06C6-06C8
+06CB
+06D0
+06D5
diff --git a/fontconfig/fc-lang/uk.orth b/fontconfig/fc-lang/uk.orth
index 593fc5c4c..d1dc05b46 100644
--- a/fontconfig/fc-lang/uk.orth
+++ b/fontconfig/fc-lang/uk.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ur.orth b/fontconfig/fc-lang/ur.orth
index d9b944acc..57f724d10 100644
--- a/fontconfig/fc-lang/ur.orth
+++ b/fontconfig/fc-lang/ur.orth
@@ -8,9 +8,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/ve.orth b/fontconfig/fc-lang/ve.orth
index a7c91dba6..173cbf5a6 100644
--- a/fontconfig/fc-lang/ve.orth
+++ b/fontconfig/fc-lang/ve.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/vi.orth b/fontconfig/fc-lang/vi.orth
index 7915cab2b..96c51a95d 100644
--- a/fontconfig/fc-lang/vi.orth
+++ b/fontconfig/fc-lang/vi.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/vo.orth b/fontconfig/fc-lang/vo.orth
index 8b334698e..52dcb1899 100644
--- a/fontconfig/fc-lang/vo.orth
+++ b/fontconfig/fc-lang/vo.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/vot.orth b/fontconfig/fc-lang/vot.orth
index 006b3e33c..b31b22fb1 100644
--- a/fontconfig/fc-lang/vot.orth
+++ b/fontconfig/fc-lang/vot.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/wa.orth b/fontconfig/fc-lang/wa.orth
index 6b575271a..25e6ff54e 100644
--- a/fontconfig/fc-lang/wa.orth
+++ b/fontconfig/fc-lang/wa.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/wen.orth b/fontconfig/fc-lang/wen.orth
index 13d1714f3..d53dd12a4 100644
--- a/fontconfig/fc-lang/wen.orth
+++ b/fontconfig/fc-lang/wen.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/wo.orth b/fontconfig/fc-lang/wo.orth
index 3e3fc3d73..8e94e218e 100644
--- a/fontconfig/fc-lang/wo.orth
+++ b/fontconfig/fc-lang/wo.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/xh.orth b/fontconfig/fc-lang/xh.orth
index a068709da..c6dddac4e 100644
--- a/fontconfig/fc-lang/xh.orth
+++ b/fontconfig/fc-lang/xh.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/yap.orth b/fontconfig/fc-lang/yap.orth
index 6678b879f..5aedf0ef9 100644
--- a/fontconfig/fc-lang/yap.orth
+++ b/fontconfig/fc-lang/yap.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/yi.orth b/fontconfig/fc-lang/yi.orth
index 954b025d6..51d6ca329 100644
--- a/fontconfig/fc-lang/yi.orth
+++ b/fontconfig/fc-lang/yi.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/yo.orth b/fontconfig/fc-lang/yo.orth
index 7e38d8a6d..77c5eca25 100644
--- a/fontconfig/fc-lang/yo.orth
+++ b/fontconfig/fc-lang/yo.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/zh_cn.orth b/fontconfig/fc-lang/zh_cn.orth
index 6438869ae..135c0ea93 100644
--- a/fontconfig/fc-lang/zh_cn.orth
+++ b/fontconfig/fc-lang/zh_cn.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/zh_hk.orth b/fontconfig/fc-lang/zh_hk.orth
index d280179bf..5d5ef0526 100644
--- a/fontconfig/fc-lang/zh_hk.orth
+++ b/fontconfig/fc-lang/zh_hk.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/zh_mo.orth b/fontconfig/fc-lang/zh_mo.orth
index fe70977d7..ae086f9d8 100644
--- a/fontconfig/fc-lang/zh_mo.orth
+++ b/fontconfig/fc-lang/zh_mo.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/zh_sg.orth b/fontconfig/fc-lang/zh_sg.orth
index 01919158f..354e2a4b8 100644
--- a/fontconfig/fc-lang/zh_sg.orth
+++ b/fontconfig/fc-lang/zh_sg.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/zh_tw.orth b/fontconfig/fc-lang/zh_tw.orth
index a052bfde1..844745342 100644
--- a/fontconfig/fc-lang/zh_tw.orth
+++ b/fontconfig/fc-lang/zh_tw.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-lang/zu.orth b/fontconfig/fc-lang/zu.orth
index dc236c820..4aff79440 100644
--- a/fontconfig/fc-lang/zu.orth
+++ b/fontconfig/fc-lang/zu.orth
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-list/Makefile.am b/fontconfig/fc-list/Makefile.am
index b364271bd..d40700a4e 100644
--- a/fontconfig/fc-list/Makefile.am
+++ b/fontconfig/fc-list/Makefile.am
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-list/fc-list.c b/fontconfig/fc-list/fc-list.c
index e7813a6b4..12c2ca550 100644
--- a/fontconfig/fc-list/fc-list.c
+++ b/fontconfig/fc-list/fc-list.c
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
diff --git a/fontconfig/fc-list/fc-list.sgml b/fontconfig/fc-list/fc-list.sgml
index ffa089144..c4a82cd6f 100644
--- a/fontconfig/fc-list/fc-list.sgml
+++ b/fontconfig/fc-list/fc-list.sgml
@@ -179,6 +179,7 @@ manpage.1: manpage.sgml
<function>FcPatternFormat</function>(3)
<command>fc-cat</command>(1)
<command>fc-cache</command>(1)
+ <command>fc-pattern</command>(1)
<command>fc-query</command>(1)
<command>fc-scan</command>(1)
</para>
diff --git a/fontconfig/fc-match/Makefile.am b/fontconfig/fc-match/Makefile.am
index 9d725a582..94fc7d906 100644
--- a/fontconfig/fc-match/Makefile.am
+++ b/fontconfig/fc-match/Makefile.am
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-match/fc-match.c b/fontconfig/fc-match/fc-match.c
index 8963e7af3..48ba6cfe8 100644
--- a/fontconfig/fc-match/fc-match.c
+++ b/fontconfig/fc-match/fc-match.c
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
diff --git a/fontconfig/fc-match/fc-match.sgml b/fontconfig/fc-match/fc-match.sgml
index 390b733c3..f66a021c0 100644
--- a/fontconfig/fc-match/fc-match.sgml
+++ b/fontconfig/fc-match/fc-match.sgml
@@ -182,8 +182,9 @@ output is requested.</para>
<function>FcPatternFormat</function>(3)
<command>fc-cat</command>(1)
<command>fc-cache</command>(1)
+ <command>fc-pattern</command>(1)
<command>fc-query</command>(1)
- <command>fc-scal</command>(1)
+ <command>fc-scan</command>(1)
</para>
<para>The fontconfig user's guide, in HTML format:
diff --git a/fontconfig/fc-pattern/Makefile.am b/fontconfig/fc-pattern/Makefile.am
new file mode 100644
index 000000000..a7db2105e
--- /dev/null
+++ b/fontconfig/fc-pattern/Makefile.am
@@ -0,0 +1,59 @@
+#
+# fontconfig/fc-pattern/Makefile.am
+#
+# Copyright © 2003 Keith Packard
+#
+# Permission to use, copy, modify, distribute, and sell this software and its
+# documentation for any purpose is hereby granted without fee, provided that
+# the above copyright notice appear in all copies and that both that
+# copyright notice and this permission notice appear in supporting
+# documentation, and that the name of the author(s) not be used in
+# advertising or publicity pertaining to distribution of the software without
+# specific, written prior permission. The authors make no
+# representations about the suitability of this software for any purpose. It
+# is provided "as is" without express or implied warranty.
+#
+# THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+# EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+# PERFORMANCE OF THIS SOFTWARE.
+
+bin_PROGRAMS=fc-pattern
+
+DOC2MAN = docbook2man
+
+FC_PATTERN_SRC=${top_srcdir}/fc-pattern
+
+SGML = ${FC_PATTERN_SRC}/fc-pattern.sgml
+
+INCLUDES=-I${top_srcdir} $(WARN_CFLAGS)
+
+BUILT_MANS=fc-pattern.1
+
+if ENABLE_DOCS
+man_MANS=${BUILT_MANS}
+endif
+
+EXTRA_DIST=fc-pattern.sgml $(BUILT_MANS)
+
+fc_pattern_LDADD = ${top_builddir}/src/libfontconfig.la
+
+if USEDOCBOOK
+
+${man_MANS}: ${SGML}
+ $(RM) $@
+ $(DOC2MAN) ${SGML}
+ $(RM) manpage.*
+
+all-local: $(man_MANS)
+
+clean-local:
+ $(RM) $(man_MANS)
+
+else
+all-local:
+clean-local:
+endif
diff --git a/fontconfig/fc-pattern/fc-pattern.c b/fontconfig/fc-pattern/fc-pattern.c
new file mode 100644
index 000000000..aa51e5f39
--- /dev/null
+++ b/fontconfig/fc-pattern/fc-pattern.c
@@ -0,0 +1,195 @@
+/*
+ * fontconfig/fc-pattern/fc-pattern.c
+ *
+ * Copyright © 2003 Keith Packard
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of the author(s) not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission. The authors make no
+ * representations about the suitability of this software for any purpose. It
+ * is provided "as is" without express or implied warranty.
+ *
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#else
+#ifdef linux
+#define HAVE_GETOPT_LONG 1
+#endif
+#define HAVE_GETOPT 1
+#endif
+
+#include <fontconfig/fontconfig.h>
+#include <stdio.h>
+#include <unistd.h>
+#include <stdlib.h>
+#include <string.h>
+
+#ifndef HAVE_GETOPT
+#define HAVE_GETOPT 0
+#endif
+#ifndef HAVE_GETOPT_LONG
+#define HAVE_GETOPT_LONG 0
+#endif
+
+#if HAVE_GETOPT_LONG
+#undef _GNU_SOURCE
+#define _GNU_SOURCE
+#include <getopt.h>
+static const struct option longopts[] = {
+ {"config", 0, 0, 'c'},
+ {"default", 0, 0, 'd'},
+ {"format", 1, 0, 'f'},
+ {"version", 0, 0, 'V'},
+ {"help", 0, 0, 'h'},
+ {NULL,0,0,0},
+};
+#else
+#if HAVE_GETOPT
+extern char *optarg;
+extern int optind, opterr, optopt;
+#endif
+#endif
+
+static void
+usage (char *program, int error)
+{
+ FILE *file = error ? stderr : stdout;
+#if HAVE_GETOPT_LONG
+ fprintf (file, "usage: %s [-cdVh] [-f FORMAT] [--config] [--default] [--verbose] [--format=FORMAT] [--version] [--help] [pattern] {element...}\n",
+ program);
+#else
+ fprintf (file, "usage: %s [-cdVh] [-f FORMAT] [pattern] {element...}\n",
+ program);
+#endif
+ fprintf (file, "List best font matching [pattern]\n");
+ fprintf (file, "\n");
+#if HAVE_GETOPT_LONG
+ fprintf (file, " -c, --config perform config substitution on pattern\n");
+ fprintf (file, " -d, -default perform default substitution on pattern\n");
+ fprintf (file, " -f, --format=FORMAT use the given output format\n");
+ fprintf (file, " -V, --version display font config version and exit\n");
+ fprintf (file, " -h, --help display this help and exit\n");
+#else
+ fprintf (file, " -c, (config) perform config substitution on pattern\n");
+ fprintf (file, " -d, (default) perform default substitution on pattern\n");
+ fprintf (file, " -f FORMAT (format) use the given output format\n");
+ fprintf (file, " -V (version) display font config version and exit\n");
+ fprintf (file, " -h (help) display this help and exit\n");
+#endif
+ exit (error);
+}
+
+int
+main (int argc, char **argv)
+{
+ int do_config = 0, do_default = 0;
+ FcChar8 *format = NULL;
+ int i;
+ FcObjectSet *os = 0;
+ FcPattern *pat;
+#if HAVE_GETOPT_LONG || HAVE_GETOPT
+ int c;
+
+#if HAVE_GETOPT_LONG
+ while ((c = getopt_long (argc, argv, "cdf:Vh", longopts, NULL)) != -1)
+#else
+ while ((c = getopt (argc, argv, "cdf:Vh")) != -1)
+#endif
+ {
+ switch (c) {
+ case 'c':
+ do_config = 1;
+ break;
+ case 'd':
+ do_default = 1;
+ break;
+ case 'f':
+ format = (FcChar8 *) strdup (optarg);
+ break;
+ case 'V':
+ fprintf (stderr, "fontconfig version %d.%d.%d\n",
+ FC_MAJOR, FC_MINOR, FC_REVISION);
+ exit (0);
+ case 'h':
+ usage (argv[0], 0);
+ default:
+ usage (argv[0], 1);
+ }
+ }
+ i = optind;
+#else
+ i = 1;
+#endif
+
+ if (!FcInit ())
+ {
+ fprintf (stderr, "Can't init font config library\n");
+ return 1;
+ }
+ if (argv[i])
+ {
+ pat = FcNameParse ((FcChar8 *) argv[i]);
+ while (argv[++i])
+ {
+ if (!os)
+ os = FcObjectSetCreate ();
+ FcObjectSetAdd (os, argv[i]);
+ }
+ }
+ else
+ pat = FcPatternCreate ();
+
+ if (!pat)
+ return 1;
+
+ if (do_config)
+ FcConfigSubstitute (0, pat, FcMatchPattern);
+ if (do_default)
+ FcDefaultSubstitute (pat);
+
+ if (os)
+ {
+ FcPattern *new;
+ new = FcPatternFilter (pat, os);
+ FcPatternDestroy (pat);
+ pat = new;
+ }
+
+ if (format)
+ {
+ FcChar8 *s;
+
+ s = FcPatternFormat (pat, format);
+ if (s)
+ {
+ printf ("%s", s);
+ free (s);
+ }
+ }
+ else
+ {
+ FcPatternPrint (pat);
+ }
+
+ FcPatternDestroy (pat);
+
+ if (os)
+ FcObjectSetDestroy (os);
+
+ FcFini ();
+
+ return 0;
+}
diff --git a/fontconfig/fc-pattern/fc-pattern.sgml b/fontconfig/fc-pattern/fc-pattern.sgml
new file mode 100644
index 000000000..928afd8d2
--- /dev/null
+++ b/fontconfig/fc-pattern/fc-pattern.sgml
@@ -0,0 +1,204 @@
+<!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [
+
+<!-- Process this file with docbook-to-man to generate an nroff manual
+ page: `docbook-to-man manpage.sgml > manpage.1'. You may view
+ the manual page with: `docbook-to-man manpage.sgml | nroff -man |
+ less'. A typical entry in a Makefile or Makefile.am is:
+
+manpage.1: manpage.sgml
+ docbook-to-man $< > $@
+
+
+ The docbook-to-man binary is found in the docbook-to-man package.
+ Please remember that if you create the nroff version in one of the
+ debian/rules file targets (such as build), you will need to include
+ docbook-to-man in your Build-Depends control field.
+
+ -->
+
+ <!-- Fill in your name for FIRSTNAME and SURNAME. -->
+ <!ENTITY dhfirstname "<firstname>Behdad</firstname>">
+ <!ENTITY dhsurname "<surname>Esfahbod</surname>">
+ <!-- Please adjust the date whenever revising the manpage. -->
+ <!ENTITY dhdate "<date>Apr 20, 2010</date>">
+ <!-- SECTION should be 1-8, maybe w/ subsection other parameters are
+ allowed: see man(7), man(1). -->
+ <!ENTITY dhsection "<manvolnum>1</manvolnum>">
+ <!ENTITY dhemail "<email>behdad@behdad.org</email>">
+ <!ENTITY dhusername "Behdad Esfahbod">
+ <!ENTITY dhucpackage "<refentrytitle>fc-pattern</refentrytitle>">
+ <!ENTITY dhpackage "fc-pattern">
+
+ <!ENTITY debian "<productname>Debian</productname>">
+ <!ENTITY gnu "<acronym>GNU</acronym>">
+ <!ENTITY gpl "&gnu; <acronym>GPL</acronym>">
+]>
+
+<refentry>
+ <refentryinfo>
+ <address>
+ &dhemail;
+ </address>
+ <author>
+ &dhfirstname;
+ &dhsurname;
+ </author>
+ <copyright>
+ <year>2010</year>
+ <holder>&dhusername;</holder>
+ </copyright>
+ &dhdate;
+ </refentryinfo>
+ <refmeta>
+ &dhucpackage;
+
+ &dhsection;
+ </refmeta>
+ <refnamediv>
+ <refname>&dhpackage;</refname>
+
+ <refpurpose>parse and show pattern</refpurpose>
+ </refnamediv>
+ <refsynopsisdiv>
+ <cmdsynopsis>
+ <command>&dhpackage;</command>
+
+ <arg><option>-cdVh</option></arg>
+ <arg><option>--config</option></arg>
+ <arg><option>--default</option></arg>
+ <group>
+ <arg><option>-f</option> <option><replaceable>format</replaceable></option></arg>
+ <arg><option>--format</option> <option><replaceable>format</replaceable></option></arg>
+ </group>
+ <arg><option>--version</option></arg>
+ <arg><option>--help</option></arg>
+ <sbr>
+ <arg><option><replaceable>pattern</replaceable></option> <arg rep="repeat"><option><replaceable>element</replaceable></option></arg> </arg>
+
+ </cmdsynopsis>
+ </refsynopsisdiv>
+ <refsect1>
+ <title>DESCRIPTION</title>
+
+ <para><command>&dhpackage;</command> parses
+ <replaceable>pattern</replaceable> (empty
+pattern by default) and shows the parsed result.
+If <option>--config</option> is given, config substitution is performed on the
+pattern before being displayed.
+If <option>--default</option> is given, default substitution is performed on the
+pattern before being displayed.</para>
+<para>If any elements are specified, only those are printed.</para>
+ </refsect1>
+ <refsect1>
+ <title>OPTIONS</title>
+
+ <para>This program follows the usual &gnu; command line syntax,
+ with long options starting with two dashes (`-'). A summary of
+ options is included below.</para>
+
+ <variablelist>
+ <varlistentry>
+ <term><option>-c</option>
+ <option>--config</option>
+ </term>
+ <listitem>
+ <para>Perform config substitution on pattern.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>-d</option>
+ <option>--default</option>
+ </term>
+ <listitem>
+ <para>Perform default substitution on pattern.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>-f</option>
+ <option>--format</option>
+ <option><replaceable>format</replaceable></option>
+ </term>
+ <listitem>
+ <para>Format output according to the format specifier
+ <replaceable>format</replaceable>.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>-V</option>
+ <option>--version</option>
+ </term>
+ <listitem>
+ <para>Show version of the program and exit.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>-h</option>
+ <option>--help</option>
+ </term>
+ <listitem>
+ <para>Show summary of options.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option><replaceable>pattern</replaceable></option>
+ </term>
+ <listitem>
+ <para>Parses and displays <replaceable>pattern</replaceable> (uses empty pattern by default).</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option><replaceable>element</replaceable></option>
+ </term>
+ <listitem>
+ <para>If set, the <replaceable>element</replaceable> property
+ is displayed for parsed pattern.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </refsect1>
+
+ <refsect1>
+ <title>SEE ALSO</title>
+
+ <para>
+ <function>FcNameParse</function>(3)
+ <function>FcConfigSubstitute</function>(3)
+ <function>FcDefaultSubstitute</function>(3)
+ <function>FcPatternPrint</function>(3)
+ <function>FcPatternFormat</function>(3)
+ <command>fc-cat</command>(1)
+ <command>fc-cache</command>(1)
+ <command>fc-list</command>(1)
+ <command>fc-match</command>(1)
+ <command>fc-query</command>(1)
+ <command>fc-scan</command>(1)
+ </para>
+
+ <para>The fontconfig user's guide, in HTML format:
+ <filename>/usr/share/doc/fontconfig/fontconfig-user.html</filename>.</para>
+
+ </refsect1>
+ <refsect1>
+ <title>AUTHOR</title>
+
+ <para>This manual page was updated by &dhusername; &dhemail;.</para>
+
+ </refsect1>
+</refentry>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:2
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:nil
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+-->
diff --git a/fontconfig/fc-query/Makefile.am b/fontconfig/fc-query/Makefile.am
index 114fd7f80..132dd401c 100644
--- a/fontconfig/fc-query/Makefile.am
+++ b/fontconfig/fc-query/Makefile.am
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-query/fc-query.c b/fontconfig/fc-query/fc-query.c
index f2693de59..0680b92cf 100644
--- a/fontconfig/fc-query/fc-query.c
+++ b/fontconfig/fc-query/fc-query.c
@@ -9,9 +9,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
diff --git a/fontconfig/fc-query/fc-query.sgml b/fontconfig/fc-query/fc-query.sgml
index 59fd63548..5351d1e4d 100644
--- a/fontconfig/fc-query/fc-query.sgml
+++ b/fontconfig/fc-query/fc-query.sgml
@@ -159,6 +159,7 @@ manpage.1: manpage.sgml
<command>fc-cache</command>(1)
<command>fc-list</command>(1)
<command>fc-match</command>(1)
+ <command>fc-pattern</command>(1)
</para>
<para>The fontconfig user's guide, in HTML format:
diff --git a/fontconfig/fc-scan/Makefile.am b/fontconfig/fc-scan/Makefile.am
index af4383149..c9d8904ae 100644
--- a/fontconfig/fc-scan/Makefile.am
+++ b/fontconfig/fc-scan/Makefile.am
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
diff --git a/fontconfig/fc-scan/fc-scan.c b/fontconfig/fc-scan/fc-scan.c
index 5f9a46670..ebf56064e 100644
--- a/fontconfig/fc-scan/fc-scan.c
+++ b/fontconfig/fc-scan/fc-scan.c
@@ -9,9 +9,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
diff --git a/fontconfig/fc-scan/fc-scan.sgml b/fontconfig/fc-scan/fc-scan.sgml
index b9f7714e2..9af403c1f 100644
--- a/fontconfig/fc-scan/fc-scan.sgml
+++ b/fontconfig/fc-scan/fc-scan.sgml
@@ -144,6 +144,7 @@ manpage.1: manpage.sgml
<command>fc-cache</command>(1)
<command>fc-list</command>(1)
<command>fc-match</command>(1)
+ <command>fc-pattern</command>(1)
</para>
<para>The fontconfig user's guide, in HTML format:
diff --git a/fontconfig/fontconfig.pc.in b/fontconfig/fontconfig.pc.in
index db55f6e14..7d846a533 100644
--- a/fontconfig/fontconfig.pc.in
+++ b/fontconfig/fontconfig.pc.in
@@ -2,6 +2,11 @@ prefix=@prefix@
exec_prefix=@exec_prefix@
libdir=@libdir@
includedir=@includedir@
+sysconfdir=@sysconfdir@
+localstatedir=@localstatedir@
+PACKAGE=@PACKAGE@
+confdir=@confdir@
+cachedir=@fc_cachedir@
Name: Fontconfig
Description: Font configuration and customization library
diff --git a/fontconfig/fontconfig/fcfreetype.h b/fontconfig/fontconfig/fcfreetype.h
index de9988f65..753fdf9da 100644
--- a/fontconfig/fontconfig/fcfreetype.h
+++ b/fontconfig/fontconfig/fcfreetype.h
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
diff --git a/fontconfig/fontconfig/fcprivate.h b/fontconfig/fontconfig/fcprivate.h
index ec964fce1..18b8c08ca 100644
--- a/fontconfig/fontconfig/fcprivate.h
+++ b/fontconfig/fontconfig/fcprivate.h
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
diff --git a/fontconfig/fontconfig/fontconfig.h b/fontconfig/fontconfig/fontconfig.h
index 4efa4507a..29a6ed460 100644
--- a/fontconfig/fontconfig/fontconfig.h
+++ b/fontconfig/fontconfig/fontconfig.h
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -27,7 +27,6 @@
#include <sys/types.h>
#include <sys/stat.h>
-#include <unistd.h>
#include <stdarg.h>
#if defined(__GNUC__) && (__GNUC__ >= 4)
@@ -424,6 +423,9 @@ FcCharSetDestroy (FcCharSet *fcs);
FcPublic FcBool
FcCharSetAddChar (FcCharSet *fcs, FcChar32 ucs4);
+FcPublic FcBool
+FcCharSetDelChar (FcCharSet *fcs, FcChar32 ucs4);
+
FcPublic FcCharSet*
FcCharSetCopy (FcCharSet *src);
@@ -582,6 +584,9 @@ FcLangSetCopy (const FcLangSet *ls);
FcPublic FcBool
FcLangSetAdd (FcLangSet *ls, const FcChar8 *lang);
+FcPublic FcBool
+FcLangSetDel (FcLangSet *ls, const FcChar8 *lang);
+
FcPublic FcLangResult
FcLangSetHasLang (const FcLangSet *ls, const FcChar8 *lang);
@@ -600,6 +605,12 @@ FcLangSetHash (const FcLangSet *ls);
FcPublic FcStrSet *
FcLangSetGetLangs (const FcLangSet *ls);
+FcLangSet *
+FcLangSetUnion (const FcLangSet *a, const FcLangSet *b);
+
+FcLangSet *
+FcLangSetSubtract (const FcLangSet *a, const FcLangSet *b);
+
/* fclist.c */
FcPublic FcObjectSet *
FcObjectSetCreate (void);
diff --git a/fontconfig/fonts.dtd b/fontconfig/fonts.dtd
index cbdfdab3f..5f072ee44 100644
--- a/fontconfig/fonts.dtd
+++ b/fontconfig/fonts.dtd
@@ -63,7 +63,7 @@
the set of valid Unicode chars. This idea
was borrowed from Mozilla
-->
-<!ELEMENT blank (int)*>
+<!ELEMENT blank (int|range)*>
<!--
Aliases are just a special case for multiple match elements
@@ -107,7 +107,7 @@
<!ELEMENT pattern (patelt)*>
-<!ENTITY % constant 'int|double|string|matrix|bool|charset|const'>
+<!ENTITY % constant 'int|double|string|matrix|bool|charset|langset|const'>
<!ELEMENT patelt (%constant;)*>
<!ATTLIST patelt
@@ -122,7 +122,7 @@
<!ELEMENT family (#PCDATA)>
<!ATTLIST family xml:space (default|preserve) 'preserve'>
-<!ENTITY % expr 'int|double|string|matrix|bool|charset
+<!ENTITY % expr 'int|double|string|matrix|bool|charset|langset
|name|const
|or|and|eq|not_eq|less|less_eq|more|more_eq|contains|not_contains
|plus|minus|times|divide|not|if|floor|ceil|round|trunc'>
@@ -196,8 +196,9 @@
<!ATTLIST string xml:space (default|preserve) 'preserve'>
<!ELEMENT matrix (double,double,double,double)>
<!ELEMENT bool (#PCDATA)>
-<!ELEMENT charset (#PCDATA)>
-<!ATTLIST charset xml:space (default|preserve) 'preserve'>
+<!ELEMENT charset (int|range)*>
+<!ELEMENT range (int,int)>
+<!ELEMENT langset (string)*>
<!ELEMENT name (#PCDATA)>
<!ATTLIST name xml:space (default|preserve) 'preserve'>
<!ELEMENT const (#PCDATA)>
diff --git a/fontconfig/src/Makefile.am b/fontconfig/src/Makefile.am
index 406e85e15..090f9b1ab 100644
--- a/fontconfig/src/Makefile.am
+++ b/fontconfig/src/Makefile.am
@@ -7,9 +7,9 @@
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of Keith Packard not be used in
+# documentation, and that the name of the author(s) not be used in
# advertising or publicity pertaining to distribution of the software without
-# specific, written prior permission. Keith Packard makes no
+# specific, written prior permission. The authors make no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
@@ -84,13 +84,12 @@ noinst_HEADERS=fcint.h fcftint.h fcdeprecate.h
ALIAS_FILES = fcalias.h fcaliastail.h fcftalias.h fcftaliastail.h
BUILT_SOURCES = $(ALIAS_FILES) \
- ../fc-arch/fcarch.h \
../fc-case/fccase.h \
../fc-glyphname/fcglyphname.h \
../fc-lang/fclang.h
-../fc-arch/fcarch.h:
- cd ../fc-arch && $(MAKE) $(AM_MAKEFLAGS) fcarch.h
+noinst_PROGRAMS = fcarch
+
../fc-case/fccase.h:
cd ../fc-case && $(MAKE) $(AM_MAKEFLAGS) fccase.h
../fc-glyphname/fcglyphname.h:
@@ -99,6 +98,7 @@ BUILT_SOURCES = $(ALIAS_FILES) \
cd ../fc-lang && $(MAKE) $(AM_MAKEFLAGS) fclang.h
libfontconfig_la_SOURCES = \
+ fcarch.h \
fcatomic.c \
fcblanks.c \
fccache.c \
@@ -140,7 +140,7 @@ PUBLIC_FILES = \
$(top_srcdir)/fontconfig/fontconfig.h \
$(top_srcdir)/src/fcdeprecate.h \
$(top_srcdir)/fontconfig/fcprivate.h
-
+
PUBLIC_FT_FILES = \
$(top_srcdir)/fontconfig/fcfreetype.h
@@ -160,7 +160,7 @@ fontconfig.def: $(PUBLIC_FILES) $(PUBLIC_FT_FILES)
echo Generating $@
(echo EXPORTS; \
(cat $(PUBLIC_FILES) $(PUBLIC_FT_FILES) || echo 'FcERROR ()' ) | \
- grep '^Fc[^ ]* *(' | sed -e 's/ *(.*$$//' -e 's/^/ /' | \
+ grep '^Fc[^ ]* *(' | sed -e 's/ *(.*$$//' -e 's/^/ /' | \
sort; \
echo LIBRARY libfontconfig-@LIBT_CURRENT_MINUS_AGE@.dll; \
echo VERSION @LIBT_CURRENT@.@LIBT_REVISION@) >$@
diff --git a/fontconfig/src/fcarch.c b/fontconfig/src/fcarch.c
new file mode 100644
index 000000000..c69397e18
--- /dev/null
+++ b/fontconfig/src/fcarch.c
@@ -0,0 +1,73 @@
+/*
+ * Copyright © 2002 Keith Packard
+ * Copyright © 2010 Behdad Esfahbod
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of the author(s) not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission. The authors make no
+ * representations about the suitability of this software for any purpose. It
+ * is provided "as is" without express or implied warranty.
+ *
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
+
+#include <stdio.h>
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+/* If architecture is hardcoded, skip the assert tests */
+
+#ifndef FC_ARCHITECTURE
+
+#include "fcarch.h"
+
+/* Make sure the cache structure is consistent with what we expect */
+
+#include "fcint.h"
+
+FC_ASSERT_STATIC (1 == sizeof (char));
+FC_ASSERT_STATIC (2 == sizeof (FcChar16));
+FC_ASSERT_STATIC (4 == sizeof (int));
+FC_ASSERT_STATIC (4 == sizeof (FcChar32));
+FC_ASSERT_STATIC (4 == sizeof (FcObject));
+FC_ASSERT_STATIC (4 == sizeof (FcValueBinding));
+FC_ASSERT_STATIC (8 == sizeof (FcAlign));
+FC_ASSERT_STATIC (0x20 == sizeof (FcCharLeaf));
+
+FC_ASSERT_STATIC (SIZEOF_VOID_P == sizeof (intptr_t));
+FC_ASSERT_STATIC (SIZEOF_VOID_P == sizeof (FcPatternEltPtr));
+FC_ASSERT_STATIC (SIZEOF_VOID_P == sizeof (FcValueListPtr));
+FC_ASSERT_STATIC (SIZEOF_VOID_P == sizeof (char *));
+FC_ASSERT_STATIC (SIZEOF_VOID_P == sizeof (struct FcPatternElt *));
+FC_ASSERT_STATIC (SIZEOF_VOID_P == sizeof (FcValueList *));
+FC_ASSERT_STATIC (SIZEOF_VOID_P == sizeof (FcStrSet *));
+FC_ASSERT_STATIC (SIZEOF_VOID_P == sizeof (FcCharLeaf **));
+FC_ASSERT_STATIC (SIZEOF_VOID_P == sizeof (FcChar16 *));
+
+FC_ASSERT_STATIC (0x08 + 1*ALIGNOF_DOUBLE == sizeof (FcValue));
+FC_ASSERT_STATIC (0x00 + 2*SIZEOF_VOID_P == sizeof (FcPatternElt));
+FC_ASSERT_STATIC (0x08 + 2*SIZEOF_VOID_P == sizeof (FcPattern));
+FC_ASSERT_STATIC (0x08 + 2*SIZEOF_VOID_P == sizeof (FcCharSet));
+FC_ASSERT_STATIC (0x08 + 6*SIZEOF_VOID_P == sizeof (FcCache));
+
+#endif
+
+
+int
+main (int argc, char **argv)
+{
+ printf ("%s\n", FC_ARCHITECTURE);
+ return 0;
+}
diff --git a/fontconfig/src/fcarch.h b/fontconfig/src/fcarch.h
new file mode 100644
index 000000000..0c8cd053f
--- /dev/null
+++ b/fontconfig/src/fcarch.h
@@ -0,0 +1,71 @@
+/*
+ * Copyright © 2006 Keith Packard
+ * Copyright © 2010 Behdad Esfahbod
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of the author(s) not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission. The authors make no
+ * representations about the suitability of this software for any purpose. It
+ * is provided "as is" without express or implied warranty.
+ *
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
+#ifndef _FCARCH_H_
+#define _FCARCH_H_
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+/*
+ * Each unique machine architecture needs an entry in this file
+ * So far the differences boil down to: endianness, 32 vs 64 bit pointers,
+ * and on 32bit ones, whether double is aligned to one word or two words.
+ * Those result in the 6 formats listed below.
+ *
+ * If any of the assertion errors in fccache.c fail, you need to add a new
+ * architecture. Contact the fontconfig mailing list in that case.
+ *
+ * name endianness pointer-size double-alignment
+ *
+ * le32d4 4321 4 4
+ * le32d8 4321 4 8
+ * le64 4321 8 8
+ * be32d4 1234 4 4
+ * be32d8 1234 4 8
+ * be64 1234 8 8
+ */
+
+#if defined(WORDS_BIGENDIAN) && WORDS_BIGENDIAN
+# define FC_ARCH_ENDIAN "be"
+#else /* !WORDS_BIGENDIAN */
+# define FC_ARCH_ENDIAN "le"
+#endif
+
+#if SIZEOF_VOID_P == 4
+# if ALIGNOF_DOUBLE == 4
+# define FC_ARCH_SIZE_ALIGN "32d4"
+# else /* ALIGNOF_DOUBLE != 4 */
+# define FC_ARCH_SIZE_ALIGN "32d8"
+# endif
+#else /* SIZEOF_VOID_P != 4 */
+# define FC_ARCH_SIZE_ALIGN "64"
+#endif
+
+#ifdef ARCHITECTURE
+# define ARCHITECTURE FC_ARCHITECTURE
+#else
+# define FC_ARCHITECTURE FC_ARCH_ENDIAN FC_ARCH_SIZE_ALIGN
+#endif
+
+#endif /* _FCARCH_H_ */
diff --git a/fontconfig/src/fcatomic.c b/fontconfig/src/fcatomic.c
index 89cae6183..33c1cc628 100644
--- a/fontconfig/src/fcatomic.c
+++ b/fontconfig/src/fcatomic.c
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -79,7 +79,7 @@ FcAtomicCreate (const FcChar8 *file)
if (!atomic)
return 0;
FcMemAlloc (FC_MEM_ATOMIC, total_len);
-
+
atomic->file = (FcChar8 *) (atomic + 1);
strcpy ((char *) atomic->file, (char *) file);
@@ -142,7 +142,7 @@ FcAtomicLock (FcAtomic *atomic)
* machines sharing the same filesystem will have clocks
* reasonably close to each other.
*/
- if (FcStat ((char *) atomic->lck, &lck_stat) >= 0)
+ if (FcStat (atomic->lck, &lck_stat) >= 0)
{
time_t now = time (0);
if ((long int) (now - lck_stat.st_mtime) > 10 * 60)
@@ -206,7 +206,7 @@ FcAtomicDestroy (FcAtomic *atomic)
{
FcMemFree (FC_MEM_ATOMIC, sizeof (FcAtomic) +
strlen ((char *) atomic->file) * 4 + 4 +
- sizeof (NEW_NAME) + sizeof (LCK_NAME) +
+ sizeof (NEW_NAME) + sizeof (LCK_NAME) +
sizeof (TMP_NAME));
free (atomic);
diff --git a/fontconfig/src/fcblanks.c b/fontconfig/src/fcblanks.c
index bab3066e8..a80a1344f 100644
--- a/fontconfig/src/fcblanks.c
+++ b/fontconfig/src/fcblanks.c
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
diff --git a/fontconfig/src/fccache.c b/fontconfig/src/fccache.c
index 69e1a6b82..d86526623 100644
--- a/fontconfig/src/fccache.c
+++ b/fontconfig/src/fccache.c
@@ -6,9 +6,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -22,7 +22,7 @@
*/
#include "fcint.h"
-#include "../fc-arch/fcarch.h"
+#include "fcarch.h"
#include <stdio.h>
#include <fcntl.h>
#include <dirent.h>
@@ -41,6 +41,7 @@
#define O_BINARY 0
#endif
+
struct MD5Context {
FcChar32 buf[4];
FcChar32 bits[2];
@@ -92,10 +93,10 @@ FcStat (const char *file, struct stat *statb)
char full_path_name[MAX_PATH];
char *basename;
DWORD rc;
-
+
if (!GetFileAttributesEx (file, GetFileExInfoStandard, &wfad))
return -1;
-
+
statb->st_dev = 0;
/* Calculate a pseudo inode number as a hash of the full path name.
@@ -108,7 +109,7 @@ FcStat (const char *file, struct stat *statb)
rc = GetLongPathName (full_path_name, full_path_name, sizeof (full_path_name));
statb->st_ino = FcStringHash (full_path_name);
-
+
statb->st_mode = _S_IREAD | _S_IWRITE;
statb->st_mode |= (statb->st_mode >> 3) | (statb->st_mode >> 6);
@@ -116,21 +117,30 @@ FcStat (const char *file, struct stat *statb)
statb->st_mode |= _S_IFDIR;
else
statb->st_mode |= _S_IFREG;
-
+
statb->st_nlink = 1;
statb->st_uid = statb->st_gid = 0;
statb->st_rdev = 0;
-
+
if (wfad.nFileSizeHigh > 0)
return -1;
statb->st_size = wfad.nFileSizeLow;
-
+
statb->st_atime = (*(INT64 *)&wfad.ftLastAccessTime)/10000000 - EPOCH_OFFSET;
statb->st_mtime = (*(INT64 *)&wfad.ftLastWriteTime)/10000000 - EPOCH_OFFSET;
statb->st_ctime = statb->st_mtime;
-
+
return 0;
}
+
+#else
+
+int
+FcStat (const char *file, struct stat *statb)
+{
+ return stat ((char *) file, statb);
+}
+
#endif
static const char bin2hex[] = { '0', '1', '2', '3',
@@ -215,13 +225,13 @@ FcDirCacheOpenFile (const FcChar8 *cache_file, struct stat *file_stat)
return fd;
}
-/*
+/*
* Look for a cache file for the specified dir. Attempt
* to use each one we find, stopping when the callback
* indicates success
*/
static FcBool
-FcDirCacheProcess (FcConfig *config, const FcChar8 *dir,
+FcDirCacheProcess (FcConfig *config, const FcChar8 *dir,
FcBool (*callback) (int fd, struct stat *fd_stat,
struct stat *dir_stat, void *closure),
void *closure, FcChar8 **cache_file_ret)
@@ -233,7 +243,7 @@ FcDirCacheProcess (FcConfig *config, const FcChar8 *dir,
struct stat file_stat, dir_stat;
FcBool ret = FcFalse;
- if (FcStat ((char *) dir, &dir_stat) < 0)
+ if (FcStat (dir, &dir_stat) < 0)
return FcFalse;
FcDirCacheBasename (dir, cache_base);
@@ -263,7 +273,7 @@ FcDirCacheProcess (FcConfig *config, const FcChar8 *dir,
FcStrFree (cache_hashed);
}
FcStrListDone (list);
-
+
return ret;
}
@@ -362,7 +372,7 @@ FcCacheInsert (FcCache *cache, struct stat *cache_stat)
update[fcCacheMaxLevel] = &fcCacheChains[fcCacheMaxLevel];
fcCacheMaxLevel = level;
}
-
+
s = malloc (sizeof (FcCacheSkip) + (level - 1) * sizeof (FcCacheSkip *));
if (!s)
return FcFalse;
@@ -382,7 +392,7 @@ FcCacheInsert (FcCache *cache, struct stat *cache_stat)
s->cache_ino = 0;
s->cache_mtime = 0;
}
-
+
/*
* Insert into all fcCacheChains
*/
@@ -515,7 +525,7 @@ FcCacheTimeValid (FcCache *cache, struct stat *dir_stat)
if (!dir_stat)
{
- if (FcStat ((const char *) FcCacheDir (cache), &dir_static) < 0)
+ if (FcStat (FcCacheDir (cache), &dir_static) < 0)
return FcFalse;
dir_stat = &dir_static;
}
@@ -564,7 +574,7 @@ FcDirCacheMapFd (int fd, struct stat *fd_stat, struct stat *dir_stat)
PAGE_READONLY, 0, 0, NULL);
if (hFileMap != NULL)
{
- cache = MapViewOfFile (hFileMap, FILE_MAP_READ, 0, 0,
+ cache = MapViewOfFile (hFileMap, FILE_MAP_READ, 0, 0,
fd_stat->st_size);
CloseHandle (hFileMap);
}
@@ -583,8 +593,8 @@ FcDirCacheMapFd (int fd, struct stat *fd_stat, struct stat *dir_stat)
return NULL;
}
allocated = FcTrue;
- }
- if (cache->magic != FC_CACHE_MAGIC_MMAP ||
+ }
+ if (cache->magic != FC_CACHE_MAGIC_MMAP ||
cache->version < FC_CACHE_CONTENT_VERSION ||
cache->size != fd_stat->st_size ||
!FcCacheTimeValid (cache, dir_stat) ||
@@ -674,7 +684,7 @@ FcDirCacheValidateHelper (int fd, struct stat *fd_stat, struct stat *dir_stat, v
{
FcBool ret = FcTrue;
FcCache c;
-
+
if (read (fd, &c, sizeof (FcCache)) != sizeof (FcCache))
ret = FcFalse;
else if (c.magic != FC_CACHE_MAGIC_MMAP)
@@ -691,7 +701,7 @@ FcDirCacheValidateHelper (int fd, struct stat *fd_stat, struct stat *dir_stat, v
static FcBool
FcDirCacheValidConfig (const FcChar8 *dir, FcConfig *config)
{
- return FcDirCacheProcess (config, dir,
+ return FcDirCacheProcess (config, dir,
FcDirCacheValidateHelper,
NULL, NULL);
}
@@ -700,7 +710,7 @@ FcBool
FcDirCacheValid (const FcChar8 *dir)
{
FcConfig *config;
-
+
config = FcConfigGetCurrent ();
if (!config)
return FcFalse;
@@ -722,7 +732,7 @@ FcDirCacheBuild (FcFontSet *set, const FcChar8 *dir, struct stat *dir_stat, FcSt
FcChar8 *dir_serialize;
intptr_t *dirs_serialize;
FcFontSet *set_serialize;
-
+
if (!serialize)
return NULL;
/*
@@ -747,7 +757,7 @@ FcDirCacheBuild (FcFontSet *set, const FcChar8 *dir, struct stat *dir_stat, FcSt
*/
if (!FcFontSetSerializeAlloc (serialize, set))
goto bail1;
-
+
/* Serialize layout complete. Now allocate space and fill it */
cache = malloc (serialize->size);
if (!cache)
@@ -769,7 +779,7 @@ FcDirCacheBuild (FcFontSet *set, const FcChar8 *dir, struct stat *dir_stat, FcSt
if (!dir_serialize)
goto bail2;
cache->dir = FcPtrToOffset (cache, dir_serialize);
-
+
/*
* Serialize sub dirs
*/
@@ -778,14 +788,14 @@ FcDirCacheBuild (FcFontSet *set, const FcChar8 *dir, struct stat *dir_stat, FcSt
goto bail2;
cache->dirs = FcPtrToOffset (cache, dirs_serialize);
cache->dirs_count = dirs->num;
- for (i = 0; i < dirs->num; i++)
+ for (i = 0; i < dirs->num; i++)
{
FcChar8 *d_serialize = FcStrSerialize (serialize, dirs->strs[i]);
if (!d_serialize)
goto bail2;
dirs_serialize[i] = FcPtrToOffset (dirs_serialize, d_serialize);
}
-
+
/*
* Serialize font set
*/
@@ -795,7 +805,7 @@ FcDirCacheBuild (FcFontSet *set, const FcChar8 *dir, struct stat *dir_stat, FcSt
cache->set = FcPtrToOffset (cache, set_serialize);
FcSerializeDestroy (serialize);
-
+
FcCacheInsert (cache, NULL);
return cache;
@@ -817,10 +827,10 @@ FcMakeDirectory (const FcChar8 *dir)
{
FcChar8 *parent;
FcBool ret;
-
+
if (strlen ((char *) dir) == 0)
return FcFalse;
-
+
parent = FcStrDirname (dir);
if (!parent)
return FcFalse;
@@ -854,7 +864,7 @@ FcDirCacheWrite (FcCache *cache, FcConfig *config)
/*
* Write it to the first directory in the list which is writable
*/
-
+
list = FcStrListCreate (config->cacheDirs);
if (!list)
return FcFalse;
@@ -909,21 +919,21 @@ FcDirCacheWrite (FcCache *cache, FcConfig *config)
fd = open((char *)FcAtomicNewFile (atomic), O_RDWR | O_CREAT | O_BINARY, 0666);
if (fd == -1)
goto bail4;
-
+
/* Temporarily switch magic to MMAP while writing to file */
magic = cache->magic;
if (magic != FC_CACHE_MAGIC_MMAP)
cache->magic = FC_CACHE_MAGIC_MMAP;
-
+
/*
* Write cache contents to file
*/
written = write (fd, cache, cache->size);
-
+
/* Switch magic back */
if (magic != FC_CACHE_MAGIC_MMAP)
cache->magic = magic;
-
+
if (written != cache->size)
{
perror ("write cache");
@@ -982,7 +992,7 @@ FcCacheCopySet args1(const FcCache *c)
FcFontSet *old = FcCacheSet (c);
FcFontSet *new = FcFontSetCreate ();
int i;
-
+
if (!new)
return NULL;
for (i = 0; i < old->nfont; i++)
@@ -1116,7 +1126,7 @@ static void MD5Update(struct MD5Context *ctx, const unsigned char *buf, unsigned
}
/*
- * Final wrapup - pad to 64-byte boundary with the bit pattern
+ * Final wrapup - pad to 64-byte boundary with the bit pattern
* 1 0* (64-bit count of bits processed, MSB-first)
*/
static void MD5Final(unsigned char digest[16], struct MD5Context *ctx)
diff --git a/fontconfig/src/fccfg.c b/fontconfig/src/fccfg.c
index 0f89b57a4..4beb7d236 100644
--- a/fontconfig/src/fccfg.c
+++ b/fontconfig/src/fccfg.c
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -48,19 +48,19 @@ FcConfigCreate (void)
if (!config)
goto bail0;
FcMemAlloc (FC_MEM_CONFIG, sizeof (FcConfig));
-
+
config->configDirs = FcStrSetCreate ();
if (!config->configDirs)
goto bail1;
-
+
config->configFiles = FcStrSetCreate ();
if (!config->configFiles)
goto bail2;
-
+
config->fontDirs = FcStrSetCreate ();
if (!config->fontDirs)
goto bail3;
-
+
config->acceptGlobs = FcStrSetCreate ();
if (!config->acceptGlobs)
goto bail4;
@@ -72,7 +72,7 @@ FcConfigCreate (void)
config->acceptPatterns = FcFontSetCreate ();
if (!config->acceptPatterns)
goto bail6;
-
+
config->rejectPatterns = FcFontSetCreate ();
if (!config->rejectPatterns)
goto bail7;
@@ -80,7 +80,7 @@ FcConfigCreate (void)
config->cacheDirs = FcStrSetCreate ();
if (!config->cacheDirs)
goto bail8;
-
+
config->blanks = 0;
config->substPattern = 0;
@@ -91,12 +91,12 @@ FcConfigCreate (void)
config->fonts[set] = 0;
config->rescanTime = time(0);
- config->rescanInterval = 30;
+ config->rescanInterval = 30;
config->expr_pool = NULL;
config->ref = 1;
-
+
return config;
bail8:
@@ -131,7 +131,7 @@ FcConfigNewestFile (FcStrSet *files)
if (list)
{
while ((file = FcStrListNext (list)))
- if (FcStat ((char *) file, &statb) == 0)
+ if (FcStat (file, &statb) == 0)
if (!newest.set || statb.st_mtime - newest.time > 0)
{
newest.set = FcTrue;
@@ -181,7 +181,7 @@ static void
FcSubstDestroy (FcSubst *s)
{
FcSubst *n;
-
+
while (s)
{
n = s->next;
@@ -279,7 +279,7 @@ FcConfigDestroy (FcConfig *config)
*/
FcBool
-FcConfigAddCache (FcConfig *config, FcCache *cache,
+FcConfigAddCache (FcConfig *config, FcCache *cache,
FcSetName set, FcStrSet *dirSet)
{
FcFontSet *fs;
@@ -343,7 +343,7 @@ FcConfigAddDirList (FcConfig *config, FcSetName set, FcStrSet *dirSet)
FcStrList *dirlist;
FcChar8 *dir;
FcCache *cache;
-
+
dirlist = FcStrListCreate (dirSet);
if (!dirlist)
return FcFalse;
@@ -382,9 +382,9 @@ FcConfigBuildFonts (FcConfig *config)
fonts = FcFontSetCreate ();
if (!fonts)
return FcFalse;
-
+
FcConfigSetFonts (config, fonts, FcSetSystem);
-
+
if (!FcConfigAddDirList (config, FcSetSystem, config->fontDirs))
return FcFalse;
if (FcDebug () & FC_DBG_FONTSET)
@@ -447,7 +447,7 @@ FcBool
FcConfigAddDir (FcConfig *config,
const FcChar8 *d)
{
- return (FcConfigAddConfigDir (config, d) &&
+ return (FcConfigAddConfigDir (config, d) &&
FcConfigAddFontDir (config, d));
}
@@ -481,17 +481,17 @@ FcConfigGetCacheDirs (FcConfig *config)
}
return FcStrListCreate (config->cacheDirs);
}
-
+
FcBool
FcConfigAddConfigFile (FcConfig *config,
const FcChar8 *f)
{
FcBool ret;
FcChar8 *file = FcConfigFilename (f);
-
+
if (!file)
return FcFalse;
-
+
ret = FcStrSetAdd (config->configFiles, file);
FcStrFree (file);
return ret;
@@ -555,7 +555,7 @@ FcConfigAddBlank (FcConfig *config,
FcChar32 blank)
{
FcBlanks *b, *freeme = 0;
-
+
b = config->blanks;
if (!b)
{
@@ -613,7 +613,7 @@ FcConfigSetRescanInverval (FcConfig *config, int rescanInterval)
return FcConfigSetRescanInterval (config, rescanInterval);
}
-
+
FcBool
FcConfigAddEdit (FcConfig *config,
FcTest *test,
@@ -697,10 +697,10 @@ FcConfigCompareValue (const FcValue *left_o,
FcValue left = FcValueCanonicalize(left_o);
FcValue right = FcValueCanonicalize(right_o);
FcBool ret = FcFalse;
-
+
left = FcConfigPromote (left, right);
right = FcConfigPromote (right, left);
- if (left.type == right.type)
+ if (left.type == right.type)
{
switch (left.type) {
case FcTypeInteger:
@@ -716,16 +716,16 @@ FcConfigCompareValue (const FcValue *left_o,
case FcOpNotContains:
ret = left.u.d != right.u.d;
break;
- case FcOpLess:
+ case FcOpLess:
ret = left.u.d < right.u.d;
break;
- case FcOpLessEqual:
+ case FcOpLessEqual:
ret = left.u.d <= right.u.d;
break;
- case FcOpMore:
+ case FcOpMore:
ret = left.u.d > right.u.d;
break;
- case FcOpMoreEqual:
+ case FcOpMoreEqual:
ret = left.u.d >= right.u.d;
break;
default:
@@ -734,7 +734,7 @@ FcConfigCompareValue (const FcValue *left_o,
break;
case FcTypeBool:
switch (op) {
- case FcOpEqual:
+ case FcOpEqual:
case FcOpContains:
case FcOpListing:
ret = left.u.b == right.u.b;
@@ -749,7 +749,7 @@ FcConfigCompareValue (const FcValue *left_o,
break;
case FcTypeString:
switch (op) {
- case FcOpEqual:
+ case FcOpEqual:
case FcOpListing:
ret = FcStrCmpIgnoreCase (left.u.s, right.u.s) == 0;
break;
@@ -872,7 +872,7 @@ FcConfigEvaluate (FcPattern *p, FcExpr *e)
FcResult r;
FcMatrix *m;
FcChar8 *str;
-
+
switch (e->op) {
case FcOpInteger:
v.type = FcTypeInteger;
@@ -897,6 +897,11 @@ FcConfigEvaluate (FcPattern *p, FcExpr *e)
v.u.c = e->u.cval;
v = FcValueSave (v);
break;
+ case FcOpLangSet:
+ v.type = FcTypeLangSet;
+ v.u.l = e->u.lval;
+ v = FcValueSave (v);
+ break;
case FcOpBool:
v.type = FcTypeBool;
v.u.b = e->u.bval;
@@ -957,24 +962,24 @@ FcConfigEvaluate (FcPattern *p, FcExpr *e)
switch (vl.type) {
case FcTypeDouble:
switch (e->op) {
- case FcOpPlus:
+ case FcOpPlus:
v.type = FcTypeDouble;
- v.u.d = vl.u.d + vr.u.d;
+ v.u.d = vl.u.d + vr.u.d;
break;
case FcOpMinus:
v.type = FcTypeDouble;
- v.u.d = vl.u.d - vr.u.d;
+ v.u.d = vl.u.d - vr.u.d;
break;
case FcOpTimes:
v.type = FcTypeDouble;
- v.u.d = vl.u.d * vr.u.d;
+ v.u.d = vl.u.d * vr.u.d;
break;
case FcOpDivide:
v.type = FcTypeDouble;
- v.u.d = vl.u.d / vr.u.d;
+ v.u.d = vl.u.d / vr.u.d;
break;
default:
- v.type = FcTypeVoid;
+ v.type = FcTypeVoid;
break;
}
if (v.type == FcTypeDouble &&
@@ -995,7 +1000,7 @@ FcConfigEvaluate (FcPattern *p, FcExpr *e)
v.u.b = vl.u.b && vr.u.b;
break;
default:
- v.type = FcTypeVoid;
+ v.type = FcTypeVoid;
break;
}
break;
@@ -1006,7 +1011,7 @@ FcConfigEvaluate (FcPattern *p, FcExpr *e)
str = FcStrPlus (vl.u.s, vr.u.s);
v.u.s = FcStrStaticName (str);
FcStrFree (str);
-
+
if (!v.u.s)
v.type = FcTypeVoid;
break;
@@ -1036,6 +1041,44 @@ FcConfigEvaluate (FcPattern *p, FcExpr *e)
break;
}
break;
+ case FcTypeCharSet:
+ switch (e->op) {
+ case FcOpPlus:
+ v.type = FcTypeCharSet;
+ v.u.c = FcCharSetUnion (vl.u.c, vr.u.c);
+ if (!v.u.c)
+ v.type = FcTypeVoid;
+ break;
+ case FcOpMinus:
+ v.type = FcTypeCharSet;
+ v.u.c = FcCharSetSubtract (vl.u.c, vr.u.c);
+ if (!v.u.c)
+ v.type = FcTypeVoid;
+ break;
+ default:
+ v.type = FcTypeVoid;
+ break;
+ }
+ break;
+ case FcTypeLangSet:
+ switch (e->op) {
+ case FcOpPlus:
+ v.type = FcTypeLangSet;
+ v.u.l = FcLangSetUnion (vl.u.l, vr.u.l);
+ if (!v.u.l)
+ v.type = FcTypeVoid;
+ break;
+ case FcOpMinus:
+ v.type = FcTypeLangSet;
+ v.u.l = FcLangSetSubtract (vl.u.l, vr.u.l);
+ if (!v.u.l)
+ v.type = FcTypeVoid;
+ break;
+ default:
+ v.type = FcTypeVoid;
+ break;
+ }
+ break;
default:
v.type = FcTypeVoid;
break;
@@ -1139,7 +1182,7 @@ FcConfigMatchValueList (FcPattern *p,
FcExpr *e = t->expr;
FcValue value;
FcValueList *v;
-
+
while (e)
{
/* Compute the value of the match expression */
@@ -1180,7 +1223,7 @@ static FcValueList *
FcConfigValues (FcPattern *p, FcExpr *e, FcValueBinding binding)
{
FcValueList *l;
-
+
if (!e)
return 0;
l = (FcValueList *) malloc (sizeof (FcValueList));
@@ -1218,7 +1261,7 @@ FcConfigAdd (FcValueListPtr *head,
{
FcValueListPtr *prev, last, v;
FcValueBinding sameBinding;
-
+
if (position)
sameBinding = position->binding;
else
@@ -1231,7 +1274,7 @@ FcConfigAdd (FcValueListPtr *head,
if (position)
prev = &position->next;
else
- for (prev = head; *prev != NULL;
+ for (prev = head; *prev != NULL;
prev = &(*prev)->next)
;
}
@@ -1239,7 +1282,7 @@ FcConfigAdd (FcValueListPtr *head,
{
if (position)
{
- for (prev = head; *prev != NULL;
+ for (prev = head; *prev != NULL;
prev = &(*prev)->next)
{
if (*prev == position)
@@ -1262,24 +1305,24 @@ FcConfigAdd (FcValueListPtr *head,
FcValueListPrint (*head);
printf ("\n");
}
-
+
if (new)
{
last = new;
while (last->next != NULL)
last = last->next;
-
+
last->next = *prev;
*prev = new;
}
-
+
if (FcDebug () & FC_DBG_EDIT)
{
printf ("%s list after ", append ? "Append" : "Prepend");
FcValueListPrint (*head);
printf ("\n");
}
-
+
return FcTrue;
}
@@ -1310,7 +1353,7 @@ FcConfigPatternAdd (FcPattern *p,
if (list)
{
FcPatternElt *e = FcPatternObjectInsertElt (p, object);
-
+
if (!e)
return;
FcConfigAdd (&e->values, 0, append, list);
@@ -1462,7 +1505,7 @@ FcConfigSubstituteWithPat (FcConfig *config,
if ((t->kind == FcMatchFont || kind == FcMatchPattern) &&
t->object == e->object)
{
- /*
+ /*
* KLUDGE - the pattern may have been reallocated or
* things may have been inserted or deleted above
* this element by other edits. Go back and find
@@ -1485,7 +1528,7 @@ FcConfigSubstituteWithPat (FcConfig *config,
{
FcValueList *thisValue = st[i].value;
FcValueList *nextValue = thisValue;
-
+
/*
* Append the new list of values after the current value
*/
@@ -1624,7 +1667,7 @@ DllMain (HINSTANCE hinstDLL,
}
else
fontconfig_path[0] = '\0';
-
+
break;
}
@@ -1671,7 +1714,7 @@ FcConfigFileExists (const FcChar8 *dir, const FcChar8 *file)
FcMemAlloc (FC_MEM_STRING, strlen ((char *) path) + 1);
if (access ((char *) path, R_OK) == 0)
return path;
-
+
FcStrFree (path);
return 0;
}
@@ -1703,7 +1746,7 @@ FcConfigGetPath (void)
if (env)
{
e = env;
- while (*e)
+ while (*e)
{
colon = (FcChar8 *) strchr ((char *) e, FC_SEARCH_PATH_SEPARATOR);
if (!colon)
@@ -1720,7 +1763,7 @@ FcConfigGetPath (void)
i++;
}
}
-
+
#ifdef _WIN32
if (fontconfig_path[0] == '\0')
{
@@ -1858,7 +1901,7 @@ FcConfigAppFontAddFile (FcConfig *config,
subdirs = FcStrSetCreate ();
if (!subdirs)
return FcFalse;
-
+
set = FcConfigGetFonts (config, FcSetApplication);
if (!set)
{
@@ -1894,7 +1937,7 @@ FcConfigAppFontAddDir (FcConfig *config,
{
FcFontSet *set;
FcStrSet *dirs;
-
+
if (!config)
{
config = FcConfigGetCurrent ();
@@ -1905,7 +1948,7 @@ FcConfigAppFontAddDir (FcConfig *config,
dirs = FcStrSetCreate ();
if (!dirs)
return FcFalse;
-
+
set = FcConfigGetFonts (config, FcSetApplication);
if (!set)
{
@@ -1917,9 +1960,9 @@ FcConfigAppFontAddDir (FcConfig *config,
}
FcConfigSetFonts (config, set, FcSetApplication);
}
-
+
FcStrSetAddFilename (dirs, dir);
-
+
if (!FcConfigAddDirList (config, FcSetApplication, dirs))
{
FcStrSetDestroy (dirs);
@@ -1962,7 +2005,7 @@ FcConfigGlobMatch (const FcChar8 *glob,
{
FcChar8 c;
- while ((c = *glob++))
+ while ((c = *glob++))
{
switch (c) {
case '*':
@@ -2034,7 +2077,7 @@ FcConfigPatternsMatch (const FcFontSet *patterns,
const FcPattern *font)
{
int i;
-
+
for (i = 0; i < patterns->nfont; i++)
if (FcListPatternMatchAny (patterns->fonts[i], font))
return FcTrue;
diff --git a/fontconfig/src/fccharset.c b/fontconfig/src/fccharset.c
index d30e1614a..df1d2b538 100644
--- a/fontconfig/src/fccharset.c
+++ b/fontconfig/src/fccharset.c
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -53,7 +53,7 @@ void
FcCharSetDestroy (FcCharSet *fcs)
{
int i;
-
+
if (fcs->ref == FC_REF_CONSTANT)
{
FcCacheObjectDereference (fcs);
@@ -135,9 +135,9 @@ FcCharSetFindLeaf (const FcCharSet *fcs, FcChar32 ucs4)
#define FC_IS_ZERO_OR_POWER_OF_TWO(x) (!((x) & ((x)-1)))
static FcBool
-FcCharSetPutLeaf (FcCharSet *fcs,
+FcCharSetPutLeaf (FcCharSet *fcs,
FcChar32 ucs4,
- FcCharLeaf *leaf,
+ FcCharLeaf *leaf,
int pos)
{
intptr_t *leaves = FcCharSetLeaves (fcs);
@@ -188,8 +188,8 @@ FcCharSetPutLeaf (FcCharSet *fcs,
fcs->leaves_offset = FcPtrToOffset (fcs, leaves);
fcs->numbers_offset = FcPtrToOffset (fcs, numbers);
}
-
- memmove (leaves + pos + 1, leaves + pos,
+
+ memmove (leaves + pos + 1, leaves + pos,
(fcs->num - pos) * sizeof (*leaves));
memmove (numbers + pos + 1, numbers + pos,
(fcs->num - pos) * sizeof (*numbers));
@@ -213,11 +213,11 @@ FcCharSetFindLeafCreate (FcCharSet *fcs, FcChar32 ucs4)
pos = FcCharSetFindLeafPos (fcs, ucs4);
if (pos >= 0)
return FcCharSetLeaf(fcs, pos);
-
+
leaf = calloc (1, sizeof (FcCharLeaf));
if (!leaf)
return 0;
-
+
pos = -pos - 1;
if (!FcCharSetPutLeaf (fcs, ucs4, leaf, pos))
{
@@ -251,7 +251,7 @@ FcCharSetAddChar (FcCharSet *fcs, FcChar32 ucs4)
{
FcCharLeaf *leaf;
FcChar32 *b;
-
+
if (fcs->ref == FC_REF_CONSTANT)
return FcFalse;
leaf = FcCharSetFindLeafCreate (fcs, ucs4);
@@ -262,6 +262,23 @@ FcCharSetAddChar (FcCharSet *fcs, FcChar32 ucs4)
return FcTrue;
}
+FcBool
+FcCharSetDelChar (FcCharSet *fcs, FcChar32 ucs4)
+{
+ FcCharLeaf *leaf;
+ FcChar32 *b;
+
+ if (fcs->ref == FC_REF_CONSTANT)
+ return FcFalse;
+ leaf = FcCharSetFindLeaf (fcs, ucs4);
+ if (!leaf)
+ return FcTrue;
+ b = &leaf->map[(ucs4 & 0xff) >> 5];
+ *b &= ~(1 << (ucs4 & 0x1f));
+ /* We don't bother removing the leaf if it's empty */
+ return FcTrue;
+}
+
/*
* An iterator for the leaves of a charset
*/
@@ -337,7 +354,7 @@ FcCharSetEqual (const FcCharSet *a, const FcCharSet *b)
{
FcCharSetIter ai, bi;
int i;
-
+
if (a == b)
return FcTrue;
for (FcCharSetIterStart (a, &ai), FcCharSetIterStart (b, &bi);
@@ -568,7 +585,7 @@ FcCharSetIntersectCount (const FcCharSet *a, const FcCharSet *b)
{
FcCharSetIter ai, bi;
FcChar32 count = 0;
-
+
FcCharSetIterStart (a, &ai);
FcCharSetIterStart (b, &bi);
while (ai.leaf && bi.leaf)
@@ -581,7 +598,7 @@ FcCharSetIntersectCount (const FcCharSet *a, const FcCharSet *b)
while (i--)
count += FcCharSetPopCount (*am++ & *bm++);
FcCharSetIterNext (a, &ai);
- }
+ }
else if (ai.ucs4 < bi.ucs4)
{
ai.ucs4 = bi.ucs4;
@@ -601,7 +618,7 @@ FcCharSetCount (const FcCharSet *a)
{
FcCharSetIter ai;
FcChar32 count = 0;
-
+
for (FcCharSetIterStart (a, &ai); ai.leaf; FcCharSetIterNext (a, &ai))
{
int i = 256/32;
@@ -618,7 +635,7 @@ FcCharSetSubtractCount (const FcCharSet *a, const FcCharSet *b)
{
FcCharSetIter ai, bi;
FcChar32 count = 0;
-
+
FcCharSetIterStart (a, &ai);
FcCharSetIterStart (b, &bi);
while (ai.leaf)
@@ -657,7 +674,7 @@ FcCharSetIsSubset (const FcCharSet *a, const FcCharSet *b)
{
int ai, bi;
FcChar16 an, bn;
-
+
if (a == b) return FcTrue;
bi = 0;
ai = 0;
@@ -672,7 +689,7 @@ FcCharSetIsSubset (const FcCharSet *a, const FcCharSet *b)
{
FcChar32 *am = FcCharSetLeaf(a, ai)->map;
FcChar32 *bm = FcCharSetLeaf(b, bi)->map;
-
+
if (am != bm)
{
int i = 256/32;
@@ -710,7 +727,7 @@ FcCharSetIsSubset (const FcCharSet *a, const FcCharSet *b)
*/
FcChar32
-FcCharSetNextPage (const FcCharSet *a,
+FcCharSetNextPage (const FcCharSet *a,
FcChar32 map[FC_CHARSET_MAP_SIZE],
FcChar32 *next)
{
@@ -721,7 +738,7 @@ FcCharSetNextPage (const FcCharSet *a,
FcCharSetIterSet (a, &ai);
if (!ai.leaf)
return FC_CHARSET_DONE;
-
+
/*
* Save current information
*/
@@ -737,7 +754,7 @@ FcCharSetNextPage (const FcCharSet *a,
}
FcChar32
-FcCharSetFirstPage (const FcCharSet *a,
+FcCharSetFirstPage (const FcCharSet *a,
FcChar32 map[FC_CHARSET_MAP_SIZE],
FcChar32 *next)
{
@@ -748,7 +765,7 @@ FcCharSetFirstPage (const FcCharSet *a,
/*
* old coverage API, rather hard to use correctly
*/
-
+
FcChar32
FcCharSetCoverage (const FcCharSet *a, FcChar32 page, FcChar32 *result)
{
@@ -772,7 +789,7 @@ FcCharSetCoverage (const FcCharSet *a, FcChar32 page, FcChar32 *result)
/*
* ASCII representation of charsets.
- *
+ *
* Each leaf is represented as 9 32-bit values, the code of the first character followed
* by 8 32 bit values for the leaf itself. Each value is encoded as 5 ASCII characters,
* only 85 different values are used to avoid control characters as well as the other
@@ -781,38 +798,38 @@ FcCharSetCoverage (const FcCharSet *a, FcChar32 page, FcChar32 *result)
*/
static const unsigned char charToValue[256] = {
- /* "" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\b" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\020" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\030" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* " " */ 0xff, 0x00, 0xff, 0x01, 0x02, 0x03, 0x04, 0xff,
- /* "(" */ 0x05, 0x06, 0x07, 0x08, 0xff, 0xff, 0x09, 0x0a,
- /* "0" */ 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12,
- /* "8" */ 0x13, 0x14, 0xff, 0x15, 0x16, 0xff, 0x17, 0x18,
- /* "@" */ 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20,
- /* "H" */ 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28,
- /* "P" */ 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30,
- /* "X" */ 0x31, 0x32, 0x33, 0x34, 0xff, 0x35, 0x36, 0xff,
- /* "`" */ 0xff, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d,
- /* "h" */ 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45,
- /* "p" */ 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d,
- /* "x" */ 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53, 0x54, 0xff,
- /* "\200" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\210" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\220" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\230" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\240" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\250" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\260" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\270" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\300" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\310" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\320" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\330" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\340" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\350" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\360" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\370" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ /* "" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ /* "\b" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ /* "\020" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ /* "\030" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ /* " " */ 0xff, 0x00, 0xff, 0x01, 0x02, 0x03, 0x04, 0xff,
+ /* "(" */ 0x05, 0x06, 0x07, 0x08, 0xff, 0xff, 0x09, 0x0a,
+ /* "0" */ 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12,
+ /* "8" */ 0x13, 0x14, 0xff, 0x15, 0x16, 0xff, 0x17, 0x18,
+ /* "@" */ 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20,
+ /* "H" */ 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28,
+ /* "P" */ 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30,
+ /* "X" */ 0x31, 0x32, 0x33, 0x34, 0xff, 0x35, 0x36, 0xff,
+ /* "`" */ 0xff, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d,
+ /* "h" */ 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45,
+ /* "p" */ 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d,
+ /* "x" */ 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53, 0x54, 0xff,
+ /* "\200" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ /* "\210" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ /* "\220" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ /* "\230" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ /* "\240" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ /* "\250" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ /* "\260" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ /* "\270" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ /* "\300" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ /* "\310" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ /* "\320" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ /* "\330" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ /* "\340" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ /* "\350" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ /* "\360" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ /* "\370" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
};
static const FcChar8 valueToChar[0x55] = {
@@ -835,7 +852,7 @@ FcCharSetParseValue (FcChar8 *string, FcChar32 *value)
int i;
FcChar32 v;
FcChar32 c;
-
+
if (*string == ' ')
{
v = 0;
@@ -1006,7 +1023,7 @@ FcNameUnparseCharSet (FcStrBuf *buf, const FcCharSet *c)
FcCharSetDestroy (check);
}
#endif
-
+
return FcTrue;
}
@@ -1093,7 +1110,7 @@ FcCharSetFreezeLeaf (FcCharSetFreezer *freezer, FcCharLeaf *leaf)
FcChar32 hash = FcCharLeafHash (leaf);
FcCharLeafEnt **bucket = &freezer->leaf_hash_table[hash % FC_CHAR_LEAF_HASH_SIZE];
FcCharLeafEnt *ent;
-
+
for (ent = *bucket; ent; ent = ent->next)
{
if (ent->hash == hash && !memcmp (&ent->leaf, leaf, sizeof (FcCharLeaf)))
@@ -1130,7 +1147,7 @@ FcCharSetFreezeOrig (FcCharSetFreezer *freezer, const FcCharSet *orig, const FcC
{
FcCharSetOrigEnt **bucket = &freezer->orig_hash_table[((uintptr_t) orig) & FC_CHAR_SET_HASH_SIZE];
FcCharSetOrigEnt *ent;
-
+
ent = malloc (sizeof (FcCharSetOrigEnt));
if (!ent)
return FcFalse;
@@ -1154,7 +1171,7 @@ FcCharSetFreezeBase (FcCharSetFreezer *freezer, FcCharSet *fcs, const FcCharSet
{
if (ent->hash == hash &&
ent->set.num == fcs->num &&
- !memcmp (FcCharSetNumbers(&ent->set),
+ !memcmp (FcCharSetNumbers(&ent->set),
FcCharSetNumbers(fcs),
fcs->num * sizeof (FcChar16)))
{
@@ -1176,9 +1193,9 @@ FcCharSetFreezeBase (FcCharSetFreezer *freezer, FcCharSet *fcs, const FcCharSet
if (!ent)
return 0;
FcMemAlloc (FC_MEM_CHARSET, size);
-
+
freezer->charsets_allocated++;
-
+
ent->set.ref = FC_REF_CONSTANT;
ent->set.num = fcs->num;
if (fcs->num)
@@ -1188,13 +1205,13 @@ FcCharSetFreezeBase (FcCharSetFreezer *freezer, FcCharSet *fcs, const FcCharSet
ent->set.leaves_offset = sizeof (ent->set);
ent->set.numbers_offset = (ent->set.leaves_offset +
fcs->num * sizeof (intptr_t));
-
+
ent_leaves = FcCharSetLeaves (&ent->set);
for (i = 0; i < fcs->num; i++)
ent_leaves[i] = FcPtrToOffset (ent_leaves,
FcCharSetLeaf (fcs, i));
- memcpy (FcCharSetNumbers (&ent->set),
- FcCharSetNumbers (fcs),
+ memcpy (FcCharSetNumbers (&ent->set),
+ FcCharSetNumbers (fcs),
fcs->num * sizeof (FcChar16));
}
else
@@ -1215,7 +1232,7 @@ FcCharSetFindFrozen (FcCharSetFreezer *freezer, const FcCharSet *orig)
{
FcCharSetOrigEnt **bucket = &freezer->orig_hash_table[((uintptr_t) orig) & FC_CHAR_SET_HASH_SIZE];
FcCharSetOrigEnt *ent;
-
+
for (ent = *bucket; ent; ent = ent->next)
if (ent->orig == orig)
return ent->frozen;
@@ -1325,7 +1342,7 @@ FcCharSetSerializeAlloc (FcSerialize *serialize, const FcCharSet *cs)
intptr_t *leaves;
FcChar16 *numbers;
int i;
-
+
if (cs->ref != FC_REF_CONSTANT)
{
if (!serialize->cs_freezer)
@@ -1336,13 +1353,13 @@ FcCharSetSerializeAlloc (FcSerialize *serialize, const FcCharSet *cs)
}
if (FcCharSetFindFrozen (serialize->cs_freezer, cs))
return FcTrue;
-
+
cs = FcCharSetFreeze (serialize->cs_freezer, cs);
}
-
+
leaves = FcCharSetLeaves (cs);
numbers = FcCharSetNumbers (cs);
-
+
if (!FcSerializeAlloc (serialize, cs, sizeof (FcCharSet)))
return FcFalse;
if (!FcSerializeAlloc (serialize, leaves, cs->num * sizeof (intptr_t)))
@@ -1355,7 +1372,7 @@ FcCharSetSerializeAlloc (FcSerialize *serialize, const FcCharSet *cs)
return FcFalse;
return FcTrue;
}
-
+
FcCharSet *
FcCharSetSerialize(FcSerialize *serialize, const FcCharSet *cs)
{
@@ -1371,11 +1388,11 @@ FcCharSetSerialize(FcSerialize *serialize, const FcCharSet *cs)
if (!cs)
return NULL;
}
-
+
cs_serialized = FcSerializePtr (serialize, cs);
if (!cs_serialized)
return NULL;
-
+
cs_serialized->ref = FC_REF_CONSTANT;
cs_serialized->num = cs->num;
@@ -1385,7 +1402,7 @@ FcCharSetSerialize(FcSerialize *serialize, const FcCharSet *cs)
leaves_serialized = FcSerializePtr (serialize, leaves);
if (!leaves_serialized)
return NULL;
-
+
cs_serialized->leaves_offset = FcPtrToOffset (cs_serialized,
leaves_serialized);
@@ -1393,10 +1410,10 @@ FcCharSetSerialize(FcSerialize *serialize, const FcCharSet *cs)
numbers_serialized = FcSerializePtr (serialize, numbers);
if (!numbers)
return NULL;
-
+
cs_serialized->numbers_offset = FcPtrToOffset (cs_serialized,
numbers_serialized);
-
+
for (i = 0; i < cs->num; i++)
{
leaf = FcCharSetLeaf (cs, i);
@@ -1404,7 +1421,7 @@ FcCharSetSerialize(FcSerialize *serialize, const FcCharSet *cs)
if (!leaf_serialized)
return NULL;
*leaf_serialized = *leaf;
- leaves_serialized[i] = FcPtrToOffset (leaves_serialized,
+ leaves_serialized[i] = FcPtrToOffset (leaves_serialized,
leaf_serialized);
numbers_serialized[i] = numbers[i];
}
@@ -1414,7 +1431,7 @@ FcCharSetSerialize(FcSerialize *serialize, const FcCharSet *cs)
cs_serialized->leaves_offset = 0;
cs_serialized->numbers_offset = 0;
}
-
+
return cs_serialized;
}
#define __fccharset__
diff --git a/fontconfig/src/fcdbg.c b/fontconfig/src/fcdbg.c
index fd2d55a6b..cf2ff0870 100644
--- a/fontconfig/src/fcdbg.c
+++ b/fontconfig/src/fcdbg.c
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -87,7 +87,7 @@ FcLangSetPrint (const FcLangSet *ls)
{
FcStrBuf buf;
FcChar8 init_buf[1024];
-
+
FcStrBufInit (&buf, init_buf, sizeof (init_buf));
if (FcNameUnparseLangSet (&buf, ls) && FcStrBufChar (&buf,'\0'))
printf ("%s", buf.buf);
@@ -102,16 +102,16 @@ FcCharSetPrint (const FcCharSet *c)
int i, j;
intptr_t *leaves = FcCharSetLeaves (c);
FcChar16 *numbers = FcCharSetNumbers (c);
-
+
#if 0
printf ("CharSet 0x%x\n", (intptr_t) c);
printf ("Leaves: +%d = 0x%x\n", c->leaves_offset, (intptr_t) leaves);
printf ("Numbers: +%d = 0x%x\n", c->numbers_offset, (intptr_t) numbers);
-
+
for (i = 0; i < c->num; i++)
{
- printf ("Page %d: %04x +%d = 0x%x\n",
- i, numbers[i], leaves[i],
+ printf ("Page %d: %04x +%d = 0x%x\n",
+ i, numbers[i], leaves[i],
(intptr_t) FcOffsetToPtr (leaves, leaves[i], FcCharLeaf));
}
#endif
@@ -135,7 +135,7 @@ FcPatternPrint (const FcPattern *p)
{
int i;
FcPatternElt *e;
-
+
if (!p)
{
printf ("Null pattern\n");
@@ -160,8 +160,10 @@ FcOpPrint (FcOp op)
case FcOpDouble: printf ("Double"); break;
case FcOpString: printf ("String"); break;
case FcOpMatrix: printf ("Matrix"); break;
+ case FcOpRange: printf ("Range"); break;
case FcOpBool: printf ("Bool"); break;
case FcOpCharSet: printf ("CharSet"); break;
+ case FcOpLangSet: printf ("LangSet"); break;
case FcOpField: printf ("Field"); break;
case FcOpConst: printf ("Const"); break;
case FcOpAssign: printf ("Assign"); break;
@@ -210,8 +212,14 @@ FcExprPrint (const FcExpr *expr)
expr->u.mval->xy,
expr->u.mval->yx,
expr->u.mval->yy); break;
+ case FcOpRange: break;
case FcOpBool: printf ("%s", expr->u.bval ? "true" : "false"); break;
case FcOpCharSet: printf ("charset\n"); break;
+ case FcOpLangSet:
+ printf ("langset:");
+ FcLangSetPrint(expr->u.lval);
+ printf ("\n");
+ break;
case FcOpNil: printf ("nil\n"); break;
case FcOpField: printf ("%s", FcObjectName(expr->u.object)); break;
case FcOpConst: printf ("%s", expr->u.constant); break;
@@ -347,7 +355,7 @@ FcSubstPrint (const FcSubst *subst)
{
FcEdit *e;
FcTest *t;
-
+
printf ("match\n");
for (t = subst->test; t; t = t->next)
{
diff --git a/fontconfig/src/fcdefault.c b/fontconfig/src/fcdefault.c
index 091276b70..a9165facd 100644
--- a/fontconfig/src/fcdefault.c
+++ b/fontconfig/src/fcdefault.c
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -134,7 +134,7 @@ FcDefaultSubstitute (FcPattern *pattern)
for (i = 0; i < NUM_FC_BOOL_DEFAULTS; i++)
if (FcPatternObjectGet (pattern, FcBoolDefaults[i].field, 0, &v) == FcResultNoMatch)
FcPatternObjectAddBool (pattern, FcBoolDefaults[i].field, FcBoolDefaults[i].value);
-
+
if (FcPatternObjectGet (pattern, FC_PIXEL_SIZE_OBJECT, 0, &v) == FcResultNoMatch)
{
double dpi, size, scale;
diff --git a/fontconfig/src/fcdir.c b/fontconfig/src/fcdir.c
index f927c0b28..359446c36 100644
--- a/fontconfig/src/fcdir.c
+++ b/fontconfig/src/fcdir.c
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -30,7 +30,7 @@ FcFileIsDir (const FcChar8 *file)
{
struct stat statb;
- if (FcStat ((const char *) file, &statb) != 0)
+ if (FcStat (file, &statb) != 0)
return FcFalse;
return S_ISDIR(statb.st_mode);
}
@@ -45,7 +45,7 @@ FcFileScanFontConfig (FcFontSet *set,
FcBool ret = FcTrue;
int id;
int count = 0;
-
+
id = 0;
do
{
@@ -164,7 +164,7 @@ FcDirScanConfig (FcFontSet *set,
strcpy ((char *) file, (char *) dir);
strcat ((char *) file, "/");
base = file + strlen ((char *) file);
-
+
if (FcDebug () & FC_DBG_SCAN)
printf ("\tScanning dir %s\n", dir);
@@ -205,7 +205,7 @@ FcDirScanConfig (FcFontSet *set,
*/
for (i = 0; i < files->num; i++)
FcFileScanConfig (set, dirs, blanks, files->strs[i], config);
-
+
bail2:
FcStrSetDestroy (files);
bail1:
@@ -243,7 +243,7 @@ FcDirCacheScan (const FcChar8 *dir, FcConfig *config)
if (FcDebug () & FC_DBG_FONTSET)
printf ("cache scan dir %s\n", dir);
- if (FcStat ((char *) dir, &dir_stat) < 0)
+ if (FcStat (dir, &dir_stat) < 0)
{
if (errno != ENOENT)
ret = FcFalse;
@@ -282,12 +282,12 @@ FcDirCacheScan (const FcChar8 *dir, FcConfig *config)
ret = FcFalse;
goto bail2;
}
-
+
/*
* Write out the cache file, ignoring any troubles
*/
FcDirCacheWrite (cache, config);
-
+
bail2:
FcStrSetDestroy (dirs);
bail1:
@@ -310,11 +310,11 @@ FcDirCacheRead (const FcChar8 *dir, FcBool force, FcConfig *config)
/* Try to use existing cache file */
if (!force)
cache = FcDirCacheLoad (dir, config, NULL);
-
+
/* Not using existing cache file, construct new cache */
if (!cache)
cache = FcDirCacheScan (dir, config);
-
+
return cache;
}
diff --git a/fontconfig/src/fcformat.c b/fontconfig/src/fcformat.c
index bf9401740..1368b7186 100644
--- a/fontconfig/src/fcformat.c
+++ b/fontconfig/src/fcformat.c
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -69,6 +69,7 @@
*
* - verbose builtin that is like FcPatternPrint
* - allow indexing subexprs using '%{[idx]elt1,elt2{subexpr}}'
+ * - allow indexing in +, -, ? filtering?
* - conditional/filtering/deletion on binding (using '(w)'/'(s)'/'(=)' notation)
*/
@@ -436,6 +437,7 @@ interpret_filter_in (FcFormatContext *c,
do
{
+ /* XXX binding */
if (!read_word (c) ||
!FcObjectSetAdd (os, (const char *) c->word))
{
@@ -608,7 +610,7 @@ interpret_enumerate (FcFormatContext *c,
{
FcLangSet *langset;
if (FcResultMatch ==
- FcPatternGetLangSet (pat, os->objects[0], idx, &langset))
+ FcPatternGetLangSet (pat, os->objects[0], 0, &langset))
{
FcStrSet *ss;
if (!(ss = FcLangSetGetLangs (langset)) ||
@@ -636,6 +638,7 @@ interpret_enumerate (FcFormatContext *c,
FcPatternDel (subpat, os->objects[0]);
if ((lang = FcStrListNext (lang_strs)))
{
+ /* XXX binding? */
FcPatternAddString (subpat, os->objects[0], lang);
done = FcFalse;
}
@@ -654,6 +657,7 @@ interpret_enumerate (FcFormatContext *c,
if (FcResultMatch ==
FcPatternGet (pat, os->objects[i], idx, &v))
{
+ /* XXX binding */
FcPatternAdd (subpat, os->objects[i], v, FcFalse);
done = FcFalse;
}
@@ -788,6 +792,8 @@ cescape (FcFormatContext *c,
const FcChar8 *str,
FcStrBuf *buf)
{
+ /* XXX escape \n etc? */
+
while(*str)
{
switch (*str)
@@ -825,6 +831,8 @@ xmlescape (FcFormatContext *c,
const FcChar8 *str,
FcStrBuf *buf)
{
+ /* XXX escape \n etc? */
+
while(*str)
{
switch (*str)
diff --git a/fontconfig/src/fcfreetype.c b/fontconfig/src/fcfreetype.c
index 68596f5a4..d37af2d0e 100644
--- a/fontconfig/src/fcfreetype.c
+++ b/fontconfig/src/fcfreetype.c
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -115,18 +115,19 @@ typedef struct {
#define FC_ENCODING_MAC_ROMAN "MACINTOSH"
static const FcFtEncoding fcFtEncoding[] = {
- { TT_PLATFORM_APPLE_UNICODE, TT_ENCODING_DONT_CARE, "UCS-2BE" },
+ { TT_PLATFORM_APPLE_UNICODE, TT_ENCODING_DONT_CARE, "UTF-16BE" },
{ TT_PLATFORM_MACINTOSH, TT_MAC_ID_ROMAN, "MACINTOSH" },
{ TT_PLATFORM_MACINTOSH, TT_MAC_ID_JAPANESE, "SJIS" },
+ { TT_PLATFORM_MICROSOFT, TT_MS_ID_SYMBOL_CS, "UTF-16BE" },
{ TT_PLATFORM_MICROSOFT, TT_MS_ID_UNICODE_CS, "UTF-16BE" },
{ TT_PLATFORM_MICROSOFT, TT_MS_ID_SJIS, "SJIS-WIN" },
{ TT_PLATFORM_MICROSOFT, TT_MS_ID_GB2312, "GB2312" },
{ TT_PLATFORM_MICROSOFT, TT_MS_ID_BIG_5, "BIG-5" },
{ TT_PLATFORM_MICROSOFT, TT_MS_ID_WANSUNG, "Wansung" },
{ TT_PLATFORM_MICROSOFT, TT_MS_ID_JOHAB, "Johab" },
- { TT_PLATFORM_MICROSOFT, TT_MS_ID_UCS_4, "UCS-2BE" },
+ { TT_PLATFORM_MICROSOFT, TT_MS_ID_UCS_4, "UTF-16BE" },
{ TT_PLATFORM_ISO, TT_ISO_ID_7BIT_ASCII, "ASCII" },
- { TT_PLATFORM_ISO, TT_ISO_ID_10646, "UCS-2BE" },
+ { TT_PLATFORM_ISO, TT_ISO_ID_10646, "UTF-16BE" },
{ TT_PLATFORM_ISO, TT_ISO_ID_8859_1, "ISO-8859-1" },
};
@@ -251,14 +252,14 @@ static const FcFtLanguage fcFtLanguage[] = {
{ TT_PLATFORM_MACINTOSH, TT_MAC_LANGID_DZONGKHA, "dz" },
{ TT_PLATFORM_MACINTOSH, TT_MAC_LANGID_JAVANESE, "jw" },
{ TT_PLATFORM_MACINTOSH, TT_MAC_LANGID_SUNDANESE, "su" },
-
+
#if 0 /* these seem to be errors that have been dropped */
{ TT_PLATFORM_MACINTOSH, TT_MAC_LANGID_SCOTTISH_GAELIC },
{ TT_PLATFORM_MACINTOSH, TT_MAC_LANGID_IRISH_GAELIC },
#endif
-
+
/* The following codes are new as of 2000-03-10 */
{ TT_PLATFORM_MACINTOSH, TT_MAC_LANGID_GALICIAN, "gl" },
{ TT_PLATFORM_MACINTOSH, TT_MAC_LANGID_AFRIKAANS, "af" },
@@ -494,7 +495,7 @@ static const FcFtLanguage fcFtLanguage[] = {
{ TT_PLATFORM_MICROSOFT, TT_MS_LANGID_PASHTO_AFGHANISTAN, "ps" },
{ TT_PLATFORM_MICROSOFT, TT_MS_LANGID_FILIPINO_PHILIPPINES, "phi" },
{ TT_PLATFORM_MICROSOFT, TT_MS_LANGID_DHIVEHI_MALDIVES, "div" },
-
+
{ TT_PLATFORM_MICROSOFT, TT_MS_LANGID_OROMO_ETHIOPIA, "om" },
{ TT_PLATFORM_MICROSOFT, TT_MS_LANGID_TIGRIGNA_ETHIOPIA, "ti" },
{ TT_PLATFORM_MICROSOFT, TT_MS_LANGID_TIGRIGNA_ERYTHREA, "ti" },
@@ -743,7 +744,7 @@ FcSfntNameTranscode (FT_SfntName *sname)
while (in_bytes_left)
{
- size_t did = iconv (cd,
+ size_t did = iconv (cd,
&inbuf, &in_bytes_left,
&outbuf, &out_bytes_left);
if (did == (size_t) (-1))
@@ -785,7 +786,7 @@ FcSfntNameLanguage (FT_SfntName *sname)
{
language_id = TT_MAC_LANGID_JAPANESE;
}
-
+
for (i = 0; i < NUM_FC_FT_LANGUAGE; i++)
if (fcFtLanguage[i].platform_id == platform_id &&
(fcFtLanguage[i].language_id == TT_LANGUAGE_DONT_CARE ||
@@ -870,7 +871,7 @@ FcVendorMatch(const FT_Char vendor[4], const FT_Char *vendor_string)
{
/* vendor is not necessarily NUL-terminated. */
int i, len;
-
+
len = strlen((char *) vendor_string);
if (memcmp(vendor, vendor_string, len) != 0)
return FcFalse;
@@ -926,7 +927,7 @@ static const FcChar8 *
FcVendorFoundry(const FT_Char vendor[4])
{
int i;
-
+
if (vendor)
for(i = 0; i < NUM_VENDOR_FOUNDRIES; i++)
if (FcVendorMatch (vendor, FcVendorFoundries[i].vendor))
@@ -1139,7 +1140,7 @@ FcFreeTypeQueryFace (const FT_Face face,
const FcChar8 *exclusiveLang = 0;
FT_SfntName sname;
FT_UInt snamei, snamec;
-
+
int nfamily = 0;
int nfamily_lang = 0;
int nstyle = 0;
@@ -1151,7 +1152,7 @@ FcFreeTypeQueryFace (const FT_Face face,
FcChar8 *style = 0;
int st;
-
+
pat = FcPatternCreate ();
if (!pat)
goto bail0;
@@ -1177,7 +1178,7 @@ FcFreeTypeQueryFace (const FT_Face face,
* the Postscript FontInfo dictionary. Finally, the
* BDF properties will queried.
*/
-
+
if (os2 && os2->version >= 0x0001 && os2->version != 0xffff)
foundry = FcVendorFoundry(os2->achVendID);
@@ -1247,7 +1248,7 @@ FcFreeTypeQueryFace (const FT_Face face,
#endif
case TT_NAME_ID_PREFERRED_FAMILY:
case TT_NAME_ID_FONT_FAMILY:
-#if 0
+#if 0
case TT_NAME_ID_PS_NAME:
case TT_NAME_ID_UNIQUE_ID:
#endif
@@ -1334,7 +1335,7 @@ FcFreeTypeQueryFace (const FT_Face face,
}
}
- if (!nfamily && face->family_name &&
+ if (!nfamily && face->family_name &&
FcStrCmpIgnoreBlanksAndCase ((FcChar8 *) face->family_name, (FcChar8 *) "") != 0)
{
if (FcDebug () & FC_DBG_SCANV)
@@ -1343,7 +1344,7 @@ FcFreeTypeQueryFace (const FT_Face face,
goto bail1;
++nfamily;
}
-
+
if (!nstyle && face->style_name &&
FcStrCmpIgnoreBlanksAndCase ((FcChar8 *) face->style_name, (FcChar8 *) "") != 0)
{
@@ -1353,7 +1354,7 @@ FcFreeTypeQueryFace (const FT_Face face,
goto bail1;
++nstyle;
}
-
+
if (!nfamily)
{
FcChar8 *start, *end;
@@ -1432,7 +1433,7 @@ FcFreeTypeQueryFace (const FT_Face face,
}
if (bits & (1 << bit))
{
- /*
+ /*
* If the font advertises support for multiple
* "exclusive" languages, then include support
* for any language found to have coverage
@@ -1504,7 +1505,7 @@ FcFreeTypeQueryFace (const FT_Face face,
* Type 1: Check for FontInfo dictionary information
* Code from g2@magestudios.net (Gerard Escalante)
*/
-
+
#if HAVE_FT_GET_PS_FONT_INFO
if (FT_Get_PS_Font_Info(face, &psfontinfo) == 0)
{
@@ -1515,23 +1516,23 @@ FcFreeTypeQueryFace (const FT_Face face,
printf ("\tType1 weight %s maps to %d\n",
psfontinfo.weight, weight);
}
-
+
#if 0
- /*
+ /*
* Don't bother with italic_angle; FreeType already extracts that
* information for us and sticks it into style_flags
*/
if (psfontinfo.italic_angle)
- slant = FC_SLANT_ITALIC;
+ slant = FC_SLANT_ITALIC;
else
- slant = FC_SLANT_ROMAN;
+ slant = FC_SLANT_ROMAN;
#endif
if(!foundry)
foundry = FcNoticeFoundry(psfontinfo.notice);
}
#endif /* HAVE_FT_GET_PS_FONT_INFO */
-
+
#if HAVE_FT_GET_BDF_PROPERTY
/*
* Finally, look for a FOUNDRY BDF property if no other
@@ -1553,7 +1554,7 @@ FcFreeTypeQueryFace (const FT_Face face,
prop.type == BDF_PROPERTY_TYPE_CARDINAL))
{
FT_Int32 value;
-
+
if (prop.type == BDF_PROPERTY_TYPE_INTEGER)
value = prop.u.integer;
else
@@ -1730,7 +1731,7 @@ FcFreeTypeQueryFace (const FT_Face face,
* Drop our reference to the charset
*/
FcCharSetDestroy (cs);
-
+
return pat;
bail2:
@@ -1750,10 +1751,10 @@ FcFreeTypeQuery(const FcChar8 *file,
FT_Face face;
FT_Library ftLibrary;
FcPattern *pat = NULL;
-
+
if (FT_Init_FreeType (&ftLibrary))
return NULL;
-
+
if (FT_New_Face (ftLibrary, (char *) file, id, &face))
goto bail;
@@ -2225,7 +2226,7 @@ static const FcCharMap AdobeSymbol = {
AdobeSymbolEnt,
sizeof (AdobeSymbolEnt) / sizeof (AdobeSymbolEnt[0]),
};
-
+
static const FcFontDecode fcFontDecoders[] = {
{ ft_encoding_unicode, 0, (1 << 21) - 1 },
{ ft_encoding_symbol, &AdobeSymbol, (1 << 16) - 1 },
@@ -2310,7 +2311,7 @@ static FcBool
FcFreeTypeUseNames (FT_Face face)
{
FT_Int map;
-
+
if (!FT_Has_PS_Glyph_Names (face))
return FcFalse;
for (map = 0; map < face->num_charmaps; map++)
@@ -2330,7 +2331,7 @@ FcUcs4ToGlyphName (FcChar32 ucs4)
{
if (_fc_glyph_names[gn].ucs == ucs4)
return _fc_glyph_names[gn].name;
- if (!r)
+ if (!r)
{
r = (int) (ucs4 % FC_GLYPHNAME_REHASH);
if (!r)
@@ -2355,7 +2356,7 @@ FcGlyphNameToUcs4 (FcChar8 *name)
{
if (!strcmp ((char *) name, (char *) _fc_glyph_names[gn].name))
return _fc_glyph_names[gn].ucs;
- if (!r)
+ if (!r)
{
r = (int) (h % FC_GLYPHNAME_REHASH);
if (!r)
@@ -2478,14 +2479,14 @@ FcFreeTypeCharIndex (FT_Face face, FcChar32 ucs4)
}
static FcBool
-FcFreeTypeCheckGlyph (FT_Face face, FcChar32 ucs4,
+FcFreeTypeCheckGlyph (FT_Face face, FcChar32 ucs4,
FT_UInt glyph, FcBlanks *blanks,
FT_Pos *advance,
FcBool using_strike)
{
FT_Int load_flags = FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH | FT_LOAD_NO_SCALE | FT_LOAD_NO_HINTING;
FT_GlyphSlot slot;
-
+
if (using_strike)
load_flags &= ~FT_LOAD_NO_SCALE;
@@ -2498,14 +2499,14 @@ FcFreeTypeCheckGlyph (FT_Face face, FcChar32 ucs4,
*/
if (face->face_flags & FT_FACE_FLAG_SCALABLE)
load_flags |= FT_LOAD_NO_BITMAP;
-
+
if (FT_Load_Glyph (face, glyph, load_flags))
return FcFalse;
-
+
slot = face->glyph;
if (!glyph)
return FcFalse;
-
+
*advance = slot->metrics.horiAdvance;
switch (slot->format) {
@@ -2559,7 +2560,7 @@ FcFreeTypeCharSetAndSpacingForSize (FT_Face face, FcBlanks *blanks, int *spacing
fcs = FcCharSetCreate ();
if (!fcs)
goto bail0;
-
+
#if HAVE_FT_SELECT_SIZE
if (strike_index >= 0) {
if (FT_Select_Size (face, strike_index) != FT_Err_Ok)
@@ -2586,10 +2587,10 @@ FcFreeTypeCharSetAndSpacingForSize (FT_Face face, FcBlanks *blanks, int *spacing
{
ucs4 = map->ent[i].bmp;
glyph = FT_Get_Char_Index (face, map->ent[i].encode);
- if (glyph &&
+ if (glyph &&
FcFreeTypeCheckGlyph (face, ucs4, glyph, blanks, &advance, using_strike))
{
- /*
+ /*
* ignore glyphs with zero advance. They’re
* combining characters, and while their behaviour
* isn’t well defined for monospaced applications in
@@ -2701,7 +2702,7 @@ FcFreeTypeCharSetAndSpacingForSize (FT_Face face, FcBlanks *blanks, int *spacing
if (FT_Get_Glyph_Name (face, glyph, name_buf, FC_GLYPHNAME_BUFLEN+1) == 0)
{
ucs4 = FcGlyphNameToUcs4 (name_buf);
- if (ucs4 != 0xffff &&
+ if (ucs4 != 0xffff &&
FcFreeTypeCheckGlyph (face, ucs4, glyph, blanks, &advance, using_strike))
{
if (advance)
@@ -2771,13 +2772,13 @@ FcCharSet *
FcFreeTypeCharSetAndSpacing (FT_Face face, FcBlanks *blanks, int *spacing)
{
FcCharSet *cs;
-
+
cs = FcFreeTypeCharSetAndSpacingForSize (face, blanks, spacing, -1);
/*
* Check for bitmap-only ttf fonts that are missing the glyf table.
* In that case, pick a size and look for glyphs in that size instead
*/
- if (FcCharSetCount (cs) == 0)
+ if (FcCharSetCount (cs) == 0)
{
/* Check for non-scalable TT fonts */
if (!(face->face_flags & FT_FACE_FLAG_SCALABLE) &&
@@ -2789,7 +2790,7 @@ FcFreeTypeCharSetAndSpacing (FT_Face face, FcBlanks *blanks, int *spacing)
/* Select the face closest to 16 pixels tall */
for (i = 1; i < face->num_fixed_sizes; i++) {
- if (abs (face->available_sizes[i].height - 16) <
+ if (abs (face->available_sizes[i].height - 16) <
abs (face->available_sizes[strike_index].height - 16))
strike_index = i;
}
@@ -2825,7 +2826,7 @@ FcFreeTypeCharSet (FT_Face face, FcBlanks *blanks)
*/
#define FcIsSpace(x) (040 == (x))
#define FcIsValidScript(x) (FcIsLower(x) || FcIsUpper (x) || FcIsSpace(x))
-
+
static void
addtag(FcChar8 *complex_, FT_ULong tag)
{
@@ -2836,7 +2837,7 @@ addtag(FcChar8 *complex_, FT_ULong tag)
tagstring[2] = (FcChar8)(tag >> 8),
tagstring[3] = (FcChar8)(tag);
tagstring[4] = '\0';
-
+
/* skip tags which aren't alphabetic, under the assumption that
* they're probably broken
*/
@@ -2964,7 +2965,7 @@ FcFontCapabilities(FT_Face face)
if (!issilgraphitefont && !gsub_count && !gpos_count)
goto bail;
- maxsize = (((FT_ULong) gpos_count + (FT_ULong) gsub_count) * OTLAYOUT_LEN +
+ maxsize = (((FT_ULong) gpos_count + (FT_ULong) gsub_count) * OTLAYOUT_LEN +
(issilgraphitefont ? 13 : 0));
complex_ = malloc (sizeof (FcChar8) * maxsize);
if (!complex_)
diff --git a/fontconfig/src/fcfs.c b/fontconfig/src/fcfs.c
index 0e97501f8..6625687c1 100644
--- a/fontconfig/src/fcfs.c
+++ b/fontconfig/src/fcfs.c
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -61,7 +61,7 @@ FcFontSetAdd (FcFontSet *s, FcPattern *font)
{
FcPattern **f;
int sfont;
-
+
if (s->nfont == s->sfont)
{
sfont = s->sfont + 32;
@@ -85,7 +85,7 @@ FcBool
FcFontSetSerializeAlloc (FcSerialize *serialize, const FcFontSet *s)
{
int i;
-
+
if (!FcSerializeAlloc (serialize, s, sizeof (FcFontSet)))
return FcFalse;
if (!FcSerializeAlloc (serialize, s->fonts, s->nfont * sizeof (FcPattern *)))
@@ -111,7 +111,7 @@ FcFontSetSerialize (FcSerialize *serialize, const FcFontSet * s)
return NULL;
*s_serialize = *s;
s_serialize->sfont = s_serialize->nfont;
-
+
fonts_serialize = FcSerializePtr (serialize, s->fonts);
if (!fonts_serialize)
return NULL;
diff --git a/fontconfig/src/fcinit.c b/fontconfig/src/fcinit.c
index 3789d67b5..b7966b6db 100644
--- a/fontconfig/src/fcinit.c
+++ b/fontconfig/src/fcinit.c
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -58,18 +58,18 @@ FcConfig *
FcInitLoadConfig (void)
{
FcConfig *config;
-
+
FcInitDebug ();
config = FcConfigCreate ();
if (!config)
- return FcFalse;
-
+ return NULL;
+
if (!FcConfigParseAndLoad (config, 0, FcTrue))
{
FcConfigDestroy (config);
return FcInitFallbackConfig ();
}
-
+
if (config->cacheDirs && config->cacheDirs->num == 0)
{
fprintf (stderr,
diff --git a/fontconfig/src/fcint.h b/fontconfig/src/fcint.h
index 233b4c302..83a7a435b 100644
--- a/fontconfig/src/fcint.h
+++ b/fontconfig/src/fcint.h
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -107,6 +107,10 @@
#define FC_MEM_NUM 30
+#define _FC_ASSERT_STATIC1(_line, _cond) typedef int _static_assert_on_line_##_line##_failed[(_cond)?1:-1]
+#define _FC_ASSERT_STATIC0(_line, _cond) _FC_ASSERT_STATIC1 (_line, (_cond))
+#define FC_ASSERT_STATIC(_cond) _FC_ASSERT_STATIC0 (__LINE__, (_cond))
+
#define FC_MIN(a,b) ((a) < (b) ? (a) : (b))
#define FC_MAX(a,b) ((a) > (b) ? (a) : (b))
#define FC_ABS(a) ((a) < 0 ? -(a) : (a))
@@ -130,7 +134,7 @@ typedef enum _FcValueBinding {
* Serialized data structures use only offsets instead of pointers
* A low bit of 1 indicates an offset.
*/
-
+
/* Is the provided pointer actually an offset? */
#define FcIsEncodedOffset(p) ((((intptr_t) (p)) & 1) != 0)
@@ -181,13 +185,13 @@ typedef struct _FcValueList {
} FcValueList;
#define FcValueListNext(vl) FcPointerMember(vl,next,FcValueList)
-
+
typedef int FcObject;
typedef struct _FcPatternElt *FcPatternEltPtr;
/*
- * Pattern elts are stuck in a structure connected to the pattern,
+ * Pattern elts are stuck in a structure connected to the pattern,
* so they get moved around when the pattern is resized. Hence, the
* values field must be a pointer/offset instead of just an offset
*/
@@ -216,13 +220,13 @@ struct _FcPattern {
fs->fonts[i])
typedef enum _FcOp {
- FcOpInteger, FcOpDouble, FcOpString, FcOpMatrix, FcOpBool, FcOpCharSet,
+ FcOpInteger, FcOpDouble, FcOpString, FcOpMatrix, FcOpRange, FcOpBool, FcOpCharSet, FcOpLangSet,
FcOpNil,
FcOpField, FcOpConst,
- FcOpAssign, FcOpAssignReplace,
+ FcOpAssign, FcOpAssignReplace,
FcOpPrependFirst, FcOpPrepend, FcOpAppend, FcOpAppendLast,
FcOpQuest,
- FcOpOr, FcOpAnd, FcOpEqual, FcOpNotEqual,
+ FcOpOr, FcOpAnd, FcOpEqual, FcOpNotEqual,
FcOpContains, FcOpListing, FcOpNotContains,
FcOpLess, FcOpLessEqual, FcOpMore, FcOpMoreEqual,
FcOpPlus, FcOpMinus, FcOpTimes, FcOpDivide,
@@ -235,12 +239,13 @@ typedef struct _FcExpr {
union {
int ival;
double dval;
- FcChar8 *sval;
+ const FcChar8 *sval;
FcMatrix *mval;
FcBool bval;
FcCharSet *cval;
+ FcLangSet *lval;
FcObject object;
- FcChar8 *constant;
+ const FcChar8 *constant;
struct {
struct _FcExpr *left, *right;
} tree;
@@ -253,7 +258,7 @@ struct _FcExprPage {
FcExprPage *next_page;
FcExpr *next;
FcExpr exprs[(1024 - 2/* two pointers */ - 2/* malloc overhead */) * sizeof (void *) / sizeof (FcExpr)];
- FcExpr end[0];
+ FcExpr end[];
};
typedef enum _FcQual {
@@ -373,7 +378,7 @@ typedef struct _FcSerialize {
void *linear;
FcSerializeBucket *buckets[FC_SERIALIZE_HASH_SIZE];
} FcSerialize;
-
+
/*
* To map adobe glyph names to unicode values, a precomputed hash
* table is used
@@ -387,14 +392,14 @@ typedef struct _FcGlyphName {
/*
* To perform case-insensitive string comparisons, a table
* is used which holds three different kinds of folding data.
- *
+ *
* The first is a range of upper case values mapping to a range
* of their lower case equivalents. Within each range, the offset
* between upper and lower case is constant.
*
* The second is a range of upper case values which are interleaved
* with their lower case equivalents.
- *
+ *
* The third is a set of raw unicode values mapping to a list
* of unicode values for comparison purposes. This allows conversion
* of ß to "ss" so that SS, ss and ß all match. A separate array
@@ -448,7 +453,7 @@ struct _FcConfig {
FcBlanks *blanks;
/*
* List of directories containing fonts,
- * built by recursively scanning the set
+ * built by recursively scanning the set
* of configured directories
*/
FcStrSet *fontDirs;
@@ -497,7 +502,7 @@ struct _FcConfig {
FcExprPage *expr_pool; /* pool of FcExpr's */
};
-
+
extern FcPrivate FcConfig *_fcConfig;
typedef struct _FcFileTime {
@@ -507,6 +512,13 @@ typedef struct _FcFileTime {
typedef struct _FcCharMap FcCharMap;
+typedef struct _FcRange FcRange;
+
+struct _FcRange {
+ FcChar32 begin;
+ FcChar32 end;
+};
+
/* fcblanks.c */
/* fccache.c */
@@ -519,7 +531,7 @@ FcDirCacheBuild (FcFontSet *set, const FcChar8 *dir, struct stat *dir_stat, FcSt
FcPrivate FcBool
FcDirCacheWrite (FcCache *cache, FcConfig *config);
-
+
FcPrivate void
FcCacheObjectReference (void *object);
@@ -528,16 +540,12 @@ FcCacheObjectDereference (void *object);
FcPrivate void
FcCacheFini (void);
-
+
FcPrivate void
FcDirCacheReference (FcCache *cache, int nref);
-#ifdef _WIN32
FcPrivate int
FcStat (const char *file, struct stat *statb);
-#else
-#define FcStat stat
-#endif
/* fccfg.c */
@@ -606,13 +614,13 @@ FcPrivate FcFileTime
FcConfigModifiedTime (FcConfig *config);
FcPrivate FcBool
-FcConfigAddCache (FcConfig *config, FcCache *cache,
+FcConfigAddCache (FcConfig *config, FcCache *cache,
FcSetName set, FcStrSet *dirSet);
/* fcserialize.c */
FcPrivate intptr_t
FcAlignSize (intptr_t size);
-
+
FcPrivate FcSerialize *
FcSerializeCreate (void);
@@ -702,7 +710,7 @@ FcSubstPrint (const FcSubst *subst);
FcPrivate void
FcCharSetPrint (const FcCharSet *c);
-
+
extern FcPrivate int FcDebugVal;
#define FcDebug() (FcDebugVal)
@@ -763,12 +771,12 @@ FcMemFree (int kind, int size);
/* fclang.c */
FcPrivate FcLangSet *
-FcFreeTypeLangSet (const FcCharSet *charset,
+FcFreeTypeLangSet (const FcCharSet *charset,
const FcChar8 *exclusiveLang);
FcPrivate FcLangResult
FcLangCompare (const FcChar8 *s1, const FcChar8 *s2);
-
+
FcPrivate FcLangSet *
FcLangSetPromote (const FcChar8 *lang);
@@ -885,13 +893,13 @@ FcPatternObjectAddWithBinding (FcPattern *p,
FcPrivate FcBool
FcPatternObjectAdd (FcPattern *p, FcObject object, FcValue value, FcBool append);
-
+
FcPrivate FcBool
FcPatternObjectAddWeak (FcPattern *p, FcObject object, FcValue value, FcBool append);
-
+
FcPrivate FcResult
FcPatternObjectGet (const FcPattern *p, FcObject object, int id, FcValue *v);
-
+
FcPrivate FcBool
FcPatternObjectDel (FcPattern *p, FcObject object);
diff --git a/fontconfig/src/fclang.c b/fontconfig/src/fclang.c
index 1d62c4e3f..be42b58c4 100644
--- a/fontconfig/src/fclang.c
+++ b/fontconfig/src/fclang.c
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -71,8 +71,22 @@ FcLangSetBitGet (const FcLangSet *ls,
return ((ls->map[bucket] >> (id & 0x1f)) & 1) ? FcTrue : FcFalse;
}
+static void
+FcLangSetBitReset (FcLangSet *ls,
+ unsigned int id)
+{
+ int bucket;
+
+ id = fcLangCharSetIndices[id];
+ bucket = id >> 5;
+ if (bucket >= ls->map_size)
+ return; /* shouldn't happen really */
+
+ ls->map[bucket] &= ~((FcChar32) 1 << (id & 0x1f));
+}
+
FcLangSet *
-FcFreeTypeLangSet (const FcCharSet *charset,
+FcFreeTypeLangSet (const FcCharSet *charset,
const FcChar8 *exclusiveLang)
{
int i, j;
@@ -85,7 +99,7 @@ FcFreeTypeLangSet (const FcCharSet *charset,
ls = FcLangSetCreate ();
if (!ls)
return 0;
- if (FcDebug() & FC_DBG_LANGSET)
+ if (FcDebug() & FC_DBG_LANGSET)
{
printf ("font charset");
FcCharSetPrint (charset);
@@ -93,7 +107,7 @@ FcFreeTypeLangSet (const FcCharSet *charset,
}
for (i = 0; i < NUM_LANG_CHAR_SET; i++)
{
- if (FcDebug() & FC_DBG_LANGSET)
+ if (FcDebug() & FC_DBG_LANGSET)
{
printf ("%s charset", fcLangCharSets[i].lang);
FcCharSetPrint (&fcLangCharSets[i].charset);
@@ -112,7 +126,7 @@ FcFreeTypeLangSet (const FcCharSet *charset,
continue;
for (j = 0; j < fcLangCharSets[i].charset.num; j++)
- if (FcCharSetLeaf(&fcLangCharSets[i].charset, j) !=
+ if (FcCharSetLeaf(&fcLangCharSets[i].charset, j) !=
FcCharSetLeaf(exclusiveCharset, j))
continue;
}
@@ -121,7 +135,7 @@ FcFreeTypeLangSet (const FcCharSet *charset,
{
if (missing && missing < 10)
{
- FcCharSet *missed = FcCharSetSubtract (&fcLangCharSets[i].charset,
+ FcCharSet *missed = FcCharSetSubtract (&fcLangCharSets[i].charset,
charset);
FcChar32 ucs4;
FcChar32 map[FC_CHARSET_MAP_SIZE];
@@ -154,8 +168,8 @@ FcFreeTypeLangSet (const FcCharSet *charset,
if (FcDebug() & FC_DBG_SCANV)
printf ("\n");
-
-
+
+
return ls;
}
@@ -188,7 +202,7 @@ FcLangCompare (const FcChar8 *s1, const FcChar8 *s2)
}
/*
- * Return FcTrue when super contains sub.
+ * Return FcTrue when super contains sub.
*
* super contains sub if super and sub have the same
* language and either the same country or one
@@ -329,9 +343,9 @@ FcLangSetIndex (const FcChar8 *lang)
{
int low, high, mid = 0;
int cmp = 0;
- FcChar8 firstChar = FcToLower(lang[0]);
+ FcChar8 firstChar = FcToLower(lang[0]);
FcChar8 secondChar = firstChar ? FcToLower(lang[1]) : '\0';
-
+
if (firstChar < 'a')
{
low = 0;
@@ -360,11 +374,11 @@ FcLangSetIndex (const FcChar8 *lang)
{ /* fast path for resolving 2-letter languages (by far the most common) after
* finding the first char (probably already true because of the hash table) */
cmp = fcLangCharSets[mid].lang[1] - secondChar;
- if (cmp == 0 &&
- (fcLangCharSets[mid].lang[2] != '\0' ||
+ if (cmp == 0 &&
+ (fcLangCharSets[mid].lang[2] != '\0' ||
lang[2] != '\0'))
{
- cmp = FcStrCmpIgnoreCase(fcLangCharSets[mid].lang+2,
+ cmp = FcStrCmpIgnoreCase(fcLangCharSets[mid].lang+2,
lang+2);
}
}
@@ -400,6 +414,23 @@ FcLangSetAdd (FcLangSet *ls, const FcChar8 *lang)
return FcStrSetAdd (ls->extra, lang);
}
+FcBool
+FcLangSetDel (FcLangSet *ls, const FcChar8 *lang)
+{
+ int id;
+
+ id = FcLangSetIndex (lang);
+ if (id >= 0)
+ {
+ FcLangSetBitReset (ls, id);
+ }
+ else if (ls->extra)
+ {
+ FcStrSetDel (ls->extra, lang);
+ }
+ return FcTrue;
+}
+
FcLangResult
FcLangSetHasLang (const FcLangSet *ls, const FcChar8 *lang)
{
@@ -505,6 +536,7 @@ FcLangSetCompare (const FcLangSet *lsa, const FcLangSet *lsb)
/*
* Used in computing values -- mustn't allocate any storage
+ * XXX Not thread-safe
*/
FcLangSet *
FcLangSetPromote (const FcChar8 *lang)
@@ -515,6 +547,7 @@ FcLangSetPromote (const FcChar8 *lang)
int id;
memset (ls.map, '\0', sizeof (ls.map));
+ ls.map_size = NUM_LANG_SET_MAP;
ls.extra = 0;
id = FcLangSetIndex (lang);
if (id > 0)
@@ -727,7 +760,7 @@ FcLangSetContains (const FcLangSet *lsa, const FcLangSet *lsb)
if (missing)
{
for (j = 0; j < 32; j++)
- if (missing & (1 << j))
+ if (missing & (1 << j))
{
if (!FcLangSetContainsLang (lsa,
fcLangCharSets[fcLangCharSetIndicesInv[i*32 + j]].lang))
@@ -816,6 +849,37 @@ FcLangSetGetLangs (const FcLangSet *ls)
return langs;
}
+static FcLangSet *
+FcLangSetOperate(const FcLangSet *a,
+ const FcLangSet *b,
+ FcBool (*func) (FcLangSet *ls,
+ const FcChar8 *s))
+{
+ FcLangSet *langset = FcLangSetCopy (a);
+ FcStrList *sl = FcStrListCreate (FcLangSetGetLangs (b));
+ FcChar8 *str;
+
+ while ((str = FcStrListNext (sl)))
+ {
+ func (langset, str);
+ }
+ FcStrListDone (sl);
+
+ return langset;
+}
+
+FcLangSet *
+FcLangSetUnion (const FcLangSet *a, const FcLangSet *b)
+{
+ return FcLangSetOperate(a, b, FcLangSetAdd);
+}
+
+FcLangSet *
+FcLangSetSubtract (const FcLangSet *a, const FcLangSet *b)
+{
+ return FcLangSetOperate(a, b, FcLangSetDel);
+}
+
#define __fclang__
#include "fcaliastail.h"
#include "fcftaliastail.h"
diff --git a/fontconfig/src/fclist.c b/fontconfig/src/fclist.c
index d804c1503..9a84b5c7e 100644
--- a/fontconfig/src/fclist.c
+++ b/fontconfig/src/fclist.c
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -46,7 +46,7 @@ FcObjectSetAdd (FcObjectSet *os, const char *object)
int s;
const char **objects;
int high, low, mid, c;
-
+
if (os->nobject == os->sobject)
{
s = os->sobject + 4;
@@ -81,7 +81,7 @@ FcObjectSetAdd (FcObjectSet *os, const char *object)
}
if (c < 0)
mid++;
- memmove (os->objects + mid + 1, os->objects + mid,
+ memmove (os->objects + mid + 1, os->objects + mid,
(os->nobject - mid) * sizeof (const char *));
os->objects[mid] = object;
os->nobject++;
@@ -140,8 +140,8 @@ FcListValueListMatchAny (FcValueListPtr patOrig, /* pattern */
* where it requires an exact match)
*/
if (FcConfigCompareValue (&fnt->value,
- FcOpListing,
- &pat->value))
+ FcOpListing,
+ &pat->value))
break;
}
if (fnt == NULL)
@@ -226,8 +226,8 @@ FcListPatternMatchAny (const FcPattern *p,
static FcChar32
FcListMatrixHash (const FcMatrix *m)
{
- int xx = (int) (m->xx * 100),
- xy = (int) (m->xy * 100),
+ int xx = (int) (m->xx * 100),
+ xy = (int) (m->xy * 100),
yx = (int) (m->yx * 100),
yy = (int) (m->yy * 100);
@@ -265,7 +265,7 @@ static FcChar32
FcListValueListHash (FcValueListPtr list)
{
FcChar32 h = 0;
-
+
while (list != NULL)
{
h = h ^ FcListValueHash (&list->value);
@@ -303,7 +303,7 @@ typedef struct _FcListHashTable {
int entries;
FcListBucket *buckets[FC_LIST_HASH_SIZE];
} FcListHashTable;
-
+
static void
FcListHashTableInit (FcListHashTable *table)
{
@@ -382,7 +382,7 @@ FcListAppend (FcListHashTable *table,
for (prev = &table->buckets[hash % FC_LIST_HASH_SIZE];
(bucket = *prev); prev = &(bucket->next))
{
- if (bucket->hash == hash &&
+ if (bucket->hash == hash &&
FcListPatternEqual (bucket->pattern, font, os))
return FcTrue;
}
@@ -395,7 +395,7 @@ FcListAppend (FcListHashTable *table,
bucket->pattern = FcPatternCreate ();
if (!bucket->pattern)
goto bail1;
-
+
for (o = 0; o < os->nobject; o++)
{
if (!strcmp (os->objects[o], FC_FAMILY) || !strcmp (os->objects[o], FC_FAMILYLANG))
@@ -425,8 +425,8 @@ FcListAppend (FcListHashTable *table,
for (v = FcPatternEltValues(e), idx = 0; v;
v = FcValueListNext(v), ++idx)
{
- if (!FcPatternAdd (bucket->pattern,
- os->objects[o],
+ if (!FcPatternAdd (bucket->pattern,
+ os->objects[o],
FcValueCanonicalize(&v->value), defidx != idx))
goto bail2;
}
@@ -436,7 +436,7 @@ FcListAppend (FcListHashTable *table,
++table->entries;
return FcTrue;
-
+
bail2:
FcPatternDestroy (bucket->pattern);
bail1:
@@ -515,7 +515,7 @@ FcFontSetList (FcConfig *config,
full++;
}
}
- printf ("used: %d max: %d avg: %g\n", full, max,
+ printf ("used: %d max: %d avg: %g\n", full, max,
(double) ents / FC_LIST_HASH_SIZE);
}
#endif
@@ -535,7 +535,7 @@ FcFontSetList (FcConfig *config,
FcMemFree (FC_MEM_LISTBUCK, sizeof (FcListBucket));
free (bucket);
}
-
+
return ret;
bail2:
diff --git a/fontconfig/src/fcmatch.c b/fontconfig/src/fcmatch.c
index aa84eda83..f111be52f 100644
--- a/fontconfig/src/fcmatch.c
+++ b/fontconfig/src/fcmatch.c
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -31,7 +31,7 @@ static double
FcCompareNumber (FcValue *value1, FcValue *value2)
{
double v1, v2, v;
-
+
switch (value1->type) {
case FcTypeInteger:
v1 = (double) value1->u.i;
@@ -67,7 +67,7 @@ FcCompareString (FcValue *v1, FcValue *v2)
static double
FcCompareFamily (FcValue *v1, FcValue *v2)
{
- /* rely on the guarantee in FcPatternAddWithBinding that
+ /* rely on the guarantee in FcPatternObjectAddWithBinding that
* families are always FcTypeString. */
const FcChar8* v1_string = FcValueString(v1);
const FcChar8* v2_string = FcValueString(v2);
@@ -84,7 +84,7 @@ FcCompareLang (FcValue *v1, FcValue *v2)
{
FcLangResult result;
FcValue value1 = FcValueCanonicalize(v1), value2 = FcValueCanonicalize(v2);
-
+
switch (value1.type) {
case FcTypeLangSet:
switch (value2.type) {
@@ -92,7 +92,7 @@ FcCompareLang (FcValue *v1, FcValue *v2)
result = FcLangSetCompare (value1.u.l, value2.u.l);
break;
case FcTypeString:
- result = FcLangSetHasLang (value1.u.l,
+ result = FcLangSetHasLang (value1.u.l,
value2.u.s);
break;
default:
@@ -105,7 +105,7 @@ FcCompareLang (FcValue *v1, FcValue *v2)
result = FcLangSetHasLang (value2.u.l, value1.u.s);
break;
case FcTypeString:
- result = FcLangCompare (value1.u.s,
+ result = FcLangCompare (value1.u.s,
value2.u.s);
break;
default:
@@ -354,10 +354,10 @@ FcCompare (FcPattern *pat,
FcResult *result)
{
int i, i1, i2;
-
+
for (i = 0; i < NUM_MATCH_VALUES; i++)
value[i] = 0.0;
-
+
i1 = 0;
i2 = 0;
while (i1 < pat->num && i2 < fnt->num)
@@ -394,7 +394,7 @@ FcFontRenderPrepare (FcConfig *config,
FcPatternElt *fe, *pe;
FcValue v;
FcResult result;
-
+
new = FcPatternCreate ();
if (!new)
return 0;
@@ -404,7 +404,7 @@ FcFontRenderPrepare (FcConfig *config,
pe = FcPatternObjectFindElt (pat, fe->object);
if (pe)
{
- if (!FcCompareValueList (pe->object, FcPatternEltValues(pe),
+ if (!FcCompareValueList (pe->object, FcPatternEltValues(pe),
FcPatternEltValues(fe), &v, 0, &result))
{
FcPatternDestroy (new);
@@ -529,7 +529,7 @@ FcFontSetMatch (FcConfig *config,
FcPattern *
FcFontMatch (FcConfig *config,
- FcPattern *p,
+ FcPattern *p,
FcResult *result)
{
FcFontSet *sets[2];
@@ -687,21 +687,21 @@ FcFontSetSort (FcConfig *config,
}
if (!nnodes)
goto bail0;
-
+
for (nPatternLang = 0;
FcPatternGet (p, FC_LANG, nPatternLang, &patternLang) == FcResultMatch;
nPatternLang++)
;
/* freed below */
- nodes = malloc (nnodes * sizeof (FcSortNode) +
+ nodes = malloc (nnodes * sizeof (FcSortNode) +
nnodes * sizeof (FcSortNode *) +
nPatternLang * sizeof (FcBool));
if (!nodes)
goto bail0;
nodeps = (FcSortNode **) (nodes + nnodes);
patternLangSat = (FcBool *) (nodeps + nnodes);
-
+
new = nodes;
nodep = nodeps;
for (set = 0; set < nsets; set++)
@@ -735,13 +735,13 @@ FcFontSetSort (FcConfig *config,
}
nnodes = new - nodes;
-
+
qsort (nodeps, nnodes, sizeof (FcSortNode *),
FcSortCompare);
-
+
for (i = 0; i < nPatternLang; i++)
patternLangSat[i] = FcFalse;
-
+
for (f = 0; f < nnodes; f++)
{
FcBool satisfies = FcFalse;
@@ -814,7 +814,7 @@ bail0:
FcFontSet *
FcFontSort (FcConfig *config,
- FcPattern *p,
+ FcPattern *p,
FcBool trim,
FcCharSet **csp,
FcResult *result)
diff --git a/fontconfig/src/fcname.c b/fontconfig/src/fcname.c
index b4ce94421..86c10b65e 100644
--- a/fontconfig/src/fcname.c
+++ b/fontconfig/src/fcname.c
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -28,9 +28,9 @@
#include <string.h>
#include <stdio.h>
-/*
+/*
* Please do not change this list, it is used to initialize the object
- * list in this order to match the FC_foo_OBJECT constants. Those
+ * list in this order to match the FC_foo_OBJECT constants. Those
* constants are written into cache files.
*/
@@ -169,7 +169,7 @@ FcObjectFindByName (const char *object, FcBool insert)
* Hook it into the hash chain
*/
b = malloc (sizeof(FcObjectBucket));
- if (!b)
+ if (!b)
return NULL;
object = (const char *) FcStrCopy ((FcChar8 *) object);
if (!object) {
@@ -212,7 +212,7 @@ FcObjectHashInsert (const FcObjectType *object, FcBool copy)
* Hook it into the hash chain
*/
b = malloc (sizeof(FcObjectBucket));
- if (!b)
+ if (!b)
return FcFalse;
if (copy)
{
@@ -421,7 +421,7 @@ static const FcConstant _FcBaseConstants[] = {
{ (FcChar8 *) "expanded", "width", FC_WIDTH_EXPANDED },
{ (FcChar8 *) "extraexpanded", "width", FC_WIDTH_EXTRAEXPANDED },
{ (FcChar8 *) "ultraexpanded", "width", FC_WIDTH_ULTRAEXPANDED },
-
+
{ (FcChar8 *) "proportional", "spacing", FC_PROPORTIONAL, },
{ (FcChar8 *) "dual", "spacing", FC_DUAL, },
{ (FcChar8 *) "mono", "spacing", FC_MONO, },
@@ -495,8 +495,8 @@ FcNameUnregisterConstants (const FcConstant *consts, int nconsts)
{
const FcConstantList *l, **prev;
- for (prev = &_FcConstants;
- (l = *prev);
+ for (prev = &_FcConstants;
+ (l = *prev);
prev = (const FcConstantList **) &(l->next))
{
if (l->consts == consts && l->nconsts == nconsts)
@@ -620,7 +620,7 @@ static const FcChar8 *
FcNameFindNext (const FcChar8 *cur, const char *delim, FcChar8 *save, FcChar8 *last)
{
FcChar8 c;
-
+
while ((c = *cur))
{
if (c == '\\')
@@ -765,7 +765,7 @@ bail0:
return 0;
}
static FcBool
-FcNameUnparseString (FcStrBuf *buf,
+FcNameUnparseString (FcStrBuf *buf,
const FcChar8 *string,
const FcChar8 *escape)
{
@@ -790,7 +790,7 @@ FcNameUnparseValue (FcStrBuf *buf,
{
FcChar8 temp[1024];
FcValue v = FcValueCanonicalize(v0);
-
+
switch (v.type) {
case FcTypeVoid:
return FcTrue;
@@ -805,7 +805,7 @@ FcNameUnparseValue (FcStrBuf *buf,
case FcTypeBool:
return FcNameUnparseString (buf, v.u.b ? (FcChar8 *) "True" : (FcChar8 *) "False", 0);
case FcTypeMatrix:
- sprintf ((char *) temp, "%g %g %g %g",
+ sprintf ((char *) temp, "%g %g %g %g",
v.u.m->xx, v.u.m->xy, v.u.m->yx, v.u.m->yy);
return FcNameUnparseString (buf, temp, 0);
case FcTypeCharSet:
@@ -873,11 +873,11 @@ FcNameUnparseEscaped (FcPattern *pat, FcBool escape)
for (i = 0; i < l->ntypes; i++)
{
o = &l->types[i];
- if (!strcmp (o->object, FC_FAMILY) ||
+ if (!strcmp (o->object, FC_FAMILY) ||
!strcmp (o->object, FC_SIZE) ||
!strcmp (o->object, FC_FILE))
continue;
-
+
e = FcPatternObjectFindElt (pat, FcObjectFromName (o->object));
if (e)
{
@@ -887,7 +887,7 @@ FcNameUnparseEscaped (FcPattern *pat, FcBool escape)
goto bail0;
if (!FcNameUnparseString (&buf, (FcChar8 *) "=", 0))
goto bail0;
- if (!FcNameUnparseValueList (&buf, FcPatternEltValues(e), escape ?
+ if (!FcNameUnparseValueList (&buf, FcPatternEltValues(e), escape ?
(FcChar8 *) FC_ESCAPE_VARIABLE : 0))
goto bail0;
}
diff --git a/fontconfig/src/fcpat.c b/fontconfig/src/fcpat.c
index 76263b655..be01a4fd2 100644
--- a/fontconfig/src/fcpat.c
+++ b/fontconfig/src/fcpat.c
@@ -5,9 +5,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -138,11 +138,11 @@ FcValueListDestroy (FcValueListPtr l)
FcMatrixFree ((FcMatrix *)l->value.u.m);
break;
case FcTypeCharSet:
- FcCharSetDestroy
+ FcCharSetDestroy
((FcCharSet *) (l->value.u.c));
break;
case FcTypeLangSet:
- FcLangSetDestroy
+ FcLangSetDestroy
((FcLangSet *) (l->value.u.l));
break;
default:
@@ -210,7 +210,7 @@ FcStringHash (const FcChar8 *s)
{
FcChar8 c;
FcChar32 h = 0;
-
+
if (s)
while ((c = *s++))
h = ((h << 1) | (h >> 31)) ^ c;
@@ -232,9 +232,9 @@ FcValueHash (const FcValue *v)
case FcTypeBool:
return (FcChar32) v->u.b;
case FcTypeMatrix:
- return (FcDoubleHash (v->u.m->xx) ^
- FcDoubleHash (v->u.m->xy) ^
- FcDoubleHash (v->u.m->yx) ^
+ return (FcDoubleHash (v->u.m->xx) ^
+ FcDoubleHash (v->u.m->xy) ^
+ FcDoubleHash (v->u.m->yx) ^
FcDoubleHash (v->u.m->yy));
case FcTypeCharSet:
return (FcChar32) FcValueCharSet(v)->num;
@@ -269,7 +269,7 @@ static FcChar32
FcValueListHash (FcValueListPtr l)
{
FcChar32 hash = 0;
-
+
for (; l; l = FcValueListNext(l))
{
hash = ((hash << 1) | (hash >> 31)) ^ FcValueHash (&l->value);
@@ -282,7 +282,7 @@ FcPatternDestroy (FcPattern *p)
{
int i;
FcPatternElt *elts;
-
+
if (p->ref == FC_REF_CONSTANT)
{
FcCacheObjectDereference (p);
@@ -342,12 +342,12 @@ FcPatternObjectInsertElt (FcPattern *p, FcObject object)
{
int i;
FcPatternElt *e;
-
+
i = FcPatternObjectPosition (p, object);
if (i < 0)
{
i = -i - 1;
-
+
/* reallocate array */
if (p->num + 1 >= p->size)
{
@@ -385,14 +385,14 @@ FcPatternObjectInsertElt (FcPattern *p, FcObject object)
e + i,
sizeof (FcPatternElt) *
(p->num - i));
-
+
/* bump count */
p->num++;
e[i].object = object;
e[i].values = NULL;
}
-
+
return FcPatternElts(p) + i;
}
@@ -429,7 +429,7 @@ FcPatternHash (const FcPattern *p)
for (i = 0; i < p->num; i++)
{
- h = (((h << 1) | (h >> 31)) ^
+ h = (((h << 1) | (h >> 31)) ^
pe[i].object ^
FcValueListHash (FcPatternEltValues(&pe[i])));
}
@@ -441,7 +441,7 @@ FcPatternEqualSubset (const FcPattern *pai, const FcPattern *pbi, const FcObject
{
FcPatternElt *ea, *eb;
int i;
-
+
for (i = 0; i < os->nobject; i++)
{
FcObject object = FcObjectFromName (os->objects[i]);
@@ -503,11 +503,11 @@ FcPatternObjectAddWithBinding (FcPattern *p,
new->value = value;
new->binding = binding;
new->next = NULL;
-
+
e = FcPatternObjectInsertElt (p, object);
if (!e)
goto bail2;
-
+
if (append)
{
for (prev = &e->values; *prev; prev = &(*prev)->next)
@@ -519,10 +519,10 @@ FcPatternObjectAddWithBinding (FcPattern *p,
new->next = e->values;
e->values = new;
}
-
+
return FcTrue;
-bail2:
+bail2:
FcValueDestroy (value);
bail1:
FcMemFree (FC_MEM_VALLIST, sizeof (FcValueList));
@@ -563,10 +563,10 @@ FcPatternObjectDel (FcPattern *p, FcObject object)
/* destroy value */
FcValueListDestroy (e->values);
-
+
/* shuffle existing ones down */
- memmove (e, e+1,
- (FcPatternElts(p) + p->num - (e + 1)) *
+ memmove (e, e+1,
+ (FcPatternElts(p) + p->num - (e + 1)) *
sizeof (FcPatternElt));
p->num--;
e = FcPatternElts(p) + p->num;
@@ -580,7 +580,7 @@ FcPatternDel (FcPattern *p, const char *object)
{
return FcPatternObjectDel (p, FcObjectFromName (object));
}
-
+
FcBool
FcPatternRemove (FcPattern *p, const char *object, int id)
{
@@ -773,8 +773,8 @@ FcPatternGetInteger (const FcPattern *p, const char *object, int id, int *i)
{
return FcPatternObjectGetInteger (p, FcObjectFromName (object), id, i);
}
-
-
+
+
FcResult
FcPatternObjectGetDouble (const FcPattern *p, FcObject object, int id, double *d)
{
@@ -824,7 +824,7 @@ FcPatternGetString (const FcPattern *p, const char *object, int id, FcChar8 ** s
{
return FcPatternObjectGetString (p, FcObjectFromName (object), id, s);
}
-
+
FcResult
FcPatternGetMatrix(const FcPattern *p, const char *object, int id, FcMatrix **m)
{
@@ -924,7 +924,7 @@ FcPatternDuplicate (const FcPattern *orig)
l->binding,
FcTrue))
goto bail1;
-
+
}
}
@@ -949,7 +949,7 @@ FcPattern *
FcPatternVaBuild (FcPattern *p, va_list va)
{
FcPattern *ret;
-
+
FcPatternVapBuild (ret, p, va);
return ret;
}
@@ -958,7 +958,7 @@ FcPattern *
FcPatternBuild (FcPattern *p, ...)
{
va_list va;
-
+
va_start (va, p);
FcPatternVapBuild (p, p, va);
va_end (va);
@@ -974,14 +974,14 @@ FcPatternAppend (FcPattern *p, FcPattern *s)
int i;
FcPatternElt *e;
FcValueListPtr v;
-
+
for (i = 0; i < s->num; i++)
{
e = FcPatternElts(s)+i;
for (v = FcPatternEltValues(e); v; v = FcValueListNext(v))
{
if (!FcPatternObjectAddWithBinding (p, e->object,
- FcValueCanonicalize(&v->value),
+ FcValueCanonicalize(&v->value),
v->binding, FcTrue))
return FcFalse;
}
@@ -1102,7 +1102,7 @@ FcPatternSerializeAlloc (FcSerialize *serialize, const FcPattern *pat)
{
int i;
FcPatternElt *elts = FcPatternElts(pat);
-
+
if (!FcSerializeAlloc (serialize, pat, sizeof (FcPattern)))
return FcFalse;
if (!FcSerializeAlloc (serialize, elts, pat->num * sizeof (FcPatternElt)))
@@ -1128,11 +1128,11 @@ FcPatternSerialize (FcSerialize *serialize, const FcPattern *pat)
*pat_serialized = *pat;
pat_serialized->size = pat->num;
pat_serialized->ref = FC_REF_CONSTANT;
-
+
elts_serialized = FcSerializePtr (serialize, elts);
if (!elts_serialized)
return NULL;
-
+
pat_serialized->elts_offset = FcPtrToOffset (pat_serialized,
elts_serialized);
@@ -1142,7 +1142,7 @@ FcPatternSerialize (FcSerialize *serialize, const FcPattern *pat)
if (!values_serialized)
return NULL;
elts_serialized[i].object = elts[i].object;
- elts_serialized[i].values = FcPtrToEncodedOffset (&elts_serialized[i],
+ elts_serialized[i].values = FcPtrToEncodedOffset (&elts_serialized[i],
values_serialized,
FcValueList);
}
@@ -1199,7 +1199,7 @@ FcValueListSerialize (FcSerialize *serialize, const FcValueList *vl)
vl_serialized = FcSerializePtr (serialize, vl);
if (!vl_serialized)
return NULL;
-
+
if (prev_serialized)
prev_serialized->next = FcPtrToEncodedOffset (prev_serialized,
vl_serialized,
diff --git a/fontconfig/src/fcstr.c b/fontconfig/src/fcstr.c
index ea7c376c2..8b94ecba5 100644
--- a/fontconfig/src/fcstr.c
+++ b/fontconfig/src/fcstr.c
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -109,7 +109,7 @@ FcStrCaseWalkerLong (FcCaseWalker *w, FcChar8 r)
int mid = (min + max) >> 1;
FcChar32 low = fcCaseFold[mid].upper;
FcChar32 high = low + FcCaseFoldUpperCount (&fcCaseFold[mid]);
-
+
if (high <= ucs4)
min = mid + 1;
else if (ucs4 < low)
@@ -158,7 +158,7 @@ FcStrCaseWalkerNext (FcCaseWalker *w)
w->read = 0;
}
r = *w->src++;
-
+
if ((r & 0xc0) == 0xc0)
return FcStrCaseWalkerLong (w, r);
if ('A' <= r && r <= 'Z')
@@ -181,7 +181,7 @@ FcStrCaseWalkerNextIgnoreBlanks (FcCaseWalker *w)
{
r = *w->src++;
} while (r == ' ');
-
+
if ((r & 0xc0) == 0xc0)
return FcStrCaseWalkerLong (w, r);
if ('A' <= r && r <= 'Z')
@@ -215,11 +215,11 @@ FcStrCmpIgnoreCase (const FcChar8 *s1, const FcChar8 *s2)
FcChar8 c1, c2;
if (s1 == s2) return 0;
-
+
FcStrCaseWalkerInit (s1, &w1);
FcStrCaseWalkerInit (s2, &w2);
-
- for (;;)
+
+ for (;;)
{
c1 = FcStrCaseWalkerNext (&w1);
c2 = FcStrCaseWalkerNext (&w2);
@@ -236,11 +236,11 @@ FcStrCmpIgnoreBlanksAndCase (const FcChar8 *s1, const FcChar8 *s2)
FcChar8 c1, c2;
if (s1 == s2) return 0;
-
+
FcStrCaseWalkerInit (s1, &w1);
FcStrCaseWalkerInit (s2, &w2);
-
- for (;;)
+
+ for (;;)
{
c1 = FcStrCaseWalkerNextIgnoreBlanks (&w1);
c2 = FcStrCaseWalkerNextIgnoreBlanks (&w2);
@@ -254,10 +254,10 @@ int
FcStrCmp (const FcChar8 *s1, const FcChar8 *s2)
{
FcChar8 c1, c2;
-
+
if (s1 == s2)
return 0;
- for (;;)
+ for (;;)
{
c1 = *s1++;
c2 = *s2++;
@@ -296,8 +296,8 @@ FcStrIsAtIgnoreBlanksAndCase (const FcChar8 *s1, const FcChar8 *s2)
FcStrCaseWalkerInit (s1, &w1);
FcStrCaseWalkerInit (s2, &w2);
-
- for (;;)
+
+ for (;;)
{
c1 = FcStrCaseWalkerNextIgnoreBlanks (&w1);
c2 = FcStrCaseWalkerNextIgnoreBlanks (&w2);
@@ -355,8 +355,8 @@ FcStrIsAtIgnoreCase (const FcChar8 *s1, const FcChar8 *s2)
FcStrCaseWalkerInit (s1, &w1);
FcStrCaseWalkerInit (s2, &w2);
-
- for (;;)
+
+ for (;;)
{
c1 = FcStrCaseWalkerNext (&w1);
c2 = FcStrCaseWalkerNext (&w2);
@@ -395,7 +395,7 @@ FcStrContainsWord (const FcChar8 *s1, const FcChar8 *s2)
while (s1len >= s2len)
{
- if (wordStart &&
+ if (wordStart &&
FcStrIsAtIgnoreCase (s1, s2) &&
(s1len == s2len || FcCharIsPunct (s1[s2len])))
{
@@ -422,12 +422,12 @@ FcStrStrIgnoreCase (const FcChar8 *s1, const FcChar8 *s2)
if (s1 == s2)
return s1;
-
+
FcStrCaseWalkerInit (s1, &w1);
FcStrCaseWalkerInit (s2, &w2);
-
+
c2 = FcStrCaseWalkerNext (&w2);
-
+
for (;;)
{
cur = w1.src;
@@ -474,7 +474,7 @@ again:
if (!c2)
return 0;
- for (;;)
+ for (;;)
{
p = s1;
c1 = *s1++;
@@ -517,15 +517,15 @@ FcUtf8ToUcs4 (const FcChar8 *src_orig,
if (len == 0)
return 0;
-
+
s = *src++;
len--;
-
+
if (!(s & 0x80))
{
result = s;
extra = 0;
- }
+ }
else if (!(s & 0x40))
{
return -1;
@@ -561,7 +561,7 @@ FcUtf8ToUcs4 (const FcChar8 *src_orig,
}
if (extra > len)
return -1;
-
+
while (extra--)
{
result <<= 6;
@@ -586,7 +586,7 @@ FcUtf8Len (const FcChar8 *string,
int clen;
FcChar32 c;
FcChar32 max;
-
+
n = 0;
max = 0;
while (len)
@@ -616,7 +616,7 @@ FcUcs4ToUtf8 (FcChar32 ucs4,
{
int bits;
FcChar8 *d = dest;
-
+
if (ucs4 < 0x80) { *d++= ucs4; bits= -6; }
else if (ucs4 < 0x800) { *d++= ((ucs4 >> 6) & 0x1F) | 0xC0; bits= 0; }
else if (ucs4 < 0x10000) { *d++= ((ucs4 >> 12) & 0x0F) | 0xE0; bits= 6; }
@@ -647,11 +647,11 @@ FcUtf16ToUcs4 (const FcChar8 *src_orig,
if (len < 2)
return 0;
-
+
a = GetUtf16 (src, endian); src += 2; len -= 2;
-
- /*
- * Check for surrogate
+
+ /*
+ * Check for surrogate
*/
if ((a & 0xfc00) == 0xd800)
{
@@ -683,7 +683,7 @@ FcUtf16Len (const FcChar8 *string,
int clen;
FcChar32 c;
FcChar32 max;
-
+
n = 0;
max = 0;
while (len)
@@ -835,7 +835,7 @@ FcChar8 *
FcStrCopyFilename (const FcChar8 *s)
{
FcChar8 *new;
-
+
if (*s == '~')
{
FcChar8 *home = FcConfigHome ();
@@ -875,7 +875,7 @@ FcStrLastSlash (const FcChar8 *path)
return slash;
}
-
+
FcChar8 *
FcStrDirname (const FcChar8 *file)
{
@@ -954,10 +954,10 @@ FcStrCanonAbsoluteFilename (const FcChar8 *s)
}
return file;
}
-
+
#ifdef _WIN32
/*
- * Convert '\\' to '/' , remove double '/'
+ * Convert '\\' to '/' , remove double '/'
*/
static void
FcConvertDosPath (char *str)
@@ -1135,7 +1135,7 @@ FcStrSetDel (FcStrSet *set, const FcChar8 *s)
* copy remaining string pointers and trailing
* NULL
*/
- memmove (&set->strs[i], &set->strs[i+1],
+ memmove (&set->strs[i], &set->strs[i+1],
(set->num - i) * sizeof (FcChar8 *));
set->num--;
return FcTrue;
@@ -1149,7 +1149,7 @@ FcStrSetDestroy (FcStrSet *set)
if (--set->ref == 0)
{
int i;
-
+
for (i = 0; i < set->num; i++)
FcStrFree (set->strs[i]);
if (set->strs)
diff --git a/fontconfig/src/fcxml.c b/fontconfig/src/fcxml.c
index 9428468a4..ff30b7bbd 100644
--- a/fontconfig/src/fcxml.c
+++ b/fontconfig/src/fcxml.c
@@ -7,9 +7,9 @@
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
* advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Keith Packard makes no
+ * specific, written prior permission. The authors make no
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
@@ -134,6 +134,30 @@ FcExprCreateBool (FcConfig *config, FcBool b)
}
static FcExpr *
+FcExprCreateCharSet (FcConfig *config, FcCharSet *charset)
+{
+ FcExpr *e = FcConfigAllocExpr (config);
+ if (e)
+ {
+ e->op = FcOpCharSet;
+ e->u.cval = FcCharSetCopy (charset);
+ }
+ return e;
+}
+
+static FcExpr *
+FcExprCreateLangSet (FcConfig *config, FcLangSet *langset)
+{
+ FcExpr *e = FcConfigAllocExpr (config);
+ if (e)
+ {
+ e->op = FcOpLangSet;
+ e->u.lval = FcLangSetCopy (langset);
+ }
+ return e;
+}
+
+static FcExpr *
FcExprCreateField (FcConfig *config, const char *field)
{
FcExpr *e = FcConfigAllocExpr (config);
@@ -185,9 +209,14 @@ FcExprDestroy (FcExpr *e)
case FcOpMatrix:
FcMatrixFree (e->u.mval);
break;
+ case FcOpRange:
+ break;
case FcOpCharSet:
FcCharSetDestroy (e->u.cval);
break;
+ case FcOpLangSet:
+ FcLangSetDestroy (e->u.lval);
+ break;
case FcOpBool:
break;
case FcOpField:
@@ -277,8 +306,10 @@ typedef enum _FcElement {
FcElementDouble,
FcElementString,
FcElementMatrix,
+ FcElementRange,
FcElementBool,
- FcElementCharset,
+ FcElementCharSet,
+ FcElementLangSet,
FcElementName,
FcElementConst,
FcElementOr,
@@ -316,7 +347,7 @@ static const struct {
{ "config", FcElementConfig },
{ "match", FcElementMatch },
{ "alias", FcElementAlias },
-
+
{ "blank", FcElementBlank },
{ "rescan", FcElementRescan },
@@ -338,8 +369,10 @@ static const struct {
{ "double", FcElementDouble },
{ "string", FcElementString },
{ "matrix", FcElementMatrix },
+ { "range", FcElementRange },
{ "bool", FcElementBool },
- { "charset", FcElementCharset },
+ { "charset", FcElementCharSet },
+ { "langset", FcElementLangSet },
{ "name", FcElementName },
{ "const", FcElementConst },
{ "or", FcElementOr },
@@ -383,7 +416,7 @@ typedef struct _FcPStack {
FcStrBuf str;
FcChar8 *attr_buf_static[16];
} FcPStack;
-
+
typedef enum _FcVStackTag {
FcVStackNone,
@@ -393,16 +426,19 @@ typedef enum _FcVStackTag {
FcVStackConstant,
FcVStackGlob,
FcVStackPattern,
-
+
FcVStackPrefer,
FcVStackAccept,
FcVStackDefault,
-
+
FcVStackInteger,
FcVStackDouble,
FcVStackMatrix,
+ FcVStackRange,
FcVStackBool,
-
+ FcVStackCharSet,
+ FcVStackLangSet,
+
FcVStackTest,
FcVStackExpr,
FcVStackEdit
@@ -418,7 +454,10 @@ typedef struct _FcVStack {
int integer;
double _double;
FcMatrix *matrix;
+ FcRange range;
FcBool bool_;
+ FcCharSet *charset;
+ FcLangSet *langset;
FcTest *test;
FcQual qual;
@@ -529,7 +568,7 @@ FcTypecheckExpr (FcConfigParse *parse, FcExpr *expr, FcType type)
{
const FcObjectType *o;
const FcConstant *c;
-
+
/* If parsing the expression failed, some nodes may be NULL */
if (!expr)
return;
@@ -551,6 +590,9 @@ FcTypecheckExpr (FcConfigParse *parse, FcExpr *expr, FcType type)
case FcOpCharSet:
FcTypecheckValue (parse, FcTypeCharSet, type);
break;
+ case FcOpLangSet:
+ FcTypecheckValue (parse, FcTypeLangSet, type);
+ break;
case FcOpNil:
break;
case FcOpField:
@@ -566,8 +608,8 @@ FcTypecheckExpr (FcConfigParse *parse, FcExpr *expr, FcType type)
if (o)
FcTypecheckValue (parse, o->type, type);
}
- else
- FcConfigMessage (parse, FcSevereWarning,
+ else
+ FcConfigMessage (parse, FcSevereWarning,
"invalid constant used : %s",
expr->u.constant);
break;
@@ -618,7 +660,7 @@ FcTypecheckExpr (FcConfigParse *parse, FcExpr *expr, FcType type)
static FcTest *
FcTestCreate (FcConfigParse *parse,
- FcMatchKind kind,
+ FcMatchKind kind,
FcQual qual,
const FcChar8 *field,
FcOp compare,
@@ -742,6 +784,18 @@ FcVStackPushMatrix (FcConfigParse *parse, FcMatrix *matrix)
}
static FcBool
+FcVStackPushRange (FcConfigParse *parse, FcRange *range)
+{
+ FcVStack *vstack = FcVStackCreateAndPush (parse);
+ if (!vstack)
+ return FcFalse;
+ vstack->u.range.begin = range->begin;
+ vstack->u.range.end = range->end;
+ vstack->tag = FcVStackRange;
+ return FcTrue;
+}
+
+static FcBool
FcVStackPushBool (FcConfigParse *parse, FcBool bool_)
{
FcVStack *vstack = FcVStackCreateAndPush (parse);
@@ -753,6 +807,34 @@ FcVStackPushBool (FcConfigParse *parse, FcBool bool_)
}
static FcBool
+FcVStackPushCharSet (FcConfigParse *parse, FcCharSet *charset)
+{
+ FcVStack *vstack;
+ if (!charset)
+ return FcFalse;
+ vstack = FcVStackCreateAndPush (parse);
+ if (!vstack)
+ return FcFalse;
+ vstack->u.charset = charset;
+ vstack->tag = FcVStackCharSet;
+ return FcTrue;
+}
+
+static FcBool
+FcVStackPushLangSet (FcConfigParse *parse, FcLangSet *langset)
+{
+ FcVStack *vstack;
+ if (!langset)
+ return FcFalse;
+ vstack = FcVStackCreateAndPush (parse);
+ if (!vstack)
+ return FcFalse;
+ vstack->u.langset = langset;
+ vstack->tag = FcVStackLangSet;
+ return FcTrue;
+}
+
+static FcBool
FcVStackPushTest (FcConfigParse *parse, FcTest *test)
{
FcVStack *vstack = FcVStackCreateAndPush (parse);
@@ -817,7 +899,7 @@ static void
FcVStackPopAndDestroy (FcConfigParse *parse)
{
FcVStack *vstack = parse->vstack;
-
+
if (!vstack || vstack->pstack != parse->pstack)
return;
@@ -843,8 +925,15 @@ FcVStackPopAndDestroy (FcConfigParse *parse)
case FcVStackMatrix:
FcMatrixFree (vstack->u.matrix);
break;
+ case FcVStackRange:
case FcVStackBool:
break;
+ case FcVStackCharSet:
+ FcCharSetDestroy (vstack->u.charset);
+ break;
+ case FcVStackLangSet:
+ FcLangSetDestroy (vstack->u.langset);
+ break;
case FcVStackTest:
FcTestDestroy (vstack->u.test);
break;
@@ -954,8 +1043,8 @@ static FcBool
FcPStackPop (FcConfigParse *parse)
{
FcPStack *old;
-
- if (!parse->pstack)
+
+ if (!parse->pstack)
{
FcConfigMessage (parse, FcSevereError, "mismatching element");
return FcFalse;
@@ -1026,11 +1115,11 @@ FcStartElement(void *userData, const XML_Char *name, const XML_Char **attr)
{
FcConfigParse *parse = userData;
FcElement element;
-
+
element = FcElementMap (name);
if (element == FcElementUnknown)
FcConfigMessage (parse, FcSevereWarning, "unknown element \"%s\"", name);
-
+
if (!FcPStackPush (parse, element, attr))
{
FcConfigMessage (parse, FcSevereError, "out of memory");
@@ -1042,30 +1131,40 @@ FcStartElement(void *userData, const XML_Char *name, const XML_Char **attr)
static void
FcParseBlank (FcConfigParse *parse)
{
- int n = FcVStackElements (parse);
+ int n = FcVStackElements (parse);
+ FcChar32 i;
while (n-- > 0)
{
FcVStack *v = FcVStackFetch (parse, n);
- if (v->tag != FcVStackInteger)
- FcConfigMessage (parse, FcSevereError, "non-integer blank");
- else
+ if (!parse->config->blanks)
{
+ parse->config->blanks = FcBlanksCreate ();
if (!parse->config->blanks)
- {
- parse->config->blanks = FcBlanksCreate ();
- if (!parse->config->blanks)
- {
- FcConfigMessage (parse, FcSevereError, "out of memory");
- break;
- }
- }
+ goto bail;
+ }
+ switch (v->tag) {
+ case FcVStackInteger:
if (!FcBlanksAdd (parse->config->blanks, v->u.integer))
+ goto bail;
+ break;
+ case FcVStackRange:
+ if (v->u.range.begin <= v->u.range.end)
{
- FcConfigMessage (parse, FcSevereError, "out of memory");
- break;
+ for (i = v->u.range.begin; i <= v->u.range.end; i++)
+ {
+ if (!FcBlanksAdd (parse->config->blanks, i))
+ goto bail;
+ }
}
+ break;
+ default:
+ FcConfigMessage (parse, FcSevereError, "invalid element in blank");
+ break;
}
}
+ return;
+ bail:
+ FcConfigMessage (parse, FcSevereError, "out of memory");
}
static void
@@ -1087,7 +1186,7 @@ FcParseInt (FcConfigParse *parse)
{
FcChar8 *s, *end;
int l;
-
+
if (!parse->pstack)
return;
s = FcStrBufDoneStatic (&parse->pstack->str);
@@ -1106,13 +1205,13 @@ FcParseInt (FcConfigParse *parse)
}
/*
- * idea copied from glib g_ascii_strtod with
- * permission of the author (Alexander Larsson)
+ * idea copied from glib g_ascii_strtod with
+ * permission of the author (Alexander Larsson)
*/
#include <locale.h>
-static double
+static double
FcStrtod (char *s, char **end)
{
struct lconv *locale_data;
@@ -1168,7 +1267,7 @@ FcParseDouble (FcConfigParse *parse)
{
FcChar8 *s, *end;
double d;
-
+
if (!parse->pstack)
return;
s = FcStrBufDoneStatic (&parse->pstack->str);
@@ -1190,7 +1289,7 @@ static void
FcParseString (FcConfigParse *parse, FcVStackTag tag)
{
FcChar8 *s;
-
+
if (!parse->pstack)
return;
s = FcStrBufDone (&parse->pstack->str);
@@ -1209,7 +1308,7 @@ FcParseMatrix (FcConfigParse *parse)
FcVStack *vstack;
enum { m_done, m_xx, m_xy, m_yx, m_yy } matrix_state = m_yy;
FcMatrix m;
-
+
while ((vstack = FcVStackPeek (parse)))
{
double v;
@@ -1241,6 +1340,49 @@ FcParseMatrix (FcConfigParse *parse)
FcVStackPushMatrix (parse, &m);
}
+static void
+FcParseRange (FcConfigParse *parse)
+{
+ FcVStack *vstack;
+ FcRange r;
+ FcChar32 n;
+ int count = 1;
+
+ while ((vstack = FcVStackPeek (parse)))
+ {
+ if (count < 0)
+ {
+ FcConfigMessage (parse, FcSevereError, "too many elements in range");
+ return;
+ }
+ switch (vstack->tag) {
+ case FcVStackInteger:
+ n = vstack->u.integer;
+ break;
+ default:
+ FcConfigMessage (parse, FcSevereError, "invalid element in range");
+ break;
+ }
+ if (count == 1)
+ r.end = n;
+ else
+ r.begin = n;
+ count--;
+ FcVStackPopAndDestroy (parse);
+ }
+ if (count < 0)
+ {
+ if (r.begin > r.end)
+ {
+ FcConfigMessage (parse, FcSevereError, "invalid range");
+ return;
+ }
+ FcVStackPushRange (parse, &r);
+ }
+ else
+ FcConfigMessage (parse, FcSevereError, "invalid range");
+}
+
static FcBool
FcConfigLexBool (FcConfigParse *parse, const FcChar8 *bool_)
{
@@ -1269,13 +1411,88 @@ FcParseBool (FcConfigParse *parse)
FcStrBufDestroy (&parse->pstack->str);
}
+static void
+FcParseCharSet (FcConfigParse *parse)
+{
+ FcVStack *vstack;
+ FcCharSet *charset = FcCharSetCreate ();
+ FcChar32 i;
+ int n = 0;
+
+ while ((vstack = FcVStackPeek (parse)))
+ {
+ switch (vstack->tag) {
+ case FcVStackInteger:
+ if (!FcCharSetAddChar (charset, vstack->u.integer))
+ {
+ FcConfigMessage (parse, FcSevereWarning, "invalid character: 0x%04x", vstack->u.integer);
+ }
+ else
+ n++;
+ break;
+ case FcVStackRange:
+ if (vstack->u.range.begin <= vstack->u.range.end)
+ {
+ for (i = vstack->u.range.begin; i <= vstack->u.range.end; i++)
+ {
+ if (!FcCharSetAddChar (charset, i))
+ {
+ FcConfigMessage (parse, FcSevereWarning, "invalid character: 0x%04x", i);
+ }
+ else
+ n++;
+ }
+ }
+ break;
+ default:
+ FcConfigMessage (parse, FcSevereError, "invalid element in charset");
+ break;
+ }
+ FcVStackPopAndDestroy (parse);
+ }
+ if (n > 0)
+ FcVStackPushCharSet (parse, charset);
+ else
+ FcCharSetDestroy (charset);
+}
+
+static void
+FcParseLangSet (FcConfigParse *parse)
+{
+ FcVStack *vstack;
+ FcLangSet *langset = FcLangSetCreate ();
+ int n = 0;
+
+ while ((vstack = FcVStackPeek (parse)))
+ {
+ switch (vstack->tag) {
+ case FcVStackString:
+ if (!FcLangSetAdd (langset, vstack->u.string))
+ {
+ FcConfigMessage (parse, FcSevereWarning, "invalid langset: %s", vstack->u.string);
+ }
+ else
+ n++;
+ break;
+ default:
+ FcConfigMessage (parse, FcSevereError, "invalid element in langset");
+ break;
+ }
+ FcVStackPopAndDestroy (parse);
+ }
+ if (n > 0)
+ FcVStackPushLangSet (parse, langset);
+ else
+ FcLangSetDestroy (langset);
+}
+
static FcBool
FcConfigLexBinding (FcConfigParse *parse,
const FcChar8 *binding_string,
FcValueBinding *binding_ret)
{
FcValueBinding binding;
-
+
if (!binding_string)
binding = FcValueBindingWeak;
else
@@ -1426,7 +1643,7 @@ FcParseAlias (FcConfigParse *parse)
}
if (prefer)
{
- edit = FcEditCreate (parse,
+ edit = FcEditCreate (parse,
FC_FAMILY_OBJECT,
FcOpPrepend,
prefer,
@@ -1515,9 +1732,17 @@ FcPopExpr (FcConfigParse *parse)
case FcVStackMatrix:
expr = FcExprCreateMatrix (parse->config, vstack->u.matrix);
break;
+ case FcVStackRange:
+ break;
case FcVStackBool:
expr = FcExprCreateBool (parse->config, vstack->u.bool_);
break;
+ case FcVStackCharSet:
+ expr = FcExprCreateCharSet (parse->config, vstack->u.charset);
+ break;
+ case FcVStackLangSet:
+ expr = FcExprCreateLangSet (parse->config, vstack->u.langset);
+ break;
case FcVStackTest:
break;
case FcVStackExpr:
@@ -1611,7 +1836,7 @@ FcParseInclude (FcConfigParse *parse)
FcChar8 *s;
const FcChar8 *i;
FcBool ignore_missing = FcFalse;
-
+
s = FcStrBufDoneStatic (&parse->pstack->str);
if (!s)
{
@@ -1637,7 +1862,7 @@ FcConfigLexOp (const FcChar8 *op, const FcOpMap *map, int nmap)
int i;
for (i = 0; i < nmap; i++)
- if (!strcmp ((char *) op, map[i].name))
+ if (!strcmp ((char *) op, map[i].name))
return map[i].op;
return FcOpInvalid;
}
@@ -1846,7 +2071,7 @@ FcParseMatch (FcConfigParse *parse)
vstack->tag = FcVStackNone;
if (kind == FcMatchScan && edit->object > FC_MAX_BASE_OBJECT)
{
- FcConfigMessage (parse, FcSevereError,
+ FcConfigMessage (parse, FcSevereError,
"<match target=\"scan\"> cannot edit user-defined object \"%s\"",
FcObjectName(edit->object));
}
@@ -1870,7 +2095,7 @@ FcParseAcceptRejectFont (FcConfigParse *parse, FcElement element)
{
switch (vstack->tag) {
case FcVStackGlob:
- if (!FcConfigGlobAdd (parse->config,
+ if (!FcConfigGlobAdd (parse->config,
vstack->u.string,
element == FcElementAcceptfont))
{
@@ -1901,12 +2126,12 @@ FcPopValue (FcConfigParse *parse)
{
FcVStack *vstack = FcVStackPeek (parse);
FcValue value;
-
+
value.type = FcTypeVoid;
-
+
if (!vstack)
return value;
-
+
switch (vstack->tag) {
case FcVStackString:
value.u.s = FcStrStaticName (vstack->u.string);
@@ -1934,13 +2159,23 @@ FcPopValue (FcConfigParse *parse)
value.u.b = vstack->u.bool_;
value.type = FcTypeBool;
break;
+ case FcVStackCharSet:
+ value.u.c = FcCharSetCopy (vstack->u.charset);
+ if (value.u.c)
+ value.type = FcTypeCharSet;
+ break;
+ case FcVStackLangSet:
+ value.u.l = FcLangSetCopy (vstack->u.langset);
+ if (value.u.l)
+ value.type = FcTypeLangSet;
+ break;
default:
- FcConfigMessage (parse, FcSevereWarning, "unknown pattern element %d",
+ FcConfigMessage (parse, FcSevereWarning, "unknown pattern element %d",
vstack->tag);
break;
}
FcVStackPopAndDestroy (parse);
-
+
return value;
}
@@ -1964,7 +2199,7 @@ FcParsePatelt (FcConfigParse *parse)
FcPatternDestroy (pattern);
return;
}
-
+
for (;;)
{
value = FcPopValue (parse);
@@ -2199,11 +2434,17 @@ FcEndElement(void *userData, const XML_Char *name)
case FcElementMatrix:
FcParseMatrix (parse);
break;
+ case FcElementRange:
+ FcParseRange (parse);
+ break;
case FcElementBool:
FcParseBool (parse);
break;
- case FcElementCharset:
-/* FcParseCharset (parse); */
+ case FcElementCharSet:
+ FcParseCharSet (parse);
+ break;
+ case FcElementLangSet:
+ FcParseLangSet (parse);
break;
case FcElementSelectfont:
break;
@@ -2296,7 +2537,7 @@ static void
FcCharacterData (void *userData, const XML_Char *s, int len)
{
FcConfigParse *parse = userData;
-
+
if (!parse->pstack)
return;
if (!FcStrBufData (&parse->pstack->str, (FcChar8 *) s, len))
@@ -2382,18 +2623,18 @@ FcConfigParseAndLoadDir (FcConfig *config,
ret = FcFalse;
goto bail1;
}
-
+
strcpy ((char *) file, (char *) dir);
strcat ((char *) file, "/");
base = file + strlen ((char *) file);
-
+
files = FcStrSetCreate ();
if (!files)
{
ret = FcFalse;
goto bail2;
}
-
+
if (FcDebug () & FC_DBG_CONFIG)
printf ("\tScanning config dir %s\n", dir);
@@ -2421,7 +2662,7 @@ FcConfigParseAndLoadDir (FcConfig *config,
if (ret)
{
int i;
- qsort (files->strs, files->num, sizeof (FcChar8 *),
+ qsort (files->strs, files->num, sizeof (FcChar8 *),
(int (*)(const void *, const void *)) FcSortCmpStr);
for (i = 0; ret && i < files->num; i++)
ret = FcConfigParseAndLoad (config, files->strs[i], complain);
@@ -2448,18 +2689,18 @@ FcConfigParseAndLoad (FcConfig *config,
int len;
FcConfigParse parse;
FcBool error = FcTrue;
-
+
#ifdef ENABLE_LIBXML2
xmlSAXHandler sax;
char buf[BUFSIZ];
#else
void *buf;
#endif
-
+
filename = FcConfigFilename (name);
if (!filename)
goto bail0;
-
+
if (FcStrSetMember (config->configFiles, filename))
{
FcStrFree (filename);
@@ -2483,11 +2724,11 @@ FcConfigParseAndLoad (FcConfig *config,
printf ("\tLoading config file %s\n", filename);
fd = open ((char *) filename, O_RDONLY);
- if (fd == -1) {
+ if (fd == -1) {
FcStrFree (filename);
goto bail0;
}
-
+
#ifdef ENABLE_LIBXML2
memset(&sax, 0, sizeof(sax));
@@ -2512,7 +2753,7 @@ FcConfigParseAndLoad (FcConfig *config,
#ifndef ENABLE_LIBXML2
XML_SetUserData (p, &parse);
-
+
XML_SetDoctypeDeclHandler (p, FcStartDoctypeDecl, FcEndDoctypeDecl);
XML_SetElementHandler (p, FcStartElement, FcEndElement);
XML_SetCharacterDataHandler (p, FcCharacterData);
@@ -2541,7 +2782,7 @@ FcConfigParseAndLoad (FcConfig *config,
if (!XML_ParseBuffer (p, len, len == 0))
#endif
{
- FcConfigMessage (&parse, FcSevereError, "%s",
+ FcConfigMessage (&parse, FcSevereError, "%s",
XML_ErrorString (XML_GetErrorCode (p)));
goto bail3;
}