+override_default = ['warning_level=2', 'werror=false']
+
common_source = files('evasapp.cpp')
common_source += files('lottieview.cpp')
executable('lottie2gif',
'lottie2gif.cpp',
include_directories : inc,
+ override_options : override_default,
link_with : rlottie_lib)
executable('vectorTest',
'vectortest.cpp',
include_directories : inc,
- dependencies : [library_deps])
+ dependencies : [rlottie_dep])
demo_dep = dependency('elementary', required : false)
executable('demo',
demo_sources,
include_directories : inc,
+ override_options : override_default,
link_with : rlottie_lib,
dependencies : demo_dep)
executable('lottieviewTest',
lottieview_test_src,
include_directories : inc,
+ override_options : override_default,
link_with : rlottie_lib,
dependencies : demo_dep)
executable('uxsampleTest',
uxsample_test_src,
include_directories : inc,
+ override_options : override_default,
link_with : rlottie_lib,
dependencies : demo_dep)
executable('lottieviewer',
lottieviewer_sources,
include_directories : inc,
+ override_options : override_default,
link_with : rlottie_lib,
dependencies : demo_dep)
'efl_animview.cpp',
include_directories : inc,
link_with : rlottie_lib,
+ override_options : override_default,
dependencies : demo_dep)
endif
project('rlottie',
'cpp',
- default_options : ['warning_level=2', 'werror=true', 'cpp_std=c++14', 'optimization=s'],
+ default_options : ['warning_level=3', 'werror=true', 'cpp_std=c++14', 'optimization=s'],
version : '0.0.1',
license : 'Apache')
add_project_arguments('-DDEMO_DIR="@0@/example/resource/"'.format(meson.current_source_dir()), language : 'cpp')
-
-compiler_flags = ['-DLOT_BUILD']
-compiler_flags_try = ['-fno-exceptions', '-fno-rtti',
- '-fno-unwind-tables' , '-fno-asynchronous-unwind-tables',
- '-Woverloaded-virtual', '-Wno-unused-parameter']
-
-cc = meson.get_compiler('cpp')
-foreach cf: compiler_flags_try
- if cc.has_argument(cf) == true
- compiler_flags += cf
- endif
-endforeach
-
-
-if (build_machine.system() == 'linux' and get_option('thread') == true)
- compiler_flags += ['-pthread']
- add_project_link_arguments('-pthread', language: 'cpp')
-endif
-
-add_project_arguments(compiler_flags, language: 'cpp')
+add_project_arguments('-DLOT_BUILD', language: 'cpp')
inc = [include_directories('inc')]
config_dir = include_directories('.')
subdir('test')
endif
-pkg_mod = import('pkgconfig')
-
-pkg_mod.generate( libraries : rlottie_lib,
- version : meson.project_version(),
- name : 'librlottie',
- filebase : 'rlottie',
- description : 'A Library for rendering lottie files.'
- )
-source_file = files('lottieparser.cpp')
-source_file += files('lottieloader.cpp')
-source_file += files('lottiemodel.cpp')
-source_file += files('lottieproxymodel.cpp')
-source_file += files('lottieanimation.cpp')
-source_file += files('lottieitem.cpp')
-source_file += files('lottiekeypath.cpp')
-
+source_file = [
+ 'lottieparser.cpp',
+ 'lottieloader.cpp',
+ 'lottiemodel.cpp',
+ 'lottieproxymodel.cpp',
+ 'lottieanimation.cpp',
+ 'lottieitem.cpp',
+ 'lottiekeypath.cpp'
+]
lottie_dep = declare_dependency(
include_directories : include_directories('.'),
+cc = meson.get_compiler('cpp')
+
+if (cc.get_id() != 'msvc')
+ compiler_flags = ['-fno-exceptions', '-fno-rtti',
+ '-fno-unwind-tables' , '-fno-asynchronous-unwind-tables',
+ '-Woverloaded-virtual', '-Wno-unused-parameter']
+endif
+
subdir('vector')
subdir('lottie')
subdir('binding')
-library_deps = vector_dep
-library_deps += lottie_dep
-library_deps += binding_dep
+rlottie_dep = [ vector_dep, lottie_dep, binding_dep, dependency('threads')]
rlottie_lib = shared_library('rlottie',
include_directories : inc,
version : meson.project_version(),
- dependencies : library_deps,
+ dependencies : rlottie_dep,
install : true,
+ cpp_args : compiler_flags,
gnu_symbol_visibility : 'hidden',
)
+
+pkg_mod = import('pkgconfig')
+
+pkg_mod.generate( libraries : rlottie_lib,
+ version : meson.project_version(),
+ name : 'librlottie',
+ filebase : 'rlottie',
+ description : 'A Library for rendering lottie files.'
+ )
-source_file = files('v_ft_math.cpp')
-source_file += files('v_ft_raster.cpp')
-source_file += files('v_ft_stroker.cpp')
-
+source_file = [
+ 'v_ft_math.cpp',
+ 'v_ft_raster.cpp',
+ 'v_ft_stroker.cpp',
+ ]
freetype_dep = declare_dependency(
include_directories : include_directories('.'),
sources : source_file
- )
\ No newline at end of file
+ )
subdir('pixman')
subdir('stb')
-vector_dep = [freetype_dep]
-vector_dep += pixman_dep
-vector_dep += stb_dep
-
-
-source_file = files('vdasher.cpp')
-source_file += files('vbrush.cpp')
-source_file += files('vbitmap.cpp')
-source_file += files('vpainter.cpp')
-source_file += files('vcompositionfunctions.cpp')
-source_file += files('vdrawhelper.cpp')
-source_file += files('vdrawhelper_sse2.cpp')
-source_file += files('vdrawable.cpp')
-
-source_file += files('vrect.cpp')
-source_file += files('vrle.cpp')
-source_file += files('vpath.cpp')
-source_file += files('vpathmesure.cpp')
-source_file += files('vmatrix.cpp')
-source_file += files('velapsedtimer.cpp')
-source_file += files('vdebug.cpp')
-source_file += files('vinterpolator.cpp')
-source_file += files('vbezier.cpp')
-source_file += files('vraster.cpp')
-source_file += files('vimageloader.cpp')
-
-inc_dir = [include_directories('.')]
-inc_dir += config_dir
-
-vector_dep += declare_dependency( include_directories : inc_dir,
- sources : source_file
+source_file = [
+ 'vdasher.cpp',
+ 'vbrush.cpp',
+ 'vbitmap.cpp',
+ 'vpainter.cpp',
+ 'vcompositionfunctions.cpp',
+ 'vdrawhelper.cpp',
+ 'vdrawhelper_sse2.cpp',
+ 'vdrawhelper_neon.cpp',
+ 'vdrawable.cpp',
+ 'vrect.cpp',
+ 'vrle.cpp',
+ 'vpath.cpp',
+ 'vpathmesure.cpp',
+ 'vmatrix.cpp',
+ 'velapsedtimer.cpp',
+ 'vdebug.cpp',
+ 'vinterpolator.cpp',
+ 'vbezier.cpp',
+ 'vraster.cpp',
+ 'vimageloader.cpp',
+]
+
+vector_dep = declare_dependency( include_directories : include_directories('.'),
+ sources : source_file,
+ dependencies : [freetype_dep, pixman_dep, stb_dep],
)
-source_file = files('vregion.cpp')
+source_file = ['vregion.cpp']
if host_machine.cpu_family() == 'arm' or host_machine.cpu_family() == 'aarch64'
- source_file += files('pixman-arm-neon-asm.S')
+ source_file += 'pixman-arm-neon-asm.S'
endif
pixman_dep = declare_dependency(
source_file = ['stb_image.cpp']
-inc_dir = [include_directories('.')]
-inc_dir += config_dir
-
if get_option('module') == true
rlottie_image_loader_lib = shared_library('rlottie-image-loader',
source_file,
- include_directories : inc_dir,
+ include_directories : [include_directories('.'), config_dir],
install : true,
gnu_symbol_visibility : 'hidden',
)
- # dl dependancy for dlopen, dlsym, dlclose symbol
cc = meson.get_compiler('cpp')
stb_dep = cc.find_library('dl', required : false)
else
- stb_dep = declare_dependency(
- include_directories : inc_dir,
+ stb_dep = declare_dependency( include_directories : include_directories('.'),
sources : source_file
)
endif
-vector_test_sources = files('testsuite.cpp')
-vector_test_sources += files('test_vpath.cpp')
+override_default = ['warning_level=2', 'werror=false']
gtest_dep = dependency('gtest')
+vector_test_sources = [
+ 'testsuite.cpp',
+ 'test_vpath.cpp',
+ ]
+
vector_testsuite = executable('vectorTestSuite',
vector_test_sources,
include_directories : inc,
- dependencies : [gtest_dep, library_deps])
+ override_options : override_default,
+ dependencies : [gtest_dep, rlottie_dep],
+ )
test('Vector Testsuite', vector_testsuite)
-animation_test_sources = files('testsuite.cpp')
-animation_test_sources += files('test_lottieanimation.cpp')
-animation_test_sources += files('test_lottieanimation_capi.cpp')
+animation_test_sources = [
+ 'testsuite.cpp',
+ 'test_lottieanimation.cpp',
+ 'test_lottieanimation_capi.cpp'
+ ]
animation_testsuite = executable('animationTestSuite',
animation_test_sources,
include_directories : inc,
+ override_options : override_default,
link_with : rlottie_lib,
- dependencies : gtest_dep)
+ dependencies : gtest_dep,
+ )
test('Animation Testsuite', animation_testsuite)
#include <gtest/gtest.h>
-#include "lottieanimation_capi.h"
+#include "rlottie_capi.h"
class AnimationCApiTest : public ::testing::Test {
public: