common/Log.cpp | 18 +++- common/Log.hpp | 2 common/SigUtil.cpp | 4 + common/SigUtil.hpp | 4 + ios/Mobile.xcodeproj/project.pbxproj | 132 +++++++++++++++++++++++++++++++++++ ios/Mobile/DocumentViewController.mm | 5 + kit/Kit.cpp | 6 - wsd/DocumentBroker.hpp | 7 + 8 files changed, 171 insertions(+), 7 deletions(-)
New commits: commit d9e5a470586f7a4e44cec939855e8e18020dfd2c Author: Tor Lillqvist <[email protected]> AuthorDate: Tue May 14 22:37:11 2019 +0300 Commit: Tor Lillqvist <[email protected]> CommitDate: Thu May 16 11:44:41 2019 +0300 Introduce new flag to speed up shutdown of the Online plumbing in the iOS app Spent hours on trying to cleverly use the existing TerminationFlag (with minor modifications to the code that checks it, and some additional code to set and reset it), but could not get it to work. This is simpler, but sure, using a global variable is ugly of course. At least the new MobileTerminationFlag is very specific in semantics and only used in the mobile apps. Change-Id: I0775fdfa7880750ca12c6fd7ec41d3d3ceb2f0ad diff --git a/common/SigUtil.cpp b/common/SigUtil.cpp index d5ae63c72..df7809702 100644 --- a/common/SigUtil.cpp +++ b/common/SigUtil.cpp @@ -41,6 +41,10 @@ std::atomic<bool> TerminationFlag(false); std::atomic<bool> DumpGlobalState(false); +#if MOBILEAPP +std::atomic<bool> MobileTerminationFlag(false); +#endif + #if !MOBILEAPP std::atomic<bool> ShutdownRequestFlag(false); diff --git a/common/SigUtil.hpp b/common/SigUtil.hpp index 7c247ad0d..39706372d 100644 --- a/common/SigUtil.hpp +++ b/common/SigUtil.hpp @@ -26,6 +26,10 @@ extern std::atomic<bool> TerminationFlag; /// Flag to dump internal state extern std::atomic<bool> DumpGlobalState; +#if MOBILEAPP +extern std::atomic<bool> MobileTerminationFlag; +#endif + #if !MOBILEAPP /// Mutex to trap signal handler, if any, diff --git a/ios/Mobile/DocumentViewController.mm b/ios/Mobile/DocumentViewController.mm index 76e64d0d8..ff2d2f1ab 100644 --- a/ios/Mobile/DocumentViewController.mm +++ b/ios/Mobile/DocumentViewController.mm @@ -17,6 +17,7 @@ #import "ios.h" #import "FakeSocket.hpp" #import "Log.hpp" +#import "SigUtil.hpp" #import "Util.hpp" #import "DocumentViewController.h" @@ -201,6 +202,10 @@ // is saved by closing it. fakeSocketClose(self->closeNotificationPipeForForwardingThread[1]); + // Flag to make the inter-thread plumbing in the Online + // bits go away quicker. + MobileTerminationFlag = true; + // Close our end of the fake socket connection to the // ClientSession thread, so that it terminates fakeSocketClose(self.document->fakeClientFd); diff --git a/wsd/DocumentBroker.hpp b/wsd/DocumentBroker.hpp index 0642599c2..2846af92a 100644 --- a/wsd/DocumentBroker.hpp +++ b/wsd/DocumentBroker.hpp @@ -48,6 +48,13 @@ public: bool continuePolling() override { +#if MOBILEAPP + if (MobileTerminationFlag) + { + MobileTerminationFlag = false; + return false; + } +#endif return SocketPoll::continuePolling() && !TerminationFlag; } }; commit ebda7c6b8ba1c1e04bd55f26c55c383033418b9d Author: Tor Lillqvist <[email protected]> AuthorDate: Tue May 14 13:48:58 2019 +0300 Commit: Tor Lillqvist <[email protected]> CommitDate: Thu May 16 11:42:19 2019 +0300 Use same kind of thread id as Xcode and osl_getThreadIdentifier() on iOS Reduce the number of different kinds of identifiers for threads that are displayed in various places. Use the number that you get with pthread_threadid_np(), in hex, which is the same that Xcode (i.e. lldb) displays in its "thread list" command. It also is the same number that osl_getThreadIdentifier() returns. Change-Id: I0c14ad99badd7e742d15b7d1f37037fa66c892b4 diff --git a/common/Log.cpp b/common/Log.cpp index 19a27bda6..5a0c2655d 100644 --- a/common/Log.cpp +++ b/common/Log.cpp @@ -110,12 +110,9 @@ namespace Log char* prefix(char* buffer, const std::size_t len, const char* level) { const char *threadName = Util::getThreadName(); + Poco::DateTime time; #ifdef __linux const long osTid = Util::getThreadId(); -#elif defined IOS - const auto osTid = pthread_mach_thread_np(pthread_self()); -#endif - Poco::DateTime time; snprintf(buffer, len, "%s-%.05lu %.4u-%.2u-%.2u %.2u:%.2u:%.2u.%.6u [ %s ] %s ", (Source.getInited() ? Source.getId().c_str() : "<shutdown>"), osTid, @@ -123,6 +120,17 @@ namespace Log time.hour(), time.minute(), time.second(), time.millisecond() * 1000 + time.microsecond(), threadName, level); +#elif defined IOS + uint64_t osTid; + pthread_threadid_np(nullptr, &osTid); + snprintf(buffer, len, "%s-%#.05llx %.4u-%.2u-%.2u %.2u:%.2u:%.2u.%.6u [ %s ] %s ", + (Source.getInited() ? Source.getId().c_str() : "<shutdown>"), + osTid, + time.year(), time.month(), time.day(), + time.hour(), time.minute(), time.second(), + time.millisecond() * 1000 + time.microsecond(), + threadName, level); +#endif return buffer; } commit d59956aa3d236b207c2499b26cbdde677345dac2 Author: Tor Lillqvist <[email protected]> AuthorDate: Mon May 13 16:47:19 2019 +0300 Commit: Tor Lillqvist <[email protected]> CommitDate: Thu May 16 11:41:56 2019 +0300 Use consistent terminology in LOG_INF() calls around runLoop() call Change-Id: I46d954250447dea6ffa60c6e0e341f23a9ad4ff9 diff --git a/kit/Kit.cpp b/kit/Kit.cpp index dcd3a4872..fefa3da0b 100644 --- a/kit/Kit.cpp +++ b/kit/Kit.cpp @@ -2743,7 +2743,7 @@ void lokit_main( loKit->runLoop(pollCallback, wakeCallback, &mainKit); - LOG_INF("Kit poll terminated."); + LOG_INF("Kit unipoll loop run terminated."); #if MOBILEAPP SocketPoll::wakeupWorld(); commit 8ae35c6348e843e38b52bbc11e21f63686865ce0 Author: Tor Lillqvist <[email protected]> AuthorDate: Mon May 13 16:45:24 2019 +0300 Commit: Tor Lillqvist <[email protected]> CommitDate: Thu May 16 11:41:08 2019 +0300 No need to call Log::shutdown() in a mobile app The process never exists voluntarily. It is killed by the OS when inactive and its resources are needed. Change-Id: I9a7fa8200a44bba8dfcd2b09882f1b87814025be diff --git a/common/Log.cpp b/common/Log.cpp index b892c5b4b..19a27bda6 100644 --- a/common/Log.cpp +++ b/common/Log.cpp @@ -196,6 +196,7 @@ namespace Log return Poco::Logger::get(Source.getInited() ? Source.getName() : std::string()); } +#if !MOBILEAPP void shutdown() { logger().shutdown(); @@ -206,6 +207,7 @@ namespace Log std::flush(std::cerr); fflush(stderr); } +#endif } /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/common/Log.hpp b/common/Log.hpp index bdc654b39..50881f941 100644 --- a/common/Log.hpp +++ b/common/Log.hpp @@ -49,8 +49,10 @@ namespace Log /// Returns the underlying logging system. Poco::Logger& logger(); +#if !MOBILEAPP /// Shutdown and release the logging system. void shutdown(); +#endif char* prefix(char* buffer, std::size_t len, const char* level); diff --git a/kit/Kit.cpp b/kit/Kit.cpp index 89a259e39..dcd3a4872 100644 --- a/kit/Kit.cpp +++ b/kit/Kit.cpp @@ -2747,14 +2747,14 @@ void lokit_main( #if MOBILEAPP SocketPoll::wakeupWorld(); -#endif - +#else // Trap the signal handler, if invoked, // to prevent exiting. LOG_INF("Process finished."); Log::shutdown(); // Let forkit handle the jail cleanup. +#endif } catch (const Exception& exc) { commit 32c1dd0a5d3bd3dcc352e29ee47eb28655cfb289 Author: Tor Lillqvist <[email protected]> AuthorDate: Thu May 16 11:39:32 2019 +0300 Commit: Tor Lillqvist <[email protected]> CommitDate: Thu May 16 11:39:32 2019 +0300 Add more core source files for breakpointing convenience diff --git a/ios/Mobile.xcodeproj/project.pbxproj b/ios/Mobile.xcodeproj/project.pbxproj index d11d84fd1..511ddb8c6 100644 --- a/ios/Mobile.xcodeproj/project.pbxproj +++ b/ios/Mobile.xcodeproj/project.pbxproj @@ -75,6 +75,31 @@ BE00F8B4213ED543001CE2D4 /* libiconv.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libiconv.tbd; path = usr/lib/libiconv.tbd; sourceTree = SDKROOT; }; BE00F8B6213ED573001CE2D4 /* libz.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libz.tbd; path = usr/lib/libz.tbd; sourceTree = SDKROOT; }; BE18C7DD226DE09A001AD27E /* Branding */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Branding; path = Mobile/Branding; sourceTree = SOURCE_ROOT; }; + BE28F880228CE04600C00C48 /* langselect.hxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; name = langselect.hxx; path = "../../ios-device/desktop/source/app/langselect.hxx"; sourceTree = "<group>"; }; + BE28F881228CE04600C00C48 /* officeipcthread.hxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; name = officeipcthread.hxx; path = "../../ios-device/desktop/source/app/officeipcthread.hxx"; sourceTree = "<group>"; }; + BE28F882228CE04600C00C48 /* opencl.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = opencl.cxx; path = "../../ios-device/desktop/source/app/opencl.cxx"; sourceTree = "<group>"; }; + BE28F883228CE04600C00C48 /* dispatchwatcher.hxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; name = dispatchwatcher.hxx; path = "../../ios-device/desktop/source/app/dispatchwatcher.hxx"; sourceTree = "<group>"; }; + BE28F884228CE04600C00C48 /* desktopcontext.hxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; name = desktopcontext.hxx; path = "../../ios-device/desktop/source/app/desktopcontext.hxx"; sourceTree = "<group>"; }; + BE28F885228CE04600C00C48 /* cmdlinehelp.hxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; name = cmdlinehelp.hxx; path = "../../ios-device/desktop/source/app/cmdlinehelp.hxx"; sourceTree = "<group>"; }; + BE28F886228CE04600C00C48 /* desktopcontext.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = desktopcontext.cxx; path = "../../ios-device/desktop/source/app/desktopcontext.cxx"; sourceTree = "<group>"; }; + BE28F887228CE04600C00C48 /* cmdlineargs.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = cmdlineargs.cxx; path = "../../ios-device/desktop/source/app/cmdlineargs.cxx"; sourceTree = "<group>"; }; + BE28F888228CE04600C00C48 /* updater.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = updater.cxx; path = "../../ios-device/desktop/source/app/updater.cxx"; sourceTree = "<group>"; }; + BE28F889228CE04600C00C48 /* dispatchwatcher.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = dispatchwatcher.cxx; path = "../../ios-device/desktop/source/app/dispatchwatcher.cxx"; sourceTree = "<group>"; }; + BE28F88A228CE04600C00C48 /* userinstall.hxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; name = userinstall.hxx; path = "../../ios-device/desktop/source/app/userinstall.hxx"; sourceTree = "<group>"; }; + BE28F88B228CE04600C00C48 /* check_ext_deps.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = check_ext_deps.cxx; path = "../../ios-device/desktop/source/app/check_ext_deps.cxx"; sourceTree = "<group>"; }; + BE28F88C228CE04600C00C48 /* app.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = app.cxx; path = "../../ios-device/desktop/source/app/app.cxx"; sourceTree = "<group>"; }; + BE28F88D228CE04600C00C48 /* crashreport.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = crashreport.cxx; path = "../../ios-device/desktop/source/app/crashreport.cxx"; sourceTree = "<group>"; }; + BE28F88E228CE04600C00C48 /* updater.hxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; name = updater.hxx; path = "../../ios-device/desktop/source/app/updater.hxx"; sourceTree = "<group>"; }; + BE28F88F228CE04600C00C48 /* cmdlineargs.hxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; name = cmdlineargs.hxx; path = "../../ios-device/desktop/source/app/cmdlineargs.hxx"; sourceTree = "<group>"; }; + BE28F890228CE04600C00C48 /* main.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = main.c; path = "../../ios-device/desktop/source/app/main.c"; sourceTree = "<group>"; }; + BE28F891228CE04700C00C48 /* appinit.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = appinit.cxx; path = "../../ios-device/desktop/source/app/appinit.cxx"; sourceTree = "<group>"; }; + BE28F892228CE04700C00C48 /* sofficemain.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = sofficemain.cxx; path = "../../ios-device/desktop/source/app/sofficemain.cxx"; sourceTree = "<group>"; }; + BE28F893228CE04700C00C48 /* cmdlinehelp.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = cmdlinehelp.cxx; path = "../../ios-device/desktop/source/app/cmdlinehelp.cxx"; sourceTree = "<group>"; }; + BE28F894228CE04700C00C48 /* officeipcthread.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = officeipcthread.cxx; path = "../../ios-device/desktop/source/app/officeipcthread.cxx"; sourceTree = "<group>"; }; + BE28F895228CE04700C00C48 /* sofficemain.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = sofficemain.h; path = "../../ios-device/desktop/source/app/sofficemain.h"; sourceTree = "<group>"; }; + BE28F896228CE04700C00C48 /* langselect.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = langselect.cxx; path = "../../ios-device/desktop/source/app/langselect.cxx"; sourceTree = "<group>"; }; + BE28F897228CE04700C00C48 /* lockfile2.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = lockfile2.cxx; path = "../../ios-device/desktop/source/app/lockfile2.cxx"; sourceTree = "<group>"; }; + BE28F898228CE04700C00C48 /* userinstall.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = userinstall.cxx; path = "../../ios-device/desktop/source/app/userinstall.cxx"; sourceTree = "<group>"; }; BE34D10F218B66B600815297 /* docsh.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = docsh.cxx; path = "../../ios-device/sw/source/uibase/app/docsh.cxx"; sourceTree = "<group>"; }; BE34D110218B66B600815297 /* docstyle.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = docstyle.cxx; path = "../../ios-device/sw/source/uibase/app/docstyle.cxx"; sourceTree = "<group>"; }; BE34D111218B66B600815297 /* docshdrw.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = docshdrw.cxx; path = "../../ios-device/sw/source/uibase/app/docshdrw.cxx"; sourceTree = "<group>"; }; @@ -304,6 +329,39 @@ BE34D200219076CF00815297 /* dbfunc3.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = dbfunc3.cxx; path = "../../ios-device/sc/source/ui/view/dbfunc3.cxx"; sourceTree = "<group>"; }; BE43FD39222693F200376855 /* zcodec.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = zcodec.cxx; path = "../../ios-device/tools/source/zcodec/zcodec.cxx"; sourceTree = "<group>"; }; BE43FD4222286B0700376855 /* bootstrap.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = bootstrap.cxx; path = "../../ios-device/sal/rtl/bootstrap.cxx"; sourceTree = "<group>"; }; + BE484B50228CF36D001EE76C /* configitem.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = configitem.cxx; path = "../../ios-device/unotools/source/config/configitem.cxx"; sourceTree = "<group>"; }; + BE484B51228CF36D001EE76C /* itemholder1.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = itemholder1.cxx; path = "../../ios-device/unotools/source/config/itemholder1.cxx"; sourceTree = "<group>"; }; + BE484B52228CF36D001EE76C /* misccfg.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = misccfg.cxx; path = "../../ios-device/unotools/source/config/misccfg.cxx"; sourceTree = "<group>"; }; + BE484B53228CF36D001EE76C /* options.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = options.cxx; path = "../../ios-device/unotools/source/config/options.cxx"; sourceTree = "<group>"; }; + BE484B54228CF36D001EE76C /* historyoptions.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = historyoptions.cxx; path = "../../ios-device/unotools/source/config/historyoptions.cxx"; sourceTree = "<group>"; }; + BE484B55228CF36D001EE76C /* fontoptions.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = fontoptions.cxx; path = "../../ios-device/unotools/source/config/fontoptions.cxx"; sourceTree = "<group>"; }; + BE484B56228CF36D001EE76C /* configpaths.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = configpaths.cxx; path = "../../ios-device/unotools/source/config/configpaths.cxx"; sourceTree = "<group>"; }; + BE484B57228CF36D001EE76C /* moduleoptions.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = moduleoptions.cxx; path = "../../ios-device/unotools/source/config/moduleoptions.cxx"; sourceTree = "<group>"; }; + BE484B58228CF36D001EE76C /* eventcfg.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = eventcfg.cxx; path = "../../ios-device/unotools/source/config/eventcfg.cxx"; sourceTree = "<group>"; }; + BE484B59228CF36D001EE76C /* extendedsecurityoptions.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = extendedsecurityoptions.cxx; path = "../../ios-device/unotools/source/config/extendedsecurityoptions.cxx"; sourceTree = "<group>"; }; + BE484B5A228CF36D001EE76C /* itemholder1.hxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; name = itemholder1.hxx; path = "../../ios-device/unotools/source/config/itemholder1.hxx"; sourceTree = "<group>"; }; + BE484B5B228CF36D001EE76C /* printwarningoptions.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = printwarningoptions.cxx; path = "../../ios-device/unotools/source/config/printwarningoptions.cxx"; sourceTree = "<group>"; }; + BE484B5C228CF36D001EE76C /* fltrcfg.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = fltrcfg.cxx; path = "../../ios-device/unotools/source/config/fltrcfg.cxx"; sourceTree = "<group>"; }; + BE484B5D228CF36D001EE76C /* securityoptions.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = securityoptions.cxx; path = "../../ios-device/unotools/source/config/securityoptions.cxx"; sourceTree = "<group>"; }; + BE484B5E228CF36D001EE76C /* defaultoptions.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = defaultoptions.cxx; path = "../../ios-device/unotools/source/config/defaultoptions.cxx"; sourceTree = "<group>"; }; + BE484B5F228CF36D001EE76C /* syslocaleoptions.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = syslocaleoptions.cxx; path = "../../ios-device/unotools/source/config/syslocaleoptions.cxx"; sourceTree = "<group>"; }; + BE484B60228CF36D001EE76C /* dynamicmenuoptions.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = dynamicmenuoptions.cxx; path = "../../ios-device/unotools/source/config/dynamicmenuoptions.cxx"; sourceTree = "<group>"; }; + BE484B61228CF36D001EE76C /* pathoptions.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = pathoptions.cxx; path = "../../ios-device/unotools/source/config/pathoptions.cxx"; sourceTree = "<group>"; }; + BE484B62228CF36D001EE76C /* useroptions.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = useroptions.cxx; path = "../../ios-device/unotools/source/config/useroptions.cxx"; sourceTree = "<group>"; }; + BE484B63228CF36D001EE76C /* confignode.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = confignode.cxx; path = "../../ios-device/unotools/source/config/confignode.cxx"; sourceTree = "<group>"; }; + BE484B64228CF36D001EE76C /* viewoptions.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = viewoptions.cxx; path = "../../ios-device/unotools/source/config/viewoptions.cxx"; sourceTree = "<group>"; }; + BE484B65228CF36D001EE76C /* compatibility.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = compatibility.cxx; path = "../../ios-device/unotools/source/config/compatibility.cxx"; sourceTree = "<group>"; }; + BE484B66228CF36D001EE76C /* docinfohelper.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = docinfohelper.cxx; path = "../../ios-device/unotools/source/config/docinfohelper.cxx"; sourceTree = "<group>"; }; + BE484B67228CF36D001EE76C /* configmgr.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = configmgr.cxx; path = "../../ios-device/unotools/source/config/configmgr.cxx"; sourceTree = "<group>"; }; + BE484B68228CF36E001EE76C /* searchopt.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = searchopt.cxx; path = "../../ios-device/unotools/source/config/searchopt.cxx"; sourceTree = "<group>"; }; + BE484B69228CF36E001EE76C /* optionsdlg.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = optionsdlg.cxx; path = "../../ios-device/unotools/source/config/optionsdlg.cxx"; sourceTree = "<group>"; }; + BE484B6A228CF36E001EE76C /* fontcfg.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = fontcfg.cxx; path = "../../ios-device/unotools/source/config/fontcfg.cxx"; sourceTree = "<group>"; }; + BE484B6B228CF36E001EE76C /* lingucfg.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = lingucfg.cxx; path = "../../ios-device/unotools/source/config/lingucfg.cxx"; sourceTree = "<group>"; }; + BE484B6C228CF36E001EE76C /* cmdoptions.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = cmdoptions.cxx; path = "../../ios-device/unotools/source/config/cmdoptions.cxx"; sourceTree = "<group>"; }; + BE484B6D228CF36E001EE76C /* compatibilityviewoptions.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = compatibilityviewoptions.cxx; path = "../../ios-device/unotools/source/config/compatibilityviewoptions.cxx"; sourceTree = "<group>"; }; + BE484B6E228CF36E001EE76C /* configvaluecontainer.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = configvaluecontainer.cxx; path = "../../ios-device/unotools/source/config/configvaluecontainer.cxx"; sourceTree = "<group>"; }; + BE484B6F228CF36E001EE76C /* bootstrap.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = bootstrap.cxx; path = "../../ios-device/unotools/source/config/bootstrap.cxx"; sourceTree = "<group>"; }; + BE484B70228CF36E001EE76C /* saveopt.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = saveopt.cxx; path = "../../ios-device/unotools/source/config/saveopt.cxx"; sourceTree = "<group>"; }; BE58E129217F295B00249358 /* Log.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = Log.hpp; sourceTree = "<group>"; }; BE58E12A217F295B00249358 /* Png.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = Png.hpp; sourceTree = "<group>"; }; BE58E12B217F295B00249358 /* SigUtil.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = SigUtil.hpp; sourceTree = "<group>"; }; @@ -708,6 +766,38 @@ name = Frameworks; sourceTree = "<group>"; }; + BE28F87F228CE02500C00C48 /* app */ = { + isa = PBXGroup; + children = ( + BE28F88C228CE04600C00C48 /* app.cxx */, + BE28F891228CE04700C00C48 /* appinit.cxx */, + BE28F88B228CE04600C00C48 /* check_ext_deps.cxx */, + BE28F887228CE04600C00C48 /* cmdlineargs.cxx */, + BE28F88F228CE04600C00C48 /* cmdlineargs.hxx */, + BE28F893228CE04700C00C48 /* cmdlinehelp.cxx */, + BE28F885228CE04600C00C48 /* cmdlinehelp.hxx */, + BE28F88D228CE04600C00C48 /* crashreport.cxx */, + BE28F886228CE04600C00C48 /* desktopcontext.cxx */, + BE28F884228CE04600C00C48 /* desktopcontext.hxx */, + BE28F889228CE04600C00C48 /* dispatchwatcher.cxx */, + BE28F883228CE04600C00C48 /* dispatchwatcher.hxx */, + BE28F896228CE04700C00C48 /* langselect.cxx */, + BE28F880228CE04600C00C48 /* langselect.hxx */, + BE28F897228CE04700C00C48 /* lockfile2.cxx */, + BE28F890228CE04600C00C48 /* main.c */, + BE28F894228CE04700C00C48 /* officeipcthread.cxx */, + BE28F881228CE04600C00C48 /* officeipcthread.hxx */, + BE28F882228CE04600C00C48 /* opencl.cxx */, + BE28F892228CE04700C00C48 /* sofficemain.cxx */, + BE28F895228CE04700C00C48 /* sofficemain.h */, + BE28F888228CE04600C00C48 /* updater.cxx */, + BE28F88E228CE04600C00C48 /* updater.hxx */, + BE28F898228CE04700C00C48 /* userinstall.cxx */, + BE28F88A228CE04600C00C48 /* userinstall.hxx */, + ); + name = app; + sourceTree = "<group>"; + }; BE34D10C218B667400815297 /* sw */ = { isa = PBXGroup; children = ( @@ -860,6 +950,7 @@ BE34D182218CFC6C00815297 /* desktop */ = { isa = PBXGroup; children = ( + BE28F87F228CE02500C00C48 /* app */, BE34D183218CFC7200815297 /* lib */, ); name = desktop; @@ -1038,6 +1129,46 @@ name = rtl; sourceTree = "<group>"; }; + BE484B4F228CF355001EE76C /* config */ = { + isa = PBXGroup; + children = ( + BE484B6F228CF36E001EE76C /* bootstrap.cxx */, + BE484B6C228CF36E001EE76C /* cmdoptions.cxx */, + BE484B65228CF36D001EE76C /* compatibility.cxx */, + BE484B6D228CF36E001EE76C /* compatibilityviewoptions.cxx */, + BE484B50228CF36D001EE76C /* configitem.cxx */, + BE484B67228CF36D001EE76C /* configmgr.cxx */, + BE484B63228CF36D001EE76C /* confignode.cxx */, + BE484B56228CF36D001EE76C /* configpaths.cxx */, + BE484B6E228CF36E001EE76C /* configvaluecontainer.cxx */, + BE484B5E228CF36D001EE76C /* defaultoptions.cxx */, + BE484B66228CF36D001EE76C /* docinfohelper.cxx */, + BE484B60228CF36D001EE76C /* dynamicmenuoptions.cxx */, + BE484B58228CF36D001EE76C /* eventcfg.cxx */, + BE484B59228CF36D001EE76C /* extendedsecurityoptions.cxx */, + BE484B5C228CF36D001EE76C /* fltrcfg.cxx */, + BE484B6A228CF36E001EE76C /* fontcfg.cxx */, + BE484B55228CF36D001EE76C /* fontoptions.cxx */, + BE484B54228CF36D001EE76C /* historyoptions.cxx */, + BE484B51228CF36D001EE76C /* itemholder1.cxx */, + BE484B5A228CF36D001EE76C /* itemholder1.hxx */, + BE484B6B228CF36E001EE76C /* lingucfg.cxx */, + BE484B52228CF36D001EE76C /* misccfg.cxx */, + BE484B57228CF36D001EE76C /* moduleoptions.cxx */, + BE484B53228CF36D001EE76C /* options.cxx */, + BE484B69228CF36E001EE76C /* optionsdlg.cxx */, + BE484B61228CF36D001EE76C /* pathoptions.cxx */, + BE484B5B228CF36D001EE76C /* printwarningoptions.cxx */, + BE484B70228CF36E001EE76C /* saveopt.cxx */, + BE484B68228CF36E001EE76C /* searchopt.cxx */, + BE484B5D228CF36D001EE76C /* securityoptions.cxx */, + BE484B5F228CF36D001EE76C /* syslocaleoptions.cxx */, + BE484B62228CF36D001EE76C /* useroptions.cxx */, + BE484B64228CF36D001EE76C /* viewoptions.cxx */, + ); + name = config; + sourceTree = "<group>"; + }; BE58E1312187938700249358 /* headless */ = { isa = PBXGroup; children = ( @@ -1451,6 +1582,7 @@ BEA8CD7221959315009FE17E /* unotools */ = { isa = PBXGroup; children = ( + BE484B4F228CF355001EE76C /* config */, BEA8CD7321959321009FE17E /* i18n */, ); name = unotools; _______________________________________________ Libreoffice-commits mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
