appveyor.yml | 15 +++++++++++++-- src/hb-gobject-structs.cc | 3 +++ test/api/Makefile.am | 1 - win32/README.txt | 13 +++++++------ win32/config-msvc.mak | 25 ++++++++++++++++++++----- win32/config.h.win32.in | 2 +- win32/detectenv-msvc.mak | 3 +++ win32/info-msvc.mak | 11 +++++++++-- 8 files changed, 56 insertions(+), 17 deletions(-)
New commits: commit b6c765871b752c9436ec993e47b48f9d4fecaed5 Author: Behdad Esfahbod <beh...@behdad.org> Date: Wed Oct 26 10:33:33 2016 +0200 [ci] Fix appveyor.yml syntax error diff --git a/appveyor.yml b/appveyor.yml index 0653000..ddcc9a4 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -36,7 +36,7 @@ install: - 'if "%compiler%"=="msvc" cd vcpkg' - 'if "%compiler%"=="msvc" powershell -exec bypass scripts\bootstrap.ps1' - 'if "%compiler%"=="msvc" vcpkg install freetype:%VCPKG_ARCH%' - - 'if "%compiler%"=="msvc" copy installed\%VCPKG_ARCH%\debug\lib\freetyped.lib installed\%VCPKG_ARCH%\lib" + - 'if "%compiler%"=="msvc" copy installed\%VCPKG_ARCH%\debug\lib\freetyped.lib installed\%VCPKG_ARCH%\lib' - 'if "%compiler%"=="msvc" cd ..' build_script: commit 0e79ebb3ca9b7b6d238a0007e5ca022845ee9afc Author: Behdad Esfahbod <beh...@behdad.org> Date: Sun Oct 23 14:39:43 2016 +0200 [gobject] Update for new MATH structs diff --git a/src/hb-gobject-structs.cc b/src/hb-gobject-structs.cc index 6bd6336..fef0024 100644 --- a/src/hb-gobject-structs.cc +++ b/src/hb-gobject-structs.cc @@ -78,3 +78,6 @@ HB_DEFINE_VALUE_TYPE (glyph_info) HB_DEFINE_VALUE_TYPE (glyph_position) HB_DEFINE_VALUE_TYPE (segment_properties) HB_DEFINE_VALUE_TYPE (user_data_key) + +HB_DEFINE_VALUE_TYPE (ot_math_glyph_variant) +HB_DEFINE_VALUE_TYPE (ot_math_glyph_part) commit 8c854dc023b1f9e081a3bbd16416b88a4671c267 Merge: bb9805f c3fa5d0 Author: Khaled Hosny <khaledho...@eglug.org> Date: Tue Oct 25 00:31:36 2016 +0300 Merge pull request #352 from fred-wang/makefile-am Remove inexistent file ttx file from test/api/Makefile.am commit c3fa5d0e03b57be131c66ea8720806c946d0e10f Author: Frédéric Wang <fred.w...@free.fr> Date: Mon Oct 24 21:42:04 2016 +0200 Remove inexistent file ttx file from test/api/Makefile.am diff --git a/test/api/Makefile.am b/test/api/Makefile.am index d514a6f..530bf3e 100644 --- a/test/api/Makefile.am +++ b/test/api/Makefile.am @@ -57,7 +57,6 @@ test_ot_math_CPPFLAGS = $(AM_CPPFLAGS) $(FREETYPE_CFLAGS) EXTRA_DIST += \ fonts/MathTestFontEmpty.otf \ fonts/MathTestFontFull.otf \ - fonts/MathTestFontFull.ttx \ fonts/MathTestFontNone.otf \ fonts/MathTestFontPartial1.otf \ fonts/MathTestFontPartial2.otf \ commit bb9805f5419f18c7f5cab32d660fd4109c30f7cc Merge: 702d9f5 755a0c2 Author: Ebrahim Byagowi <ebra...@gnu.org> Date: Sat Oct 22 12:23:05 2016 +0330 Merge pull request #349 from ebraminio/mergebackvcpkgpatches [ci] Enable hb-freetype on Windows build tests commit 755a0c20798e3c3e6bb933a28e38f9667fccdadc Author: Ebrahim Byagowi <ebra...@gnu.org> Date: Fri Oct 21 11:48:58 2016 +0330 [ci] Enable freetype on msvc using vcpkg diff --git a/appveyor.yml b/appveyor.yml index cc16e5e..0653000 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -4,15 +4,19 @@ environment: matrix: - compiler: msvc ARCH: amd64 + VCPKG_ARCH: x64-windows CFG: release - compiler: msvc ARCH: x86 + VCPKG_ARCH: x86-windows CFG: release - compiler: msvc ARCH: amd64 + VCPKG_ARCH: x64-windows CFG: debug - compiler: msvc ARCH: x86 + VCPKG_ARCH: x86-windows CFG: debug - compiler: msys2 @@ -27,11 +31,18 @@ environment: install: - C:\msys64\usr\bin\bash -lc "pacman --noconfirm -S mingw-w64-x86_64-ragel" -build_script: - 'if "%compiler%"=="msvc" call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" %ARCH%' + - 'if "%compiler%"=="msvc" git clone https://github.com/Microsoft/vcpkg' + - 'if "%compiler%"=="msvc" cd vcpkg' + - 'if "%compiler%"=="msvc" powershell -exec bypass scripts\bootstrap.ps1' + - 'if "%compiler%"=="msvc" vcpkg install freetype:%VCPKG_ARCH%' + - 'if "%compiler%"=="msvc" copy installed\%VCPKG_ARCH%\debug\lib\freetyped.lib installed\%VCPKG_ARCH%\lib" + - 'if "%compiler%"=="msvc" cd ..' + +build_script: - 'if "%compiler%"=="msvc" C:\msys64\usr\bin\bash -lc "cd $APPVEYOR_BUILD_FOLDER; PATH=$PATH:/mingw64/bin:/mingw32/bin; ./autogen.sh; make distdir"' - 'if "%compiler%"=="msvc" cd harfbuzz-*\win32' - - 'if "%compiler%"=="msvc" nmake /f Makefile.vc CFG=%CFG% UNISCRIBE=1 DIRECTWRITE=1' + - 'if "%compiler%"=="msvc" nmake /f Makefile.vc CFG=%CFG% UNISCRIBE=1 DIRECTWRITE=1 FREETYPE=1 FREETYPE_DIR=..\..\vcpkg\installed\%VCPKG_ARCH%\include ADDITIONAL_LIB_DIR=..\..\vcpkg\installed\%VCPKG_ARCH%\lib' - 'if "%compiler%"=="msys2" C:\msys64\usr\bin\bash -lc "pacman --noconfirm -S mingw-w64-$MSYS2_ARCH-{freetype,cairo,icu,gettext,gobject-introspection,gcc,gcc-libs,glib2,graphite2,pkg-config}"' - 'if "%compiler%"=="msys2" C:\msys64\usr\bin\bash -lc "cd $APPVEYOR_BUILD_FOLDER; PATH=$PATH:/mingw64/bin:/mingw32/bin; ./autogen.sh --with-uniscribe --with-freetype --with-glib --with-gobject --with-cairo --with-icu --with-graphite2 --build=$MINGW_CHOST --host=$MINGW_CHOST --prefix=$MINGW_PREFIX; make; make check"' commit 4631d84c2bb51395efe3156f9c9f1a6b0e277947 Author: Ebrahim Byagowi <ebra...@gnu.org> Date: Tue Oct 18 14:30:00 2016 +0330 Merge back @vlj's local patches of vcpkg diff --git a/win32/config-msvc.mak b/win32/config-msvc.mak index 88ae071..d8b851d 100644 --- a/win32/config-msvc.mak +++ b/win32/config-msvc.mak @@ -12,7 +12,11 @@ HB_GLIB_LIBS = glib-2.0.lib HB_GOBJECT_DEP_LIBS = gobject-2.0.lib $(HB_GLIB_LIBS) # Freetype is needed for building FreeType support and hb-view +!if "$(CFG)" == "debug" +FREETYPE_LIB = freetyped.lib +!else FREETYPE_LIB = freetype.lib +!endif # Cairo is needed for building hb-view CAIRO_LIB = cairo.lib @@ -125,6 +129,9 @@ HB_DEFINES = $(HB_DEFINES) /DHAVE_CAIRO=1 # Enable freetype if desired !if "$(FREETYPE)" == "1" +!if "$(FREETYPE_DIR)" != "" +HB_CFLAGS = $(HB_CFLAGS) /I$(FREETYPE_DIR) +!endif HB_DEFINES = $(HB_DEFINES) /DHAVE_FREETYPE=1 HB_SOURCES = $(HB_SOURCES) $(HB_FT_sources) HB_HEADERS = $(HB_HEADERS) $(HB_FT_headers) diff --git a/win32/detectenv-msvc.mak b/win32/detectenv-msvc.mak index 83d8786..41f4bd0 100644 --- a/win32/detectenv-msvc.mak +++ b/win32/detectenv-msvc.mak @@ -130,6 +130,9 @@ LDFLAGS_ARCH = /machine:x86 CFLAGS = $(CFLAGS_ADD) /W3 /Zi /I.. /I..\src /I. /I$(PREFIX)\include LDFLAGS_BASE = $(LDFLAGS_ARCH) /libpath:$(PREFIX)\lib /DEBUG +!if "$(ADDITIONAL_LIB_DIR)" != "" +LDFLAGS_BASE = $(LDFLAGS_ARCH) /libpath:$(ADDITIONAL_LIB_DIR) +!endif !if "$(CFG)" == "debug" LDFLAGS = $(LDFLAGS_BASE) commit 702d9f522d1ac4797700f0ea056f69169b8d1a78 Merge: 331c46c d8e2eb9 Author: Ebrahim Byagowi <ebra...@gnu.org> Date: Fri Oct 14 13:54:55 2016 +0330 Merge pull request #340 from ebraminio/nouniscribe Make Uniscribe optional on nmake win32 builds commit d8e2eb9ee0f47af7e90056d8db5949d10a88786a Author: Ebrahim Byagowi <ebra...@gnu.org> Date: Sun Oct 9 09:06:05 2016 +0330 Make Uniscribe optional on nmake win32 builds Most of harfbuzz clients don't need Uniscribe and DirectWrite support at all as harfbuzz is a replacement for Uniscribe so Chromium and Firefox are using harfbuzz without them on Windows. This removal also helps win32 nmake clients to have reduced binary size and libs count. diff --git a/appveyor.yml b/appveyor.yml index 4677a27..cc16e5e 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -31,7 +31,7 @@ build_script: - 'if "%compiler%"=="msvc" call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" %ARCH%' - 'if "%compiler%"=="msvc" C:\msys64\usr\bin\bash -lc "cd $APPVEYOR_BUILD_FOLDER; PATH=$PATH:/mingw64/bin:/mingw32/bin; ./autogen.sh; make distdir"' - 'if "%compiler%"=="msvc" cd harfbuzz-*\win32' - - 'if "%compiler%"=="msvc" nmake /f Makefile.vc CFG=%CFG% DIRECTWRITE=1' + - 'if "%compiler%"=="msvc" nmake /f Makefile.vc CFG=%CFG% UNISCRIBE=1 DIRECTWRITE=1' - 'if "%compiler%"=="msys2" C:\msys64\usr\bin\bash -lc "pacman --noconfirm -S mingw-w64-$MSYS2_ARCH-{freetype,cairo,icu,gettext,gobject-introspection,gcc,gcc-libs,glib2,graphite2,pkg-config}"' - 'if "%compiler%"=="msys2" C:\msys64\usr\bin\bash -lc "cd $APPVEYOR_BUILD_FOLDER; PATH=$PATH:/mingw64/bin:/mingw32/bin; ./autogen.sh --with-uniscribe --with-freetype --with-glib --with-gobject --with-cairo --with-icu --with-graphite2 --build=$MINGW_CHOST --host=$MINGW_CHOST --prefix=$MINGW_PREFIX; make; make check"' diff --git a/win32/README.txt b/win32/README.txt index e2ead01..07e211c 100644 --- a/win32/README.txt +++ b/win32/README.txt @@ -7,11 +7,10 @@ Makefiles. The following are instructions for performing such a build, as there is a number of build configurations supported for the build. Note that for all build configurations, the OpenType and Simple TrueType layout (fallback) -backends are enabled, as well as the Uniscribe platform shaper, and this -is the base configuration that is built if no options (see below) are -specified. A 'clean' target is provided-it is recommended that one cleans -the build and redo the build if any configuration option changed. An -'install' target is also provided to copy the built items in their appropriate +backends are enabled, and this is the base configuration that is built if no +options (see below) are specified. A 'clean' target is provided-it is recommended +that one cleans the build and redo the build if any configuration option changed. +An 'install' target is also provided to copy the built items in their appropriate locations under $(PREFIX), which is described below. Invoke the build by issuing the command: @@ -68,7 +67,9 @@ ICU: Enables the build HarfBuzz-ICU, which is now the recommended layout engine for ICU (International Components for Unicode), which deprecated ICU LE. Requires the ICU libraries. -DIRECTWRITE: Enable (experimental) DirectWrite platform shaper support, +UNISCRIBE: Enable Uniscribe platform shaper support. + +DIRECTWRITE: Enable DirectWrite platform shaper support, requires a rather recent Windows SDK, and at least Windows Vista/ Server 2008 with SP2 and platform update. diff --git a/win32/config-msvc.mak b/win32/config-msvc.mak index e0c6468..88ae071 100644 --- a/win32/config-msvc.mak +++ b/win32/config-msvc.mak @@ -20,6 +20,9 @@ CAIRO_LIB = cairo.lib # Graphite2 is needed for building SIL Graphite2 support GRAPHITE2_LIB = graphite2.lib +# Uniscribe is needed for Uniscribe shaping support +UNISCRIBE_LIB = usp10.lib gdi32.lib rpcrt4.lib user32.lib + # Directwrite is needed for DirectWrite shaping support DIRECTWRITE_LIB = dwrite.lib @@ -31,17 +34,15 @@ HB_UCDN_CFLAGS = /I..\src\hb-ucdn HB_SOURCES = \ $(HB_BASE_sources) \ $(HB_FALLBACK_sources) \ - $(HB_OT_sources) \ - $(HB_UNISCRIBE_sources) \ + $(HB_OT_sources) HB_HEADERS = \ $(HB_BASE_headers) \ $(HB_NODIST_headers) \ - $(HB_OT_headers) \ - $(HB_UNISCRIBE_headers) + $(HB_OT_headers) # Minimal set of (system) libraries needed for the HarfBuzz DLL -HB_DEP_LIBS = usp10.lib gdi32.lib rpcrt4.lib user32.lib +HB_DEP_LIBS = # We build the HarfBuzz DLL/LIB at least HB_LIBS = $(CFG)\$(PLAT)\harfbuzz.lib @@ -188,6 +189,13 @@ HB_CFLAGS = \ HB_SOURCES = $(HB_SOURCES) $(LIBHB_UCDN_sources) $(HB_UCDN_sources) !endif +!if "$(UNISCRIBE)" == "1" +HB_CFLAGS = $(HB_CFLAGS) /DHAVE_UNISCRIBE +HB_SOURCES = $(HB_SOURCES) $(HB_UNISCRIBE_sources) +HB_HEADERS = $(HB_HEADERS) $(HB_UNISCRIBE_headers) +HB_DEP_LIBS = $(HB_DEP_LIBS) $(UNISCRIBE_LIB) +!endif + !if "$(DIRECTWRITE)" == "1" HB_CFLAGS = $(HB_CFLAGS) /DHAVE_DIRECTWRITE HB_SOURCES = $(HB_SOURCES) $(HB_DIRECTWRITE_sources) diff --git a/win32/config.h.win32.in b/win32/config.h.win32.in index 73ad205..d45cefb 100644 --- a/win32/config.h.win32.in +++ b/win32/config.h.win32.in @@ -115,7 +115,7 @@ #define HAVE_UCDN 1 /* Have Uniscribe library */ -#define HAVE_UNISCRIBE 1 +/* #undef HAVE_UNISCRIBE */ /* Define to 1 if you have the <unistd.h> header file. */ #ifndef _MSC_VER diff --git a/win32/info-msvc.mak b/win32/info-msvc.mak index bc85dc9..bbe631b 100644 --- a/win32/info-msvc.mak +++ b/win32/info-msvc.mak @@ -1,6 +1,6 @@ # NMake Makefile portion for displaying config info -INC_FEATURES = Uniscribe Fallback OT +INC_FEATURES = Fallback OT BUILT_TOOLS = BUILT_LIBRARIES = HarfBuzz @@ -23,6 +23,10 @@ INC_FEATURES = $(INC_FEATURES) FreeType INC_FEATURES = $(INC_FEATURES) Graphite2 !endif +!if "$(UNISCRIBE)" == "1" +INC_FEATURES = $(INC_FEATURES) Uniscribe +!endif + !if "$(DIRECTWRITE)" == "1" INC_FEATURES = $(INC_FEATURES) DirectWrite !endif @@ -77,9 +81,12 @@ help: @echo. @echo OPTION: Optional, may be any of the following, use OPTION=1 to enable; @echo multiple OPTION's may be used. If no OPTION is specified, a default - @echo HarfBuzz DLL is built with OpenType, fallback and Uniscribe support + @echo HarfBuzz DLL is built with OpenType and fallback support @echo with a bundled Unicode implementation (UCDN). @echo ====== + @echo UNISCRIBE: + @echo Enable Uniscribe support. + @echo. @echo DIRECTWRITE: @echo Enable DirectWrite support, requires a recent enough Windows SDK. @echo.
_______________________________________________ HarfBuzz mailing list HarfBuzz@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/harfbuzz