loaders: prepare for static jpg/png loaders.
authorHermet Park <chuneon.park@samsung.com>
Fri, 1 Oct 2021 11:23:16 +0000 (20:23 +0900)
committerJunsuChoi <jsuya.choi@samsung.com>
Wed, 6 Oct 2021 03:03:14 +0000 (12:03 +0900)
commitcb8e5389975c4af147f028a8135291badfb88c34
treec0428db1de945b42f07dfe486f8f40c2d04be561
parentc828573ab2a997cfb8d88642bc179cc2ace39618
loaders: prepare for static jpg/png loaders.

This patch has 2 purposes,

1. revise the loaders infrastructure to support both static/external linking loaders.
2. add a template for static jpg/png loaders after external jpg/png.

Our default loaders prefer static linking, external loaders are only available
when dependent libraries on the build system are found.

You might wonder why we have the external loaders together,
they might be faster than static loaders since the popular libraries are likely to be well maintained,
fine-grained optimized.

Thus in this patch, meson tries to apply the external loaders first
then see if the dependencies were found or not,
if it's failed, it turns to the default static loaders.

Next this patch, we need the contribution for actual static jpg/png loaders implementation.

@Issue: https://github.com/Samsung/thorvg/issues/594
13 files changed:
src/loaders/external_jpg/meson.build [new file with mode: 0644]
src/loaders/external_jpg/tvgJpgLoader.cpp [new file with mode: 0644]
src/loaders/external_jpg/tvgJpgLoader.h [new file with mode: 0644]
src/loaders/external_png/meson.build [new file with mode: 0644]
src/loaders/external_png/tvgPngLoader.cpp [new file with mode: 0644]
src/loaders/external_png/tvgPngLoader.h [new file with mode: 0644]
src/loaders/jpg/meson.build
src/loaders/jpg/tvgJpgLoader.cpp
src/loaders/jpg/tvgJpgLoader.h
src/loaders/meson.build
src/loaders/png/meson.build [changed mode: 0755->0644]
src/loaders/png/tvgPngLoader.cpp [changed mode: 0755->0644]
src/loaders/png/tvgPngLoader.h [changed mode: 0755->0644]