summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorBen Wagner <bungeman@chromium.org>2021-07-23 11:59:58 -0400
committerWerner Lemberg <wl@gnu.org>2021-07-24 07:29:17 +0200
commit5bcaf51b611ce579c89c2bb423984ec89fdaadd7 (patch)
tree31c2835663e2ffd6d68ed6eacd81d2e503a9f089 /CMakeLists.txt
parent801cd842e27c85cb1d5000f6397f382ffe295daa (diff)
downloadfreetype2-5bcaf51b611ce579c89c2bb423984ec89fdaadd7.tar.gz
[autofit] Split `afwrtsys.h`.
The header file `afwrtsys.h` has two distinct functions: to include the required writing system headers and also to generate code for each writing system. At each current use site only one or the other is used, with various macro trickery selecting one or the other. Split this header into `afws-decl.h` for the required writing system declarations and `afws-iter.h` for iterating over the writing systems to generate code. The motivation for this change is that the Visual C++ compiler treats the standard include guard idiom like `#pragma once` 'if no non-comment code or preprocessor directive comes before or after the standard form of the idiom'. It appears to check this after macro expansion, so if `WRITING_SYSTEM` expands to empty the bottom of `afwrtsys.h` is empty and looks like the standard include guard idiom which is treated like `#pragma once`, so subsequent inclusion of `afwrtsys.h` is elided. Fixes #1075. * src/autofit/afglobal.c (af_writing_system_classes), src/autofit/aftypes.h (AF_WritingSystem), src/autofit/rules.mk (AUTOF_DRV_H): Updated. * src/autofit/afwrtsys.h: Split into... * src/autofit/afws-decl.h, src/autofit/afws-iter.h: New files.
Diffstat (limited to 'CMakeLists.txt')
0 files changed, 0 insertions, 0 deletions