1 # -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
3 # This file is part of the LibreOffice project.
5 # This Source Code Form is subject to the terms of the Mozilla Public
6 # License, v. 2.0. If a copy of the MPL was not distributed with this
7 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 #- Env ------------------------------------------------------------------------
11 MobileLibreOffice_resource
:= MobileLibreOffice
/resource_link
12 BUILDID
:=$(shell cd
$(SRCDIR
) && git log
-1 --format
=%H
)
14 #- Macros ---------------------------------------------------------------------
16 define MobileLibreOfficeXcodeBuild
17 CC
=;xcodebuild
-project shared
/ios_sharedlo.xcodeproj
-target ios_sharedlo
-arch
$(XCODE_ARCHS
) -configuration
$(if
$(ENABLE_DEBUG
),Debug
,Release
) $(1) $(if
$(verbose
)$(VERBOSE
),,>/dev
/null
)
18 CC
=;xcodebuild
-project MobileLibreOffice
/MobileLibreOffice.xcodeproj
-target MobileLibreOffice
-arch
$(XCODE_ARCHS
) -configuration
$(if
$(ENABLE_DEBUG
),Debug
,Release
) $(1) $(if
$(verbose
)$(VERBOSE
),,>/dev
/null
)
21 #- Targets --------------------------------------------------------------------
23 .PHONY
: MobileLibreOffice_setup
25 #==============================================================================
27 $(eval
$(call gb_CustomTarget_CustomTarget
,ios
/MobileLibreOffice
))
28 #==============================================================================
30 #==============================================================================
32 # Depend on the custom target that sets up lo.xcconfig
33 $(call gb_CustomTarget_get_target
,ios
/MobileLibreOffice
): $(call gb_CustomTarget_get_target
,ios
/Lo_Xcconfig
) MobileLibreOffice_setup
34 #==============================================================================
35 $(call gb_Output_announce
,$(subst $(WORKDIR
)/,,$@
),$(true
),APP
,2)
36 $(SRCDIR
)/solenv
/bin
/native-code.py \
38 > $(SRCDIR
)/ios
/shared
/ios_sharedlo
/cxx/native-code.mm
39 $(call MobileLibreOfficeXcodeBuild
, clean build
)
41 #==============================================================================
43 MobileLibreOffice_setup
:
44 #==============================================================================
45 $(call gb_Output_announce
,$(subst $(WORKDIR
)/,,$@
),$(true
),ENV
,2)
48 rm -rf
$(MobileLibreOffice_resource
) 2>/dev
/null
49 mkdir
-p
$(MobileLibreOffice_resource
)
50 mkdir
-p
$(MobileLibreOffice_resource
)/ure
53 cp
$(INSTDIR
)/ure
/share
/misc
/types.rdb
$(MobileLibreOffice_resource
)
54 cp
$(INSTDIR
)/program
/types
/offapi.rdb
$(MobileLibreOffice_resource
)
55 cp
$(INSTDIR
)/program
/types
/oovbaapi.rdb
$(MobileLibreOffice_resource
)
56 cp
$(INSTDIR
)/program
/services
/services.rdb
$(MobileLibreOffice_resource
)
57 cp
$(INSTDIR
)/ure
/share
/misc
/services.rdb
$(MobileLibreOffice_resource
)/ure
60 # program/resource is hardcoded in tools/source/rc/resmgr.cxx. Sure,
61 # we could set STAR_RESOURCE_PATH instead. sigh...
62 mkdir
-p
$(MobileLibreOffice_resource
)/program
/resource
63 cp
$(INSTDIR
)/program
/resource
/*en-US.res
$(MobileLibreOffice_resource
)/program
/resource
66 mkdir
-p
$(MobileLibreOffice_resource
)/share
/config
67 cp
-R
$(INSTDIR
)/share
/config
/soffice.cfg
$(MobileLibreOffice_resource
)/share
/config
70 cp
-R
$(INSTDIR
)/share
/registry
$(MobileLibreOffice_resource
)/share
72 # Set up rc, the "inifile". See getIniFileName_Impl().
73 file
=$(MobileLibreOffice_resource
)/rc
; \
74 echo
'[Bootstrap]' > $$file; \
75 echo
'URE_BOOTSTRAP=file://$$APP_DATA_DIR/fundamentalrc' >> $$file; \
76 echo
'HOME=$$APP_DATA_DIR/tmp' >> $$file;
78 # Set up fundamentalrc, unorc, bootstraprc and versionrc.
79 # Do we really need all these?
80 file
=$(MobileLibreOffice_resource
)/fundamentalrc
; \
81 echo
'[Bootstrap]' > $$file; \
82 echo
'BRAND_BASE_DIR=file://$$APP_DATA_DIR' >> $$file; \
83 echo
'CONFIGURATION_LAYERS=xcsxcu:$${BRAND_BASE_DIR}/share/registry res:$${BRAND_BASE_DIR}/registry' >> $$file;
85 file
=$(MobileLibreOffice_resource
)/unorc
; \
86 echo
'[Bootstrap]' > $$file;
88 # bootstraprc must be in $BRAND_BASE_DIR/program
89 mkdir
-p
$(MobileLibreOffice_resource
)/program
90 file
=$(MobileLibreOffice_resource
)/program
/bootstraprc
; \
91 echo
'[Bootstrap]' > $$file; \
92 echo
'InstallMode=<installmode>' >> $$file; \
93 echo
"ProductKey=LibreOffice $(PRODUCTVERSION)" >> $$file; \
94 echo
'UserInstallation=file://$$APP_DATA_DIR/../Library/Application%20Support' >> $$file;
96 # Is this really needed?
97 file
=$(MobileLibreOffice_resource
)/program
/versionrc
; \
98 echo
'[Version]' > $$file; \
99 echo
'AllLanguages=en-US' >> $$file; \
100 echo
'BuildVersion=' >> $$file; \
101 echo
"buildid=$(BUILDID)" >> $$file;
103 #==============================================================================
105 $(call gb_CustomTarget_get_clean_target
,ios
/MobileLibreOffice
):
106 #==============================================================================
107 $(call gb_Output_announce
,$(subst $(WORKDIR
)/Clean
/,,$@
),$(false
),APP
,2)
108 $(call MobileLibreOfficeXcodeBuild
, clean)
110 #------------------------------------------------------------------------------
111 # vim: set noet sw=4 ts=4: