Skip to content

Commit c198fc6

Browse files
committed
[TF][REFACTOR] Replace tlottie with rlottie
there won't be rustslop on any project I maintain
1 parent 61ed32e commit c198fc6

13 files changed

Lines changed: 255 additions & 388 deletions

File tree

.gitmodules

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,6 @@
1010
[submodule "TMessagesProj/lib/jlatexmath"]
1111
path = TMessagesProj/lib/jlatexmath
1212
url = https://github.com/dkaraush/jlatexmath-android.git
13-
[submodule "TMessagesProj/jni/tlottie"]
14-
path = TMessagesProj/jni/tlottie
15-
url = https://github.com/dkaraush/tlottie.git
1613
[submodule "TMessagesProj/jni/third_party/openh264"]
1714
path = TMessagesProj/jni/third_party/openh264
1815
url = https://github.com/cisco/openh264.git
@@ -37,3 +34,6 @@
3734
[submodule "TMessagesProj/jni/tdlib"]
3835
path = TMessagesProj/jni/tdlib
3936
url = https://github.com/tdlib/td
37+
[submodule "TMessagesProj/jni/rlottie"]
38+
path = TMessagesProj/jni/rlottie
39+
url = https://github.com/dkaraush/rlottie.git

TMessagesProj/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ idea {
99
excludeDirs += [
1010
file('jni/third_party'),
1111
file('jni/ffmpeg'),
12-
file('jni/tlottie'),
12+
file('jni/rlottie'),
1313
file('jni/libressl'),
1414
file('jni/sqlite')
1515
]

TMessagesProj/jni/CMakeLists.txt

Lines changed: 59 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -84,10 +84,64 @@ target_include_directories(tgnet PUBLIC
8484
target_link_libraries(tgnet
8585
crypto)
8686

87-
# tlottie (prebuilt Rust static library)
88-
add_library(tlottie STATIC IMPORTED)
89-
set_target_properties(tlottie PROPERTIES
90-
IMPORTED_LOCATION ${CMAKE_HOME_DIRECTORY}/prebuild/${ANDROID_ABI}/libtlottie.a)
87+
#rlottie
88+
add_library(rlottie STATIC
89+
rlottie/src/lottie/lottieanimation.cpp
90+
rlottie/src/lottie/lottieitem.cpp
91+
rlottie/src/lottie/lottiekeypath.cpp
92+
rlottie/src/lottie/lottieloader.cpp
93+
rlottie/src/lottie/lottiemodel.cpp
94+
rlottie/src/lottie/lottieparser.cpp
95+
rlottie/src/lottie/lottieproxymodel.cpp
96+
rlottie/src/vector/freetype/v_ft_math.cpp
97+
rlottie/src/vector/freetype/v_ft_raster.cpp
98+
rlottie/src/vector/freetype/v_ft_stroker.cpp
99+
rlottie/src/vector/pixman/vregion.cpp
100+
rlottie/src/vector/stb/stb_image.cpp
101+
rlottie/src/vector/vbezier.cpp
102+
rlottie/src/vector/vbitmap.cpp
103+
rlottie/src/vector/vbrush.cpp
104+
rlottie/src/vector/vcompositionfunctions.cpp
105+
rlottie/src/vector/vdasher.cpp
106+
rlottie/src/vector/vdebug.cpp
107+
rlottie/src/vector/vdrawable.cpp
108+
rlottie/src/vector/vdrawhelper.cpp
109+
rlottie/src/vector/vdrawhelper_neon.cpp
110+
rlottie/src/vector/velapsedtimer.cpp
111+
rlottie/src/vector/vimageloader.cpp
112+
rlottie/src/vector/vinterpolator.cpp
113+
rlottie/src/vector/vmatrix.cpp
114+
rlottie/src/vector/vpainter.cpp
115+
rlottie/src/vector/vpath.cpp
116+
rlottie/src/vector/vpathmesure.cpp
117+
rlottie/src/vector/vraster.cpp
118+
rlottie/src/vector/vrect.cpp
119+
rlottie/src/vector/vrle.cpp)
120+
target_compile_options(rlottie PUBLIC
121+
-Wall -fno-rtti -finline-functions -ffast-math -Oz -fno-unwind-tables -fno-asynchronous-unwind-tables -Wnon-virtual-dtor -Woverloaded-virtual -Wno-unused-parameter -fvisibility=hidden)
122+
set_target_properties(rlottie PROPERTIES
123+
ANDROID_ARM_MODE arm)
124+
target_compile_definitions(rlottie PUBLIC
125+
HAVE_PTHREAD NDEBUG)
126+
target_include_directories(rlottie PUBLIC
127+
./
128+
rlottie/inc
129+
rlottie/src/vector/
130+
rlottie/src/vector/pixman
131+
rlottie/src/vector/freetype
132+
rlottie/src/vector/stb)
133+
134+
if (${ANDROID_ABI} STREQUAL "armeabi-v7a")
135+
target_compile_definitions(rlottie PUBLIC
136+
USE_ARM_NEON)
137+
target_sources(rlottie PRIVATE
138+
rlottie/src/vector/pixman/pixman-arm-neon-asm.S)
139+
elseif(${ANDROID_ABI} STREQUAL "arm64-v8a")
140+
target_compile_definitions(rlottie PUBLIC
141+
USE_ARM_NEON __ARM64_NEON__)
142+
target_sources(rlottie PRIVATE
143+
rlottie/src/vector/pixman/pixman-arma64-neon-asm.S)
144+
endif()
91145

92146
#sqlite
93147
add_library(sqlite STATIC
@@ -370,7 +424,6 @@ target_include_directories(${NATIVE_LIB} PUBLIC
370424
emoji
371425
exoplayer/include
372426
intro
373-
tlottie/include
374427
tgcalls/
375428
webrtc/
376429
tde2e/include
@@ -385,7 +438,7 @@ target_link_libraries(${NATIVE_LIB}
385438
tgcalls
386439
tgcalls_tp
387440
tgnet
388-
tlottie
441+
rlottie
389442
sqlite
390443
swscale
391444
avformat

0 commit comments

Comments
 (0)