ffigen does not work with freetype headers
- Dominant language
- Dart
- Stars
- 275
- Forks
- 144
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 47
Description
I'm trying to generate the binding for freetype but I'm not succeeding
```console
PS C:\MyDartProjects\freetype_dart> dart run ffigen --config .\config.yaml
Running in Directory: 'C:\MyDartProjects\freetype_dart'
Input Headers: [.\freetype\include\freetype\freetype.h, .\freetype\include\freetype\ftglyph.h, .\freetype\include\freetype\ftsystem.h]
[SEVERE] : Header .\freetype\include\freetype\freetype.h: Total errors/warnings: 1.
[SEVERE] : .\freetype\include\freetype\freetype.h:23:10: fatal error: 'ft2build.h' file not found [Lexical or Preprocessor Issue]
[SEVERE] : Header .\freetype\include\freetype\ftglyph.h: Total errors/warnings: 1.
[SEVERE] : .\freetype\include\freetype\ftglyph.h:36:10: fatal error: 'freetype/freetype.h' file not found [Lexical or Preprocessor Issue]
[SEVERE] : Header .\freetype\include\freetype\ftsystem.h: Total errors/warnings: 3.
[SEVERE] : .\freetype\include\freetype\ftsystem.h:25:1: error: unknown type name 'FT_BEGIN_HEADER' [Semantic Issue]
[SEVERE] : .\freetype\include\freetype\ftsystem.h:345:1: error: unknown type name 'FT_END_HEADER' [Semantic Issue]
[SEVERE] : .\freetype\include\freetype\ftsystem.h:350:10: error: expected identifier or '(' [Parse Issue]
[WARNING]: The compiler found warnings/errors in source files.
[WARNING]: This will likely generate invalid bindings.
[SEVERE] : Skipped generating bindings due to errors in source files. See https://github.com/dart-lang/native/blob/main/pkgs/ffigen/doc/errors.md.
PS C:\MyDartProjects\freetype_dart>
```
```yaml
name: freetype_dart
environment:
sdk: '>=3.2.0 <4.0.0'
dependencies:
path: ^1.9.0
image: ^4.1.4
ffi: ^2.1.0
ffigen: ^11.0.0
```
```yaml
output: 'lib/src/generated_bindings.dart'
name: 'FreetypeBinding'
description: 'Freetype binding for dart'
llvm-path:
- 'C:\llvm'
headers:
entry-points:
#- 'freetype/include/ft2build.h'
- 'freetype/include/freetype/freetype.h'
- 'freetype/include/freetype/ftglyph.h'
- 'freetype/include/freetype/ftsystem.h'
include-directives:
- 'freetype/include/**'
- 'freetype/include/freetype/**'
- 'freetype/include/ft2build.h'
```
https://github.com/insinfo/freetype_dart.git
Contributor guide
Assessment
This issue has not been assessed yet.