rlottie: Fix cmake build
authorsub.mohanty@samsung.com <smohantty@gmail.com>
Sat, 29 Jun 2019 14:07:22 +0000 (23:07 +0900)
committerHermet Park <hermetpark@gmail.com>
Wed, 10 Jul 2019 01:56:13 +0000 (10:56 +0900)
CMakeLists.txt
cmake/config.h.in [new file with mode: 0644]
src/vector/stb/CMakeLists.txt
src/vector/vimageloader.cpp
src/vector/vline.h

index 8284907..8b7108a 100644 (file)
@@ -19,6 +19,17 @@ set_target_properties(rlottie PROPERTIES
 #declare alias so that library can be used inside the build tree, e.g. when testing
 add_library(rlottie::rlottie ALIAS rlottie)
 
+option(LOTTIE_MODULE "Enable LOTTIE MODULE SUPPORT" ON)
+option(LOTTIE_THREAD "Enable LOTTIE THREAD SUPPORT" ON)
+option(LOTTIE_CACHE "Enable LOTTIE CACHE SUPPORT" ON)
+
+CONFIGURE_FILE(${CMAKE_CURRENT_LIST_DIR}/cmake/config.h.in config.h)
+
+target_include_directories(rlottie
+    PRIVATE
+        "${CMAKE_CURRENT_BINARY_DIR}"
+    )
+
 #declare target compilation options
 target_compile_options(rlottie
                     PUBLIC
diff --git a/cmake/config.h.in b/cmake/config.h.in
new file mode 100644 (file)
index 0000000..e120bba
--- /dev/null
@@ -0,0 +1,17 @@
+#cmakedefine LOTTIE_MODULE
+
+#ifdef LOTTIE_MODULE
+#define LOTTIE_IMAGE_MODULE_SUPPORT
+#endif
+
+#cmakedefine LOTTIE_THREAD
+
+#ifdef LOTTIE_THREAD
+#define LOTTIE_THREAD_SUPPORT
+#endif
+
+#cmakedefine LOTTIE_CACHE
+
+#ifdef LOTTIE_CACHE
+#define LOTTIE_CACHE_SUPPORT
+#endif
index 9c9a530..2b6abd1 100644 (file)
@@ -1,7 +1,14 @@
-add_library(rlottie-image-loader SHARED
-            stb_image.cpp
+if(LOTTIE_MODULE)
+    add_library(rlottie-image-loader SHARED
+                stb_image.cpp
+               )
+    install(TARGETS rlottie-image-loader
+            LIBRARY DESTINATION ${LIB_INSTALL_DIR}
+            ARCHIVE DESTINATION ${LIB_INSTALL_DIR}
            )
-install(TARGETS rlottie-image-loader
-        LIBRARY DESTINATION ${LIB_INSTALL_DIR}
-        ARCHIVE DESTINATION ${LIB_INSTALL_DIR}
-       )
+else()
+    target_sources(rlottie
+        PRIVATE
+            "${CMAKE_CURRENT_LIST_DIR}/stb_image.cpp"
+        )
+endif()
index b91554b..b28330e 100644 (file)
@@ -35,7 +35,7 @@ struct VImageLoader::Impl {
     lottie_image_free_f      imageFree{nullptr};
     lottie_image_load_data_f imageFromData{nullptr};
 
-#if LOTTIE_IMAGE_MODULE_SUPPORT
+#ifdef LOTTIE_IMAGE_MODULE_SUPPORT
 #ifdef _WIN32
     HMODULE dl_handle{nullptr};
     bool    moduleLoad()
index f80d321..869d198 100644 (file)
@@ -55,7 +55,7 @@ inline float VLine::angle() const
     const float dx = mX2 - mX1;
     const float dy = mY2 - mY1;
 
-    const float theta = std::atan2f(dy, dx) * 180.0f / K_PI;
+    const float theta = std::atan2(dy, dx) * 180.0f / K_PI;
     return theta;
 }