diff --git a/packaging/lottie-player.spec b/packaging/lottie-player.spec index 0f96d78838..596098bca6 100644 --- a/packaging/lottie-player.spec +++ b/packaging/lottie-player.spec @@ -32,9 +32,19 @@ lottie player library (devel) export CFLAGS+=" -fvisibility=hidden -fPIC -Wall -O2" export LDFLAGS+=" " +%ifarch %{arm} +export CXXFLAGS+=" -D_ARCH_ARM_ -mfpu=neon" +%endif + +%ifarch %{arm} +cmake . -DCMAKE_INSTALL_PREFIX=/usr \ + -DLIB_INSTALL_DIR:PATH=%{_libdir} \ + -DARCH="arm" +%else cmake . -DCMAKE_INSTALL_PREFIX=/usr \ -DLIB_INSTALL_DIR:PATH=%{_libdir} +%endif make %{?jobs:-j%jobs} diff --git a/src/vector/CMakeLists.txt b/src/vector/CMakeLists.txt index 98525e5ded..0a4c80aafd 100644 --- a/src/vector/CMakeLists.txt +++ b/src/vector/CMakeLists.txt @@ -10,6 +10,7 @@ target_sources(lottie-player "${CMAKE_CURRENT_LIST_DIR}/vcompositionfunctions.cpp" "${CMAKE_CURRENT_LIST_DIR}/vdrawhelper.cpp" "${CMAKE_CURRENT_LIST_DIR}/vdrawhelper_sse2.cpp" + "${CMAKE_CURRENT_LIST_DIR}/vdrawhelper_neon.cpp" "${CMAKE_CURRENT_LIST_DIR}/vregion.cpp" "${CMAKE_CURRENT_LIST_DIR}/vrle.cpp" "${CMAKE_CURRENT_LIST_DIR}/vpath.cpp" @@ -23,6 +24,14 @@ target_sources(lottie-player "${CMAKE_CURRENT_LIST_DIR}/vdrawable.cpp" ) +IF("${ARCH}" STREQUAL "arm") +#SET(CMAKE_ASM_FLAGS "${CFLAGS} -x assembler-with-cpp") +#target_sources(lottie-player +# PRIVATE +# "${CMAKE_CURRENT_LIST_DIR}/pixman-arm-neon-asm.S" +# ) +ENDIF("${ARCH}" STREQUAL "arm") + target_include_directories(lottie-player PRIVATE "${CMAKE_CURRENT_LIST_DIR}"