builds


Log

Author Commit Date CI Message
Alexei Podtelezhnikov cf553136 2021-11-12T22:27:18 [builds/windows] Improve `DlgCopy` target. Fixes #1113. * builds/windows/vc2010/freetype.vcxproj: Run `DlgCopy` conditionally and decouple it from `Build`.
Alexei Podtelezhnikov 05089e8a 2021-11-08T22:33:12 [build/windows] Remove logging from default debug configurations. DLG is rather costly for performance and should be used judiciously. This removes it from the default configurations but gives an example how to enable it using the `UserDefines` property. * builds/windows/vc2010/freetype.vcxproj: Hide FT_DEBUG_LOGGING.
Alexei Podtelezhnikov 7f4b9bfb 2021-11-07T10:20:16 [dlg] Define DLG_STATIC explicitly. DLG_STATIC is intended to disable Windows DLL linking attributes. It does not hurt to define it explicitly when we wrap DLG code. This fixes tons of LNK4286 and C4273 warnings from MSVC if we forget to define DLG_STATIC as a compiler option. * builds/windows/vc2010/freetype.vcxproj: Remove DLG_STATIC option. * src/dlg/dlgwrap.c [FT_DEBUG_LOGGING]: Define DLG_STATIC. * include/freetype/internal/ftdebug.h [FT_DEBUG_LOGGING]: Ditto.
Alexei Podtelezhnikov 588a058d 2021-11-02T22:51:51 [builds/windows] Let MSBuild handle DLG copy. * builds/windows/vc2010/freetype.vcxproj: Specify DlgCopy target. * builds/windows/vc2010/script.bat: Deleted.
Alexei Podtelezhnikov 31fd0547 2021-10-29T10:13:47 [builds/windows] Separate MSVC linker and librarian. MSVC uses LIB for static and LINK for dynamic libraries. They are related but the former has much smaller set of options. * builds/windows/vc2010/freetype.vcxproj: Updated.
Alexei Podtelezhnikov 79b28d37 2021-10-28T22:51:15 [builds/windows] Revise MSVC linking optimizations. * builds/windows/vc2010/freetype.vcxproj: Optimize DLL linking only. * builds/windows/visualc/freetype.dsp: Ditto. * builds/windows/visualc/freetype.vcproj: Ditto.
Alexei Podtelezhnikov f091e60c 2021-10-25T22:31:09 [builds/windows] Add MSVC linker optimazations. We continue to build static libraries with statically linked C run- time and add options to optimize references. * builds/windows/vc2010/freetype.vcxproj: Sort entries, add options.
Alexei Podtelezhnikov 92f5e15f 2021-10-23T09:43:46 * builds/windows/vc2010/freetype.vcxproj: Use MachineARM64.
Alexei Podtelezhnikov 5e6efd6a 2021-10-22T15:25:10 [builds/windows] Prioritize x64. * builds/windows/vc2010/freetype.sln: Sort entries.
Gabor Kertesz 80bd4cba 2021-10-22T10:56:42 [builds/windows] Add ARM64 platform. * builds/windows/vc2010/freetype.sln: Updated * builds/windows/vc2010/freetype.vcxproj: Updated. * builds/windows/vc2010/freetype.vcxproj.filters: Minor fix.
Alexei Podtelezhnikov a1560406 2021-10-05T14:19:06 [builds/unix, builds/vms] Standardize `mmap` failure. * builds/unix/ftsystem.c (FT_Stream_Open): Check for MAP_FAILED. * builds/vms/ftsystem.c (FT_Stream_Open): Ditto. This should cover https://savannah.nongnu.org/patch/?5909 as well.
Alexei Podtelezhnikov 12ef831f 2021-09-24T22:27:27 [builds/unix] Do not use autoconf SIZEOF. * builds/unix/ftconfig.h.in [FT_USE_AUTOCONF_SIZEOF_TYPES]: Removed. * builds/unix/configure.raw: Remove AC_CHECK_SIZEOF and update. After this commit, autoconf builds will fully rely on <limits.h> rather than falling back on it if AC_CHECK_SIZEOF failed for some reason. There is a risk that misconfigured cross-compilation might have wrong headers. Note that Meson and CMake builds always relied on <limits.h> for sizes and availability of integer types.
Alexei Podtelezhnikov b4dddd82 2021-09-22T00:30:03 [base] Initialize stream memory earlier. With Windows memory management tracking heap, it is important to use it during the stream opening fallback. In Unix, the argument is unused, but it is better to set it correctly. * src/base/ftobjs.c (FT_Stream_New): Set memory before calling `FT_Stream_Open`. * builds/windows/ftsystem.c, builds/unix/ftsystem.c (FT_Stream_Open, ft_close_stream_by_free): Call `ft_alloc` and `ft_free` with proper memory argumment.
Alexei Podtelezhnikov 93866bec 2021-09-21T23:14:42 [builds/windows] Revert back to `CreateFileA` only. Calling `CreateFileW` without making sure that the patname is really `wchar_t` is a bad idea and can lead to unpredictable overreads. For Windows CE, we impelemnt the missing API. Fixes #1098 and !76 again. * builds/windows/ftsystem.c (FT_Stream_Open): Call `CreateFileA`. [_WIN32_WCE] (CreateFileA, FileSizeEx): Implement missing interfaces.
Alexei Podtelezhnikov 61903609 2021-09-20T22:18:29 Minor.
Alexei Podtelezhnikov 0b429b60 2021-09-17T08:31:27 [builds/windows] Try both wide and narrow `CreateFile` Windows handles wchar_t* UTF-16 and char* ANSI (presently UTF-8) filenames using alternative -A and -W API. We'll try them both when opening a file. This means that you should not worry about about conversions. Fixes #1098 and !76. * builds/windows/ftsystem.c (FT_Stream_Open): Call alternative `CreateFile` in the case of failure.
Alexei Podtelezhnikov 7e26c7a6 2021-09-07T17:06:27 [builds/windows] Use native memory allocation API. * builds/windows/ftsystem.c (ft_alloc, ft_realloc, ft_free): Wrap HeapAlloc, HeapReAlloc, and HeapFree. (FT_New_Memory): Set the heap handle.
Alexei Podtelezhnikov 612925ff 2021-09-01T21:37:21 s/0/NULL/ where appropriate.
Alexei Podtelezhnikov efa1a359 2021-08-30T09:38:25 * builds/windows/ftsystem.c (FT_Stream_Open): Fix double-close.
Alexei Podtelezhnikov 6804ce29 2021-08-27T09:46:40 [builds/windows] Revise SSE2 settings. * builds/windows/vc2010/freetype.vcxproj [x64]: Remove explicit SSE2. * builds/windows/visualc/freetype.vcproj [Win32]: Add explicit SSE2.
Alexei Podtelezhnikov 78f2bd0b 2021-08-22T22:32:07 Whitespace formatting.
Carlo Bramini f0f00f7c 2021-08-19T22:14:42 * builds/windows/ftsystem.c (FT_Stream_Open): Support legacy Windows.
Alexei Podtelezhnikov e2cceed8 2021-08-18T11:36:33 [builds/windows] Do not set CharacterSet for VC++. * builds/windows/vc2010/freetype.vcxproj: s/Unicode/NotSet/. * builds/windows/visualc/freetype.vcproj: s/"1"/"0"/.
Alexei Podtelezhnikov 536a10ac 2021-08-17T22:24:46 * builds/windows/ftsystem.c (FT_Stream_Open): Cast to remove warning.
Alexei Podtelezhnikov 5116f129 2021-08-17T22:08:45 * builds/windows/ftsystem.c (FT_Stream_Open): Support UNICODE compilation.
Werner Lemberg 801cd842 2021-07-18T07:53:57 * Version 2.11.0 released. ========================== Tag sources with `VER-2-11-0'. * docs/VERSION.TXT: Add entry for version 2.11.0. * docs/CHANGES: Updated. * README, src/base/ftver.rc, builds/windows/vc2010/index.html, builds/windows/visualc/index.html, builds/windows/visualce/index.html, builds/wince/vc2005-ce/index.html, builds/wince/vc2008-ce/index.html, docs/freetype-config.1: s/2.10.4/2.11.0/, s/2104/2110/. * include/freetype/freetype.h (FREETYPE_MINOR): Set to 11. (FREETYPE_PATCH): Set to 0. * builds/unix/configure.raw (version_info): Set to 24:0:18. * CMakeLists.txt (VERSION_MINOR): Set to 11. (VERSION_PATCH): Set to 0. * builds/toplevel.mk (dist): Ignore more git-related files.
Werner Lemberg 2bfdc161 2021-05-29T00:27:40 [build] Allow overriding of `ANSIFLAGS` for GNU make build. * builds/*: Implement it.
Nikolaus Waxweiler ebf9e5ac 2021-05-15T22:36:00 [CMake] Update dependency finders. 1. Fixes CMake using any found HarfBuzz version lower than the minimum required. This is based on HALX99's merge request at https://gitlab.freedesktop.org/freetype/freetype/-/merge_requests/31 2. Update FindHarfBuzz.cmake from https://github.com/WebKit/WebKit/blob/1ce32454/Source/cmake/FindHarfBuzz.cmake and guard post-CMake-3.1 features to keep the minimum version unchanged 3. Update FindBrotliDec.cmake to stop the warnings, based on what https://github.com/google/woff2/blob/a0d0ed7d/cmake/FindBrotliDec.cmake is doing * CMakeLists.txt, builds/cmake/FindHarfBuzz.cmake: Implement 1 and 2. * builds/cmake/FindBrotliDec.cmake: Implement 3.
Issam E. Maghni f998eaf9 2021-04-24T17:21:17 * builds/meson/process_ftoption_h.py: Add LF at EOF. This fixes .../ftoption.h:1030:10: error: no newline at end of file [-Werror,-Wnewline-eof] for the generated `ftoption.h` file.
Alexei Podtelezhnikov 0bd5d95d 2021-04-23T22:04:05 * src/base/ftobjs.c (Mac_Read_POST_Resource): s/FT_ALLOC/FT_QALLOC/. * builds/mac/ftmac.c (FT_New_Face_From_SFNT, read_lwfn): Ditto.
Werner Lemberg 6f6ad876 2021-04-16T20:50:27 * builds/unix/freetype2.m4: Fix help string formatting. The indented `dnl` macros inserted unwanted horizontal space. Problem reported by Ozkan Sezer <sezeroz@gmail.com>.
Werner Lemberg 111f2f27 2021-02-19T20:33:50 * builds/unix/ax_pthread.m4: Update from 'autoconf-archive'. A bunch of fixes were added recently to its git repository.
Werner Lemberg eca35e04 2021-02-17T21:10:34 [unix] Updates for autoconf 2.71. This fixes warnings reported by autoupdate. * builds/unix/ax_pthread.m4: Replace `as_echo` with `AS_ECHO`. * builds/unix/configure.raw: Remove obsolete `AC_HEADER_STDC`. Don't escape back quotes in messages for `AC_MSG_WARN`.
Werner Lemberg 635d394f 2021-02-16T19:24:15 * builds/toplevel.mk: Fix previous commit. <top_level>: Use `TOP_DIR` in `wildcard` function. (check_out_submodule, copy_submodule): Move down to come after definition of `all` rule. Call `mkdir` conditionally.
Werner Lemberg c3a0b43e 2021-02-16T17:04:51 * builds/toplevel.mk: Use rules for handling 'dlg'. Suggested by Alexei. (check_out_submodule, copy_submodule): New targets. <top-level>: Replace calls to `shell` with rules.
Werner Lemberg dfa7cca5 2021-02-16T14:29:45 * builds/toplevel.mk: Avoid side effects of `shell`. We use a dummy variable to catch its output. Otherwise the `make` program is going to interpret the return value of `shell`; this can cause obscure warning or error messages or even be harmful.
Werner Lemberg 92bd99bd 2021-02-16T14:07:18 Move 'dlg' submodule to `subprojects` directory. This is for future changes with Meson, which doesn't allow a different name for its `subprojects` directory. Having both a `submodules` and a `subprojects` directory is confusing. * .gitmodules, autogen.sh (copy_submodule_files, DLG_INC_DIR, DLG_SRC_DIR): Updated. * builds/toplevel.mk (<top-level>, do-dist), builds/windows/vc2010/script.bat: Updated. * src/tools/no-copyright: Updated.
Alexei Podtelezhnikov fd7f92b6 2021-02-03T14:44:14 * builds/unix/configure.raw [mmap]: Restore default path. Fixes #1023.
Alexei Podtelezhnikov d3befe1c 2021-02-02T23:02:54 * builds/unix/configure.raw [mmap support]: Explicitly handle Windows. Fixes #1024.
Werner Lemberg 5635d5ed 2021-02-02T10:33:53 * builds/unix/configure.raw [mmap support]: Correctly handle Windows. Fixes #1024.
Werner Lemberg 68940241 2021-02-02T09:38:25 builds/{unix,windows}/ftsystem.c: Sync comments with `src/base/ftsystem.c`. Also some minor code formatting.
Werner Lemberg 4554c6da 2021-01-31T17:17:40 * builds/windows/ftdebug.c: Synchronize with `src/base/ftdebug.c`.
Werner Lemberg 939e8444 2021-01-30T06:32:38 * builds/unix/configure.raw: Fix typo. Bug introduced in Vincent's last commit bb33f03. Fixes issue #1021.
Vincent Torri bb33f03a 2021-01-27T06:43:41 * builds/windows/ftsystem.c: Add shared memory support on Windows.
Werner Lemberg 209e9841 2021-01-23T14:15:29 Require HarfBuzz 2.0.0. This is needed to make commit f1f9705f9 work. * CMakeLists.txt (HARFBUZZ_MIN_VERSION), builds/unix/configure.raw (harfbuzz_pkg), meson.build (harfbuzz_dep): Updated.
Werner Lemberg b6e8a712 2021-01-17T07:18:48 Update all copyright notices.
Alexei Podtelezhnikov 4e7a0184 2021-01-16T12:04:35 * builds/unix/unixddef.mk: Remove the second DEVEL_DIR definition.
Werner Lemberg 5e4ed8ba 2021-01-16T15:45:13 Documentation update for repository move to 'freedesktop.org'.
Werner Lemberg 03ceda97 2021-01-10T15:34:46 * builds/*: s/BUILD_DIR/PLATFORM_DIR/. The old variable name caused confusion.
Alexei Podtelezhnikov 34315538 2021-01-08T13:22:34 [builds] Revert `FTMODULE_H' changes. * builds/toplevel.mk, builds/freetype.mk: Revert changes.
Alexei Podtelezhnikov 6f24bab6 2021-01-07T16:57:13 [builds/windows] Fix up DLG build with VC++. * builds/windows/vc2010/script.bat: Copy headers to include/. * builds/windows/vc2010/freetype.vcxproj: Remove DLG paths.
Alexei Podtelezhnikov 576403f2 2021-01-07T16:02:32 [builds] Relocate `FTMODULE_H'. * builds/toplevel.mk: Place `FTMODULE_H' in include/. * builds/freetype.mk: Simplify included path.
Alexei Podtelezhnikov 6369058e 2021-01-07T00:13:23 [dlg] Move the headers to include/dlg to simplify their use. * autogen.sh, builds/toplevel.mk: Copy headers to incluide/dlg. * builds/freetype.mk, builds/windows/vc2010/freetype.vcxproj: Simplify included path. * include/freetype/internal/ftdebug.h: Simplify #include. * src/dlg/rules.mk, .gitignore: Updated.
Alexei Podtelezhnikov 74f1b6be 2021-01-04T23:35:01 [builds/windows] Add SDF to VC2010 project. * builds/windows/vc2010/freetype.vcxproj: Updated; AfterBuild conveniences.
Werner Lemberg 2373074a 2020-12-23T22:02:48 * builds/windows/detect.mk (COPY): Make it work with `shell`. Without this patch, we get the error builds/toplevel.mk:127: *** missing separator. Stop. Reported by Anuj, with a solution from Alexei.
Werner Lemberg 505943a6 2020-12-07T17:08:37 * builds/unix/configure.raw: Don't set `FT_DEBUG_LOGGING`. All debug options are handled exclusively in `ftoption.h`.
Werner Lemberg 015a9b8d 2020-12-07T10:27:42 */*: s/FT_LOGGING/FT_DEBUG_LOGGING/.
Werner Lemberg 7d3ab6a7 2020-12-05T09:29:25 * builds/toplevel.mk (do-dist): Remove `submodules` directory.
Werner Lemberg 74822f64 2020-12-02T08:32:37 [base] Don't close 'stderr' after logging. * src/base/ftdebug.c, builds/windows/ftdebug.c (ft_logging_deinit): Fix it.
Werner Lemberg f6b0fd7b 2020-12-02T07:08:24 Improve setup for 'dlg' library. * autogen.sh (copy_submodule_file), builds/toplevel.mk: Redirect stderr to `/dev/null`. * builds/toplevel.mk: Move code block to handle 'dlg' stuff into `check_platform` conditional. Also fix wildcard expressions for guarding `git submodule` commands. Also make file copying work with non-Unix platforms (untested).
Werner Lemberg fcdab61e 2020-12-01T23:07:21 [build] Use gcc (and clang) in C99 mode. Other compilers are unchanged. * builds/compiler/gcc-dev.mk, builds/compiler/gcc.mk (ANSIFLAGS): s/-ansi/-std=c99/. * builds/freetype.mk (FT_CFLAGS): Remove `-std=c99`. * builds/unix/configure.raw: Handle C99. Remove no longer needed test for gcc 4.6 and earlier.
Werner Lemberg 047f295f 2020-12-01T21:23:04 Typos.
Priyesh Kumar 33bd25ca 2020-08-31T18:02:47 [builds/unix] Check for 'pthread' library. * builds/unix/ax_pthread.m4: New file, taken from 'autoconf-archive' git repository. * builds/unix/configure.raw: Check for 'pthread'; also check whether it works.
Werner Lemberg ce43d808 2020-12-01T12:20:43 [base] Implement vertical alignment of log printing. Based on a patch by Priyesh. * include/freetype/internal/fttrace.h (FT_MAX_TRACE_LEVEL_LENGTH): New macro. * src/base/ftdebug.c, builds/windows/ftdebug.c (ft_log_handler): Print logs after a fixed width to handle different lengths of `FT_COMPONENT` entries. Use `ft_strrchr` to check for final newline character.
Priyesh Kumar 2a5d8e8f 2020-08-27T23:28:05 [builds/windows] Changes to build 'dlg' with FreeType on Windows. We only support Visual C++ 2010 and newer. * builds/windows/vc2010/script.bat: New windows batch file to copy necessary 'dlg' files from `submodules/dlg` to `src/dlg`. This file is used as a pre-built event in Visual C++. * builds/windows/ftdebug.c: Synchronize with `src/base/ftdebug.c`. * builds/windows/vc2010/freetype.vcxproj.filters: Add `src/dlgwrap.c`. * builds/windows/vc2010/freetype.vcxproj (AdditionalIncludeDirectories): Add include files of dlg for 'Debug' and 'Debug Static' configurations on both 'x64' and 'win32' platforms. (PreprocessorDefinitions): Add `FT_LOGGING` for 'Debug' and 'Debug Static' configurations on both 'x64' and 'win32' platforms. Add `DLG_STATIC' for 'Debug' configuration on 'x64' and 'win32' platforms. (DisableLanguageExtensions): We need to disable the `/Za` option when building 'dlg' with FreeType as 'dlg' strictly follows the C99 standard. Visual C++ produces behaves unexpectedly when compiling a C99 file with `/Za` option enabled.
Priyesh Kumar 34b1c897 2020-08-26T12:27:52 [builds] Necessary changes to make 'dlg' compile. * autogen.sh (copy_submodule_files): New script to copy all the necessary source and include files from `submodules/dlg` to `src/dlg`. * src/dlg/dlgwrap.c: New wrapper file for `src/dlg.c`. It enables the build of 'dlg' if the `FT_LOGGING` macro is defined. * src/dlg/rules.mk: New sub-Makefile. * builds/freetype.mk (DLG_DIR): New variable to include the header files of the 'dlg' library. (INCLUDES): Add `DLG_DIR`. (FT_CFLAGS): Add `-std=c99' flag. Include `src/dlg/rules.mk` file to build 'dlg' library. (OBJ_S, OBJ_M): Add `DLG_OBJS_M` and `DLG_OBJS_S`. * builds/toplevel.mk: For builds directly from the git repository we need to copy files from `submodule/dlg` to `src/dlg`. * include/freetype/config/ftoption.h, devel/ftoption.h (FT_LOGGING): New macro to enable or disable the logging facility in FreeType.
Werner Lemberg 56c610b1 2020-11-27T15:37:41 builds/meson/*: Add copyright boilerplate.
Werner Lemberg 6a2b3e40 2020-10-20T07:10:27 * Version 2.10.4 released. ========================== Tag sources with `VER-2-10-4'. * docs/VERSION.TXT: Add entry for version 2.10.4. * docs/CHANGES: Updated. * README, src/base/ftver.rc, builds/windows/vc2010/index.html, builds/windows/visualc/index.html, builds/windows/visualce/index.html, builds/wince/vc2005-ce/index.html, builds/wince/vc2008-ce/index.html, docs/freetype-config.1: s/2.10.3/2.10.4/, s/2103/2104/. * include/freetype/freetype.h (FREETYPE_PATCH): Set to 4. * builds/unix/configure.raw (version_info): Set to 23:4:17. * CMakeLists.txt (VERSION_PATCH): Set to 4.
Werner Lemberg 337670af 2020-10-10T18:14:57 * Version 2.10.3 released. ========================== Tag sources with `VER-2-10-3'. * docs/VERSION.TXT: Add entry for version 2.10.3. * README, src/base/ftver.rc, builds/windows/vc2010/index.html, builds/windows/visualc/index.html, builds/windows/visualce/index.html, builds/wince/vc2005-ce/index.html, builds/wince/vc2008-ce/index.html, docs/freetype-config.1: s/2.10.2/2.10.3/, s/2102/2103/. * include/freetype/freetype.h (FREETYPE_PATCH): Set to 3. * builds/unix/configure.raw (version_info): Set to 23:3:17. * CMakeLists.txt (VERSION_PATCH): Set to 3.
Werner Lemberg c9f588be 2020-10-10T12:48:18 Document changes to last release.
Werner Lemberg 3ce0df52 2020-09-22T20:05:37 [meson] Move auxiliary scripts to `builds/meson`. Suggested by Alexei. * scripts/*.py: Move meson scripts to... * builds/meson/*.py: ... this new location. * meson.build: Updated.
David Turner 66978a58 2020-05-17T18:45:41 Add Meson build project file. Example usage: # Configure Meson build in directory `build-meson` to generate # release binaries comparable to to the ones from the # autotools/make build system. meson setup build-meson \ --prefix=/usr/local \ --buildtype=debugoptimized \ --strip \ -Db_ndebug=true # After configuring the Meson build with the above command, # compile and install to `/usr/local/`; this includes a pkg-config # file. ninja -C build-meson install # Alternatively, compile and install to `/tmp/aa/usr/local/...` # for packaging. DESTDIR=/tmp/aa ninja -C build-meson install # Generate documentation under `build-meson/docs`. ninja -C build-meson docs Library size comparison for stripped `libfreetype.so` generated by all three build systems: - Default build (autotools + libtool): 712 KiB - CMake build (RelWithDebInfo): 712 KiB - Meson build: 712 KiB * meson.build: New top-level Meson build file for the library. * meson_options.txt: New file. It holds user-selectable options for the build, which can be printed with `meson configure`, and selected at `meson setup` or `meson --reconfigure` time with `-D<option>=<value>`. * scripts/parse_modules_cfg.py: A script invoked by `meson.build` to parse `modules.cfg` and extract important information out of it (i.e., the list of modules). * scripts/process_ftoption_h.py: New script invoked by `meson.build` to process the original `ftoption.h` file. It enables or disables configuration macro variables based on the available dependencies. This is similar to what other build systems are using (i.e., Meson's `configure_file()` command is not used here). * scripts/extract_freetype_version.py: New script invoked by `meson.build` to extract the FreeType version number from `<freetype/freetype.h>`. * scripts/extract_libtool_version.py: New script invoked by `meson.build` to extract the libtool `revision_info` data from `builds/unix/configure.raw`, and to generate the corresponding shared library suffix. * scripts/generate_reference_docs.py: New script invoked by `meson.build` to generate the FreeType 2 reference documentation (using the `docwriter` and `mkdocs` packages, which must be already installed).
Priyesh Kumar 53be1753 2020-07-28T07:33:40 Fix `-Wformat' compiler warnings. * src/*: Fix format specifiers. * builds/unix/ftsystem.c (FT_Stream_Open): Ditto.
Werner Lemberg c922ffa5 2020-07-12T07:52:55 * builds/unix/configure.raw: Fix inclusion of `ftoption.h'.
David Turner bb66c8d8 2020-07-02T11:09:57 [build] Split off more stuff from `ftconfig.h'. * builds/unix/ftconfig.h.in, builds/vms/ftconfig.h, include/freetype/config/ftconfig.h: Split off macro definitions required by the FreeType API headers to... * include/freetype/config/public-macros.h: ...this new file. * builds/unix/ftconfig.h.in, builds/vms/ftconfig.h, include/freetype/config/ftconfig.h: Split off macro definitions used by the library but not to be exposed to clients to... * include/freetype/config/compiler-macros.h: ...this new file. * include/freetype/internal/*.h, src/raster/ftraster.h: Include `compiler-macros.h' where needed.
David Turner 0322efb5 2020-07-02T10:31:28 [build] Move mac support code to `mac-support.h'. * builds/unix/ftconfig.h.in, builds/vms/ftconfig.h, include/freetype/config/ftconfig.h: Split off mac-specific stuff to... * include/freetype/config/mac-support.h: ...this new file. * CMakeLists.txt, builds/unix/configure.raw: Remove `/undef -> #undef' string replacement; the affected code is no longer part of the `ftconfig.h' template.
David Turner bd7251ac 2020-07-02T10:24:20 [build] Put integer type definitions into `integer-types.h'. Refactor some of the `ftconfig.h' headers and template to move the definition of the FreeType integer types (e.g., `FT_Int16') to a common header file `freetype/config/integer-types.h'. * builds/unix/ftconfig.h.in, builds/vms/ftconfig.h, include/freetype/config/ftconfig.h: Split off integer type definition stuff to... * include/freetype/config/integer-types.h: ...this new file. * builds/unix/ftconfig.h.in: Control the definition of `FT_SIZEOF_INT' and `FT_SIZEOF_LONG' with macro `FT_USE_AUTOCONF_SIZEOF_TYPES'. If these are not defined, auto detection happens in `integer-types.h' as usual based on `INTXX_MAX' values. Otherwise the autoconf-detected values are used. * builds/unix/configure.raw (CPPFLAGS): Don't include path to `config' directory. Instead, ... (FT_CONFIG_STANDARD_LIBRARY_H): Use complete path.
David Turner a4d92067 2020-07-02T10:10:25 [build] Rename `build/unix/ftconfig.in' to `ftconfig.h.in'. Since we are no longer limited to 8.3 file names, it is simpler to follow the usual conventions for template files. * builds/unix/ftconfig.in: Renamed to... * builds/unix/ftconfig.h.in: ...this. * CMakeLists.txt, builds/unix/configure.raw: Updated.
Werner Lemberg 16586859 2020-06-13T21:15:45 Remove redundant inclusion of `ft2build.h'. * */*: Remove `#include <ft2build.h>' where possible. * include/freetype/freetype.h: Remove cpp error about missing inclusion of `ft2build.h'.
David Turner e1339133 2020-06-08T13:31:55 Make macros for header file names optional. We no longer have to take care of the 8.3 file name limit; this allows us (a) to introduce longer, meaningful file names, and (b) to avoid macro names in `#include' lines altogether since some compilers (most notably Visual C++) doesn't support this properly. */*: Replace #include FOO_H with #include <freetype/foo.h> or something similar. Also update the documentation.
David Turner 62fea391 2020-05-18T09:33:38 Remove obsolete HAVE_STDINT_H probing macro. This macro was updated by the unix configure script and the `CMakeLists.txt' one, but is never used in the source tree (nor is <stdint.h> included anywhere). * CMakeLists.txt, builds/unix/ftconfig.in: Don't handle `HAVE_STDINT_H'.
David Turner 4eee1340 2020-05-18T09:16:12 Remove Jamfile files from the tree. These have not been used in a very, very long time, so better remove them. A corresponding patch will be submitted to the `freetype2-demos' repository. * src/Jamfile, src/*/Jamfile, Jamrules: Delete.
Alexei Podtelezhnikov 652f8863 2020-05-11T23:30:37 [smooth] Stop using dedicated LCD modules and classes. The LCD modules were never truly independent. They mostly served as a way to disable patented LCD rendering, which is no longer necessary. The `smooth' module now handles LCD modes as well. * src/smooth/ftsmooth.c (ft_smooth_lcd_renderer_class. ft_smooth_lcdv_renderer_class): Deleted. (ft_render_smooth): Reworked from `ft_render_smooth_generic'. * src/smooth/ftsmooth.h: Remove dedicated LCD classes. * src/smooth/module.mk: Remove dedicated LCD modules. * include/freetype/config/ftmodule.h: Ditto. * builds/amiga/include/config/ftmodule.h: Ditto. * include/freetype/ftmodapi.h: Do not mention LCD modules.
Alexei Podtelezhnikov 093f87bf 2020-05-09T22:32:03 Formatting.
Werner Lemberg 132f19b7 2020-05-05T20:14:14 * Version 2.10.2 released. ========================== Tag sources with `VER-2-10-2'. * docs/VERSION.TXT: Add entry for version 2.10.2. * README, Jamfile (RefDoc), src/base/ftver.rc, builds/windows/vc2010/index.html, builds/windows/visualc/index.html, builds/windows/visualce/index.html, builds/wince/vc2005-ce/index.html, builds/wince/vc2008-ce/index.html, docs/freetype-config.1: s/2.10.1/2.10.2/, s/2101/2102/. * include/freetype/freetype.h (FREETYPE_PATCH): Set to 2. * builds/unix/configure.raw (version_info): Set to 23:2:17. * CMakeLists.txt (VERSION_PATCH): Set to 2. * docs/CHANGES: Updated.
Alexei Podtelezhnikov ed62b12d 2020-05-03T23:22:08 Typo and comment.
Alexei Podtelezhnikov de60e7d3 2020-05-03T17:11:20 * builds/freetype.mk: Refactor for readability.
Alexei Podtelezhnikov 49967cb6 2020-05-02T13:50:33 [builds] Clean up Windows CE project files. Remove version from filenames that caused a lot of polution in the release process. Use VERSIONINFO resource instead. * builds/wince/vc2005-ce/freetype.vcproj, builds/wince/vc2008-ce/freetype.vcproj, builds/windows/visualce/freetype.vcproj, builds/windows/visualce/freetype.dsp: s/2101//g, but add `ftver.rc'. * builds/wince/vc2008-ce/index.html, builds/wince/vc2005-ce/index.html, builds/windows/visualce/index.html: s/2101//g.
Alexei Podtelezhnikov 9c850f56 2020-05-01T22:30:15 [builds/unix] Consolidate marco overrides (for the demos to see them). * builds/unix/unix-cc.in (FT_CONFIG_MODULES_H, FT_CONFIG_OPTIONS_H): Override them here... * builds/freetype.mk: ... instead of here.
Werner Lemberg 11beee85 2020-04-08T09:05:32 Allow setting `CC' in Unix build (#58051). * builds/unix/unix-cc.in (CC): Use `override'. The command line value of `CC' (if any) is stored already in `CCraw'.
Nikhil Ramakrishnan 13c0df80 2020-03-22T23:29:51 [docs] Fix building docs if `srcdir' != `builddir'. `docs/reference/*' was moved one directory up in commit 237fed6. * builds/unix/unix-def.in (PIP): Remove variable. * configure: Create `docs' directory and copy assets from `docs/markdown'. * docs/README: Output directory is `reference'.
Nikhil Ramakrishnan 1fd31487 2020-03-21T20:17:17 [docwriter] Drop support for Python < 3.5. Python versions < 3.5 have reached end-of-life and as such, no security or bug fixes will be provided for those versions. See https://devguide.python.org/#status-of-python-branches for more information. * Jamfile (RefDoc): Add `site' parameter. * builds/detect.mk (std_setup): Update Python version requirement. * builds/freetype.mk (refdoc-venv): Use pip as `python -m pip'. * builds/unix/ax_compare_version.m4, builds/unix/ax_prog_python_version.m4: Macros to detect Python version. New files. * builds/unix/configure.raw: Check for Python >= 3.5 and remove check for `pip'. * docs/CHANGES, docs/INSTALL.GNU, docs/README: Updated.
Werner Lemberg 84d56589 2020-02-19T18:13:02 Require HarfBuzz 1.8. * builds/unix/configure.raw, CMakeLists.txt: Request HarfBuzz 1.8.0 or newer. We are going to add auto-hinter support for Hanifi Rohingya, which was introduced in Unicode 11.0.
Werner Lemberg e5038be7 2020-01-19T17:05:19 Update all copyright notices.
Hugh McMaster 496601e5 2019-12-18T23:11:22 [docs] (2/2) Fix generation of API documentation (#56745). Creating the API Reference in the (new) `reference' sub-directory is consistent with other documentation sub-topics, such as `design', `glyphs' and `tutorial'. This patch fixes broken hyperlinks in the documentation pointing to and from the API Reference. It also allows web assets to load from their relative paths. * builds/freetype.mk (DOC_DIR): Adjust. (refdoc, refdoc-venv): Add `--site' argument. * builds/toplevel.mk (do-dist): Updated.
Werner Lemberg 3de1b8d0 2019-09-05T14:10:01 [cmake] Add brotli support. * CMakeLists.txt (FT_WITH_BROTLI): New option. * builds/cmake/FindBrotliDec.cmake: New file.
Werner Lemberg bbb14361 2019-09-05T12:37:03 FindHarfBuzz.cmake: Change indentation to two spaces; shorten lines.
Werner Lemberg 60c52f0e 2019-08-27T10:08:01 [woff2] Formatting; some comments.
Nikhil Ramakrishnan 732da8a4 2019-06-30T04:15:55 * builds/unix/configure.raw: Change argument name to `brotli'.
Nikhil Ramakrishnan 9443a1bc 2019-06-28T01:01:17 Add Brotli dependency and required checks. Brotli is required for decompressing WOFF2 font directory streams. The library is thus being added as an optional dependency for FreeType. * builds/unix/configure.raw: Add checks for `libbrotlidec'. (REQUIRES_PRIVATE, LIBS_PRIVATE, LIBSSTATIC_CONFIG): Updated. * devel/ftoption.h, include/freetype/config/ftoption.h (FT_CONFIG_OPTION_USE_BROTLI): New macro.