Behdad Esfahbod [Sun, 7 Oct 2012 21:02:50 +0000 (17:02 -0400)]
Make default-FcConfig threadsafe
Behdad Esfahbod [Sun, 7 Oct 2012 20:42:36 +0000 (16:42 -0400)]
Minor
Behdad Esfahbod [Sun, 7 Oct 2012 20:37:03 +0000 (16:37 -0400)]
Refactor; contain default config in fccfg.c
Behdad Esfahbod [Sun, 7 Oct 2012 20:26:53 +0000 (16:26 -0400)]
Make FcDefaultFini() threadsafe
Behdad Esfahbod [Sun, 7 Oct 2012 20:09:35 +0000 (16:09 -0400)]
Make FcInitDebug() idempotent
Behdad Esfahbod [Sun, 7 Oct 2012 19:52:25 +0000 (15:52 -0400)]
Make FcGetDefaultLang and FcGetDefaultLangs thread-safe
Behdad Esfahbod [Sun, 7 Oct 2012 18:41:38 +0000 (14:41 -0400)]
Make refcounts, patterns, charsets, strings, and FcLang thread-safe
Behdad Esfahbod [Sun, 7 Oct 2012 18:24:28 +0000 (14:24 -0400)]
Add thread-safety primitives
Behdad Esfahbod [Sun, 7 Oct 2012 17:49:45 +0000 (13:49 -0400)]
Add build stuff for threadsafety primitives
Copied over from HarfBuzz.
Behdad Esfahbod [Sat, 6 Oct 2012 22:15:58 +0000 (18:15 -0400)]
Fix build stuff
Behdad Esfahbod [Sat, 6 Oct 2012 22:12:19 +0000 (18:12 -0400)]
Remove shared-str pool
We used to have a shared-str pool. Removed to make thread-safety
work easier. My measurements show that the extra overhead is not
significant by any means.
Behdad Esfahbod [Sat, 6 Oct 2012 21:52:39 +0000 (17:52 -0400)]
Switch .gitignore to git.mk
Behdad Esfahbod [Thu, 20 Sep 2012 18:42:31 +0000 (14:42 -0400)]
Use a static perfect hash table for object-name lookup
The hash table is generated by gperf. For runtime element types, we use
a append-only linked list.
A bit clumsy, but I think I got it right.
Behdad Esfahbod [Thu, 20 Sep 2012 18:01:47 +0000 (14:01 -0400)]
Deprecate FcName(Un)RegisterObjectTypes / FcName(Un)RegisterConstants
These never worked as intended. The problem is, if Fontconfig tries to
read config files when these new types / constants are not registered,
it errs. As a result, no defined types / constants are usable from
config files. Which makes these really useless. Xft was the only user
of this API and even there it's not really used. Just kill it.
One inch closer to thread-safety since we can fix the object-type hash
table at compile time.
Behdad Esfahbod [Wed, 2 Jan 2013 02:28:08 +0000 (20:28 -0600)]
Whitespace
Behdad Esfahbod [Wed, 2 Jan 2013 02:27:54 +0000 (20:27 -0600)]
Minor
Behdad Esfahbod [Wed, 2 Jan 2013 02:20:31 +0000 (20:20 -0600)]
Don't crash in FcPatternFormat() with NULL pattern
Behdad Esfahbod [Wed, 2 Jan 2013 02:20:12 +0000 (20:20 -0600)]
Don't crash in FcPatternDestroy with NULL pattern
Behdad Esfahbod [Wed, 2 Jan 2013 02:10:18 +0000 (20:10 -0600)]
Add NULL check
Behdad Esfahbod [Wed, 2 Jan 2013 02:09:08 +0000 (20:09 -0600)]
Refuse to set value to unsupported types during config too
Behdad Esfahbod [Wed, 2 Jan 2013 01:52:14 +0000 (19:52 -0600)]
Make FC_DBG_OBJTYPES debug messages into warnings
And remove FC_DBG_OBJTYPES since it has no use now.
Behdad Esfahbod [Tue, 1 Jan 2013 02:11:12 +0000 (20:11 -0600)]
Warn if <name target="font"> appears in <match target="pattern">
Behdad Esfahbod [Tue, 1 Jan 2013 02:00:17 +0000 (20:00 -0600)]
Adjust docs for recent changes
Behdad Esfahbod [Tue, 1 Jan 2013 01:55:37 +0000 (19:55 -0600)]
Initialize matrix during name parsing
Before:
$ fc-match sans:matrix=2 -v | grep matrix
matrix: [2 6.95183e-310; 0 0](s)
After:
$ fc-match sans:matrix=2 -v | grep matrix
matrix: [2 0; 0 1](s)
Behdad Esfahbod [Mon, 31 Dec 2012 23:21:07 +0000 (17:21 -0600)]
Make tests run on Windows
Behdad Esfahbod [Mon, 31 Dec 2012 23:20:29 +0000 (17:20 -0600)]
Enable fcarch assert checks even when FC_ARCHITECTURE is explicitly given
After all, if the asserts fail, the resulting library simply can't be
working correctly.
Behdad Esfahbod [Mon, 31 Dec 2012 23:20:12 +0000 (17:20 -0600)]
Remove unneeded stuff
Behdad Esfahbod [Mon, 31 Dec 2012 23:00:19 +0000 (17:00 -0600)]
Unbreak build when FC_ARCHITECTURE is defined
Behdad Esfahbod [Mon, 31 Dec 2012 01:08:42 +0000 (19:08 -0600)]
Don't warn if an unknown element is used in an expression
The type will be resolved at runtime...
For example, we can do this now without getting a warning:
<match target="font">
<test name="scalable" compare="eq">
<bool>false</bool>
</test>
<edit name="pixelsizefixupfactor" mode="assign">
<divide>
<name target="pattern">pixelsize</name>
<name target="font" >pixelsize</name>
</divide>
</edit>
<edit name="matrix" mode="assign">
<times>
<name>matrix</name>
<matrix>
<name>pixelsizefixupfactor</name> <double>0</double>
<double>0</double> <name>pixelsizefixupfactor</name>
</matrix>
</times>
</edit>
<edit name="size" mode="assign">
<divide>
<name>size</name>
<name>pixelsizefixupfactor</name>
</divide>
</edit>
</match>
Previously the last edit was generating:
Fontconfig warning: "/home/behdad/.local/etc/fonts/conf.d/00-scale-bitmap-fonts.conf", line 29: saw unknown, expected number
Behdad Esfahbod [Sun, 30 Dec 2012 04:58:38 +0000 (23:58 -0500)]
Allow target="font/pattern/default" in <name> elements
Based on idea from Raimund Steger.
For example, one can do something like this:
<match target="font">
<test name="scalable" compare="eq">
<bool>false</bool>
</test>
<edit name="pixelsizefixupfactor" mode="assign">
<divide>
<name target="pattern">pixelsize</name>
<name target="font" >pixelsize</name>
</divide>
</edit>
<edit name="matrix" mode="assign">
<times>
<name>matrix</name>
<matrix>
<name>pixelsizefixupfactor</name> <double>0</double>
<double>0</double> <name>pixelsizefixupfactor</name>
</matrix>
</times>
</edit>
</match>
Part of work to make bitmap font scaling possible. See thread
discussion:
http://lists.freedesktop.org/archives/fontconfig/2012-December/004498.html
Behdad Esfahbod [Sun, 30 Dec 2012 04:12:07 +0000 (23:12 -0500)]
Remove memory accounting and reporting
That belongs in tools like cairo/util/malloc-stat.so
Behdad Esfahbod [Sun, 30 Dec 2012 03:57:53 +0000 (22:57 -0500)]
Behdad Esfahbod [Sun, 30 Dec 2012 03:56:14 +0000 (22:56 -0500)]
Fix more warnings
Behdad Esfahbod [Sun, 30 Dec 2012 03:55:36 +0000 (22:55 -0500)]
Fix warning
Behdad Esfahbod [Sun, 30 Dec 2012 03:47:49 +0000 (22:47 -0500)]
Fix sign-compare warnings
Behdad Esfahbod [Sun, 30 Dec 2012 03:33:33 +0000 (22:33 -0500)]
Fix more warnings
Behdad Esfahbod [Sun, 30 Dec 2012 03:32:56 +0000 (22:32 -0500)]
Fix unused-parameter warnings
Behdad Esfahbod [Sun, 30 Dec 2012 03:11:09 +0000 (22:11 -0500)]
Fix compiler warnings
Behdad Esfahbod [Sun, 30 Dec 2012 02:39:06 +0000 (21:39 -0500)]
Parse matrices of expressions
Previously a <matrix> element could only accept four <double> literals.
It now accepts full expressions, which can in turn poke into the
pattern, do math, etc.
Behdad Esfahbod [Sun, 30 Dec 2012 01:14:07 +0000 (20:14 -0500)]
Fix typo
Ouch, this has been wrong since 2004... I guess no one uses <patelt>
stuff.
Akira TAGOH [Tue, 11 Dec 2012 09:53:57 +0000 (18:53 +0900)]
Check the system font to be initialized
config->fonts is an array and checking if config->fonts is a null
will not be useful.
Akira TAGOH [Tue, 11 Dec 2012 03:38:42 +0000 (12:38 +0900)]
Fix a memory leak
Akira TAGOH [Tue, 11 Dec 2012 03:35:02 +0000 (12:35 +0900)]
Fix a typo that accessing to the out of array
Akira TAGOH [Tue, 11 Dec 2012 03:30:05 +0000 (12:30 +0900)]
clean up
ret won't be -1 if HAVE_STRUCT_DIRENT_D_TYPE isn't defined.
Akira TAGOH [Tue, 11 Dec 2012 02:37:23 +0000 (11:37 +0900)]
Remove the dead code
Akira TAGOH [Mon, 10 Dec 2012 01:54:47 +0000 (10:54 +0900)]
Remove the duplicate null-check
Akira TAGOH [Fri, 7 Dec 2012 10:09:36 +0000 (19:09 +0900)]
Fix the wrong estimation for the memory usage information in fontconfig
Akira TAGOH [Thu, 6 Dec 2012 10:49:05 +0000 (19:49 +0900)]
Fix a typo
Akira TAGOH [Wed, 5 Dec 2012 09:13:25 +0000 (18:13 +0900)]
Do not show the deprecation warning if it is a symlink
Akira TAGOH [Fri, 30 Nov 2012 11:10:30 +0000 (20:10 +0900)]
Fix build issues on clean tree
Jon TURNEY [Wed, 28 Nov 2012 16:10:28 +0000 (16:10 +0000)]
Fix build when srcdir != builddir
When ./configure'd in a directory other than the srcdir, we need to look
in ${top_builddir)/src for the generated header fcstdint.h
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Akira TAGOH [Tue, 27 Nov 2012 09:25:11 +0000 (18:25 +0900)]
Fix a potability issue about stdint.h
Akira TAGOH [Mon, 26 Nov 2012 08:21:14 +0000 (17:21 +0900)]
Bump version to 2.10.2
Akira TAGOH [Tue, 20 Nov 2012 11:09:10 +0000 (20:09 +0900)]
Bug 57286 - Remove UnBatang and Baekmuk Batang from monospace in 65-nonlatin.conf
Those two fonts are serif fonts. shouldn't be added to monospace.
Akira TAGOH [Tue, 20 Nov 2012 02:48:17 +0000 (11:48 +0900)]
Update CaseFolding.txt to Unicode 6.2
No real updates between 6.1 and 6.2, but anyway.
Akira TAGOH [Thu, 15 Nov 2012 07:37:01 +0000 (16:37 +0900)]
Bug 57114 - regression on FcFontMatch with namelang
After
7587d1c99d9476b6dd4dbe523c0204da700fed8d applied, family,
style, and fullname is localized against current locale or lang
if any though, the string in other languages were dropped from
the pattern. this caused unexpected mismatch on the target="font"
rules.
This fix adds other strings at the end of the list.
Akira TAGOH [Tue, 30 Oct 2012 00:56:24 +0000 (09:56 +0900)]
Bug 56531 - autogen.sh fails due to missing 'm4' directory
Keep m4 directory in git.
Akira TAGOH [Fri, 26 Oct 2012 05:31:23 +0000 (14:31 +0900)]
Use automake variable instead of cleaning files in clean-local
just for git.mk coming up from Behdad's threadsafe branch
Akira TAGOH [Tue, 23 Oct 2012 06:52:37 +0000 (15:52 +0900)]
autogen.sh: Add -I option to tell aclocal a place for external m4 files
Akira TAGOH [Tue, 9 Oct 2012 02:05:59 +0000 (11:05 +0900)]
Fix syntax errors in fonts.dtd.
Patch from Steve Simpson
Akira TAGOH [Tue, 9 Oct 2012 02:03:03 +0000 (11:03 +0900)]
Fix wrongly squashing for the network path on Win32.
Patch from Diego Santa Cruz
Akira TAGOH [Tue, 11 Sep 2012 09:09:36 +0000 (18:09 +0900)]
deal with warnings as errors for the previous change
missed this change to commit. doh!
Akira TAGOH [Fri, 31 Aug 2012 06:10:50 +0000 (15:10 +0900)]
Bug 52573 - patch required to build 2.10.x with oldish GNU C library headers
On older libc, _POSIX_C_SOURCE didn't satisfy to use posix_fadvise()
and AC_CHECK_FUNCS doesn't check a header file if the function is
declared there properly. so use AC_LINK_IFELSE instead.
Akira TAGOH [Fri, 31 Aug 2012 03:39:38 +0000 (12:39 +0900)]
Bug 54138 - X_OK permission is invalid for win32 access(..) calls
X_OK checking was added back in
8ae1e3d5dc323542e7def06a42deea62c7ba7027
which was removed due to the same reason in
238489030a64fa883f8f9fc3d73247b7f7257899.
apparently the test case in Bug#18934 still works without it.
so I'm removing it again to get this working on Windows.
Jeremy Huddleston Sequoia [Mon, 27 Aug 2012 21:52:23 +0000 (14:52 -0700)]
Remove _CONFIG_FIXUPS_H_ guards, so multiple includes of "config.h" result in the correct values
Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
Akira TAGOH [Mon, 27 Aug 2012 07:36:49 +0000 (16:36 +0900)]
Fix for libtoolize's warnings
Behdad Esfahbod [Sat, 25 Aug 2012 18:10:14 +0000 (14:10 -0400)]
Fix N'ko orthography
Akira TAGOH [Thu, 16 Aug 2012 11:33:12 +0000 (20:33 +0900)]
Bug 53585 - Two highly-visible typos in src/fcxml.c
Akira TAGOH [Fri, 27 Jul 2012 02:22:14 +0000 (11:22 +0900)]
Bump version to 2.10.1
Akira TAGOH [Mon, 23 Jul 2012 04:59:16 +0000 (13:59 +0900)]
Install config files first
Use install-data-hook instead of install-data-local.
This allows on the real installation to create a symlink with
the broken ln command though, still not work with the pseudo
installation by using DESTDIR say.
Akira TAGOH [Thu, 19 Jul 2012 01:20:30 +0000 (10:20 +0900)]
Fix a typo in fontconfig.pc
Reported by Daniel Macks
Akira TAGOH [Tue, 17 Jul 2012 05:20:48 +0000 (14:20 +0900)]
correct version
Akira TAGOH [Tue, 17 Jul 2012 02:36:01 +0000 (11:36 +0900)]
Bump version to 2.10
Akira TAGOH [Tue, 17 Jul 2012 02:35:41 +0000 (11:35 +0900)]
Update INSTALL
Akira TAGOH [Tue, 17 Jul 2012 02:34:31 +0000 (11:34 +0900)]
Bump libtool revision
Akira TAGOH [Mon, 18 Jun 2012 02:23:39 +0000 (11:23 +0900)]
Fix a build fail with gcc 2.95, not supporting the flexible array members.
Akira TAGOH [Fri, 6 Jul 2012 10:02:05 +0000 (19:02 +0900)]
Update CaseFolding.txt to Unicode 6.1
Akira TAGOH [Tue, 3 Jul 2012 10:56:56 +0000 (19:56 +0900)]
Bug 34266 - configs silently ignored if libxml2 doesn't support SAX1 interface
Check if libxml2 has built with --with-sax1
Akira TAGOH [Mon, 25 Jun 2012 05:57:51 +0000 (14:57 +0900)]
Bump version to 2.9.92
Akira TAGOH [Mon, 25 Jun 2012 05:57:40 +0000 (14:57 +0900)]
Update INSTALL
Akira TAGOH [Mon, 25 Jun 2012 05:50:18 +0000 (14:50 +0900)]
Bump libtool revision
Akira TAGOH [Tue, 24 Apr 2012 10:11:41 +0000 (19:11 +0900)]
Bug 18726 - RFE: help write locale-specific tests
Add an example matching rule for the language specific
Marius Tolzmann [Thu, 21 Jun 2012 19:01:10 +0000 (21:01 +0200)]
Fix warning about deprecated, non-existent config includes
Fontconfig warning: "/etc/fonts/conf.d/50-user.conf", line 8: reading configurations from ~/.fonts.conf.d is deprecated.
Fontconfig warning: "/etc/fonts/conf.d/50-user.conf", line 9: reading configurations from ~/.fonts.conf is deprecated.
Be polite and do not issue the warning if deprecated config includes
(e.g. ~/.fonts.conf.d and/or ~/.fonts.conf) do not exist.
Marius Tolzmann [Thu, 21 Jun 2012 19:01:09 +0000 (21:01 +0200)]
Fix newline in warning about deprecated config includes
Akira TAGOH [Mon, 18 Jun 2012 09:31:36 +0000 (18:31 +0900)]
Rename configure.in to configure.ac
Akira TAGOH [Mon, 18 Jun 2012 01:52:21 +0000 (10:52 +0900)]
clean up the lock file properly on even hardlink-not-supported filesystem.
Akira TAGOH [Thu, 14 Jun 2012 02:27:31 +0000 (11:27 +0900)]
Fix the fail of make install with --disable-shared on Win32
Akira TAGOH [Wed, 13 Jun 2012 11:01:30 +0000 (20:01 +0900)]
Fix a build fail on MINGW
Akira TAGOH [Tue, 12 Jun 2012 02:02:03 +0000 (11:02 +0900)]
Fix a typo and build fail.
Akira TAGOH [Mon, 11 Jun 2012 05:14:41 +0000 (14:14 +0900)]
Bug 50835 - Deprecate FC_GLOBAL_ADVANCE
FC_GLOBAL_ADVANCE is deprecated. this flag is simply ignored on
freetype 2.4.5 or later.
Akira TAGOH [Mon, 11 Jun 2012 11:15:15 +0000 (20:15 +0900)]
Bump version to 2.9.91
Mark Brand [Mon, 11 Jun 2012 11:13:02 +0000 (20:13 +0900)]
fix building for WIN32
8c255fb185d5651b57380b0a9443001e8051b29d moved some code out of switch
but did not declare 'buffer'. Also, replacing the "break" with
"goto bail" neglected the WIN32 specific code.
Akira TAGOH [Mon, 11 Jun 2012 09:43:56 +0000 (18:43 +0900)]
Generate bzip2-compressed tarball too
Akira TAGOH [Mon, 11 Jun 2012 09:39:37 +0000 (18:39 +0900)]
doc: Fix distcheck error again...
Akira TAGOH [Mon, 11 Jun 2012 08:48:12 +0000 (17:48 +0900)]
Bump libtool revision
Akira TAGOH [Fri, 8 Jun 2012 10:41:59 +0000 (19:41 +0900)]
Bug 50525 - superfluous whitespace in the style
Akira TAGOH [Fri, 8 Jun 2012 10:17:57 +0000 (19:17 +0900)]
fcdefault: Add the lang object at FcConfigSubstituteWithPat() only when kind is FcMatchPattern
Akira TAGOH [Fri, 8 Jun 2012 06:54:48 +0000 (15:54 +0900)]
fcdefault: no need to set FC_LANG in FcDefaultSubstitute() anymore
Akira TAGOH [Tue, 22 May 2012 05:17:10 +0000 (14:17 +0900)]
Add the default language to the pattern prior to do build the substitution
the default language is referred from the FC_LANG environment variable
or the current locale
Akira TAGOH [Fri, 8 Jun 2012 06:47:52 +0000 (15:47 +0900)]
fcdefault: fallback if the environment variables are empty
try to fallback if FC_LANG, LC_ALL, LC_CTYPE and LANG is empty