@@ -151,7 +151,8 @@ export ON_ANDROID := -- --android
151151aw-server-rust : $(JNILIBS )
152152
153153.PHONY : $(JNILIBS )
154- $(JNILIBS ) : $(JNI_arm7 ) /libaw_server.so $(JNI_arm8 ) /libaw_server.so $(JNI_x86 ) /libaw_server.so $(JNI_x64 ) /libaw_server.so
154+ $(JNILIBS ) : $(JNI_arm7 ) /libaw_server.so $(JNI_arm8 ) /libaw_server.so $(JNI_x86 ) /libaw_server.so $(JNI_x64 ) /libaw_server.so \
155+ $(JNI_arm7)/libaw_sync.so $(JNI_arm8)/libaw_sync.so $(JNI_x86)/libaw_sync.so $(JNI_x64)/libaw_sync.so
155156 @ls -lL $@/*/* # Check that symlinks are valid
156157
157158# There must be a better way to do this without repeating almost the same rule over and over?
@@ -170,6 +171,20 @@ $(JNI_x64)/libaw_server.so: $(TARGETDIR_x64)/$(RELEASE_TYPE)/libaw_server.so
170171 mkdir -p $$(dirname $@ )
171172 if [ -z " $( TARGET) " ] || [ " $( TARGET) " == " x86_64" ]; then ln -fnv $$ (pwd)/$^ $@ ; fi
172173
174+ $(JNI_arm7 ) /libaw_sync.so : $(TARGETDIR_arm7 ) /$(RELEASE_TYPE ) /libaw_sync.so
175+ mkdir -p $$(dirname $@ )
176+ # if target is empty, then create symlink
177+ if [ -z " $( TARGET) " ] || [ " $( TARGET) " == " arm" ]; then ln -fnv $$ (pwd)/$^ $@ ; fi
178+ $(JNI_arm8 ) /libaw_sync.so : $(TARGETDIR_arm8 ) /$(RELEASE_TYPE ) /libaw_sync.so
179+ mkdir -p $$(dirname $@ )
180+ if [ -z " $( TARGET) " ] || [ " $( TARGET) " == " arm64" ]; then ln -fnv $$ (pwd)/$^ $@ ; fi
181+ $(JNI_x86 ) /libaw_sync.so : $(TARGETDIR_x86 ) /$(RELEASE_TYPE ) /libaw_sync.so
182+ mkdir -p $$(dirname $@ )
183+ if [ -z " $( TARGET) " ] || [ " $( TARGET) " == " x86" ]; then ln -fnv $$ (pwd)/$^ $@ ; fi
184+ $(JNI_x64 ) /libaw_sync.so : $(TARGETDIR_x64 ) /$(RELEASE_TYPE ) /libaw_sync.so
185+ mkdir -p $$(dirname $@ )
186+ if [ -z " $( TARGET) " ] || [ " $( TARGET) " == " x86_64" ]; then ln -fnv $$ (pwd)/$^ $@ ; fi
187+
173188RUSTFLAGS_ANDROID ="-C debuginfo=2 -Awarnings"
174189# Explanation of RUSTFLAGS:
175190# `-Awarnings` allows all warnings, for cleaner output (warnings should be detected in aw-server-rust CI anyway)
@@ -192,6 +207,17 @@ $(RS_SRCDIR)/target/%/$(RELEASE_TYPE)/libaw_server.so: $(RS_SOURCES) $(WEBUI_DIS
192207 env RUSTFLAGS=$(RUSTFLAGS_ANDROID ) make -C aw-server-rust android; \
193208 fi
194209
210+ # Same rule for libaw_sync.so (but without webui dependency)
211+ $(RS_SRCDIR ) /target/% /$(RELEASE_TYPE ) /libaw_sync.so : $(RS_SOURCES )
212+ @echo $@
213+ @echo " Release type: $( RELEASE_TYPE) "
214+ @if [ " $$ USE_PREBUILT" == " true" ] && [ -f $@ ]; then \
215+ echo " Using prebuilt libaw_sync.so" ; \
216+ else \
217+ echo " Building libaw_sync.so from aw-server-rust repo" ; \
218+ env RUSTFLAGS=$(RUSTFLAGS_ANDROID ) make -C aw-server-rust android; \
219+ fi
220+
195221# aw-webui
196222.PHONY : $(WEBUI_DISTDIR )
197223$(WEBUI_DISTDIR ) :
0 commit comments