summaryrefslogtreecommitdiff
path: root/ios/CustomTarget_setup.mk
diff options
context:
space:
mode:
Diffstat (limited to 'ios/CustomTarget_setup.mk')
-rw-r--r--ios/CustomTarget_setup.mk70
1 files changed, 65 insertions, 5 deletions
diff --git a/ios/CustomTarget_setup.mk b/ios/CustomTarget_setup.mk
index d0c64d799d32..f526f23edab0 100644
--- a/ios/CustomTarget_setup.mk
+++ b/ios/CustomTarget_setup.mk
@@ -7,20 +7,20 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#- Env ------------------------------------------------------------------------
IOSGEN := $(SRCDIR)/ios/generated
-IOSKIT := $(IOSGEN)/loKit.xcconfig
-IOSAPP := $(IOSGEN)/loApp.xcconfig
+IOSKIT := $(BUILDDIR)/ios/loKit.xcconfig
+IOSAPP := $(BUILDDIR)/ios/loApp.xcconfig
+IOSRES := $(IOSGEN)/resources
#- Top level -----------------------------------------------------------------
$(eval $(call gb_CustomTarget_CustomTarget,ios/setup))
-$(call gb_CustomTarget_get_target,ios/setup): $(IOSKIT) $(IOSAPP)
+$(call gb_CustomTarget_get_target,ios/setup): $(IOSKIT) $(IOSAPP) iosCopySetup
#- Generate xcconfig files ---------------------------------------------------
$(IOSKIT) : $(BUILDDIR)/config_host.mk
$(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),ENV,2)
- @mkdir -p $(IOSGEN);
@echo "// Xcode configuration properties" > $(IOSKIT)
@echo "// To avoid confusion, the LO-specific ones that aren't as such used" >> $(IOSKIT)
@echo "// Xcode (but only expanded in option values) are prefixed with" >> $(IOSKIT)
@@ -69,11 +69,71 @@ $(IOSAPP) : $(BUILDDIR)/config_host.mk
@echo "LINK_LDFLAGS = -Wl,-lz,-liconv,-map,$(WORKDIR)/iosApp.map " >> $(IOSAPP)
@echo "SYMROOT = $(WORKDIR)/ios/build\n" >> $(IOSAPP)
+#- Generate setup ------------------------------------------------------------
+.PHONY : iosCopySetup
+iosCopySetup:
+ifeq ("$(wildcard $(IOSRES))","")
+ $(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),ENV,2)
+
+ mkdir -p $(IOSGEN) $(IOSRES) $(IOSRES)/services \
+ $(IOSRES)/share/config $(IOSRES)/share/filter $(IOSRES)/program
+
+ # generate file with call declarations
+ $(SRCDIR)/solenv/bin/native-code.py \
+ -g core -g writer -g calc -g draw -g edit \
+ > $(IOSGEN)/native-code.mm
+
+ # generate resource files used to start/run LibreOffice
+ cp $(INSTDIR)/program/types.rdb $(IOSRES)/udkapi.rdb
+ cp $(INSTDIR)/program/types/offapi.rdb $(IOSRES)
+ cp $(INSTDIR)/program/types/oovbaapi.rdb $(IOSRES)
+ cp $(INSTDIR)/program/services/services.rdb $(IOSRES)/services
+ cp $(INSTDIR)/program/services.rdb $(IOSRES)
+ cp -R $(INSTDIR)/share/config/soffice.cfg $(IOSRES)/share/config
+ cp $(WORKDIR)/CustomTarget/i18npool/breakiterator/dict_*.data $(IOSRES)/share
+ cp $(INSTDIR)/share/filter/oox-drawingml-adj-names $(IOSRES)/share/filter
+ cp $(INSTDIR)/share/filter/oox-drawingml-cs-presets $(IOSRES)/share/filter
+ cp $(INSTDIR)/share/filter/vml-shape-types $(IOSRES)/share/filter
+ cp -R $(INSTDIR)/share/registry $(IOSRES)/share
+
+ # Set up rc, the "inifile". See getIniFileName_Impl().
+ echo '[Bootstrap]' > $(IOSRES)/rc
+ echo 'URE_BOOTSTRAP=file://$$APP_DATA_DIR/fundamentalrc' >> $(IOSRES)/rc
+ echo 'HOME=$$SYSUSERHOME' >> $(IOSRES)/rc
+
+ # Set up fundamentalrc, unorc, bootstraprc and versionrc.
+ file=$(IOSRES)/fundamentalrc; \
+ echo '[Bootstrap]' > $(IOSRES)/fundamentalrc
+ echo 'LO_LIB_DIR=file://$$APP_DATA_DIR/lib/' >> $(IOSRES)/fundamentalrc
+ echo 'BRAND_BASE_DIR=file://$$APP_DATA_DIR' >> $(IOSRES)/fundamentalrc
+ echo 'CONFIGURATION_LAYERS=xcsxcu:$${BRAND_BASE_DIR}/share/registry ' \
+ 'res:$${BRAND_BASE_DIR}/registry' >> $(IOSRES)/fundamentalrc
+ echo 'UNO_TYPES=file://$$APP_DATA_DIR/udkapi.rdb ' \
+ 'file://$$APP_DATA_DIR/offapi.rdb' >> $(IOSRES)/fundamentalrc
+ echo 'UNO_SERVICES=file://$$APP_DATA_DIR/services.rdb ' \
+ 'file://$$APP_DATA_DIR/services/services.rdb' >> $(IOSRES)/fundamentalrc
+ echo 'OSL_SOCKET_PATH=$$APP_DATA_DIR/cache' >> $(IOSRES)/fundamentalrc
+
+ echo '[Bootstrap]' > $(IOSRES)/unorc
+
+ # bootstraprc must be in $BRAND_BASE_DIR/program
+ echo '[Bootstrap]' > $(IOSRES)/program/bootstraprc
+ echo 'InstallMode=<installmode>' >> $(IOSRES)/program/bootstraprc
+ echo "ProductKey=LibreOffice $(PRODUCTVERSION)" >> $(IOSRES)/program/bootstraprc
+ echo 'UserInstallation=$$SYSUSERHOME/userinstallation' >> $(IOSRES)/program/bootstraprc
+
+ # Is this really needed?
+ echo '[Version]' > $(IOSRES)/program/versionrc
+ echo 'AllLanguages=en-US' >> $(IOSRES)/program/versionrc
+ echo 'BuildVersion=' >> $(IOSRES)/program/versionrc
+ echo "buildid=$(BUILDID)" >> $(IOSRES)/program/versionrc
+endif
+#- clean ios -----------------------------------------------------------------
$(call gb_CustomTarget_get_clean_target,ios/setup):
$(call gb_Output_announce,$(subst $(WORKDIR)/Clean/,,$@),$(false),ENV,2)
- rm -rf $(IOSGEN)
+ rm -rf $(IOSGEN) $(IOSKIT) $(IOSAPP)
# vim: set noet sw=4 ts=4: