Behdad Esfahbod
6a91a2eb04
Fix wide bitops implemenetation
2018-02-16 17:49:41 -08:00
Behdad Esfahbod
d25c3e69e9
[set] Readjust parameters
2018-02-16 17:45:09 -08:00
Behdad Esfahbod
6d5c0bf8b1
Fix bitops fallback impl
2018-02-16 17:33:26 -08:00
Behdad Esfahbod
82eb1dac16
Flesh out other bit ops some more for 128bit as well
2018-02-16 16:52:09 -08:00
Behdad Esfahbod
864a2dddae
Clean up bit functions
...
Compile all code-paths possible, to better catch errors.
Also enable MSVC ones on mingw which seems to support them.
2018-02-16 16:09:38 -08:00
Behdad Esfahbod
978ace6fbb
Improve _hb_popcount()
...
Support 128bit type.
2018-02-16 16:08:45 -08:00
Behdad Esfahbod
7b5ce74047
Fix warnings
2018-02-16 15:38:02 -08:00
rsheeter
926db87455
Merge pull request #792 from googlefonts/master
...
Support more tables in subsetter
2018-02-16 15:27:29 -08:00
Arkady Shapkin
d37310ac5d
Remove checking macros __OPTIMIZE__ for MSVC
...
Visual C++ compiler doesn't define macros __OPTIMIZE__ when optimizations enabled
2018-02-16 12:40:11 -08:00
Rod Sheeter
be0a01a676
Merge branch 'master' of https://github.com/harfbuzz/harfbuzz
2018-02-16 06:01:41 -08:00
Ebrahim Byagowi
139c9928f6
Fix hb-private.hh compile issue
2018-02-16 13:27:26 +03:30
Arkady Shapkin
6c10328eb8
Use _BitScanForward and _BitScanReverse on MSVC
2018-02-15 14:31:25 -08:00
Rod Sheeter
7acaa3b781
[subset] apparently C99 is too much to ask in 2018
2018-02-15 14:28:29 -08:00
Rod Sheeter
b1740106a9
[subset] fix format specifier for size_t
2018-02-15 13:55:21 -08:00
Rod Sheeter
e00c37aaae
[subset] fix no matching function MIN in djgpp
2018-02-15 12:53:52 -08:00
Rod Sheeter
0758cbc4c2
[subset] correct bug introduced to get_advance
2018-02-15 11:29:01 -08:00
Rod Sheeter
3fd11f4397
[subset] remove unused decl
2018-02-15 11:15:12 -08:00
Rod Sheeter
0e088a63d1
[subset] hmtx space bracket. authors++
2018-02-14 21:11:45 -08:00
Rod Sheeter
1725c35da0
[subset] cmap space bracket
2018-02-14 19:36:33 -08:00
Rod Sheeter
e158739bfb
[subset] space bracket
2018-02-14 19:22:37 -08:00
Rod Sheeter
2d6b1e2af7
[subset] maxp copy writeable fn
2018-02-14 19:14:01 -08:00
Rod Sheeter
1efecd965f
[subset] hmtx use copy writeable fn instead of direct memory
2018-02-14 19:05:41 -08:00
Behdad Esfahbod
b1bd0b5f50
[subset] Minor
2018-02-14 18:50:19 -08:00
Behdad Esfahbod
5ae6526ef4
[subset] Merge remote-tracking branch 'googlefonts/master'
2018-02-14 18:42:32 -08:00
Garret Rieger
0775bc0f7a
[subset] Fix hhea subsetting and clean up some memory leaks.
2018-02-14 16:37:35 -08:00
Garret Rieger
b56c9384bc
[subset] Add missing face reference in hb-subset-plan plus ensure all struct members are cleaned up on destroy.
2018-02-14 16:05:39 -08:00
Garret Rieger
e330ef3711
[subset] Restore hb_face_data_destroy to be internal.
2018-02-14 15:57:18 -08:00
Garret Rieger
3ab7d2649b
[subset] Fix memory leak in hb-ot-{maxp,os2}. Plus some formatting.
2018-02-14 15:48:57 -08:00
Behdad Esfahbod
2903b2f357
Another linker tweaking
...
Trying to fix this warning:
cc1: warning: command line option ‘-fno-threadsafe-statics’ is valid for C++/ObjC++ but not for C
Let's see what the clang bots think of it.
2018-02-14 15:46:27 -08:00
Behdad Esfahbod
e1f1f96577
[set] Tune size again
...
Switch from a 128+64 hierarchy, to 32+32. New page size is 1024.
This should make set iteration faster, without affecting other op
performances much.
2018-02-14 15:44:48 -08:00
Rod Sheeter
66e282df32
[subset] remove TODO that was already done
2018-02-14 15:31:13 -08:00
Rod Sheeter
4696624ad9
[subset] maxp wrong int type, note to use copy_writable_or_fail
2018-02-14 15:30:49 -08:00
Rod Sheeter
3ed70e5e64
[subset] return bool not hb_bool_t from table::subset
2018-02-14 15:24:49 -08:00
Rod Sheeter
88d56e241b
[subset] Use a supplier instead of memcpy and fix a few unnecessary {}s for cmap
2018-02-14 15:20:43 -08:00
Rod Sheeter
42a80f00d5
[subset] add free
2018-02-14 15:04:35 -08:00
Rod Sheeter
d463e9f6b5
[subset] Give Behdad credit again
2018-02-14 15:04:15 -08:00
Rod Sheeter
fa87770372
[subset] First pass at hmtx
2018-02-14 14:53:10 -08:00
Behdad Esfahbod
ccae99fdad
Another try
2018-02-14 11:12:09 -08:00
Behdad Esfahbod
8c3612af65
Tweak Makefile some more
2018-02-14 10:57:34 -08:00
Behdad Esfahbod
d594f947b6
[subset] Allow linking to libstdc++
...
We want to use it.
2018-02-14 10:55:25 -08:00
Rod Sheeter
a0fe3011ba
copy all cmap groups at once
2018-02-14 10:52:41 -08:00
Garret Rieger
d008b62887
Merge remote-tracking branch 'upstream/master' into fixed
2018-02-14 10:38:52 -08:00
Garret Rieger
89f17e3965
[subset] capitalize dsig.
2018-02-14 10:19:50 -08:00
Garret Rieger
df6d780355
[subset] Extract maxp subsetting into hb-ot-maxp-table.
2018-02-14 10:19:50 -08:00
Garret Rieger
343dfe8965
[subset] white and add inline in hb-ot-cmap-table.
2018-02-14 10:19:50 -08:00
Garret Rieger
24904383df
[subset] Correct usFirstCharIndex and usLastCharIndex in OS2 table when subsetting.
2018-02-14 10:19:50 -08:00
Ebrahim Byagowi
109314cb55
Another attempt on fixing the tests on Travis ( #788 )
2018-02-14 21:05:11 +03:30
Behdad Esfahbod
694eaf6367
[set] Add backwards iterator
...
New API:
- hb_set_previous()
- hb_set_previous_range()
2018-02-14 01:00:10 -08:00
Behdad Esfahbod
fe3bc524bd
[set] Allow starting iteration from a non-member of the set
2018-02-13 23:51:45 -08:00
Behdad Esfahbod
a989f3edec
Add hb_blob_copy_writable_or_fail()
...
New API:
- hb_blob_copy_writable_or_fail()
2018-02-13 22:12:36 -08:00
Behdad Esfahbod
9046e92442
[subset] Rename constructor to hb_subset_input_create_or_fail()
...
To signify that unlike rest of library, returns nullptr on failure.
2018-02-13 22:07:12 -08:00
Behdad Esfahbod
507804479a
[use] Add dump-use-data
2018-02-13 21:46:28 -08:00
Behdad Esfahbod
15ba4fbe01
[khmer] Add dump-khmer-data
2018-02-13 21:41:51 -08:00
Behdad Esfahbod
effddd03bd
[myanmar] Add dump-myanmar-data
2018-02-13 21:38:15 -08:00
Behdad Esfahbod
c0e45b60a0
[indic] Rename print-indic-table to dump-indic-data
...
Makes more sense given what this prints, err, dumps.
2018-02-13 21:25:16 -08:00
Behdad Esfahbod
9b878bd216
[indic] Explicitly number indic_position_t
...
So it's easier to cross-reference from output of print-indic-table.
2018-02-13 21:22:47 -08:00
Behdad Esfahbod
8634846a0a
More tweaking linker and linker flags
2018-02-13 21:18:00 -08:00
Behdad Esfahbod
d830d3d244
[indic] Share some copy/pasta code
2018-02-13 19:01:03 -08:00
Behdad Esfahbod
397ed53e55
[indic] Add print-indic-table
2018-02-13 18:54:26 -08:00
Behdad Esfahbod
fd0bde6325
[subset] Fix loca offsets
...
Was writing source font's offsets. Ouch.
2018-02-13 16:35:30 -08:00
Behdad Esfahbod
aeed082e28
Another tweak at libstdc++ things
...
To fix this warning:
cc1: warning: command line option ‘-fno-threadsafe-statics’ is valid for C++/ObjC++ but not for C
2018-02-13 14:02:59 -08:00
Behdad Esfahbod
c7d7c9898e
[aat] Minor
2018-02-13 14:00:14 -08:00
Behdad Esfahbod
2dbfeecf96
Minor
2018-02-13 13:59:39 -08:00
Behdad Esfahbod
d5b33f2fe1
[subset] hb_subset_input_t changes
2018-02-13 13:55:10 -08:00
Behdad Esfahbod
28e63a1287
Disable threadsafe static's for all libraries
...
Even in libharfbuzz-subset, we still will handle our own threadsafety
for statics.
2018-02-13 13:50:21 -08:00
Behdad Esfahbod
b969a82e30
Pass no-libstdc++ flags only to libraries suppressing it
2018-02-12 20:51:26 -08:00
Behdad Esfahbod
97a2f03200
[subset] Allocate bulk memory with malloc(), not calloc()
...
We use calloc() to allocate simple structs and set them to zero.
For bulk memory, use malloc() that doesn't zero.
2018-02-12 18:51:10 -08:00
Behdad Esfahbod
96f1f52ea3
Use hb_face_get_upem() instead of face->get_upem()
...
Such that hmtx accelerator can be used from libharfbuzz-subset.
2018-02-12 18:49:38 -08:00
Behdad Esfahbod
3d66f441cc
[subset] Remove unreachable code
...
sanitizer.sanitize never return nullptr.
2018-02-12 18:43:42 -08:00
Behdad Esfahbod
42040a273f
Allow libharfbuzz-subset to link to libstdc++
...
We want to use it instead of reinventing hashmap...
Also, don't change linker for ICU since libicu also uses libstdc++.
2018-02-12 18:41:36 -08:00
Ebrahim Byagowi
4af3c5e258
Move linker specifying to a better place
2018-02-12 18:39:42 -08:00
Rod Sheeter
d1a4d5616f
output format 12 as enc 10 to match how Roboto did it
2018-02-12 16:25:32 -08:00
Rod Sheeter
afb1da3a18
auto-completed the wrong gids_to_retain
2018-02-12 14:37:47 -08:00
Rod Sheeter
1330edc4fe
Use functions to get new gids. Avoid 0; fonttools drops it from cmap.
2018-02-12 14:29:23 -08:00
Garret Rieger
e8318188c0
[subset] Fix loca generation, was previously writing the original glyph starting offset.
2018-02-12 11:38:28 -08:00
Khaled Hosny
0b94d590d9
Rename --with-stdcpp → --with-libstdc++
...
Also improve wording a bit and fix make check in --with-libstdc++=yes.
2018-02-12 12:37:41 -07:00
Rod Sheeter
a5713bc2cb
we love all our groups
2018-02-12 11:30:57 -08:00
Rod Sheeter
692f86e569
drop GDEF, GPOS, GSUB, and dsig
2018-02-12 11:30:57 -08:00
Garret Rieger
83e1ef9215
[subset] Set the new number of glyphs in maxp.
2018-02-12 11:22:50 -08:00
Garret Rieger
427f9e4b90
Don't force loca version to long.
2018-02-12 11:18:28 -08:00
Garret Rieger
5df080bf15
Destroy the subset plan at the end of subsetting.
2018-02-12 10:15:59 -08:00
Rod Sheeter
0301e5be28
Build a working cmap format 12
2018-02-12 10:12:11 -08:00
Rod Sheeter
ebd31d376d
subset for real
2018-02-12 10:10:08 -08:00
Rod Sheeter
62c7d677e8
C-style comments
2018-02-12 10:09:35 -08:00
Ebrahim Byagowi
91f0d51f05
Fix symbol exporting issue on msys2 and ✅ bringing all the bots ( #781 )
2018-02-12 17:20:12 +03:30
Ebrahim Byagowi
133e17fe23
Minor
2018-02-12 15:24:22 +03:30
Ebrahim Byagowi
16f5b53eec
Minor, don't skip the whole test when one .def file not found
2018-02-12 15:18:13 +03:30
Ebrahim Byagowi
a9b650d384
Apply check-defs.sh to -icu and -subset, toward mingw fix ( #780 )
2018-02-12 15:10:13 +03:30
Ebrahim Byagowi
2efc896550
Add --with-stdcpp for ossfuzzer and mupdf use ( #770 )
2018-02-12 12:00:07 +03:30
Behdad Esfahbod
7747bdb11b
Remove linker selection from hb-ucdn
...
Since this is a convenience library, it's not actually linked. Or so I think.
Hoping this might fix this Appveyor failure:
https://ci.appveyor.com/project/harfbuzz/harfbuzz/build/job/9884jyb5vryja9pw
Making all in hb-ucdn
make[4]: Entering directory '/c/projects/harfbuzz/src/hb-ucdn'
CC libhb_ucdn_la-ucdn.lo
GEN libhb-ucdn.la
/bin/sh: libhb_ucdn_la-ucdn.lo: command not found
make[4]: *** [Makefile:404: libhb-ucdn.la] Error 127
make[4]: Leaving directory '/c/projects/harfbuzz/src/hb-ucdn'
make[3]: *** [Makefile:2548: all-recursive] Error 1
make[3]: Leaving directory '/c/projects/harfbuzz/src'
make[2]: *** [Makefile:1382: all] Error 2
make[2]: Leaving directory '/c/projects/harfbuzz/src'
make[1]: *** [Makefile:486: all-recursive] Error 1
make[1]: Leaving directory '/c/projects/harfbuzz'
make: *** [Makefile:418: all] Error 2
2018-02-11 19:12:52 -08:00
Behdad Esfahbod
90d1c740c3
Add MSVC to no-visibility list
2018-02-11 19:08:59 -08:00
Behdad Esfahbod
0db6c6f214
Add Sun compiler to no-visibility as well
...
Fixes https://github.com/harfbuzz/harfbuzz/pull/776
2018-02-11 18:29:01 -08:00
Behdad Esfahbod
dde6448379
Another try at fixing multiple-defintion of NullPool
...
This one might do it...
2018-02-11 18:24:22 -08:00
Behdad Esfahbod
41906cd5ef
[subset] Another fixup
...
I broke this in c31fcf4c58
2018-02-11 19:46:06 -06:00
Behdad Esfahbod
cd32177a32
Try at fixing multiple-definition of NullPool
...
If we don't have visibility, make NullPool static.
2018-02-11 19:36:00 -06:00
Behdad Esfahbod
3d421ce307
[subset] Use auto_array_t where it does make sense
...
Better fix for https://github.com/harfbuzz/harfbuzz/pull/775
2018-02-11 19:01:44 -06:00
Behdad Esfahbod
9aa2eb61e6
Minor
2018-02-11 19:00:49 -06:00
Ebrahim Byagowi
c8d4c2e32f
Initialize bad_indices on hb-subset ( #775 )
2018-02-11 13:15:44 +03:30
Ebrahim Byagowi
5845e5ca3b
fix gobject compile issue ( #773 )
2018-02-11 12:03:33 +03:30
Behdad Esfahbod
9b5af3ec7f
[gpos] Adjust mark attachment heuristic
...
Hopefully it...
fixes https://github.com/harfbuzz/harfbuzz/issues/740
2018-02-10 21:50:44 -06:00