Commit Graph

6584 Commits

Author SHA1 Message Date
Chun-wei Fan 19256bef9d hb-private.hh: Add fallback implementation for round()
For pre-C99 compilers that do not support round(), we need to have a
simplistic implementation for it, when it is not detected during build
configuration, either via CMake or autotools, by using floor() and
ceil(), which are provided in the pre-C99 compilers.

Please see discussion at commit 86a0ac2 for more details for re-adding
this patch.
2018-03-23 15:52:33 -07:00
Nikolaus Waxweiler 95f0458f44 Policy 0063 must be enabled to have hidden inline visibility... (#900)
...on static builds.
2018-03-24 00:08:11 +04:30
Ebrahim Byagowi 2a23606339
Fix llvm-gcc-4.2 compile issue and add a macOS bot to test it (#899) 2018-03-23 18:37:01 +04:30
Ebrahim Byagowi 7919033ce8
[dwrite] Replace rest of 'malloc/free's with 'new/delete' (#897) 2018-03-22 16:04:38 +04:30
Garret Rieger 3f55e0e746 [subset] Check for the Null table and not nullptr to detect failure to find a table in glyf accelerator. 2018-03-20 19:47:36 -06:00
Garret Rieger 45def99eae [subset] Fix to debug message. 2018-03-20 19:47:36 -06:00
Garret Rieger 1396614040 [subset] don't use pointers returned from push after array has resized in hb-subset-glyf.cc 2018-03-20 19:47:36 -06:00
Garret Rieger 3531efdb4c [subset] Fixed out of bounds read when subsetting hdmx. 2018-03-20 19:47:36 -06:00
Garret Rieger e597436b99 [subset] Disable glyf accelerator_t methods if it didn't successfully init. 2018-03-20 19:47:36 -06:00
Garret Rieger 7251181b56 [subset] Fix infinite loop in there are more then 32 tables. 2018-03-20 19:47:36 -06:00
Garret Rieger 1a94804d35 [subset] Add a fix for segfault in hmtx/vmtx subsetting code. 2018-03-20 19:47:36 -06:00
Garret Rieger 31281d6a17 [subset] Add a test demonstrating a seg fault while subsetting hmtx. 2018-03-20 19:47:36 -06:00
Garret Rieger b5c7d6cffc [subset] Restore subset to hb-subset-fuzzer. 2018-03-19 16:06:17 -06:00
Ebrahim Byagowi 957e775663
[dwrite] Use new again and enable the build on msys2 bots (#890) 2018-03-19 12:19:42 +03:30
Ebrahim Byagowi 8d1b4082ae
Appropriate fix for msys2 bot fail on gen-def.py (#894) 2018-03-17 01:05:03 +03:30
Ebrahim Byagowi 7b4333b090
Do feature test before adding -Bsymbolic-functions, autotools part (#892) 2018-03-16 22:45:09 +03:30
Joel Winarske d68f00e4d8 Do feature test before adding -Bsymbolic-functions, cmake part (#889) 2018-03-16 22:44:27 +03:30
Ebrahim Byagowi 42d3271cc3
[cmake] Don't hide symbols by default (#891)
But keep use of cmake idiomatic way of making inlines hidden
2018-03-16 22:39:58 +03:30
Garret Rieger 584693e0cb [subset] Test not linking libharfbuzz-subset-fuzzing into hb-subset-fuzzer. 2018-03-16 09:04:01 -07:00
Garret Rieger 3f9361fe7a [subset] Test hb-shape-fuzzer in run-subset-fuzzer-tests. 2018-03-16 09:04:01 -07:00
Garret Rieger ce368e0d05 [subset] make libharfbuzz-subset-fuzzing.la depend on lib target. 2018-03-16 09:04:01 -07:00
Garret Rieger 85a57029cd [subset] %d -> %zu 2018-03-16 09:04:01 -07:00
Garret Rieger 318eea5853 [subset] Add some more logging to hb-subset-fuzzer. 2018-03-16 09:04:01 -07:00
Garret Rieger 64bab8b3d0 [subset] Fix run-shape-fuzzer-tests.py. It was generating incorrect paths for input fonts. 2018-03-16 09:04:01 -07:00
Garret Rieger 6f9a584371 [subset] Add more verbose output for subset fuzzer test. 2018-03-16 09:04:01 -07:00
Garret Rieger 0ce0f87812 [subset] Rename hb-fuzzer -> hb-shape-fuzzer. 2018-03-16 09:04:01 -07:00
Garret Rieger 1e9bd6d5ff [subset] Add rub-subset-fuzzer-tests.py to dist files. 2018-03-16 09:04:01 -07:00
Garret Rieger 474afaafd9 [subset] Add a test runner for hb-subset-fuzzer and cmake build config. 2018-03-16 09:04:01 -07:00
Garret Rieger aa9612d35f [subset] Fix fuzzing build for hb-subset-fuzzer. 2018-03-16 09:04:01 -07:00
Garret Rieger b674fc1f9f [subset] Add missing destroy of subsetting result in subset fuzzer. 2018-03-16 09:04:01 -07:00
Garret Rieger 1beb08862e [subset] First pass at setting up a fuzzing program for hb-subset. 2018-03-16 09:04:01 -07:00
Behdad Esfahbod 127096e474 [util] Remove line buffering
Something weird seems to be going on. Just kill it.

Fixes https://github.com/harfbuzz/harfbuzz/issues/888
2018-03-15 13:23:27 -07:00
Behdad Esfahbod e6e2ee2b92 Remove extra stdbool includes
They are handled in our common header.
2018-03-15 09:05:22 -07:00
Behdad Esfahbod a0dccb6188 Add NameID 2018-03-15 07:47:02 -07:00
Behdad Esfahbod 56946d21c0 [color/COLR] Simplify 2018-03-15 07:47:02 -07:00
Behdad Esfahbod 6418ae4e8a [color/COLR] Clean up 2018-03-15 07:47:02 -07:00
Behdad Esfahbod 150c53ee96 [color/COLR] Fix bad sanitize
Bad bad bad bad code. Don't do that. If compiler's not happy, understand why.
2018-03-15 07:47:02 -07:00
Behdad Esfahbod 399c800b93 [color/COLR] Clean up 2018-03-15 07:47:02 -07:00
Behdad Esfahbod 9e337341d5 [color/cbdt] Clean up 2018-03-15 07:47:02 -07:00
Behdad Esfahbod 86a0ac284f Revert "hb-private.hh: Add fallback implementation for round()"
This reverts commit b9dcbb1f83.

This is gross. Should be only done if a specific macro is defined. Not the other way
around. This fails my build as autotools companions where not added anyway.
2018-03-15 07:47:02 -07:00
Ebrahim Byagowi 791d80a1d4
Merge pull request #886 from madig/only-export-visible-symbols
CMake: hide symbols by default on non-MSVC, define export attribute
2018-03-15 11:40:52 +03:30
Nikolaus Waxweiler 22de9bf56d Enable implicit symbol hiding for all libraries, static and shared
This covers all built libraries now and both static and shared builds.
2018-03-14 10:29:24 +00:00
Ebrahim Byagowi d4907e83ef
[dwrite] GCC/mingw/msys2 compatibility (#884) 2018-03-14 11:04:28 +03:30
Ebrahim Byagowi 93f8f89ded
[ci] Trying to fix gen-def issue on appveyor (#885) 2018-03-14 09:56:31 +03:30
Nikolaus Waxweiler ce975dce7a CMake: hide symbols by default on non-MSVC, define export attribute
This change makes sure that non-MSVC builds using CMake properly hide
non-exported functions.
2018-03-14 00:50:32 +00:00
Ebrahim Byagowi a12dd6f75d
Merge pull request #877 from fanc999/master.msvc
Fix CMake builds on Windows, MSVC in particular
2018-03-14 02:54:07 +03:30
Chun-wei Fan 7c43adab6d CMake: Fix utility program installation
Put in the utility program that was missed in installation by replacing
the one that was duplicated.
2018-03-13 20:17:59 +08:00
Chun-wei Fan e9b8002a60 CMake: Fix introspection on Windows
The list of source files to pass to g-ir-scanner is becoming too
long for Windows, as Windows imposes a 8192-character limit for command
lines, so we need to first transform that list into a listings file, and
then use the --filelist option for g-ir-scanner to build the
introspection files.
2018-03-13 20:17:59 +08:00
Chun-wei Fan 831d4a2dab test/api: Fix building subset tests
Include stdbool.h in hb-setset-test.h instead of in the individual
sources, if it is found; otherwise use a simplistic fallback for it if
it is not found.

Also declare variables at the top of the block, to build on pre-C99
compiliers.
2018-03-13 20:17:58 +08:00
Chun-wei Fan eda6a5ea80 CMake: Fix running tests on Windows
For the API tests, output the test programs at $(TOP_BUILDDIR) so that
the freshly-built DLLs will be available for the test programs.  For
those that are run through the Python wrapper scripts, use
${PYTHON_EXECUTABLE} instead of plain 'python' in case the Python
interpreter is not in the PATH.
2018-03-13 20:17:58 +08:00