fb33a3d607
Change-Id: Ie392c6e5d5ba6c9f39c6786f48f4457d2478f23b |
||
---|---|---|
.. | ||
Mobile | ||
Mobile.xcodeproj | ||
TestFakeSocket | ||
README |
How to build the iOS app: 1) First you need to build the LibreOffice core code for iOS. Put in your autogen.input something like this: --enable-debug --enable-dbgutil --enable-werror --with-distro=LibreOfficeiOS and build "normally". (Naturally, no unit tests will be run when cross-compiling LibreOffice.) Of course there is no requirement to use those --enable options; as a minimum, just --with-distro=LibreOfficeiOS should work. This will produce a large number of static archives (.a) here and there in instdir and workdir, but no app that can be run as such. (You can see a list of them in workdir/CustomTarget/ios/ios-all-static-libs.list) 2) Do a separate clone of the online repo on macOS, but don't run any make or open the Mobile project there yet. 3) Do a separate clone of the online repo on Linux, run autogen.sh, and configure it with the --enable-iosapp option: ./configure --disable-ssl --enable-iosapp --with-lo-path=/home/tml/lo/fedora/instdir --with-lokit-path=/home/tml/lo/fedora/include (The --with-lo-path and --with-lokit-path options are actually irrelevant, but needed anyway.) Then run make. That will produce files in loleaflet/dist, nothing else. Copy those to the corresponding folder in the online close from step 2. This is what I do: make clean && make && tar cf - loleaflet/dist | ssh misan.local 'cd lo/online-ios-device && tar xvf -' where misan.local is the macOS machine where I build the app, in the ~lo/online-ios-device folder. 4) In the online folder form step 2, edit the Mobile/Mobile.xcodeproj/project.pbxproj file in your favourite text editor. Change all instances of ../../../../ios-device to the path to where you built LibreOffice core for iOS in step 1. Change the value of PNGINSTDIR to where you have installed libpng compiled for iOS. Change POCOINSTDIR to where you have installed Poco compiled for iOS. 4) Now you can open the Mobile Xcode project, build it, and run it.