Also put configureModelCacheSize into the rlottie namespace.
"${CMAKE_THREAD_LIBS_INIT}"
)
+if (NOT APPLE AND NOT WIN32)
+ target_link_libraries(rlottie
+ PRIVATE
+ "-Wl,--version-script=${CMAKE_SOURCE_DIR}/rlottie.expmap"
+ )
+endif()
+
if (LOTTIE_MODULE)
# for dlopen, dlsym and dlclose dependancy
target_link_libraries(rlottie PRIVATE ${CMAKE_DL_LIBS})
--- /dev/null
+/* This version script for ld exposes only (r)lottie namespace. */
+{
+global:
+ lottie_*;
+ extern "C++" { rlottie::* };
+local:
+ *;
+};
using namespace rlottie;
-LOT_EXPORT void configureModelCacheSize(size_t cacheSize)
+LOT_EXPORT void rlottie::configureModelCacheSize(size_t cacheSize)
{
LottieLoader::configureModelCacheSize(cacheSize);
}
'-Woverloaded-virtual', '-Wno-unused-parameter']
endif
+linker_flags = []
+if (host_machine.system() not in ['darwin', 'windows'])
+ linker_flags += ['-Wl,--version-script=@0@/../rlottie.expmap'.format(meson.current_source_dir())]
+endif
+
subdir('vector')
subdir('lottie')
subdir('binding')
dependencies : rlottie_lib_dep,
install : true,
cpp_args : compiler_flags,
+ link_args : linker_flags,
gnu_symbol_visibility : 'hidden',
)