infra: print enabled features in the meson summary list.
[platform/core/graphics/tizenvg.git] / meson.build
1 project('thorvg',
2         'cpp',
3         default_options : ['buildtype=debugoptimized', 'b_sanitize=none', 'werror=false', 'optimization=s'],
4         version : '0.3.99',
5         license : 'MIT')
6
7 config_h = configuration_data()
8
9 add_project_arguments('-DEXAMPLE_DIR="@0@/src/examples/images"'.format(meson.current_source_dir()), language : 'cpp')
10
11 if get_option('engines').contains('sw') == true
12     config_h.set10('THORVG_SW_RASTER_SUPPORT', true)
13 endif
14
15 if get_option('engines').contains('gl') == true
16     config_h.set10('THORVG_GL_RASTER_SUPPORT', true)
17 endif
18
19 if get_option('loaders').contains('svg') == true
20     config_h.set10('THORVG_SVG_LOADER_SUPPORT', true)
21 endif
22
23 if get_option('loaders').contains('tvg') == true
24     config_h.set10('THORVG_TVG_LOADER_SUPPORT', true)
25 endif
26
27 if get_option('loaders').contains('png') == true
28     config_h.set10('THORVG_PNG_LOADER_SUPPORT', true)
29 endif
30
31 if get_option('vectors').contains('avx') == true
32     config_h.set10('THORVG_AVX_VECTOR_SUPPORT', true)
33 endif
34
35 if get_option('bindings').contains('capi') == true
36     config_h.set10('THORVG_CAPI_BINDING_SUPPORT', true)
37 endif
38
39 if get_option('log') == true
40     config_h.set10('THORVG_LOG_ENABLED', true)
41 endif
42
43 configure_file(
44     output: 'config.h',
45     configuration: config_h
46 )
47
48 headers = [include_directories('inc'), include_directories('.')]
49
50 subdir('inc')
51 subdir('src')
52
53 if get_option('tests') == true
54    subdir('test')
55 endif
56
57 summary = '''
58
59 Summary:
60     ThorVG version:        @0@
61     Build Type:            @1@
62     Prefix:                @2@
63     Raster Engine (SW):    @3@
64     Raster Engine (GL):    @4@
65     AVX SIMD Instruction:  @5@
66     Loader (TVG):          @6@
67     Loader (SVG):          @7@
68     Loader (PNG):          @8@
69     CAPI Binding:          @9@
70     Log Message:           @10@
71     Tests:                 @11@
72     Examples:              @12@
73     Tool (Svg2Png):        @13@
74
75 '''.format(
76         meson.project_version(),
77         get_option('buildtype'),
78         get_option('prefix'),
79         get_option('engines').contains('sw'),
80         get_option('engines').contains('gl'),
81         get_option('vectors').contains('avx'),
82         get_option('loaders').contains('tvg'),
83         get_option('loaders').contains('svg'),
84         get_option('loaders').contains('png'),
85         get_option('bindings').contains('capi'),
86         get_option('log'),
87         get_option('tests'),
88         get_option('examples'),
89         get_option('tools').contains('svg2png'),
90     )
91
92 message(summary)