Files
odfstudio/android/source/Makefile
T
Ivan Vladimirovich Kuznetsov 26173fcdad Android. Turn to standard android project structure.
There is no reason to use a custom project structure. The usual Android
project structure makes the development of new features easier using a
modular approach. Therefore, the logic of gradle files was divided into
different levels, gradle scripts was migrated to kotlin,
dependency definitions was moved into toml file.
No one java or kotlin file has been changed.

These changes based on:
1) Android build structure:
https://developer.android.com/build/android-build-structure
2) Migrate your build to version catalogs:
https://developer.android.com/build/migrate-to-catalogs
3) Migrate your build configuration from Groovy to Kotlin
https://developer.android.com/build/migrate-to-kotlin-dsl

Note: The source module has not been renamed to app (this is the usual
name for a top-level application subproject), because I currently do not
know what other changes will need to be made besides gradle scripts
(maybe in the Makefiles or in other) for a correct build. Additional
analysis required.

Change-Id: Ic11efdb51524e795b8c6e2605b6501d9699c525c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/195939
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-02-17 10:10:45 +01:00

41 lines
1.6 KiB
Makefile

ifeq ($(BUILDDIR),)
gb_Side:=host
include ../../config_host.mk
endif
# The default target builds the APK and runs lint.
all: build-gradle
DISABLE_UI=TRUE
BUILD_VARIANT=$(if $(DISABLE_UI),StrippedUI)$(if $(ENABLE_ANDROID_EDITING),Editing)$(if $(ENABLE_RELEASE_BUILD),Release,Debug)
BOOTSTRAPDIR=../Bootstrap
include $(BOOTSTRAPDIR)/Makefile.shared
native-code.cxx: $(SRCDIR)/solenv/bin/native-code.py
@echo "[build PY ] $@"
$< -j -g core -g writer -g calc -g draw -g edit > $@
install:
if test "$$ENABLE_ANDROID_LOK" != "TRUE" ; then ../gradlew $(if $(verbose),--info) $(if $(versionCode),-PcmdVersionCode=$(versionCode)) install$(if $(DISABLE_UI),StrippedUI)$(if $(ENABLE_ANDROID_EDITING),Editing)Debug ; fi
@if test "$$ENABLE_ANDROID_LOK" != "TRUE" ; then echo ; echo 'Run it with "make run"' ; echo ; fi
uninstall:
$(ANDROID_SDK_DIR)/platform-tools/adb uninstall $(ANDROID_PACKAGE_NAME)
clean:
rm -rf assets assets_strippedUI build jniLibs jniLibs_debug res_generated $(OBJLOCAL)
rm -f native-code.cxx
rm -f liboSettings.gradle.kts
build-gradle: liboSettings.gradle.kts link-so
ifeq ($(ENABLE_JAVA),TRUE)
if test "$$ENABLE_ANDROID_LOK" != "TRUE" ; then ../gradlew $(if $(verbose),--info) $(if $(versionCode),-PcmdVersionCode=$(versionCode)) assemble$(BUILD_VARIANT) lint$(BUILD_VARIANT) ; fi
endif
run:
if test "$$ENABLE_ANDROID_LOK" != "TRUE" ; then $(ANDROID_SDK_DIR)/platform-tools/adb shell am start -n $(ANDROID_PACKAGE_NAME)/org.libreoffice.ui.LibreOfficeUIActivity ; fi
debugrun:
@echo "please debug with lldb from within Android Studio, or setup ndk-gdb manually (see android/README for details)"