[Libreoffice-commits] core.git: Branch 'feature/screenshotannotation' - 2517 commits - accessibility/inc accessibility/source android/source animations/source apple_remote/source avmedia/inc avmedia/Module_avmedia.mk avmedia/source basctl/inc basctl/source basctl/uiconfig basegfx/source basegfx/test basic/inc basic/qa basic/source bean/native binaryurp/source bin/check-elf-dynamic-objects bin/count-src-resources bin/count-todo-dialogs bin/dump-poolitems-values.py bin/gbuild-to-ide bin/gen-boost-headers bin/get-bugzilla-attachments-by-mimetype bin/lo-generate-source-tarball bin/module-deps.pl bin/removetooltip_markups.sh bin/test-hid-vs-ui.py bridges/inc bridges/source canvas/source chart2/inc chart2/qa chart2/source chart2/uiconfig cli_ure/source codemaker/source comphelper/Library_comphelper.mk comphelper/qa comphelper/source compilerplugins/clang config_host/config_global.h.in config_host/config_kde4.h.in config_host.mk.in configmgr/qa configmgr/source configure.ac connectivity/inc connectivity /qa connectivity/source cppcanvas/qa cppcanvas/source cppuhelper/qa cppuhelper/source cppuhelper/test cppu/qa cppu/source cui/AllLangResTarget_cui.mk cui/inc cui/Library_cui.mk cui/source cui/uiconfig cui/UIConfig_cui.mk dbaccess/qa dbaccess/source dbaccess/uiconfig dbaccess/win32 desktop/CppunitTest_desktop_lib.mk desktop/Executable_unopkg_com.mk desktop/inc desktop/qa desktop/source desktop/win32 dictionaries distro-configs/Jenkins download.lst drawinglayer/source dtrans/Library_dnd.mk dtrans/source editeng/qa editeng/source .editorconfig embeddedobj/source embeddedobj/test embedserv/source eventattacher/source extensions/source extensions/test extensions/uiconfig external/accessories external/apache-commons external/beanshell external/boost external/clew external/clucene external/coinmp external/firebird external/glm external/harfbuzz external/hsqldb external/hyphen external/jfreereport external/jpeg external/languagetool external/lcms2 external/libatomic_ops external/liblangtag external/liborcus external/libpng external/libwps external/libxmlsec external/libzmf external/Module_external.mk external/more_fonts external/nss external/openldap external/openssl external/poppler external/postgresql external/python3 external/python33 external/redland external/rhino external/unixODBC external/zlib extras/Package_tplpresnt.mk extras/source filter/Library_gie.mk filter/qa filter/source filter/uiconfig forms/source formula/source fpicker/Library_fps.mk fpicker/source fpicker/test fpicker/uiconfig framework/dtd framework/inc framework/Library_fwi.mk framework/Library_fwk.mk framework/qa framework/source framework/uiconfig .gitattributes .gitignore helpcompiler/inc helpcompiler/source helpcontent2 hwpfilter/source i18nlangtag/qa i18nlangtag/source i18npool/inc i18npool/qa i18npool/source i18nutil/source icon-themes/breeze icon-themes/breeze_dark icon-themes/elementary icon-themes/galaxy icon-themes/hicontrast icon-themes/human icon-themes/sifr icon-themes/tango idlc/inc idlc/source idl/inc idl/source include/avmedia include/basegfx include/basic include/canvas include/codemaker include/comphelper include/connectivity include/cppuhelper include/dbaccess include/drawinglayer include/editeng include/filter include/formula include/framework include/i18nlangtag include/i18nutil include/jvmaccess include/LibreOfficeKit include/linguistic include/o3tl include/oox include/opencl include/osl include/postwin.h include/registry include/rtl include/sal include/salhelper include/sax include/sfx2 include/sot include/store include/svl include/svtools include/svx include/systools include/test include/toolkit include/tools include/typelib include/ucbhelper include/uno include/unoidl include/unotest include/unotools include/vbahelper include/vcl include/xmloff include/xmlreader instsetoo_native/CustomTarget_setup.mk io/qa ios/experimental io/source jvmfwk/inc jvmfwk/plugins jvmfwk/source l10ntools/inc l10ntools/source libreofficekit/qa libreofficekit/source linguco mponent/source linguistic/inc linguistic/source lotuswordpro/source Makefile.fetch Makefile.in mysqlc/source o3tl/qa odk/examples odk/settings odk/source offapi/com officecfg/files.mk officecfg/registry officecfg/util onlineupdate/source oox/inc oox/source opencl/inc opencl/source osx/soffice.xcodeproj package/inc package/source postprocess/CustomTarget_images.mk postprocess/CustomTarget_registry.mk postprocess/Rdb_services.mk pyuno/GeneratedPackage_python-core.mk pyuno/inc pyuno/README pyuno/source pyuno/zipcore qadevOOo/Jar_OOoRunner.mk qadevOOo/JunitTest_qadevOOo_unoapi.mk qadevOOo/Module_qadevOOo.mk qadevOOo/objdsc qadevOOo/qa qadevOOo/runner qadevOOo/tests readlicense_oo/license README.md registry/Library_reg.mk registry/source registry/tools remotebridges/source reportdesign/inc reportdesign/source reportdesign/uiconfig reportdesign/UIConfig_dbreport.mk RepositoryExternal.mk Repository.mk rsc/inc rsc/source sal/cpprt sal/CppunitTest_sal_rtl_oustringbuffer.mk salhelper/qa salhe lper/source sal/Library_sal.mk sal/Library_sal_textenc.mk sal/Library_uwinapi.mk sal/osl sal/qa sal/rtl sal/StaticLibrary_salcpprt.mk sal/systools sal/util sal/workben sax/inc sax/qa sax/source scaddins/source sccomp/source sc/CppunitTest_sc_anchor_test.mk sc/CppunitTest_sc_annotationshapeobj.mk sc/CppunitTest_sc_check_data_pilot_field.mk sc/CppunitTest_sc_check_data_pilot_table.mk sc/CppunitTest_sc_check_xcell_ranges_query.mk sc/CppunitTest_sc_editfieldobj_cell.mk sc/CppunitTest_sc_editfieldobj_header.mk sc/CppunitTest_sc_subsequent_filters_test.mk sc/CppunitTest_sc_viewpaneobj.mk schema/libreoffice schema/odf1.0 schema/odf1.1 schema/odf1.2 schema/odf1.3 sc/inc sc/Library_scfilt.mk sc/Library_sc.mk sc/Module_sc.mk scp2/inc scp2/InstallModule_accessories.mk scp2/InstallModule_extensions.mk scp2/Module_scp2.mk scp2/source sc/Package_res_xml.mk sc/qa sc/res scripting/examples scripting/java scripting/source sc/sdi sc/source sc/uiconfig sc/UIConfig_scalc.mk sc/workben sd/AllLangResTarg et_sd.mk sdext/Executable_pdf2xml.mk sdext/source sd/inc sd/Library_sd.mk sd/qa sd/sdi sd/source sd/uiconfig sd/UIConfig_simpress.mk sd/xml setup_native/source sfx2/classification sfx2/inc sfx2/Library_sfx.mk sfx2/Package_classification.mk sfx2/qa sfx2/sdi sfx2/source sfx2/uiconfig sfx2/UIConfig_sfx.mk shell/inc shell/qa shell/source slideshow/source slideshow/test solenv/bin solenv/gbuild solenv/gcc-wrappers solenv/gdb solenv/inc solenv/lldb solenv/Module_solenv.mk solenv/PythonTest_solenv_python.mk solenv/qa sot/source starmath/inc starmath/qa starmath/source starmath/uiconfig stoc/source stoc/test store/Library_store.mk store/source svgio/inc svgio/qa svgio/source svl/Library_svl.mk svl/qa svl/source svl/unx svtools/inc svtools/Library_svt.mk svtools/qa svtools/source svx/AllLangResTarget_svx.mk svx/inc svx/Library_svxcore.mk svx/Library_svx.mk svx/qa svx/README svx/sdi svx/source svx/uiconfig svx/UIConfig_svx.mk svx/util svx/workben sw/CppunitTest_sw_filters_test.mk sw/CppunitTe st_sw_mailmerge.mk sw/CppunitTest_sw_ooxmlexport8.mk sw/CppunitTest_sw_ooxmlexport9.mk swext/mediawiki sw/inc sw/Library_sw.mk sw/Module_sw.mk sw/ooxmlexport_setup.mk sw/qa sw/sdi sw/source sw/uiconfig sw/UIConfig_swriter.mk TEMPLATE.SOURCECODE.HEADER test/Library_test.mk test/Library_test_setupvcl.mk test/Library_vclbootstrapprotector.mk test/Module_test.mk test/source testtools/Library_bridgetest-common.mk testtools/Library_bridgetest.mk testtools/Library_cppobj.mk testtools/Module_testtools.mk testtools/source testtools/StaticLibrary_bridgetest.mk toolkit/inc toolkit/source tools/inc tools/qa tools/source translations tubes/source ucb/CppunitTest_ucb_webdav_res_access.mk ucbhelper/source ucb/Module_ucb.mk ucb/qa ucb/source uitest/calc_tests uitest/demo_ui uitest/impress_tests uitest/libreoffice uitest/test_main.py uitest/uitest UnoControls/inc UnoControls/source unoidl/source unotest/source unotools/Library_utl.mk unotools/source unoxml/inc unoxml/source ure/source uui/source uui /uiconfig uui/util vbahelper/inc vbahelper/source vcl/AllLangResTarget_vcl.mk vcl/android vcl/backendtest vcl/CppunitTest_vcl_jpeg_read_write_test.mk vcl/CppunitTest_vcl_wmf_test.mk vcl/CustomTarget_tde_moc.mk vcl/glyphy vcl/headless vcl/inc vcl/ios vcl/Library_vcl.mk vcl/Library_vclplug_gen.mk vcl/Library_vclplug_kde4.mk vcl/Module_vcl.mk vcl/null vcl/opengl vcl/osx vcl/qa vcl/quartz vcl/README.GDIMetaFile vcl/README.vars vcl/source vcl/unx vcl/win vcl/workben winaccessibility/inc winaccessibility/source wizards/com wizards/source writerfilter/inc writerfilter/qa writerfilter/source writerperfect/inc writerperfect/Library_wpftdraw.mk writerperfect/qa writerperfect/source xmerge/source xmlhelp/source xmloff/CppunitTest_xmloff_tokenmap.mk xmloff/CppunitTest_xmloff_uxmloff.mk xmloff/inc xmloff/Module_xmloff.mk xmloff/qa xmloff/source xmlreader/source xmlscript/source xmlsecurity/CppunitTest_xmlsecurity_pdfsigning.mk xmlsecurity/CppunitTest_xmlsecurity_signing.mk xmlsecurity/Executable _pdfverify.mk xmlsecurity/inc xmlsecurity/Library_xmlsecurity.mk xmlsecurity/Module_xmlsecurity.mk xmlsecurity/qa xmlsecurity/source xmlsecurity/test_docs xmlsecurity/workben

Katarina Behrens Katarina.Behrens at cib.de
Mon Oct 24 09:05:19 UTC 2016


Rebased ref, commits from common ancestor:
commit a674654214aefbb9afaec2627d46c0fa28b059a2
Author: Katarina Behrens <Katarina.Behrens at cib.de>
Date:   Mon Oct 24 10:47:10 2016 +0200

    screenshot annotation: Make this a default button
    
    Change-Id: I1a1db338696cf56062306a54a43c746a21a3431d

diff --git a/cui/uiconfig/ui/screenshotannotationdialog.ui b/cui/uiconfig/ui/screenshotannotationdialog.ui
index 71f0dff..76e368b 100644
--- a/cui/uiconfig/ui/screenshotannotationdialog.ui
+++ b/cui/uiconfig/ui/screenshotannotationdialog.ui
@@ -40,6 +40,8 @@
                 <property name="name">save</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
+                <property name="can_default">True</property>
+                <property name="has_default">True</property>
                 <property name="receives_default">True</property>
               </object>
               <packing>
commit ee8b4060ec737d1f658dc8c3638a0bc1324cb36b
Author: Katarina Behrens <Katarina.Behrens at cib.de>
Date:   Thu Oct 20 20:31:40 2016 +0200

    screenshot annotation: insert markup for annotated widgets
    
    Change-Id: I82b8c541239271e3acfa6d8ad45b752fa1554931

diff --git a/cui/source/dialogs/screenshotannotationdlg.cxx b/cui/source/dialogs/screenshotannotationdlg.cxx
index 2f7c2d6..ca56d1f 100644
--- a/cui/source/dialogs/screenshotannotationdlg.cxx
+++ b/cui/source/dialogs/screenshotannotationdlg.cxx
@@ -78,6 +78,15 @@ namespace
                         OUString("</paragraph>");
         return aRet;
     }
+
+    OUString lcl_Bookmark( const OUString& rWidgetId )
+    {
+        OUString aRet = "<!-- Bookmark for widget " + rWidgetId + " -->"  + SAL_NEWLINE_STRING;
+        aRet += OUString("<bookmark xml-lang=en-US branch=hid/") + rWidgetId + OUString(" ") +
+                        lcl_genRandom( "bm_id" ) + OUString(" localize=false") +
+                        OUString("</bookmark>") + SAL_NEWLINE_STRING;
+        return aRet;
+    }
 }
 
 class ControlDataEntry
@@ -93,6 +102,8 @@ public:
         return maB2IRange;
     }
 
+    const OString GetHelpId() const { return mrControl.GetHelpId(); }
+
 private:
     basegfx::B2IRange   maB2IRange;
 };
@@ -156,6 +167,7 @@ private:
 
     // save as text
     OUString                    maSaveAsText;
+    OUString                    maMainMarkupText;
 
     // folder URL
     static OUString             maLastFolderURL;
@@ -237,7 +249,8 @@ ScreenshotAnnotationDlg_Impl::ScreenshotAnnotationDlg_Impl(
     if (mpText)
     {
         OUString aHelpId = OStringToOUString( mrParentDialog.GetHelpId(), RTL_TEXTENCODING_UTF8 );
-        mpText->SetText( lcl_ParagraphWithImage( aHelpId) );
+        maMainMarkupText = lcl_ParagraphWithImage( aHelpId);
+        mpText->SetText( maMainMarkupText );
         mpText->SetReadOnly(true);
     }
 
@@ -572,6 +585,14 @@ IMPL_LINK(ScreenshotAnnotationDlg_Impl, pictureFrameListener, VclWindowEvent&, r
                         maSelected.insert(mpHilighted);
                     }
 
+                    OUString aBookmarks;
+                    for (auto&& rCandidate : maSelected)
+                    {
+                        OUString aHelpId = OStringToOUString( rCandidate->GetHelpId(), RTL_TEXTENCODING_UTF8 );
+                        aBookmarks += lcl_Bookmark( aHelpId );
+                    }
+
+                    mpText->SetText( maMainMarkupText + aBookmarks );
                     bRepaint = true;
                 }
                 break;
commit 7c1cfa76871be9527dc9c2070d5dbdc1b55adbe5
Author: Katarina Behrens <Katarina.Behrens at cib.de>
Date:   Tue Oct 18 19:29:00 2016 +0200

    screenshot annotation: Display markup for embedding the image
    
    Change-Id: I06fd744fabd66ee02123790718a899d9e0dcb6b7

diff --git a/cui/source/dialogs/screenshotannotationdlg.cxx b/cui/source/dialogs/screenshotannotationdlg.cxx
index 357e9b1..2f7c2d6 100644
--- a/cui/source/dialogs/screenshotannotationdlg.cxx
+++ b/cui/source/dialogs/screenshotannotationdlg.cxx
@@ -27,6 +27,8 @@
 #include <com/sun/star/ui/dialogs/FilePicker.hpp>
 #include <com/sun/star/ui/dialogs/TemplateDescription.hpp>
 #include <com/sun/star/ui/dialogs/ExecutableDialogResults.hpp>
+
+#include <comphelper/random.hxx>
 #include <vcl/pngwrite.hxx>
 #include <basegfx/polygon/b2dpolygontools.hxx>
 #include <tools/urlobj.hxx>
@@ -40,6 +42,44 @@
 
 using namespace com::sun::star;
 
+namespace
+{
+    OUString lcl_genRandom( const OUString &rId )
+    {
+        //FIXME: plus timestamp
+        unsigned int nRand = comphelper::rng::uniform_uint_distribution(0, 0xFFFF);
+        return OUString( rId + OUString::number( nRand ) );
+    }
+
+
+    OUString lcl_AltDescr()
+    {
+        OUString aRet = OUString("<alt xml-lang=en-US ") + OUString("id=") + lcl_genRandom("alt_id") + OUString(">") +
+                        OUString(" ") + //FIXME real dialog title or something
+                        OUString("</alt>");
+        return aRet;
+    }
+
+    OUString lcl_Image( const OUString& rScreenshotId )
+    {
+        OUString aRet = OUString("<image id=") + lcl_genRandom( "img_id" ) +
+                        OUString(" src=media/screenshots/") + rScreenshotId + OUString(".png")
+                        + OUString(">") + //FIXME width + height
+                        lcl_AltDescr() +
+                        OUString("</image>");
+        return aRet;
+    }
+
+    OUString lcl_ParagraphWithImage( const OUString& rScreenshotId )
+    {
+        OUString aRet = OUString("<paragraph id=") + lcl_genRandom( "par_id" ) +
+                        OUString(" role=\"paragraph\" xml-lang=en-US>") +
+                        lcl_Image( rScreenshotId ) +
+                        OUString("</paragraph>");
+        return aRet;
+    }
+}
+
 class ControlDataEntry
 {
 public:
@@ -196,8 +236,9 @@ ScreenshotAnnotationDlg_Impl::ScreenshotAnnotationDlg_Impl(
     // copying content to clipboard is allowed
     if (mpText)
     {
-        mpText->SetText("The quick brown fox jumps over the lazy dog :)");
-        mpText->SetReadOnly();
+        OUString aHelpId = OStringToOUString( mrParentDialog.GetHelpId(), RTL_TEXTENCODING_UTF8 );
+        mpText->SetText( lcl_ParagraphWithImage( aHelpId) );
+        mpText->SetReadOnly(true);
     }
 
     // set click handler for save button
commit 30501b65e949dd20c475a063d1351b8013ff4b43
Author: Katarina Behrens <Katarina.Behrens at cib.de>
Date:   Thu Sep 29 16:26:18 2016 +0200

    screenshot annotation: tweak dialog a bit
    
    Add some descriptive labels
    Remove OK button (redundant in this context, Save Screenshot... does
    the job)
    
    Change-Id: I36e32986f777675f297390b691f2cd1681a0eaa2

diff --git a/cui/uiconfig/ui/screenshotannotationdialog.ui b/cui/uiconfig/ui/screenshotannotationdialog.ui
index 6ab3436..71f0dff 100644
--- a/cui/uiconfig/ui/screenshotannotationdialog.ui
+++ b/cui/uiconfig/ui/screenshotannotationdialog.ui
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- Generated with glade 3.16.1 -->
+<!-- Generated with glade 3.18.3 -->
 <interface>
   <requires lib="gtk+" version="3.0"/>
   <object class="GtkDialog" id="ScreenshotAnnotationDialog">
@@ -15,40 +15,11 @@
         <property name="can_focus">False</property>
         <property name="orientation">vertical</property>
         <property name="spacing">12</property>
-        <child>
-          <object class="GtkImage" id="picture">
-            <property name="name">picture</property>
-            <property name="visible">True</property>
-            <property name="can_focus">False</property>
-            <property name="stock">gtk-missing-image</property>
-          </object>
-          <packing>
-            <property name="expand">True</property>
-            <property name="fill">True</property>
-            <property name="position">0</property>
-          </packing>
-        </child>
         <child internal-child="action_area">
           <object class="GtkButtonBox" id="dialog-action_area1">
             <property name="can_focus">False</property>
             <property name="layout_style">end</property>
             <child>
-              <object class="GtkButton" id="ok">
-                <property name="label">gtk-ok</property>
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <property name="can_default">True</property>
-                <property name="has_default">True</property>
-                <property name="receives_default">True</property>
-                <property name="use_stock">True</property>
-              </object>
-              <packing>
-                <property name="expand">False</property>
-                <property name="fill">True</property>
-                <property name="position">0</property>
-              </packing>
-            </child>
-            <child>
               <object class="GtkButton" id="cancel">
                 <property name="label">gtk-cancel</property>
                 <property name="visible">True</property>
@@ -87,6 +58,46 @@
           </packing>
         </child>
         <child>
+          <object class="GtkLabel" id="label2">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="halign">start</property>
+            <property name="label" translatable="yes">Click the widgets to add annotation:</property>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">True</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+        <child>
+          <object class="GtkImage" id="picture">
+            <property name="name">picture</property>
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="stock">gtk-missing-image</property>
+          </object>
+          <packing>
+            <property name="expand">True</property>
+            <property name="fill">True</property>
+            <property name="position">1</property>
+          </packing>
+        </child>
+        <child>
+          <object class="GtkLabel" id="label1">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="halign">start</property>
+            <property name="label" translatable="yes">Paste the following markup into the help file:</property>
+            <property name="ellipsize">end</property>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">True</property>
+            <property name="position">3</property>
+          </packing>
+        </child>
+        <child>
           <object class="GtkTextView" id="text">
             <property name="name">text</property>
             <property name="height_request">80</property>
@@ -96,7 +107,7 @@
           <packing>
             <property name="expand">False</property>
             <property name="fill">True</property>
-            <property name="position">2</property>
+            <property name="position">4</property>
           </packing>
         </child>
       </object>
commit 1aa69bd5d4bdc8513892fb88760312fee52c310b
Author: Noel Grandin <noel.grandin at collabora.co.uk>
Date:   Mon Oct 24 10:43:29 2016 +0200

    loplugin:countusersofdefaultparams in sd..slideshow
    
    Change-Id: Iaf10935d8f231676333018a5954d97defe35acf6

diff --git a/sd/inc/sdpage.hxx b/sd/inc/sdpage.hxx
index 65d6cbd..dc23fed 100644
--- a/sd/inc/sdpage.hxx
+++ b/sd/inc/sdpage.hxx
@@ -151,7 +151,7 @@ protected:
 
 public:
 
-    SdPage(SdDrawDocument& rNewDoc, bool bMasterPage=false);
+    SdPage(SdDrawDocument& rNewDoc, bool bMasterPage);
     virtual ~SdPage() override;
     virtual SdrPage* Clone() const override;
     virtual SdrPage* Clone(SdrModel* pNewModel) const override;
diff --git a/sd/qa/unit/filters-test.cxx b/sd/qa/unit/filters-test.cxx
index 961fae0..08babce 100644
--- a/sd/qa/unit/filters-test.cxx
+++ b/sd/qa/unit/filters-test.cxx
@@ -69,7 +69,7 @@ bool SdFiltersTest::load(const OUString &rFilter, const OUString &rURL,
         rUserData, OUString() ));
     const_cast<SfxFilter*>(pFilter.get())->SetVersion(nFilterVersion);
 
-    ::sd::DrawDocShellRef xDocShRef = new ::sd::DrawDocShell();
+    ::sd::DrawDocShellRef xDocShRef = new ::sd::DrawDocShell(SfxObjectCreateMode::EMBEDDED, false);
     SfxMedium* pSrcMed = new SfxMedium(rURL, StreamMode::STD_READ);
     pSrcMed->SetFilter(pFilter);
     bool bLoaded = xDocShRef->DoLoad(pSrcMed);
diff --git a/sd/qa/unit/sdmodeltestbase.hxx b/sd/qa/unit/sdmodeltestbase.hxx
index 5b933c1..c0ed88e 100644
--- a/sd/qa/unit/sdmodeltestbase.hxx
+++ b/sd/qa/unit/sdmodeltestbase.hxx
@@ -134,7 +134,7 @@ protected:
         pFilter->SetVersion(SOFFICE_FILEFORMAT_CURRENT);
         std::shared_ptr<const SfxFilter> pFilt(pFilter);
 
-        ::sd::DrawDocShellRef xDocShRef = new ::sd::DrawDocShell();
+        ::sd::DrawDocShellRef xDocShRef = new ::sd::DrawDocShell(SfxObjectCreateMode::EMBEDDED, false);
         SfxMedium* pSrcMed = new SfxMedium(rURL, StreamMode::STD_READ, pFilt, pParams);
         if ( !xDocShRef->DoLoad(pSrcMed) || !xDocShRef.Is() )
         {
diff --git a/sd/source/filter/ppt/pptin.cxx b/sd/source/filter/ppt/pptin.cxx
index d6a7d6d..3b22b8c 100644
--- a/sd/source/filter/ppt/pptin.cxx
+++ b/sd/source/filter/ppt/pptin.cxx
@@ -2772,7 +2772,7 @@ extern "C" SAL_DLLPUBLIC_EXPORT bool SAL_CALL TestImportPPT(const OUString &rURL
     xDocStream->SetVersion(xStorage->GetVersion());
     xDocStream->SetCryptMaskKey(xStorage->GetKey());
 
-    ::sd::DrawDocShellRef xDocShRef = new ::sd::DrawDocShell();
+    ::sd::DrawDocShellRef xDocShRef = new ::sd::DrawDocShell(SfxObjectCreateMode::EMBEDDED, false);
     SdDrawDocument *pDoc = xDocShRef->GetDoc();
 
     bool bRet = ImportPPT(pDoc, *xDocStream, *xStorage, aSrcMed);
diff --git a/sd/source/ui/animations/CustomAnimationDialog.hxx b/sd/source/ui/animations/CustomAnimationDialog.hxx
index 6ccbddd..5244965 100644
--- a/sd/source/ui/animations/CustomAnimationDialog.hxx
+++ b/sd/source/ui/animations/CustomAnimationDialog.hxx
@@ -142,7 +142,7 @@ class STLPropertySet;
 class CustomAnimationDialog : public TabDialog
 {
 public:
-    CustomAnimationDialog(vcl::Window* pParent, STLPropertySet* pSet, const OString& Page = OString());
+    CustomAnimationDialog(vcl::Window* pParent, STLPropertySet* pSet, const OString& Page);
     virtual ~CustomAnimationDialog() override;
     virtual void dispose() override;
 
diff --git a/sd/source/ui/inc/DrawDocShell.hxx b/sd/source/ui/inc/DrawDocShell.hxx
index 89d9991..8d1ad05 100644
--- a/sd/source/ui/inc/DrawDocShell.hxx
+++ b/sd/source/ui/inc/DrawDocShell.hxx
@@ -58,19 +58,19 @@ private:
 
 public:
     DrawDocShell (
-        SfxObjectCreateMode eMode = SfxObjectCreateMode::EMBEDDED,
-        bool bSdDataObj=false,
+        SfxObjectCreateMode eMode,
+        bool bSdDataObj,
         DocumentType=DocumentType::Impress);
 
     DrawDocShell (
         SfxModelFlags nModelCreationFlags,
-        bool bSdDataObj=false,
+        bool bSdDataObj,
         DocumentType=DocumentType::Impress);
 
     DrawDocShell (
         SdDrawDocument* pDoc,
-        SfxObjectCreateMode eMode = SfxObjectCreateMode::EMBEDDED,
-        bool bSdDataObj=false,
+        SfxObjectCreateMode eMode,
+        bool bSdDataObj,
         DocumentType=DocumentType::Impress);
     virtual ~DrawDocShell() override;
 
diff --git a/sd/source/ui/inc/DrawViewShell.hxx b/sd/source/ui/inc/DrawViewShell.hxx
index d58a331..22b21d7 100644
--- a/sd/source/ui/inc/DrawViewShell.hxx
+++ b/sd/source/ui/inc/DrawViewShell.hxx
@@ -88,8 +88,8 @@ public:
         SfxViewFrame* pFrame,
         ViewShellBase& rViewShellBase,
         vcl::Window* pParentWindow,
-        PageKind ePageKind = PageKind::Standard,
-        FrameView* pFrameView = nullptr);
+        PageKind ePageKind,
+        FrameView* pFrameView);
 
     virtual ~DrawViewShell() override;
 
diff --git a/sd/source/ui/inc/GraphicDocShell.hxx b/sd/source/ui/inc/GraphicDocShell.hxx
index a131774..c1920b5 100644
--- a/sd/source/ui/inc/GraphicDocShell.hxx
+++ b/sd/source/ui/inc/GraphicDocShell.hxx
@@ -46,13 +46,13 @@ public:
     SFX_DECL_OBJECTFACTORY();
 
     GraphicDocShell (
-        SfxObjectCreateMode eMode = SfxObjectCreateMode::EMBEDDED,
-        bool bSdDataObj=false,
+        SfxObjectCreateMode eMode,
+        bool bSdDataObj,
         DocumentType=DocumentType::Draw);
 
     GraphicDocShell (
         SfxModelFlags nModelCreationFlags,
-        bool bSdDataObj=false,
+        bool bSdDataObj,
         DocumentType=DocumentType::Draw);
 
     virtual ~GraphicDocShell() override;
diff --git a/sd/source/ui/inc/GraphicViewShell.hxx b/sd/source/ui/inc/GraphicViewShell.hxx
index 1b0b691..5830ae0 100644
--- a/sd/source/ui/inc/GraphicViewShell.hxx
+++ b/sd/source/ui/inc/GraphicViewShell.hxx
@@ -59,7 +59,7 @@ public:
         SfxViewFrame* pFrame,
         ViewShellBase& rViewShellBase,
         vcl::Window* pParentWindow,
-        FrameView* pFrameView = nullptr);
+        FrameView* pFrameView);
 
     virtual ~GraphicViewShell() override;
 
diff --git a/sd/source/ui/inc/OutlineViewShell.hxx b/sd/source/ui/inc/OutlineViewShell.hxx
index 6da882f..ae641df 100644
--- a/sd/source/ui/inc/OutlineViewShell.hxx
+++ b/sd/source/ui/inc/OutlineViewShell.hxx
@@ -56,7 +56,7 @@ public:
         SfxViewFrame* pFrame,
         ViewShellBase& rViewShellBase,
         vcl::Window* pParentWindow,
-        FrameView* pFrameView = nullptr);
+        FrameView* pFrameView);
 
     virtual ~OutlineViewShell() override;
 
diff --git a/sd/source/ui/inc/PresentationViewShell.hxx b/sd/source/ui/inc/PresentationViewShell.hxx
index 8444923..3651222 100644
--- a/sd/source/ui/inc/PresentationViewShell.hxx
+++ b/sd/source/ui/inc/PresentationViewShell.hxx
@@ -38,7 +38,7 @@ private:
     static void InitInterface_Impl();
 
 public:
-    PresentationViewShell( SfxViewFrame* pFrame, ViewShellBase& rViewShellBase, vcl::Window* pParentWindow, FrameView* pFrameView = nullptr);
+    PresentationViewShell( SfxViewFrame* pFrame, ViewShellBase& rViewShellBase, vcl::Window* pParentWindow, FrameView* pFrameView);
     virtual ~PresentationViewShell() override;
 
     /** This method is used by a simple class that passes some
diff --git a/sd/source/ui/inc/dlgpage.hxx b/sd/source/ui/inc/dlgpage.hxx
index 21f7890..cd8f426 100644
--- a/sd/source/ui/inc/dlgpage.hxx
+++ b/sd/source/ui/inc/dlgpage.hxx
@@ -43,7 +43,7 @@ private:
     sal_uInt16            mnTransparence;
 public:
 
-    SdPageDlg( SfxObjectShell* pDocSh, vcl::Window* pParent, const SfxItemSet* pAttr, bool bAreaPage = true );
+    SdPageDlg( SfxObjectShell* pDocSh, vcl::Window* pParent, const SfxItemSet* pAttr, bool bAreaPage );
     virtual ~SdPageDlg() override {};
 
     virtual void PageCreated(sal_uInt16 nId, SfxTabPage& rPage) override;
diff --git a/sd/source/ui/inc/optsitem.hxx b/sd/source/ui/inc/optsitem.hxx
index 7351ee9..e7001bd 100644
--- a/sd/source/ui/inc/optsitem.hxx
+++ b/sd/source/ui/inc/optsitem.hxx
@@ -144,7 +144,7 @@ class SD_DLLPUBLIC SdOptionsLayoutItem : public SfxPoolItem
 public:
 
                             explicit SdOptionsLayoutItem();
-                            SdOptionsLayoutItem( SdOptions* pOpts, ::sd::FrameView* pView = nullptr );
+                            SdOptionsLayoutItem( SdOptions* pOpts, ::sd::FrameView* pView );
 
     virtual SfxPoolItem*    Clone( SfxItemPool *pPool = nullptr ) const override;
     virtual bool            operator==( const SfxPoolItem& ) const override;
@@ -177,7 +177,7 @@ class SD_DLLPUBLIC SdOptionsContentsItem : public SfxPoolItem
 {
 public:
 
-                            SdOptionsContentsItem( SdOptions* pOpts, ::sd::FrameView* pView = nullptr );
+                            SdOptionsContentsItem( SdOptions* pOpts, ::sd::FrameView* pView );
 
     virtual SfxPoolItem*    Clone( SfxItemPool *pPool = nullptr ) const override;
     virtual bool            operator==( const SfxPoolItem& ) const override;
@@ -324,7 +324,7 @@ class SD_DLLPUBLIC SdOptionsMiscItem : public SfxPoolItem
 public:
 
                             explicit SdOptionsMiscItem();
-                            SdOptionsMiscItem( SdOptions* pOpts, ::sd::FrameView* pView = nullptr );
+                            SdOptionsMiscItem( SdOptions* pOpts, ::sd::FrameView* pView );
 
     virtual SfxPoolItem*    Clone( SfxItemPool *pPool = nullptr ) const override;
     virtual bool            operator==( const SfxPoolItem& ) const override;
@@ -393,7 +393,7 @@ class SD_DLLPUBLIC SdOptionsSnapItem : public SfxPoolItem
 public:
 
                             explicit SdOptionsSnapItem();
-                            SdOptionsSnapItem( SdOptions* pOpts, ::sd::FrameView* pView = nullptr );
+                            SdOptionsSnapItem( SdOptions* pOpts, ::sd::FrameView* pView );
 
     virtual SfxPoolItem*    Clone( SfxItemPool *pPool = nullptr ) const override;
     virtual bool            operator==( const SfxPoolItem& ) const override;
diff --git a/sd/source/ui/inc/unomodel.hxx b/sd/source/ui/inc/unomodel.hxx
index abc866e..0aff347 100644
--- a/sd/source/ui/inc/unomodel.hxx
+++ b/sd/source/ui/inc/unomodel.hxx
@@ -131,8 +131,8 @@ private:
     sd::DrawViewShell* GetViewShell();
 
 public:
-    SdXImpressDocument( ::sd::DrawDocShell* pShell, bool bClipBoard = false ) throw();
-    SdXImpressDocument( SdDrawDocument* pDoc, bool bClipBoard = false ) throw();
+    SdXImpressDocument( ::sd::DrawDocShell* pShell, bool bClipBoard ) throw();
+    SdXImpressDocument( SdDrawDocument* pDoc, bool bClipBoard ) throw();
     virtual ~SdXImpressDocument() throw() override;
 
     static rtl::Reference< SdXImpressDocument > GetModel( SdDrawDocument* pDoc );
diff --git a/sd/source/ui/view/sdview3.cxx b/sd/source/ui/view/sdview3.cxx
index d682076..ed2b16c 100644
--- a/sd/source/ui/view/sdview3.cxx
+++ b/sd/source/ui/view/sdview3.cxx
@@ -680,7 +680,7 @@ bool View::InsertData( const TransferableDataHelper& rDataHelper,
 
         if( aDataHelper.GetSotStorageStream( SotClipboardFormatId::DRAWING, xStm ) )
         {
-            DrawDocShellRef xShell = new DrawDocShell(SfxObjectCreateMode::INTERNAL);
+            DrawDocShellRef xShell = new DrawDocShell(SfxObjectCreateMode::INTERNAL, false);
             xShell->DoInitNew();
 
             SdDrawDocument* pModel = xShell->GetDoc();
diff --git a/sfx2/source/appl/newhelp.hxx b/sfx2/source/appl/newhelp.hxx
index a5d7e67..f43929e 100644
--- a/sfx2/source/appl/newhelp.hxx
+++ b/sfx2/source/appl/newhelp.hxx
@@ -565,7 +565,7 @@ class SfxAddHelpBookmarkDialog_Impl : public ModalDialog
 private:
     VclPtr<Edit> m_pTitleED;
 public:
-    SfxAddHelpBookmarkDialog_Impl( vcl::Window* pParent, bool bRename = true );
+    SfxAddHelpBookmarkDialog_Impl( vcl::Window* pParent, bool bRename );
     virtual ~SfxAddHelpBookmarkDialog_Impl() override;
     virtual void dispose() override;
 
diff --git a/sfx2/source/inc/templdgi.hxx b/sfx2/source/inc/templdgi.hxx
index 937e2a3..a0a02d1 100644
--- a/sfx2/source/inc/templdgi.hxx
+++ b/sfx2/source/inc/templdgi.hxx
@@ -105,7 +105,7 @@ protected:
                 SvTreeListEntry* pTarget, SvTreeListEntry* pEntry,
                 SvTreeListEntry*& rpNewParent, sal_uIntPtr& rNewChildPos) override;
 public:
-    StyleTreeListBox_Impl( SfxCommonTemplateDialog_Impl* pParent, WinBits nWinStyle = 0);
+    StyleTreeListBox_Impl( SfxCommonTemplateDialog_Impl* pParent, WinBits nWinStyle);
 
     void Recalc();
 
diff --git a/slideshow/source/engine/transitions/spiralwipe.hxx b/slideshow/source/engine/transitions/spiralwipe.hxx
index 7fd1214..a590627 100644
--- a/slideshow/source/engine/transitions/spiralwipe.hxx
+++ b/slideshow/source/engine/transitions/spiralwipe.hxx
@@ -47,7 +47,7 @@ protected:
 class BoxSnakesWipe : public SpiralWipe
 {
 public:
-    BoxSnakesWipe( sal_Int32 nElements, bool fourBox = false )
+    BoxSnakesWipe( sal_Int32 nElements, bool fourBox )
         : SpiralWipe(nElements), m_fourBox(fourBox) {}
     virtual ::basegfx::B2DPolyPolygon operator () ( double t ) override;
 private:
diff --git a/slideshow/source/engine/transitions/waterfallwipe.hxx b/slideshow/source/engine/transitions/waterfallwipe.hxx
index b524e36..6f39705 100644
--- a/slideshow/source/engine/transitions/waterfallwipe.hxx
+++ b/slideshow/source/engine/transitions/waterfallwipe.hxx
@@ -31,7 +31,7 @@ namespace internal {
 class WaterfallWipe : public ParametricPolyPolygon
 {
 public:
-    WaterfallWipe( sal_Int32 nElements, bool flipOnYAxis = false );
+    WaterfallWipe( sal_Int32 nElements, bool flipOnYAxis );
     virtual ::basegfx::B2DPolyPolygon operator () ( double t ) override;
 private:
     bool m_flipOnYAxis;
commit 967436ba7c552ea8fa30fd3b7abced231e174951
Author: Yousuf Philips <philipz85 at hotmail.com>
Date:   Thu Oct 20 00:13:40 2016 +0400

    tdf#103259 Add java not found error for mac
    
    Change-Id: Ia52316b8868c8124dcb322b44e9600a33a13df28
    Reviewed-on: https://gerrit.libreoffice.org/29920
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Tomaž Vajngerl <quikee at gmail.com>

diff --git a/include/svtools/svtools.hrc b/include/svtools/svtools.hrc
index b5a38eb..92cc809 100644
--- a/include/svtools/svtools.hrc
+++ b/include/svtools/svtools.hrc
@@ -195,6 +195,7 @@
 #define STR_WARNING_INVALIDJAVASETTINGS_TITLE (STR_SVT_JAVAERROR_START+6)
 #define STR_ERROR_JVMCREATIONFAILED           (STR_SVT_JAVAERROR_START+7)
 #define STR_ERROR_JVMCREATIONFAILED_MAC       (STR_SVT_JAVAERROR_START+8)
+#define STR_WARNING_JAVANOTFOUND_MAC          (STR_SVT_JAVAERROR_START+9)
 #define STR_SVT_JAVAERROR_END                 (STR_ERROR_JVMCREATIONFAILED_MAC)
 
 // String array to match UI language names to LanguageType values and vice versa
diff --git a/svtools/source/java/javaerror.src b/svtools/source/java/javaerror.src
index f1d1386..60d7c72 100644
--- a/svtools/source/java/javaerror.src
+++ b/svtools/source/java/javaerror.src
@@ -24,6 +24,11 @@ String STR_WARNING_JAVANOTFOUND
     Text [ en-US ] ="%PRODUCTNAME requires a Java runtime environment (JRE) to perform this task. Please install a JRE and restart %PRODUCTNAME.";
 };
 
+String STR_WARNING_JAVANOTFOUND_MAC
+{
+    Text [ en-US ] ="%PRODUCTNAME requires Oracle's Java Development Kit (JDK) on Mac OS X 10.10 or greater to perform this task. Please install them and restart %PRODUCTNAME.";
+};
+
 String STR_WARNING_INVALIDJAVASETTINGS_MAC
 {
     Text [ en-US ] ="The %PRODUCTNAME configuration has been changed. Under %PRODUCTNAME - Preferences - %PRODUCTNAME - Advanced, select the Java runtime environment you want to have used by %PRODUCTNAME.";
diff --git a/svtools/source/java/javainteractionhandler.cxx b/svtools/source/java/javainteractionhandler.cxx
index f947a28..860f3e0 100644
--- a/svtools/source/java/javainteractionhandler.cxx
+++ b/svtools/source/java/javainteractionhandler.cxx
@@ -122,7 +122,11 @@ void SAL_CALL JavaInteractionHandler::handle( const Reference< XInteractionReque
            // No suitable JRE found
             SolarMutexGuard aSolarGuard;
             m_bJavaNotFound_Handled = true;
+#ifdef MACOSX
+            ScopedVclPtrInstance< MessageDialog > aWarningBox(nullptr, SvtResId(STR_WARNING_JAVANOTFOUND_MAC), VclMessageType::Warning);
+#else
             ScopedVclPtrInstance< MessageDialog > aWarningBox(nullptr, SvtResId(STR_WARNING_JAVANOTFOUND), VclMessageType::Warning);
+#endif
             aWarningBox->SetText(SvtResId(STR_WARNING_JAVANOTFOUND_TITLE));
             nResult = aWarningBox->Execute();
         }
commit 21e8ed8b5f032f63012a7ee84bce64fac218154f
Author: Tomaž Vajngerl <tomaz.vajngerl at collabora.co.uk>
Date:   Tue Oct 18 23:53:44 2016 +0200

    tdf#103395 opencl: don't initialize OpenCL when disabled
    
    If SAL_DISABLE_OPENCL is set we don't want to do any kind of
    OpenCL initialization. Put an extra guard in fillOpenCLInfo
    (and similar methods in opencl package) to prevent that.
    
    Put the check if OpenCL can be used into one place which checks
    SAL_DISABLE_OPENCL and UseOpenCL in configuration.
    
    Change-Id: Icc216d4299d3a7942843117ab9b9411de8075b11
    Reviewed-on: https://gerrit.libreoffice.org/30025
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Tomaž Vajngerl <quikee at gmail.com>

diff --git a/desktop/source/app/opencl.cxx b/desktop/source/app/opencl.cxx
index 6d22e92..f436971b 100644
--- a/desktop/source/app/opencl.cxx
+++ b/desktop/source/app/opencl.cxx
@@ -119,9 +119,7 @@ bool testOpenCLCompute(const Reference< XDesktop2 > &xDesktop, const OUString &r
 
 void Desktop::CheckOpenCLCompute(const Reference< XDesktop2 > &xDesktop)
 {
-    if (getenv("SAL_DISABLE_OPENCL") ||
-        Application::IsSafeModeEnabled() ||
-        !officecfg::Office::Common::Misc::UseOpenCL::get())
+    if (!opencl::canUseOpenCL() || Application::IsSafeModeEnabled())
         return;
 
     SAL_INFO("opencl", "Initiating test of OpenCL device");
diff --git a/include/opencl/openclwrapper.hxx b/include/opencl/openclwrapper.hxx
index 233412f..5f71b2a 100644
--- a/include/opencl/openclwrapper.hxx
+++ b/include/opencl/openclwrapper.hxx
@@ -26,7 +26,8 @@
 
 #include <cstdio>
 
-namespace opencl {
+namespace opencl
+{
 
 struct KernelEnv
 {
@@ -56,6 +57,8 @@ struct OPENCL_DLLPUBLIC GPUEnv
 extern OPENCL_DLLPUBLIC GPUEnv gpuEnv;
 extern OPENCL_DLLPUBLIC sal_uInt64 kernelFailures;
 
+OPENCL_DLLPUBLIC bool canUseOpenCL();
+
 OPENCL_DLLPUBLIC bool generatBinFromKernelSource( cl_program program, const char * clFileName );
 OPENCL_DLLPUBLIC bool buildProgramFromBinary(const char* buildOption, GPUEnv* gpuEnv, const char* filename, int idx);
 OPENCL_DLLPUBLIC void setKernelEnv( KernelEnv *envInfo );
diff --git a/opencl/source/openclwrapper.cxx b/opencl/source/openclwrapper.cxx
index c876133..141ce8f 100644
--- a/opencl/source/openclwrapper.cxx
+++ b/opencl/source/openclwrapper.cxx
@@ -32,6 +32,8 @@
 
 #include <cmath>
 
+#include <officecfg/Office/Common.hxx>
+
 #ifdef _WIN32
 #include <prewin.h>
 #include <postwin.h>
@@ -64,7 +66,8 @@ namespace opencl {
 GPUEnv gpuEnv;
 sal_uInt64 kernelFailures = 0;
 
-namespace {
+namespace
+{
 
 bool bIsInited = false;
 
@@ -704,7 +707,9 @@ bool createPlatformInfo(cl_platform_id nPlatformId, OpenCLPlatformInfo& rPlatfor
 const std::vector<OpenCLPlatformInfo>& fillOpenCLInfo()
 {
     static std::vector<OpenCLPlatformInfo> aPlatforms;
-    if(!aPlatforms.empty())
+
+    // return early if we already initialized or can't use OpenCL
+    if (!aPlatforms.empty() || !canUseOpenCL())
         return aPlatforms;
 
     int status = clewInit(OPENCL_DLL_NAME);
@@ -785,9 +790,16 @@ void findDeviceInfoFromDeviceId(cl_device_id aDeviceId, size_t& rDeviceId, size_
 
 }
 
+bool canUseOpenCL()
+{
+    if (getenv("SAL_DISABLE_OPENCL") || !officecfg::Office::Common::Misc::UseOpenCL::get())
+        return false;
+    return true;
+}
+
 bool switchOpenCLDevice(const OUString* pDevice, bool bAutoSelect, bool bForceEvaluation, OUString& rOutSelectedDeviceVersionIDString)
 {
-    if(fillOpenCLInfo().empty() || getenv("SAL_DISABLE_OPENCL"))
+    if (!canUseOpenCL() || fillOpenCLInfo().empty())
         return false;
 
     cl_device_id pDeviceId = nullptr;
@@ -863,6 +875,9 @@ bool switchOpenCLDevice(const OUString* pDevice, bool bAutoSelect, bool bForceEv
 
 void getOpenCLDeviceInfo(size_t& rDeviceId, size_t& rPlatformId)
 {
+    if (!canUseOpenCL())
+        return;
+
     int status = clewInit(OPENCL_DLL_NAME);
     if (status < 0)
         return;
commit 38b895cddcff51b6cfb47c6b3bbb2044a6d7a6dd
Author: David Tardon <dtardon at redhat.com>
Date:   Mon Oct 24 10:08:09 2016 +0200

    impl. missing function
    
    This is copied from vcl/unx/generic/glyphs/gcach_layout.cxx .
    
    Change-Id: I778c1c862c80668a06db8e91c11773ecc9916078

diff --git a/vcl/source/gdi/CommonSalLayout.cxx b/vcl/source/gdi/CommonSalLayout.cxx
index 4bd9f60..91d7762 100644
--- a/vcl/source/gdi/CommonSalLayout.cxx
+++ b/vcl/source/gdi/CommonSalLayout.cxx
@@ -104,6 +104,15 @@ static void scaleHbFont(hb_font_t* pHbFont, const FontSelectPattern& aFontSelDat
 }
 
 #if !HB_VERSION_ATLEAST(1, 1, 0)
+// Disabled Unicode compatibility decomposition, see fdo#66715
+static unsigned int unicodeDecomposeCompatibility(hb_unicode_funcs_t* /*ufuncs*/,
+                                                  hb_codepoint_t      /*u*/,
+                                                  hb_codepoint_t*     /*decomposed*/,
+                                                  void*               /*user_data*/)
+{
+    return 0;
+}
+
 static hb_unicode_funcs_t* getUnicodeFuncs()
 {
     static hb_unicode_funcs_t* ufuncs = hb_unicode_funcs_create(hb_icu_get_unicode_funcs());
commit 9ad0e56be46df46b021109acfd6ece9d17ce84f8
Author: Jochen Nitschke <j.nitschke+logerrit at ok.de>
Date:   Fri Oct 21 15:59:45 2016 +0200

    fixes for >>= with rhs Any
    
    this changes behaviour because >>= always returned true
    
    Change-Id: Ia7bbce1696e5c23f6e1e6f1a7e60b3c462cf0086
    Reviewed-on: https://gerrit.libreoffice.org/30141
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Noel Grandin <noel.grandin at collabora.co.uk>

diff --git a/filter/source/flash/swffilter.cxx b/filter/source/flash/swffilter.cxx
index b3db3bc..5ac39b8 100644
--- a/filter/source/flash/swffilter.cxx
+++ b/filter/source/flash/swffilter.cxx
@@ -262,12 +262,9 @@ sal_Bool SAL_CALL FlashExportFilter::filter( const css::uno::Sequence< css::bean
 
                         if(xSelection.is())
                         {
-                            Any aSelection;
-
-                            if(xSelection->getSelection() >>= aSelection)
-                            {
+                            Any aSelection = xSelection->getSelection();
+                            if (aSelection.hasValue())
                                 aSelection >>= mxSelectedShapes;
-                            }
                         }
                     }
                 }
diff --git a/filter/source/svg/svgfilter.cxx b/filter/source/svg/svgfilter.cxx
index 7304a56..bd6dae6 100644
--- a/filter/source/svg/svgfilter.cxx
+++ b/filter/source/svg/svgfilter.cxx
@@ -235,9 +235,9 @@ sal_Bool SAL_CALL SVGFilter::filter( const Sequence< PropertyValue >& rDescripto
 
             if (xSelection.is())
             {
-                uno::Any aSelection;
+                uno::Any aSelection = xSelection->getSelection();
 
-                if (xSelection->getSelection() >>= aSelection)
+                if (aSelection.hasValue())
                 {
                     bGotSelection = ( aSelection >>= maShapeSelection );
                 }
diff --git a/xmloff/source/draw/shapeexport.cxx b/xmloff/source/draw/shapeexport.cxx
index 0fd26d7..09d6adf 100644
--- a/xmloff/source/draw/shapeexport.cxx
+++ b/xmloff/source/draw/shapeexport.cxx
@@ -2583,7 +2583,8 @@ void XMLShapeExport::ImpExportConnectorShape(
         }
     }
 
-    if( xProps->getPropertyValue("PolyPolygonBezier") >>= aAny )
+    aAny = xProps->getPropertyValue("PolyPolygonBezier");
+    if( aAny.hasValue() )
     {
         // get PolygonBezier
         auto pSourcePolyPolygon = o3tl::tryAccess<drawing::PolyPolygonBezierCoords>(aAny);
commit 6f428c38c533026c9749f71ed3144db2d4575ab6
Author: Noel Grandin <noel at peralex.com>
Date:   Mon Oct 24 08:20:45 2016 +0200

    remove unused SfxListener subclassing
    
    where the Notify method is doing nothing
    
    Change-Id: I834aa40a9bcb0dd8d7335a5688acc5da6f40b0a2

diff --git a/include/svx/unopage.hxx b/include/svx/unopage.hxx
index cf2d1b6..8810327 100644
--- a/include/svx/unopage.hxx
+++ b/include/svx/unopage.hxx
@@ -62,7 +62,6 @@ class SVX_DLLPUBLIC SvxDrawPage : public ::cppu::WeakAggImplHelper6< css::drawin
                                                css::lang::XServiceInfo,
                                                css::lang::XUnoTunnel,
                                                css::lang::XComponent>,
-                    public SfxListener,
                     protected SvxMutexHelper
 {
  protected:
@@ -105,9 +104,6 @@ class SVX_DLLPUBLIC SvxDrawPage : public ::cppu::WeakAggImplHelper6< css::drawin
 
     UNO3_GETIMPLEMENTATION_DECL( SvxDrawPage )
 
-    // SfxListener
-    virtual void Notify( SfxBroadcaster& rBC, const SfxHint& rHint ) override;
-
     // XInterface
     virtual void SAL_CALL release() throw() override;
 
diff --git a/sc/inc/afmtuno.hxx b/sc/inc/afmtuno.hxx
index cbc1cf2..8ed8eb0 100644
--- a/sc/inc/afmtuno.hxx
+++ b/sc/inc/afmtuno.hxx
@@ -118,8 +118,7 @@ class ScAutoFormatObj : public ::cppu::WeakImplHelper<
                             css::container::XNamed,
                             css::beans::XPropertySet,
                             css::lang::XUnoTunnel,
-                            css::lang::XServiceInfo >,
-                        public SfxListener
+                            css::lang::XServiceInfo >
 {
 private:
     SfxItemPropertySet      aPropSet;
@@ -131,8 +130,6 @@ public:
                             ScAutoFormatObj(sal_uInt16 nIndex);
     virtual                 ~ScAutoFormatObj() override;
 
-    virtual void            Notify( SfxBroadcaster& rBC, const SfxHint& rHint ) override;
-
                             // per getImplementation gerufen:
     bool                    IsInserted() const      { return nFormatIndex != SC_AFMTOBJ_INVALID; }
     void                    InitFormat( sal_uInt16 nNewIndex );
@@ -219,20 +216,17 @@ public:
 
 class ScAutoFormatFieldObj : public ::cppu::WeakImplHelper<
                                 css::beans::XPropertySet,
-                                css::lang::XServiceInfo >,
-                            public SfxListener
+                                css::lang::XServiceInfo >
 {
 private:
     SfxItemPropertySet      aPropSet;
-    sal_uInt16                  nFormatIndex;
-    sal_uInt16                  nFieldIndex;
+    sal_uInt16              nFormatIndex;
+    sal_uInt16              nFieldIndex;
 
 public:
                             ScAutoFormatFieldObj(sal_uInt16 nFormat, sal_uInt16 nField);
     virtual                 ~ScAutoFormatFieldObj() override;
 
-    virtual void            Notify( SfxBroadcaster& rBC, const SfxHint& rHint ) override;
-
                             // XPropertySet
     virtual css::uno::Reference< css::beans::XPropertySetInfo >
                             SAL_CALL getPropertySetInfo()
diff --git a/sc/source/ui/unoobj/afmtuno.cxx b/sc/source/ui/unoobj/afmtuno.cxx
index 8f04462..d6efeac 100644
--- a/sc/source/ui/unoobj/afmtuno.cxx
+++ b/sc/source/ui/unoobj/afmtuno.cxx
@@ -366,7 +366,6 @@ ScAutoFormatObj::ScAutoFormatObj(sal_uInt16 nIndex) :
     aPropSet( lcl_GetAutoFormatMap() ),
     nFormatIndex( nIndex )
 {
-    //! Listening !!!
 }
 
 ScAutoFormatObj::~ScAutoFormatObj()
@@ -388,7 +387,6 @@ void ScAutoFormatObj::InitFormat( sal_uInt16 nNewIndex )
 {
     OSL_ENSURE( nFormatIndex == SC_AFMTOBJ_INVALID, "ScAutoFormatObj::InitFormat mehrfach" );
     nFormatIndex = nNewIndex;
-    //! Listening !!!
 }
 
 // XUnoTunnel
@@ -424,11 +422,6 @@ ScAutoFormatObj* ScAutoFormatObj::getImplementation(const uno::Reference<uno::XI
     return pRet;
 }
 
-void ScAutoFormatObj::Notify( SfxBroadcaster& /* rBC */, const SfxHint& /* rHint */ )
-{
-    //  spaeter...
-}
-
 // XTableAutoFormat
 
 ScAutoFormatFieldObj* ScAutoFormatObj::GetObjectByIndex_Impl(sal_uInt16 nIndex)
@@ -627,18 +620,12 @@ ScAutoFormatFieldObj::ScAutoFormatFieldObj(sal_uInt16 nFormat, sal_uInt16 nField
     nFormatIndex( nFormat ),
     nFieldIndex( nField )
 {
-    //! Listening !!!
 }
 
 ScAutoFormatFieldObj::~ScAutoFormatFieldObj()
 {
 }
 
-void ScAutoFormatFieldObj::Notify( SfxBroadcaster& /* rBC */, const SfxHint& /* rHint */ )
-{
-    //  spaeter...
-}
-
 // beans::XPropertySet
 
 uno::Reference<beans::XPropertySetInfo> SAL_CALL ScAutoFormatFieldObj::getPropertySetInfo()
diff --git a/starmath/inc/symbol.hxx b/starmath/inc/symbol.hxx
index 24e46bd..fbddd9f 100644
--- a/starmath/inc/symbol.hxx
+++ b/starmath/inc/symbol.hxx
@@ -75,18 +75,16 @@ typedef std::map< OUString, SmSym >    SymbolMap_t;
 typedef std::vector< const SmSym * >            SymbolPtrVec_t;
 
 
-class SmSymbolManager : public SfxListener
+class SmSymbolManager
 {
 private:
     SymbolMap_t         m_aSymbols;
     bool                m_bModified;
 
-    virtual void Notify(SfxBroadcaster& rBC, const SfxHint& rHint) override;
-
 public:
     SmSymbolManager();
     SmSymbolManager(const SmSymbolManager& rSymbolSetManager);
-    virtual ~SmSymbolManager() override;
+    ~SmSymbolManager();
 
     SmSymbolManager &   operator = (const SmSymbolManager& rSymbolSetManager);
 
diff --git a/starmath/source/symbol.cxx b/starmath/source/symbol.cxx
index b1b0bb1..927680e 100644
--- a/starmath/source/symbol.cxx
+++ b/starmath/source/symbol.cxx
@@ -91,10 +91,6 @@ bool SmSym::IsEqualInUI( const SmSym& rSymbol ) const
 
 /**************************************************************************/
 
-void SmSymbolManager::Notify(SfxBroadcaster& /*rBC*/, const SfxHint& /*rHint*/)
-{
-}
-
 
 SmSymbolManager::SmSymbolManager()
 {
@@ -102,8 +98,7 @@ SmSymbolManager::SmSymbolManager()
 }
 
 
-SmSymbolManager::SmSymbolManager(const SmSymbolManager& rSymbolSetManager) :
-    SfxListener()
+SmSymbolManager::SmSymbolManager(const SmSymbolManager& rSymbolSetManager)
 {
     m_aSymbols      = rSymbolSetManager.m_aSymbols;
     m_bModified     = true;
diff --git a/svx/source/unodraw/unopage.cxx b/svx/source/unodraw/unopage.cxx
index 19a869b..e1cb31a 100644
--- a/svx/source/unodraw/unopage.cxx
+++ b/svx/source/unodraw/unopage.cxx
@@ -67,9 +67,6 @@ SvxDrawPage::SvxDrawPage( SdrPage* pInPage ) throw()
     // register at broadcaster
     if( mpPage )
         mpModel = mpPage->GetModel();
-    if( mpModel )
-        StartListening( *mpModel );
-
 
     // create (hidden) view
     mpView = new SdrView( mpModel );
@@ -97,7 +94,6 @@ void SvxDrawPage::disposing() throw()
 {
     if( mpModel )
     {
-        EndListening( *mpModel );
         mpModel = nullptr;
     }
 
@@ -186,11 +182,6 @@ void SAL_CALL SvxDrawPage::removeEventListener( const css::uno::Reference< css::
     mrBHelper.removeListener( cppu::UnoType<decltype(aListener)>::get() , aListener );
 }
 
-// SfxListener
-void SvxDrawPage::Notify( SfxBroadcaster&, const SfxHint& /*rHint*/ )
-{
-}
-
 void SAL_CALL SvxDrawPage::add( const uno::Reference< drawing::XShape >& xShape )
     throw( uno::RuntimeException, std::exception )
 {
@@ -877,12 +868,6 @@ void SvxDrawPage::ChangeModel( SdrModel* pNewModel )
 {
     if( pNewModel != mpModel )
     {
-        if( mpModel )
-            EndListening( *mpModel );
-
-        if( pNewModel )
-            StartListening( *pNewModel );
-
         mpModel = pNewModel;
 
         if( mpView )
commit 5c1bb338ef0d781648d5b33ffc9d64c2be6d9926
Author: Julien Nabet <serval2412 at yahoo.fr>
Date:   Sun Oct 23 21:32:49 2016 +0200

    cppcheck:stlIfStrFind
    
    Change-Id: Ic3c1b37b0c2cf9995e0bd1017cdbaed427fb296c
    Reviewed-on: https://gerrit.libreoffice.org/30185
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Noel Grandin <noel.grandin at collabora.co.uk>

diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx
index f3592c8..8ce8443 100644
--- a/desktop/source/lib/init.cxx
+++ b/desktop/source/lib/init.cxx
@@ -356,7 +356,7 @@ struct RectangleAndPart
     static RectangleAndPart Create(const std::string& rPayload)
     {
         RectangleAndPart aRet;
-        if (rPayload.find("EMPTY") == 0) // payload starts with "EMPTY"
+        if (rPayload.compare("EMPTY") == 0) // payload starts with "EMPTY"
         {
             if (comphelper::LibreOfficeKit::isPartInInvalidation())
                 aRet.m_nPart = std::stol(rPayload.substr(6));
diff --git a/libreofficekit/source/gtk/lokdocview.cxx b/libreofficekit/source/gtk/lokdocview.cxx
index a08d93e..fd67264 100644
--- a/libreofficekit/source/gtk/lokdocview.cxx
+++ b/libreofficekit/source/gtk/lokdocview.cxx
@@ -1136,7 +1136,7 @@ callback (gpointer pData)
     {
     case LOK_CALLBACK_INVALIDATE_TILES:
     {
-        if (pCallback->m_aPayload.find("EMPTY") != 0) // payload doesn't start with "EMPTY"
+        if (pCallback->m_aPayload.compare("EMPTY") != 0) // payload doesn't start with "EMPTY"
         {
             GdkRectangle aRectangle = payloadToRectangle(pDocView, pCallback->m_aPayload.c_str());
             setTilesInvalid(pDocView, aRectangle);
commit 02e6c1c95993740e0dbea724b3014348c4b6559d
Author: Takeshi Abe <tabe at fixedpoint.jp>
Date:   Fri Oct 21 18:42:26 2016 +0900

    sw: Avoid inheritance from std::vector
    
    Change-Id: I09ae81fa3fbd89060dd1a993952d9bb67ddb101e
    Reviewed-on: https://gerrit.libreoffice.org/30125
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Takeshi Abe <tabe at fixedpoint.jp>

diff --git a/sw/inc/docary.hxx b/sw/inc/docary.hxx
index 58ee21f..91ec0e7 100644
--- a/sw/inc/docary.hxx
+++ b/sw/inc/docary.hxx
@@ -66,10 +66,13 @@ public:
 };
 
 template<typename Value>
-class SwVectorModifyBase : public std::vector<Value>
+class SwVectorModifyBase
 {
 public:
+    typedef typename std::vector<Value>::iterator iterator;
     typedef typename std::vector<Value>::const_iterator const_iterator;
+    typedef typename std::vector<Value>::size_type size_type;
+    typedef typename std::vector<Value>::value_type value_type;
 
 protected:
     enum class DestructorPolicy {
@@ -78,6 +81,7 @@ protected:
     };
 
 private:
+    typename std::vector<Value> mvVals;
     const DestructorPolicy mPolicy;
 
 protected:
@@ -86,8 +90,27 @@ protected:
         : mPolicy(policy) {}
 
 public:
-    using std::vector<Value>::begin;
-    using std::vector<Value>::end;
+    bool empty() const { return mvVals.empty(); }
+    Value const& front() const { return mvVals.front(); }
+    size_t size() const { return mvVals.size(); }
+    iterator begin() { return mvVals.begin(); }
+    const_iterator begin() const { return mvVals.begin(); }
+    iterator end() { return mvVals.end(); }
+    const_iterator end() const { return mvVals.end(); }
+    void clear() { mvVals.clear(); }
+    iterator erase(iterator aIt) { return mvVals.erase(aIt); }
+    iterator erase(iterator aFirst, iterator aLast) { return mvVals.erase(aFirst, aLast); }
+    iterator insert(iterator aIt, Value const& rVal) { return mvVals.insert(aIt, rVal); }
+    template<typename TInputIterator>
+    void insert(iterator aIt, TInputIterator aFirst, TInputIterator aLast)
+    {
+        mvVals.insert(aIt, aFirst, aLast);
+    }
+    void push_back(Value const& rVal) { mvVals.push_back(rVal); }
+    void reserve(size_type nSize) { mvVals.reserve(nSize); }
+    Value const& at(size_type nPos) const { return mvVals.at(nPos); }
+    Value const& operator[](size_type nPos) const { return mvVals[nPos]; }
+    Value& operator[](size_type nPos) { return mvVals[nPos]; }
 
     // free any remaining child objects based on mPolicy
     virtual ~SwVectorModifyBase()
@@ -129,10 +152,10 @@ protected:
 
 public:
     virtual size_t GetFormatCount() const override
-        { return std::vector<Value>::size(); }
+        { return SwVectorModifyBase<Value>::size(); }
 
     virtual Value GetFormat(size_t idx) const override
-        { return std::vector<Value>::operator[](idx); }
+        { return SwVectorModifyBase<Value>::operator[](idx); }
 
     inline size_t GetPos(const SwFormat *p) const
         { return SwVectorModifyBase<Value>::GetPos( static_cast<Value>( const_cast<SwFormat*>( p ) ) ); }
commit 2e137e4696e8278c3d56ba8a49a8b255534bd048
Author: David Tardon <dtardon at redhat.com>
Date:   Sun Oct 23 22:41:23 2016 +0200

    allow to build bundled libzmf on aarch64
    
    Change-Id: I76d695c922a072b0edd010f5583bafe0dfeb0dd8

diff --git a/external/libzmf/UnpackedTarball_libzmf.mk b/external/libzmf/UnpackedTarball_libzmf.mk
index 782aeb8..e9cf715 100644
--- a/external/libzmf/UnpackedTarball_libzmf.mk
+++ b/external/libzmf/UnpackedTarball_libzmf.mk
@@ -25,6 +25,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,libzmf, \
 	external/libzmf/0001-add-missing-include.patch.1 \
 	external/libzmf/0001-allow-build-with-boost-1.56.patch.1 \
 	external/libzmf/0001-allow-build-with-boost-1.56-part-II.patch.1 \
+	external/libzmf/libzmf-config-guess.patch.1 \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/libzmf/libzmf-config-guess.patch.1 b/external/libzmf/libzmf-config-guess.patch.1
new file mode 100644
index 0000000..bf9fffb
--- /dev/null
+++ b/external/libzmf/libzmf-config-guess.patch.1
@@ -0,0 +1,727 @@
+diff -up ./config.guess.dt ./config.guess
+--- ./config.guess.dt	2016-10-23 22:39:12.641388777 +0200
++++ ./config.guess	2016-10-23 22:32:42.022632241 +0200
+@@ -1,10 +1,8 @@
+ #! /bin/sh
+ # Attempt to guess a canonical system name.
+-#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
+-#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
+-#   2011, 2012, 2013 Free Software Foundation, Inc.
++#   Copyright 1992-2015 Free Software Foundation, Inc.
+ 
+-timestamp='2012-12-29'
++timestamp='2015-01-01'
+ 
+ # This file is free software; you can redistribute it and/or modify it
+ # under the terms of the GNU General Public License as published by
+@@ -26,12 +24,12 @@ timestamp='2012-12-29'
+ # program.  This Exception is an additional permission under section 7
+ # of the GNU General Public License, version 3 ("GPLv3").
+ #
+-# Originally written by Per Bothner. 
++# Originally written by Per Bothner; maintained since 2000 by Ben Elliston.
+ #
+ # You can get the latest version of this script from:
+ # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
+ #
+-# Please send patches with a ChangeLog entry to config-patches at gnu.org.
++# Please send patches to <config-patches at gnu.org>.
+ 
+ 
+ me=`echo "$0" | sed -e 's,.*/,,'`
+@@ -52,9 +50,7 @@ version="\
+ GNU config.guess ($timestamp)
+ 
+ Originally written by Per Bothner.
+-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
+-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011,
+-2012, 2013 Free Software Foundation, Inc.
++Copyright 1992-2015 Free Software Foundation, Inc.
+ 
+ This is free software; see the source for copying conditions.  There is NO
+ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
+@@ -136,6 +132,27 @@ UNAME_RELEASE=`(uname -r) 2>/dev/null` |
+ UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
+ UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
+ 
++case "${UNAME_SYSTEM}" in
++Linux|GNU|GNU/*)
++	# If the system lacks a compiler, then just pick glibc.
++	# We could probably try harder.
++	LIBC=gnu
++
++	eval $set_cc_for_build
++	cat <<-EOF > $dummy.c
++	#include <features.h>
++	#if defined(__UCLIBC__)
++	LIBC=uclibc
++	#elif defined(__dietlibc__)
++	LIBC=dietlibc
++	#else
++	LIBC=gnu
++	#endif
++	EOF
++	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`
++	;;
++esac
++
+ # Note: order is significant - the case branches are not exclusive.
+ 
+ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
+@@ -562,8 +579,9 @@ EOF
+ 	else
+ 		IBM_ARCH=powerpc
+ 	fi
+-	if [ -x /usr/bin/oslevel ] ; then
+-		IBM_REV=`/usr/bin/oslevel`
++	if [ -x /usr/bin/lslpp ] ; then
++		IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc |
++			   awk -F: '{ print $3 }' | sed s/[0-9]*$/0/`
+ 	else
+ 		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+ 	fi
+@@ -809,7 +827,7 @@ EOF
+     *:MINGW*:*)
+ 	echo ${UNAME_MACHINE}-pc-mingw32
+ 	exit ;;
+-    i*:MSYS*:*)
++    *:MSYS*:*)
+ 	echo ${UNAME_MACHINE}-pc-msys
+ 	exit ;;
+     i*:windows32*:*)
+@@ -857,21 +875,21 @@ EOF
+ 	exit ;;
+     *:GNU:*:*)
+ 	# the GNU system
+-	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
++	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
+ 	exit ;;
+     *:GNU/*:*:*)
+ 	# other systems with GNU libc and userland
+-	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
++	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
+ 	exit ;;
+     i*86:Minix:*:*)
+ 	echo ${UNAME_MACHINE}-pc-minix
+ 	exit ;;
+     aarch64:Linux:*:*)
+-	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ 	exit ;;
+     aarch64_be:Linux:*:*)
+ 	UNAME_MACHINE=aarch64_be
+-	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ 	exit ;;
+     alpha:Linux:*:*)
+ 	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
+@@ -884,59 +902,54 @@ EOF
+ 	  EV68*) UNAME_MACHINE=alphaev68 ;;
+ 	esac
+ 	objdump --private-headers /bin/sh | grep -q ld.so.1
+-	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
+-	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
++	if test "$?" = 0 ; then LIBC="gnulibc1" ; fi
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
++	exit ;;
++    arc:Linux:*:* | arceb:Linux:*:*)
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ 	exit ;;
+     arm*:Linux:*:*)
+ 	eval $set_cc_for_build
+ 	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
+ 	    | grep -q __ARM_EABI__
+ 	then
+-	    echo ${UNAME_MACHINE}-unknown-linux-gnu
++	    echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ 	else
+ 	    if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
+ 		| grep -q __ARM_PCS_VFP
+ 	    then
+-		echo ${UNAME_MACHINE}-unknown-linux-gnueabi
++		echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi
+ 	    else
+-		echo ${UNAME_MACHINE}-unknown-linux-gnueabihf
++		echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf
+ 	    fi
+ 	fi
+ 	exit ;;
+     avr32*:Linux:*:*)
+-	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ 	exit ;;
+     cris:Linux:*:*)
+-	echo ${UNAME_MACHINE}-axis-linux-gnu
++	echo ${UNAME_MACHINE}-axis-linux-${LIBC}
+ 	exit ;;
+     crisv32:Linux:*:*)
+-	echo ${UNAME_MACHINE}-axis-linux-gnu
++	echo ${UNAME_MACHINE}-axis-linux-${LIBC}
+ 	exit ;;
+     frv:Linux:*:*)
+-	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ 	exit ;;
+     hexagon:Linux:*:*)
+-	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ 	exit ;;
+     i*86:Linux:*:*)
+-	LIBC=gnu
+-	eval $set_cc_for_build
+-	sed 's/^	//' << EOF >$dummy.c
+-	#ifdef __dietlibc__
+-	LIBC=dietlibc
+-	#endif
+-EOF
+-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
+-	echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
++	echo ${UNAME_MACHINE}-pc-linux-${LIBC}
+ 	exit ;;
+     ia64:Linux:*:*)
+-	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ 	exit ;;
+     m32r*:Linux:*:*)
+-	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ 	exit ;;
+     m68*:Linux:*:*)
+-	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ 	exit ;;
+     mips:Linux:*:* | mips64:Linux:*:*)
+ 	eval $set_cc_for_build
+@@ -955,54 +968,63 @@ EOF
+ 	#endif
+ EOF
+ 	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
+-	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
++	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
+ 	;;
+-    or32:Linux:*:*)
+-	echo ${UNAME_MACHINE}-unknown-linux-gnu
++    openrisc*:Linux:*:*)
++	echo or1k-unknown-linux-${LIBC}
++	exit ;;
++    or32:Linux:*:* | or1k*:Linux:*:*)
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ 	exit ;;
+     padre:Linux:*:*)
+-	echo sparc-unknown-linux-gnu
++	echo sparc-unknown-linux-${LIBC}
+ 	exit ;;
+     parisc64:Linux:*:* | hppa64:Linux:*:*)
+-	echo hppa64-unknown-linux-gnu
++	echo hppa64-unknown-linux-${LIBC}
+ 	exit ;;
+     parisc:Linux:*:* | hppa:Linux:*:*)
+ 	# Look for CPU level
+ 	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
+-	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
+-	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
+-	  *)    echo hppa-unknown-linux-gnu ;;
++	  PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
++	  PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
++	  *)    echo hppa-unknown-linux-${LIBC} ;;
+ 	esac
+ 	exit ;;
+     ppc64:Linux:*:*)
+-	echo powerpc64-unknown-linux-gnu
++	echo powerpc64-unknown-linux-${LIBC}
+ 	exit ;;
+     ppc:Linux:*:*)
+-	echo powerpc-unknown-linux-gnu
++	echo powerpc-unknown-linux-${LIBC}
++	exit ;;
++    ppc64le:Linux:*:*)
++	echo powerpc64le-unknown-linux-${LIBC}
++	exit ;;
++    ppcle:Linux:*:*)
++	echo powerpcle-unknown-linux-${LIBC}
+ 	exit ;;
+     s390:Linux:*:* | s390x:Linux:*:*)
+-	echo ${UNAME_MACHINE}-ibm-linux
++	echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
+ 	exit ;;
+     sh64*:Linux:*:*)
+-	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ 	exit ;;
+     sh*:Linux:*:*)
+-	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ 	exit ;;
+     sparc:Linux:*:* | sparc64:Linux:*:*)
+-	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ 	exit ;;
+     tile*:Linux:*:*)
+-	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ 	exit ;;
+     vax:Linux:*:*)
+-	echo ${UNAME_MACHINE}-dec-linux-gnu
++	echo ${UNAME_MACHINE}-dec-linux-${LIBC}
+ 	exit ;;
+     x86_64:Linux:*:*)
+-	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ 	exit ;;
+     xtensa*:Linux:*:*)
+-	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ 	exit ;;
+     i*86:DYNIX/ptx:4*:*)
+ 	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
+@@ -1235,19 +1257,31 @@ EOF
+ 	exit ;;
+     *:Darwin:*:*)
+ 	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
+-	case $UNAME_PROCESSOR in
+-	    i386)
+-		eval $set_cc_for_build
+-		if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
+-		  if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
+-		      (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
+-		      grep IS_64BIT_ARCH >/dev/null
+-		  then
+-		      UNAME_PROCESSOR="x86_64"
+-		  fi
+-		fi ;;
+-	    unknown) UNAME_PROCESSOR=powerpc ;;
+-	esac
++	eval $set_cc_for_build
++	if test "$UNAME_PROCESSOR" = unknown ; then
++	    UNAME_PROCESSOR=powerpc
++	fi
++	if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then
++	    if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
++		if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
++		    (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
++		    grep IS_64BIT_ARCH >/dev/null
++		then
++		    case $UNAME_PROCESSOR in
++			i386) UNAME_PROCESSOR=x86_64 ;;
++			powerpc) UNAME_PROCESSOR=powerpc64 ;;
++		    esac
++		fi
++	    fi
++	elif test "$UNAME_PROCESSOR" = i386 ; then
++	    # Avoid executing cc on OS X 10.9, as it ships with a stub
++	    # that puts up a graphical alert prompting to install
++	    # developer tools.  Any system running Mac OS X 10.7 or
++	    # later (Darwin 11 and later) is required to have a 64-bit
++	    # processor. This is not true of the ARM version of Darwin
++	    # that Apple uses in portable devices.
++	    UNAME_PROCESSOR=x86_64
++	fi
+ 	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
+ 	exit ;;
+     *:procnto*:*:* | *:QNX:[0123456789]*:*)
+@@ -1338,154 +1372,6 @@ EOF
+ 	exit ;;
+ esac
+ 
+-eval $set_cc_for_build
+-cat >$dummy.c <<EOF
+-#ifdef _SEQUENT_
+-# include <sys/types.h>
+-# include <sys/utsname.h>
+-#endif
+-main ()
+-{
+-#if defined (sony)
+-#if defined (MIPSEB)
+-  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
+-     I don't know....  */
+-  printf ("mips-sony-bsd\n"); exit (0);
+-#else
+-#include <sys/param.h>
+-  printf ("m68k-sony-newsos%s\n",
+-#ifdef NEWSOS4
+-	"4"
+-#else
+-	""
+-#endif
+-	); exit (0);
+-#endif
+-#endif
+-
+-#if defined (__arm) && defined (__acorn) && defined (__unix)
+-  printf ("arm-acorn-riscix\n"); exit (0);
+-#endif
+-
+-#if defined (hp300) && !defined (hpux)
+-  printf ("m68k-hp-bsd\n"); exit (0);
+-#endif
+-
+-#if defined (NeXT)
+-#if !defined (__ARCHITECTURE__)
+-#define __ARCHITECTURE__ "m68k"
+-#endif
+-  int version;
+-  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
+-  if (version < 4)
+-    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
+-  else
+-    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
+-  exit (0);
+-#endif
+-
+-#if defined (MULTIMAX) || defined (n16)
+-#if defined (UMAXV)
+-  printf ("ns32k-encore-sysv\n"); exit (0);
+-#else
+-#if defined (CMU)
+-  printf ("ns32k-encore-mach\n"); exit (0);
+-#else
+-  printf ("ns32k-encore-bsd\n"); exit (0);
+-#endif
+-#endif
+-#endif
+-
+-#if defined (__386BSD__)
+-  printf ("i386-pc-bsd\n"); exit (0);
+-#endif
+-
+-#if defined (sequent)
+-#if defined (i386)
+-  printf ("i386-sequent-dynix\n"); exit (0);
+-#endif
+-#if defined (ns32000)
+-  printf ("ns32k-sequent-dynix\n"); exit (0);
+-#endif
+-#endif
+-
+-#if defined (_SEQUENT_)
+-    struct utsname un;
+-
+-    uname(&un);
+-
+-    if (strncmp(un.version, "V2", 2) == 0) {
+-	printf ("i386-sequent-ptx2\n"); exit (0);
+-    }
+-    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
+-	printf ("i386-sequent-ptx1\n"); exit (0);
+-    }
+-    printf ("i386-sequent-ptx\n"); exit (0);
+-
+-#endif
+-
+-#if defined (vax)
+-# if !defined (ultrix)
+-#  include <sys/param.h>
+-#  if defined (BSD)
+-#   if BSD == 43
+-      printf ("vax-dec-bsd4.3\n"); exit (0);
+-#   else
+-#    if BSD == 199006
+-      printf ("vax-dec-bsd4.3reno\n"); exit (0);
+-#    else
+-      printf ("vax-dec-bsd\n"); exit (0);
+-#    endif
+-#   endif
+-#  else
+-    printf ("vax-dec-bsd\n"); exit (0);
+-#  endif
+-# else
+-    printf ("vax-dec-ultrix\n"); exit (0);
+-# endif
+-#endif
+-
+-#if defined (alliant) && defined (i860)
+-  printf ("i860-alliant-bsd\n"); exit (0);
+-#endif
+-
+-  exit (1);
+-}
+-EOF
+-
+-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
+-	{ echo "$SYSTEM_NAME"; exit; }
+-
+-# Apollos put the system type in the environment.
+-
+-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
+-
+-# Convex versions that predate uname can use getsysinfo(1)
+-
+-if [ -x /usr/convex/getsysinfo ]
+-then
+-    case `getsysinfo -f cpu_type` in
+-    c1*)
+-	echo c1-convex-bsd
+-	exit ;;
+-    c2*)
+-	if getsysinfo -f scalar_acc
+-	then echo c32-convex-bsd
+-	else echo c2-convex-bsd
+-	fi
+-	exit ;;
+-    c34*)
+-	echo c34-convex-bsd
+-	exit ;;
+-    c38*)
+-	echo c38-convex-bsd
+-	exit ;;
+-    c4*)
+-	echo c4-convex-bsd
+-	exit ;;
+-    esac
+-fi
+-
+ cat >&2 <<EOF
+ $0: unable to guess system type
+ 
+diff -up ./config.sub.dt ./config.sub
+--- ./config.sub.dt	2016-10-23 22:39:18.202299893 +0200
++++ ./config.sub	2016-10-23 22:32:42.024632209 +0200
+@@ -1,10 +1,8 @@
+ #! /bin/sh
+ # Configuration validation subroutine script.
+-#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
+-#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
+-#   2011, 2012, 2013 Free Software Foundation, Inc.
++#   Copyright 1992-2015 Free Software Foundation, Inc.
+ 
+-timestamp='2012-12-29'
++timestamp='2015-01-01'
+ 
+ # This file is free software; you can redistribute it and/or modify it
+ # under the terms of the GNU General Public License as published by
+@@ -27,7 +25,7 @@ timestamp='2012-12-29'
+ # of the GNU General Public License, version 3 ("GPLv3").
+ 
+ 
+-# Please send patches with a ChangeLog entry to config-patches at gnu.org.
++# Please send patches to <config-patches at gnu.org>.
+ #
+ # Configuration subroutine to validate and canonicalize a configuration type.
+ # Supply the specified configuration type as an argument.
+@@ -70,9 +68,7 @@ Report bugs and patches to <config-patch
+ version="\
+ GNU config.sub ($timestamp)
+ 
+-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
+-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011,
+-2012, 2013 Free Software Foundation, Inc.
++Copyright 1992-2015 Free Software Foundation, Inc.
+ 
+ This is free software; see the source for copying conditions.  There is NO
+ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
+@@ -256,19 +252,20 @@ case $basic_machine in
+ 	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
+ 	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
+ 	| am33_2.0 \
+-	| arc \
++	| arc | arceb \
+ 	| arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
+ 	| avr | avr32 \
+ 	| be32 | be64 \
+ 	| bfin \
+-	| c4x | clipper \
++	| c4x | c8051 | clipper \
+ 	| d10v | d30v | dlx | dsp16xx \
+ 	| epiphany \
+-	| fido | fr30 | frv \
++	| fido | fr30 | frv | ft32 \
+ 	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
+ 	| hexagon \
+ 	| i370 | i860 | i960 | ia64 \
+ 	| ip2k | iq2000 \
++	| k1om \
+ 	| le32 | le64 \
+ 	| lm32 \
+ 	| m32c | m32r | m32rle | m68000 | m68k | m88k \
+@@ -286,23 +283,26 @@ case $basic_machine in
+ 	| mips64vr5900 | mips64vr5900el \
+ 	| mipsisa32 | mipsisa32el \
+ 	| mipsisa32r2 | mipsisa32r2el \
++	| mipsisa32r6 | mipsisa32r6el \
+ 	| mipsisa64 | mipsisa64el \
+ 	| mipsisa64r2 | mipsisa64r2el \
++	| mipsisa64r6 | mipsisa64r6el \
+ 	| mipsisa64sb1 | mipsisa64sb1el \
+ 	| mipsisa64sr71k | mipsisa64sr71kel \
++	| mipsr5900 | mipsr5900el \
+ 	| mipstx39 | mipstx39el \
+ 	| mn10200 | mn10300 \
+ 	| moxie \
+ 	| mt \
+ 	| msp430 \
+ 	| nds32 | nds32le | nds32be \
+-	| nios | nios2 \
++	| nios | nios2 | nios2eb | nios2el \
+ 	| ns16k | ns32k \
+-	| open8 \
+-	| or32 \
++	| open8 | or1k | or1knd | or32 \
+ 	| pdp10 | pdp11 | pj | pjl \
+ 	| powerpc | powerpc64 | powerpc64le | powerpcle \
+ 	| pyramid \
++	| riscv32 | riscv64 \
+ 	| rl78 | rx \
+ 	| score \
+ 	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
+@@ -313,6 +313,7 @@ case $basic_machine in
+ 	| tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
+ 	| ubicom32 \
+ 	| v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
++	| visium \
+ 	| we32k \
+ 	| x86 | xc16x | xstormy16 | xtensa \
+ 	| z8k | z80)
+@@ -327,7 +328,10 @@ case $basic_machine in
+ 	c6x)
+ 		basic_machine=tic6x-unknown
+ 		;;
+-	m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
++	leon|leon[3-9])
++		basic_machine=sparc-$basic_machine
++		;;
++	m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
+ 		basic_machine=$basic_machine-unknown
+ 		os=-none
+ 		;;
+@@ -369,13 +373,13 @@ case $basic_machine in
+ 	| aarch64-* | aarch64_be-* \
+ 	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
+ 	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
+-	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
++	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
+ 	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
+ 	| avr-* | avr32-* \
+ 	| be32-* | be64-* \
+ 	| bfin-* | bs2000-* \
+ 	| c[123]* | c30-* | [cjt]90-* | c4x-* \
+-	| clipper-* | craynv-* | cydra-* \
++	| c8051-* | clipper-* | craynv-* | cydra-* \
+ 	| d10v-* | d30v-* | dlx-* \
+ 	| elxsi-* \
+ 	| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
+@@ -384,6 +388,7 @@ case $basic_machine in
+ 	| hexagon-* \
+ 	| i*86-* | i860-* | i960-* | ia64-* \
+ 	| ip2k-* | iq2000-* \
++	| k1om-* \
+ 	| le32-* | le64-* \
+ 	| lm32-* \
+ 	| m32c-* | m32r-* | m32rle-* \
+@@ -403,18 +408,22 @@ case $basic_machine in
+ 	| mips64vr5900-* | mips64vr5900el-* \
+ 	| mipsisa32-* | mipsisa32el-* \
+ 	| mipsisa32r2-* | mipsisa32r2el-* \
++	| mipsisa32r6-* | mipsisa32r6el-* \
+ 	| mipsisa64-* | mipsisa64el-* \
+ 	| mipsisa64r2-* | mipsisa64r2el-* \
++	| mipsisa64r6-* | mipsisa64r6el-* \
+ 	| mipsisa64sb1-* | mipsisa64sb1el-* \
+ 	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
++	| mipsr5900-* | mipsr5900el-* \
+ 	| mipstx39-* | mipstx39el-* \
+ 	| mmix-* \
+ 	| mt-* \
+ 	| msp430-* \
+ 	| nds32-* | nds32le-* | nds32be-* \
+-	| nios-* | nios2-* \
++	| nios-* | nios2-* | nios2eb-* | nios2el-* \
+ 	| none-* | np1-* | ns16k-* | ns32k-* \
+ 	| open8-* \
++	| or1k*-* \
+ 	| orion-* \
+ 	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
+ 	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
+@@ -432,6 +441,7 @@ case $basic_machine in
+ 	| ubicom32-* \
+ 	| v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
+ 	| vax-* \
++	| visium-* \
+ 	| we32k-* \
+ 	| x86-* | x86_64-* | xc16x-* | xps100-* \
+ 	| xstormy16-* | xtensa*-* \
+@@ -769,6 +779,9 @@ case $basic_machine in
+ 		basic_machine=m68k-isi
+ 		os=-sysv
+ 		;;
++	leon-*|leon[3-9]-*)
++		basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'`
++		;;
+ 	m68knommu)
+ 		basic_machine=m68k-unknown
+ 		os=-linux
+@@ -796,7 +809,7 @@ case $basic_machine in
+ 		os=-mingw64
+ 		;;
+ 	mingw32)
+-		basic_machine=i386-pc
++		basic_machine=i686-pc
+ 		os=-mingw32
+ 		;;
+ 	mingw32ce)
+@@ -824,6 +837,10 @@ case $basic_machine in
+ 		basic_machine=powerpc-unknown
+ 		os=-morphos
+ 		;;
++	moxiebox)
++		basic_machine=moxie-unknown
++		os=-moxiebox
++		;;
+ 	msdos)
+ 		basic_machine=i386-pc
+ 		os=-msdos
+@@ -832,7 +849,7 @@ case $basic_machine in
+ 		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
+ 		;;
+ 	msys)
+-		basic_machine=i386-pc
++		basic_machine=i686-pc
+ 		os=-msys
+ 		;;
+ 	mvs)
+@@ -1354,7 +1371,7 @@ case $os in
+ 	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
+ 	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
+ 	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
+-	      | -sym* | -kopensolaris* \
++	      | -sym* | -kopensolaris* | -plan9* \
+ 	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
+ 	      | -aos* | -aros* \
+ 	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
+@@ -1369,14 +1386,14 @@ case $os in
+ 	      | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
+ 	      | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
+ 	      | -linux-newlib* | -linux-musl* | -linux-uclibc* \
+-	      | -uxpv* | -beos* | -mpeix* | -udk* \
++	      | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \
+ 	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
+ 	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
+ 	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
+ 	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
+ 	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
+ 	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
+-	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
++	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* | -tirtos*)
+ 	# Remember, each alternative MUST END IN *, to match a version number.
+ 		;;
+ 	-qnx*)
+@@ -1500,9 +1517,6 @@ case $os in
+ 	-aros*)
+ 		os=-aros
+ 		;;
+-	-kaos*)
+-		os=-kaos
+-		;;
+ 	-zvmoe)
+ 		os=-zvmoe
+ 		;;
+@@ -1551,6 +1565,9 @@ case $basic_machine in
+ 	c4x-* | tic4x-*)
+ 		os=-coff
+ 		;;
++	c8051-*)
++		os=-elf
++		;;
+ 	hexagon-*)
+ 		os=-elf
+ 		;;
commit ca114fb2a31874082b22fd96feb7181303c1f057
Author: David Tardon <dtardon at redhat.com>
Date:   Sun Oct 23 22:26:59 2016 +0200

    don't build libxmlsec docs
    
    Change-Id: I2fd3283147296e3c392a9d282b762b77e473b3eb

diff --git a/external/libxmlsec/xmlsec1-configure.patch.1 b/external/libxmlsec/xmlsec1-configure.patch.1
index 02a675f..b82ee08 100644
--- a/external/libxmlsec/xmlsec1-configure.patch.1
+++ b/external/libxmlsec/xmlsec1-configure.patch.1
@@ -23,7 +23,7 @@ index 3453c01..da71139 100644
  
  SAFE_VERSION	= @XMLSEC_VERSION_SAFE@
 -SUBDIRS 	    = include src apps man docs
-+SUBDIRS 	    = include src man docs
++SUBDIRS 	    = include src
  TEST_APP 	    = apps/xmlsec1$(EXEEXT)
  DEFAULT_CRYPTO	= @XMLSEC_DEFAULT_CRYPTO@
  
@@ -36,7 +36,7 @@ index 6b23543..759b33e 100644
  NULL = 
  SAFE_VERSION = @XMLSEC_VERSION_SAFE@
 -SUBDIRS = include src apps man docs
-+SUBDIRS = include src man docs
++SUBDIRS = include src
  TEST_APP = apps/xmlsec1$(EXEEXT)
  DEFAULT_CRYPTO = @XMLSEC_DEFAULT_CRYPTO@
  bin_SCRIPTS = xmlsec1-config
commit bc3ea81d78687c9383e899ddcd81422392a6ecee
Author: David Tardon <dtardon at redhat.com>
Date:   Sun Oct 23 20:08:52 2016 +0200

    fix build of bundled libzmf with boost < 1.56
    
    Change-Id: I024d77b563d492bbb56155afb6313d37ca6a4c0b

diff --git a/external/libzmf/0001-allow-build-with-boost-1.56-part-II.patch.1 b/external/libzmf/0001-allow-build-with-boost-1.56-part-II.patch.1
new file mode 100644
index 0000000..d70fd97
--- /dev/null
+++ b/external/libzmf/0001-allow-build-with-boost-1.56-part-II.patch.1
@@ -0,0 +1,190 @@
+From 11b8d5b0c8c0461ac638aba6bc6e59e7ec5d815c Mon Sep 17 00:00:00 2001
+From: David Tardon <dtardon at redhat.com>
+Date: Sun, 23 Oct 2016 19:58:35 +0200
+Subject: [PATCH] allow build with boost < 1.56, part II
+
+Change-Id: I4421847b1aa7bbb006a32dd85567b96125df6b6b
+---
+ src/lib/ZMF4Parser.cpp | 42 +++++++++++++++++++++---------------------
+ 1 file changed, 21 insertions(+), 21 deletions(-)
+
+diff --git a/src/lib/ZMF4Parser.cpp b/src/lib/ZMF4Parser.cpp
+index e23c2e5..f3f3f5d 100644
+--- a/src/lib/ZMF4Parser.cpp
++++ b/src/lib/ZMF4Parser.cpp
+@@ -269,7 +269,7 @@ boost::optional<Image> ZMF4Parser::getImageByRefId(uint32_t id)
+ ArrowPtr ZMF4Parser::getArrowByRefId(uint32_t id)
+ {
+   auto arrow = getByRefId<ArrowPtr>(id, m_arrows);
+-  return arrow ? arrow.value() : ArrowPtr();
++  return get_optional_value_or(arrow, ArrowPtr());
+ }
+ 
+ Style ZMF4Parser::readStyle()
+@@ -684,13 +684,13 @@ void ZMF4Parser::readFill()
+ 
+     Color color = readColor();
+ 
+-    m_fills[m_currentObjectHeader.id.value()] = color;
++    m_fills[get(m_currentObjectHeader.id)] = color;
+   }
+   else if (type >= 2 && type <= 7)
+   {
+     Gradient gradient = readGradient(type);
+ 
+-    m_fills[m_currentObjectHeader.id.value()] = gradient;
++    m_fills[get(m_currentObjectHeader.id)] = gradient;
+   }
+   else if (type == 8)
+   {
+@@ -723,13 +723,13 @@ void ZMF4Parser::readFill()
+ 
+     if (!image)
+     {
+-      ZMF_DEBUG_MSG(("image not found for bitmap fill ID0x%x\n", m_currentObjectHeader.id.value()));
++      ZMF_DEBUG_MSG(("image not found for bitmap fill ID0x%x\n", get(m_currentObjectHeader.id)));
+       return;
+     }
+ 
+-    imageFill.image = image.value();
++    imageFill.image = get(image);
+ 
+-    m_fills[m_currentObjectHeader.id.value()] = imageFill;
++    m_fills[get(m_currentObjectHeader.id)] = imageFill;
+   }
+   else
+   {
+@@ -756,7 +756,7 @@ void ZMF4Parser::readTransparency()
+     Transparency transparency;
+     transparency.color = readColor();
+ 
+-    m_transparencies[m_currentObjectHeader.id.value()] = transparency;
++    m_transparencies[get(m_currentObjectHeader.id)] = transparency;
+   }
+ }
+ 
+@@ -874,7 +874,7 @@ void ZMF4Parser::readPen()
+     }
+   }
+ 
+-  m_pens[m_currentObjectHeader.id.value()] = pen;
++  m_pens[get(m_currentObjectHeader.id)] = pen;
+ }
+ 
+ void ZMF4Parser::readShadow()
+@@ -926,7 +926,7 @@ void ZMF4Parser::readShadow()
+     break;
+   }
+ 
+-  m_shadows[m_currentObjectHeader.id.value()] = shadow;
++  m_shadows[get(m_currentObjectHeader.id)] = shadow;
+ }
+ 
+ void ZMF4Parser::readArrow()
+@@ -947,7 +947,7 @@ void ZMF4Parser::readArrow()
+ 
+   arrow->curves = readCurveComponents(std::bind(&ZMF4Parser::readUnscaledPoint, this));
+ 
+-  m_arrows[m_currentObjectHeader.id.value()] = arrow;
++  m_arrows[get(m_currentObjectHeader.id)] = arrow;
+ }
+ 
+ void ZMF4Parser::readBitmap()
+@@ -975,11 +975,11 @@ void ZMF4Parser::readBitmap()
+ 
+     if (image.data.empty())
+     {
+-      ZMF_DEBUG_MSG(("Failed to parse bitmap, ID 0x%x\n", m_currentObjectHeader.id.value()));
++      ZMF_DEBUG_MSG(("Failed to parse bitmap, ID 0x%x\n", get(m_currentObjectHeader.id)));
+     }
+     else
+     {
+-      m_images[m_currentObjectHeader.id.value()] = image;
++      m_images[get(m_currentObjectHeader.id)] = image;
+     }
+ 
+     seek(m_input, m_currentObjectHeader.nextObjectOffset + header.size());
+@@ -1012,7 +1012,7 @@ void ZMF4Parser::readImage()
+   {
+     m_collector.setStyle(readStyle());
+ 
+-    m_collector.collectImage(image.value().data, bbox.topLeft(), bbox.width(), bbox.height(),
++    m_collector.collectImage(get(image).data, bbox.topLeft(), bbox.width(), bbox.height(),
+                              bbox.rotation(), bbox.mirrorHorizontal(), bbox.mirrorVertical());
+   }
+ }
+@@ -1046,7 +1046,7 @@ void ZMF4Parser::readFont()
+   font.fill = style.fill;
+   font.outline = style.pen;
+ 
+-  m_fonts[m_currentObjectHeader.id.value()] = font;
++  m_fonts[get(m_currentObjectHeader.id)] = font;
+ }
+ 
+ void ZMF4Parser::readParagraphStyle()
+@@ -1098,7 +1098,7 @@ void ZMF4Parser::readParagraphStyle()
+     {
+       auto font = getFontByRefId(ref.id);
+       if (font)
+-        parStyle.font = font.value();
++        parStyle.font = get(font);
+     }
+     break;
+     default:
+@@ -1107,7 +1107,7 @@ void ZMF4Parser::readParagraphStyle()
+     }
+   }
+ 
+-  m_paragraphStyles[m_currentObjectHeader.id.value()] = parStyle;
++  m_paragraphStyles[get(m_currentObjectHeader.id)] = parStyle;
+ }
+ 
+ void ZMF4Parser::readText()
+@@ -1140,7 +1140,7 @@ void ZMF4Parser::readText()
+     uint32_t styleId = readU32(m_input);
+     auto style = getParagraphStyleByRefId(styleId);
+     if (style)
+-      paragraph.style = style.value();
++      paragraph.style = get(style);
+ 
+     skip(m_input, 4);
+   }
+@@ -1161,7 +1161,7 @@ void ZMF4Parser::readText()
+       uint32_t fontId = readU32(m_input);
+       auto font = getFontByRefId(fontId);
+       if (font)
+-        span.font = font.value();
++        span.font = get(font);
+       else
+       {
+         span.font = paragraph.style.font;
+@@ -1180,7 +1180,7 @@ void ZMF4Parser::readText()
+     }
+   }
+ 
+-  m_texts[m_currentObjectHeader.id.value()] = text;
++  m_texts[get(m_currentObjectHeader.id)] = text;
+ }
+ 
+ void ZMF4Parser::readTextFrame()
+@@ -1216,7 +1216,7 @@ void ZMF4Parser::readTextFrame()
+ 
+   if (text)
+   {
+-    m_collector.collectTextObject(text.value(), bbox.topLeft(), bbox.width(), bbox.height(), alignment, bbox.rotation());
++    m_collector.collectTextObject(get(text), bbox.topLeft(), bbox.width(), bbox.height(), alignment, bbox.rotation());
+   }
+ }
+ 
+@@ -1350,7 +1350,7 @@ void ZMF4Parser::readTable()
+       auto text = getTextByRefId(textId);
+       if (text)
+       {
+-        cell.text = text.value();
++        cell.text = get(text);
+       }
+ 
+       uint32_t rightPenRefId = readU32(m_input);
+-- 
+2.9.3
+
diff --git a/external/libzmf/0001-allow-build-with-boost-1.56.patch.1 b/external/libzmf/0001-allow-build-with-boost-1.56.patch.1
new file mode 100644
index 0000000..0873381
--- /dev/null
+++ b/external/libzmf/0001-allow-build-with-boost-1.56.patch.1
@@ -0,0 +1,131 @@
+From 16d921505a56745f671525310ebb4b3c58b35afe Mon Sep 17 00:00:00 2001
+From: David Tardon <dtardon at redhat.com>
+Date: Sun, 23 Oct 2016 19:46:18 +0200
+Subject: [PATCH] allow build with boost < 1.56
+
+Change-Id: I81a110fc19e1540980a265c773bd840c47643d86
+---
+ src/lib/ZMFCollector.cpp | 32 ++++++++++++++++----------------
+ 1 file changed, 16 insertions(+), 16 deletions(-)
+
+diff --git a/src/lib/ZMFCollector.cpp b/src/lib/ZMFCollector.cpp
+index 18377ff..0b2608f 100644
+--- a/src/lib/ZMFCollector.cpp
++++ b/src/lib/ZMFCollector.cpp
+@@ -218,7 +218,7 @@ public:
+ 
+     if (m_transparency)
+     {
+-      m_propList.insert("draw:opacity", m_transparency.value().opacity(), librevenge::RVNG_PERCENT);
++      m_propList.insert("draw:opacity", get(m_transparency).opacity(), librevenge::RVNG_PERCENT);
+     }
+   }
+ 
+@@ -251,7 +251,7 @@ public:
+       librevenge::RVNGPropertyList grad;
+       grad.insert("svg:offset", stop.offset, librevenge::RVNG_PERCENT);
+       grad.insert("svg:stop-color", stop.color.toString());
+-      grad.insert("svg:stop-opacity", m_transparency ? m_transparency.value().opacity() : 1.0, librevenge::RVNG_PERCENT);
++      grad.insert("svg:stop-opacity", m_transparency ? get(m_transparency).opacity() : 1.0, librevenge::RVNG_PERCENT);
+       gradientVector.append(grad);
+     }
+ 
+@@ -294,7 +294,7 @@ public:
+ 
+     if (m_transparency)
+     {
+-      m_propList.insert("draw:opacity", m_transparency.value().opacity(), librevenge::RVNG_PERCENT);
++      m_propList.insert("draw:opacity", get(m_transparency).opacity(), librevenge::RVNG_PERCENT);
+     }
+   }
+ 
+@@ -667,9 +667,9 @@ void ZMFCollector::collectText(const Text &text)
+       spanPropList.insert("fo:font-style", span.font.isItalic ? "italic" : "normal");
+       spanPropList.insert("style:text-outline", static_cast<bool>(span.font.outline));
+ 
+-      if (span.font.fill && span.font.fill.value().type() == typeid(Color))
++      if (span.font.fill && get(span.font.fill).type() == typeid(Color))
+       {
+-        auto color = boost::get<Color>(span.font.fill.value());
++        auto color = boost::get<Color>(get(span.font.fill));
+         spanPropList.insert("fo:color", color.toString());
+       }
+ 
+@@ -759,9 +759,9 @@ void ZMFCollector::collectTable(const Table &table)
+     {
+       librevenge::RVNGPropertyList cellPropList;
+ 
+-      if (cell.fill && cell.fill.value().type() == typeid(Color))
++      if (cell.fill && get(cell.fill).type() == typeid(Color))
+       {
+-        auto backgroundColor = boost::get<Color>(cell.fill.value());
++        auto backgroundColor = boost::get<Color>(get(cell.fill));
+         cellPropList.insert("fo:background-color", backgroundColor.toString());
+       }
+ 
+@@ -769,19 +769,19 @@ void ZMFCollector::collectTable(const Table &table)
+ 
+       if (cell.leftBorder)
+       {
+-        writeBorder(cellPropList, "fo:border-left", cell.leftBorder.value());
++        writeBorder(cellPropList, "fo:border-left", get(cell.leftBorder));
+       }
+       if (cell.rightBorder)
+       {
+-        writeBorder(cellPropList, "fo:border-right", cell.rightBorder.value());
++        writeBorder(cellPropList, "fo:border-right", get(cell.rightBorder));
+       }
+       if (cell.topBorder)
+       {
+-        writeBorder(cellPropList, "fo:border-top", cell.topBorder.value());
++        writeBorder(cellPropList, "fo:border-top", get(cell.topBorder));
+       }
+       if (cell.bottomBorder)
+       {
+-        writeBorder(cellPropList, "fo:border-bottom", cell.bottomBorder.value());
++        writeBorder(cellPropList, "fo:border-bottom", get(cell.bottomBorder));
+       }
+ 
+       m_painter->openTableCell(cellPropList);
+@@ -806,7 +806,7 @@ void ZMFCollector::collectImage(const librevenge::RVNGBinaryData &image, const P
+ 
+   if (m_style.transparency)
+   {
+-    propList.insert("draw:opacity", m_style.transparency.value().opacity(), librevenge::RVNG_PERCENT);
++    propList.insert("draw:opacity", get(m_style.transparency).opacity(), librevenge::RVNG_PERCENT);
+   }
+ 
+   m_painter->setStyle(propList);
+@@ -847,17 +847,17 @@ void ZMFCollector::writeStyle(librevenge::RVNGPropertyList &propList, const Styl
+ 
+   if (style.pen)
+   {
+-    writePen(propList, style.pen.value());
++    writePen(propList, get(style.pen));
+   }
+ 
+   if (style.fill && !noFill)
+   {
+-    writeFill(propList, style.fill.value());
++    writeFill(propList, get(style.fill));
+   }
+ 
+   if (style.shadow)
+   {
+-    writeShadow(propList, style.shadow.value());
++    writeShadow(propList, get(style.shadow));
+   }
+ }
+ 
+@@ -920,7 +920,7 @@ void ZMFCollector::writePen(librevenge::RVNGPropertyList &propList, const Pen &p
+ 
+   if (m_style.transparency)
+   {
+-    propList.insert("svg:stroke-opacity", m_style.transparency.value().opacity(), librevenge::RVNG_PERCENT);
++    propList.insert("svg:stroke-opacity", get(m_style.transparency).opacity(), librevenge::RVNG_PERCENT);
+   }
+ 
+   if (pen.startArrow)
+-- 
+2.9.3
+
diff --git a/external/libzmf/UnpackedTarball_libzmf.mk b/external/libzmf/UnpackedTarball_libzmf.mk
index c917633..782aeb8 100644
--- a/external/libzmf/UnpackedTarball_libzmf.mk
+++ b/external/libzmf/UnpackedTarball_libzmf.mk
@@ -23,6 +23,8 @@ endif
 
 $(eval $(call gb_UnpackedTarball_add_patches,libzmf, \
 	external/libzmf/0001-add-missing-include.patch.1 \
+	external/libzmf/0001-allow-build-with-boost-1.56.patch.1 \
+	external/libzmf/0001-allow-build-with-boost-1.56-part-II.patch.1 \
 ))
 
 # vim: set noet sw=4 ts=4:
commit bbc99788c3cede767d6f29405f348c347da4a795
Author: David Tardon <dtardon at redhat.com>
Date:   Sun Oct 23 10:08:45 2016 +0200

    keep the list sorted
    
    Change-Id: I3088032e9980f9f4ae518ab16fb4fdfd35e0aa94

diff --git a/external/Module_external.mk b/external/Module_external.mk
index 3a36869..2089546 100644
--- a/external/Module_external.mk
+++ b/external/Module_external.mk
@@ -86,7 +86,6 @@ $(eval $(call gb_Module_add_moduledirs,external,\
 	$(call gb_Helper_optional,ORCUS,liborcus) \
 	$(call gb_Helper_optional,OWNCLOUD_ANDROID_LIB,owncloud-android-lib) \
 	$(call gb_Helper_optional,PAGEMAKER,libpagemaker) \
-	$(call gb_Helper_optional,ZMF,libzmf) \
 	$(call gb_Helper_optional,POPPLER,poppler) \
 	$(call gb_Helper_optional,POSTGRESQL,postgresql) \
 	$(call gb_Helper_optional,PYTHON,$(if $(filter $(PYTHON_VERSION_MINOR),3),python33,python3)) \
@@ -102,6 +101,7 @@ $(eval $(call gb_Module_add_moduledirs,external,\
 	$(call gb_Helper_optional,WPS,libwps) \
 	$(call gb_Helper_optional,XSLTML,xsltml) \
 	$(call gb_Helper_optional,ZLIB,zlib) \
+	$(call gb_Helper_optional,ZMF,libzmf) \
 	$(call gb_Helper_optional_for_host,DESKTOP, \
 		$(if $(WITH_GALLERY_BUILD), \
 			$(call gb_Helper_optional,HARFBUZZ,harfbuzz) \
commit f595e426e3b715fe110a90edca3cadfa97fa72cb
Author: David Tardon <dtardon at redhat.com>
Date:   Sun Oct 23 10:02:21 2016 +0200

    cond. build is already handled in Module_external.mk
    
    Change-Id: I5efe3bafc4f0b97578a75dc1f43e6c130a93bc4a

diff --git a/external/glm/Module_glm.mk b/external/glm/Module_glm.mk
index e9ab006..617b067 100644
--- a/external/glm/Module_glm.mk
+++ b/external/glm/Module_glm.mk
@@ -9,12 +9,8 @@
 
 $(eval $(call gb_Module_Module,glm))
 
-ifeq ($(SYSTEM_GLM),)
-
 $(eval $(call gb_Module_add_targets,glm,\
 	UnpackedTarball_glm \
 ))
 
-endif
-
 # vim: set noet sw=4 ts=4:
diff --git a/external/hyphen/Module_hyphen.mk b/external/hyphen/Module_hyphen.mk
index 5d32fb8..527def3 100644
--- a/external/hyphen/Module_hyphen.mk
+++ b/external/hyphen/Module_hyphen.mk
@@ -9,8 +9,6 @@
 
 $(eval $(call gb_Module_Module,hyphen))
 
-ifeq ($(SYSTEM_HYPH),)
-
 $(eval $(call gb_Module_add_targets,hyphen,\
 	UnpackedTarball_hyphen \
 ))
@@ -29,6 +27,4 @@ $(eval $(call gb_Module_add_targets,hyphen,\
 
 endif # $(COM)
 
-endif # $(SYSTEM_HYPH)
-
 # vim: set noet sw=4 ts=4:
diff --git a/external/jpeg/Module_jpeg.mk b/external/jpeg/Module_jpeg.mk
index 0b45932..3d66f8f 100644
--- a/external/jpeg/Module_jpeg.mk
+++ b/external/jpeg/Module_jpeg.mk
@@ -9,13 +9,9 @@
 
 $(eval $(call gb_Module_Module,jpeg))
 
-ifeq ($(SYSTEM_JPEG),)
-
 $(eval $(call gb_Module_add_targets,jpeg,\
     UnpackedTarball_jpeg \
     StaticLibrary_jpeg \
 ))
 
-endif
-
 # vim: set noet sw=4 ts=4:
diff --git a/external/libatomic_ops/Module_libatomic_ops.mk b/external/libatomic_ops/Module_libatomic_ops.mk
index 2ea7e54..7dca670 100644
--- a/external/libatomic_ops/Module_libatomic_ops.mk
+++ b/external/libatomic_ops/Module_libatomic_ops.mk
@@ -9,13 +9,9 @@
 
 $(eval $(call gb_Module_Module,libatomic_ops))
 
-ifeq ($(SYSTEM_LIBATOMIC_OPS),)
-
 $(eval $(call gb_Module_add_targets,libatomic_ops,\
 	ExternalProject_libatomic_ops \
 	UnpackedTarball_libatomic_ops \
 ))
 
-endif
-
 # vim: set noet sw=4 ts=4:
diff --git a/external/libpng/Module_libpng.mk b/external/libpng/Module_libpng.mk
index 31610d3..afb0016 100644
--- a/external/libpng/Module_libpng.mk
+++ b/external/libpng/Module_libpng.mk
@@ -9,13 +9,9 @@
 
 $(eval $(call gb_Module_Module,libpng))
 
-ifeq ($(SYSTEM_LIBPNG),)
-
 $(eval $(call gb_Module_add_targets,libpng,\
 	StaticLibrary_png \
 	UnpackedTarball_png \
 ))
 
-endif
-
 # vim: set noet sw=4 ts=4:
diff --git a/external/nss/Module_nss.mk b/external/nss/Module_nss.mk
index c1e1ab2..69b39f5 100644
--- a/external/nss/Module_nss.mk
+++ b/external/nss/Module_nss.mk
@@ -9,7 +9,6 @@
 
 $(eval $(call gb_Module_Module,nss))
 
-ifeq ($(SYSTEM_NSS),)
 ifeq ($(filter ANDROID,$(OS)),)
 $(eval $(call gb_Module_add_targets,nss,\
 	UnpackedTarball_nss \
@@ -17,6 +16,5 @@ $(eval $(call gb_Module_add_targets,nss,\
 	ExternalProject_nss \
 ))
 endif
-endif
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/openldap/Module_openldap.mk b/external/openldap/Module_openldap.mk
index c9203b4..c6a22bc 100644
--- a/external/openldap/Module_openldap.mk
+++ b/external/openldap/Module_openldap.mk
@@ -9,13 +9,9 @@
 
 $(eval $(call gb_Module_Module,openldap))
 
-ifeq ($(SYSTEM_OPENLDAP),)
-
 $(eval $(call gb_Module_add_targets,openldap,\
 	ExternalProject_openldap \
 	UnpackedTarball_openldap \
 ))
 
-endif
-
 # vim: set noet sw=4 ts=4:
diff --git a/external/openssl/Module_openssl.mk b/external/openssl/Module_openssl.mk
index 002b708..7a03fe5 100644
--- a/external/openssl/Module_openssl.mk
+++ b/external/openssl/Module_openssl.mk
@@ -9,12 +9,10 @@
 
 $(eval $(call gb_Module_Module,openssl))
 
-ifeq ($(SYSTEM_OPENSSL),)
 $(eval $(call gb_Module_add_targets,openssl,\
 	UnpackedTarball_openssl \
 	ExternalPackage_openssl \
 	ExternalProject_openssl \
 ))
-endif
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/poppler/Module_poppler.mk b/external/poppler/Module_poppler.mk
index 357bc6d..9e9f540 100644
--- a/external/poppler/Module_poppler.mk
+++ b/external/poppler/Module_poppler.mk
@@ -9,13 +9,9 @@
 
 $(eval $(call gb_Module_Module,poppler))
 
-ifeq ($(SYSTEM_POPPLER),)
-
 $(eval $(call gb_Module_add_targets,poppler,\
 	ExternalProject_poppler \
 	UnpackedTarball_poppler \
 ))
 
-endif
-
 # vim: set noet sw=4 ts=4:
diff --git a/external/postgresql/Module_postgresql.mk b/external/postgresql/Module_postgresql.mk
index c57260d..1f655c6 100644
--- a/external/postgresql/Module_postgresql.mk
+++ b/external/postgresql/Module_postgresql.mk
@@ -9,13 +9,9 @@
 
 $(eval $(call gb_Module_Module,postgresql))
 
-ifeq ($(SYSTEM_POSTGRESQL),)
-
 $(eval $(call gb_Module_add_targets,postgresql,\
 	ExternalProject_postgresql \
 	UnpackedTarball_postgresql \
 ))
 
-endif
-
 # vim: set noet sw=4 ts=4:
diff --git a/external/python3/Module_python3.mk b/external/python3/Module_python3.mk
index 65e1356..5ef1deb 100644
--- a/external/python3/Module_python3.mk
+++ b/external/python3/Module_python3.mk
@@ -10,7 +10,6 @@
 $(eval $(call gb_Module_Module,python3))
 
 ifneq ($(DISABLE_PYTHON),TRUE)
-ifeq ($(SYSTEM_PYTHON),)
 
 $(eval $(call gb_Module_add_targets,python3,\
 	UnpackedTarball_python3 \
@@ -19,6 +18,5 @@ $(eval $(call gb_Module_add_targets,python3,\
 ))
 
 endif
-endif
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/python33/Module_python33.mk b/external/python33/Module_python33.mk
index 65e1356..5ef1deb 100644
--- a/external/python33/Module_python33.mk
+++ b/external/python33/Module_python33.mk
@@ -10,7 +10,6 @@
 $(eval $(call gb_Module_Module,python3))
 
 ifneq ($(DISABLE_PYTHON),TRUE)
-ifeq ($(SYSTEM_PYTHON),)
 
 $(eval $(call gb_Module_add_targets,python3,\
 	UnpackedTarball_python3 \
@@ -19,6 +18,5 @@ $(eval $(call gb_Module_add_targets,python3,\
 ))
 
 endif
-endif
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/redland/Module_redland.mk b/external/redland/Module_redland.mk
index 645e419..adc81b4 100644
--- a/external/redland/Module_redland.mk
+++ b/external/redland/Module_redland.mk
@@ -9,7 +9,6 @@
 
 $(eval $(call gb_Module_Module,redland))
 
-ifeq ($(SYSTEM_REDLAND),)
 $(eval $(call gb_Module_add_targets,redland,\
 	UnpackedTarball_raptor \
 	UnpackedTarball_rasqal \
@@ -31,6 +30,5 @@ $(eval $(call gb_Module_add_targets,redland,\
 	ExternalProject_redland \
 ))
 endif
-endif
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/zlib/Module_zlib.mk b/external/zlib/Module_zlib.mk
index 8f71c50..468cb2d 100644
--- a/external/zlib/Module_zlib.mk
+++ b/external/zlib/Module_zlib.mk
@@ -9,8 +9,6 @@
 
 $(eval $(call gb_Module_Module,zlib))
 
-ifeq ($(SYSTEM_ZLIB),)
-
 $(eval $(call gb_Module_add_targets,zlib,\
 	StaticLibrary_zlib \
 	UnpackedTarball_zlib \
@@ -22,6 +20,4 @@ $(eval $(call gb_Module_add_targets,zlib,\
 ))
 endif
 
-endif
-
 # vim: set noet sw=4 ts=4:
commit 525311b0d6db11f247097fe76d1b2967966cf669
Author: Andrea Gelmini <andrea.gelmini at gelma.net>
Date:   Sun Oct 23 12:56:00 2016 +0200

    Fix typos
    
    Change-Id: Ib7b17f85c7b6a1937c3f6e1617ceec58074643b4
    Reviewed-on: https://gerrit.libreoffice.org/30040
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: jan iversen <jani at documentfoundation.org>
    Tested-by: jan iversen <jani at documentfoundation.org>

diff --git a/basic/source/classes/sbxmod.cxx b/basic/source/classes/sbxmod.cxx
index b7d9d59..79cfa64 100644
--- a/basic/source/classes/sbxmod.cxx
+++ b/basic/source/classes/sbxmod.cxx
@@ -676,7 +676,7 @@ void SbModule::Clear()
 
 SbxVariable* SbModule::Find( const OUString& rName, SbxClassType t )
 {
-    // make sure a search in an uninstatiated class module will fail
+    // make sure a search in an uninstantiated class module will fail
     SbxVariable* pRes = SbxObject::Find( rName, t );
     if ( bIsProxyModule && !GetSbData()->bRunInit )
     {
diff --git a/comphelper/source/misc/backupfilehelper.cxx b/comphelper/source/misc/backupfilehelper.cxx
index f975c9c..f9587ce 100644
--- a/comphelper/source/misc/backupfilehelper.cxx
+++ b/comphelper/source/misc/backupfilehelper.cxx
@@ -994,7 +994,7 @@ namespace
         sal_uInt32          mnOffset;           // offset in File (zero identifies new file)
         sal_uInt32          mnCrc32;            // checksum
         FileSharedPtr       maFile;             // file where to find the data (at offset)
-        bool                mbDoCompress;       // flag if this file is scheduled to be compredded when written
+        bool                mbDoCompress;       // flag if this file is scheduled to be compressed when written
 
         bool copy_content_straight(oslFileHandle& rTargetHandle)
         {
diff --git a/configmgr/source/components.cxx b/configmgr/source/components.cxx
index 3e53840..7eb8796 100644
--- a/configmgr/source/components.cxx
+++ b/configmgr/source/components.cxx
@@ -628,7 +628,7 @@ Components::~Components()
 
     if (bExitWasCalled)
     {
-        // do not write, re-join thereads
+        // do not write, re-join threads
         osl::MutexGuard g(*lock_);
 
         if (writeThread_.is())
diff --git a/configmgr/source/writemodfile.cxx b/configmgr/source/writemodfile.cxx
index 6f83216..a1e545e 100644
--- a/configmgr/source/writemodfile.cxx
+++ b/configmgr/source/writemodfile.cxx
@@ -632,7 +632,7 @@ void writeModFile(
     // registrymodifications file, this is done based on file size in bytes and crc32.
     // Unfortunately this write is based on writing unordered map entries, which creates
     // valid and semantically equal XML-Files, bubt with different crc32 checksums. For
-    // the future usage it will be preferrable to have easily comparable config files
+    // the future usage it will be preferable to have easily comparable config files
     // which is guaranteed by writing the entries in sorted order. Indeed with this change
     // (and in the recursive writeModifications call) the same config files get written
 
diff --git a/dtrans/source/win32/clipb/WinClipbImpl.cxx b/dtrans/source/win32/clipb/WinClipbImpl.cxx
index d38c308..76d7b06 100644
--- a/dtrans/source/win32/clipb/WinClipbImpl.cxx
+++ b/dtrans/source/win32/clipb/WinClipbImpl.cxx
@@ -152,7 +152,7 @@ void SAL_CALL CWinClipbImpl::flushClipboard( ) throw( RuntimeException )
     // The request is needed to prevent flushing if we are not clipboard owner (it is
     // not known what happens if we flush but aren't clipoard owner).
     // It may be possible to move the request to the clipboard STA thread by saving the
-    // DataObject and call OleIsCurrentClipboard bevore flushing.
+    // DataObject and call OleIsCurrentClipboard before flushing.
 
     if ( nullptr != m_pCurrentClipContent )
         m_MtaOleClipboard.flushClipboard( );
diff --git a/include/basegfx/polygon/b2dtrapezoid.hxx b/include/basegfx/polygon/b2dtrapezoid.hxx
index e026367..d507728 100644
--- a/include/basegfx/polygon/b2dtrapezoid.hxx
+++ b/include/basegfx/polygon/b2dtrapezoid.hxx
@@ -97,7 +97,7 @@ namespace basegfx
             double fLineWidth);
 
         // create trapezoids for all edges of the given polygon. The closed state of
-        // the polygon is taken into account. If curves are contaned, the default
+        // the polygon is taken into account. If curves are contained, the default
         // AdaptiveSubdivision will be used.
         BASEGFX_DLLPUBLIC void createLineTrapezoidFromB2DPolygon(
             B2DTrapezoidVector& ro_Result,
diff --git a/include/comphelper/backupfilehelper.hxx b/include/comphelper/backupfilehelper.hxx
index 8d21616..0857251 100644
--- a/include/comphelper/backupfilehelper.hxx
+++ b/include/comphelper/backupfilehelper.hxx
@@ -116,7 +116,7 @@ namespace comphelper
         static void reactOnSafeMode(bool bSafeMode);
 
         /** tries to create a new backup, if there is none yet, or if the
-         *  last differs from the base file. It will then put a new verion
+         *  last differs from the base file. It will then put a new version
          *  on the 'stack' of copies and evtl. delete the oldest backup.
          *  Also may cleanup older backups when NumBackups given in the
          *  constructor has changed.
diff --git a/include/xmloff/xmlexp.hxx b/include/xmloff/xmlexp.hxx
index 2c9ed6d..1ee7ba6 100644
--- a/include/xmloff/xmlexp.hxx
+++ b/include/xmloff/xmlexp.hxx
@@ -661,7 +661,7 @@ public:
     SvXMLElementExport( SvXMLExport& rExp, const OUString& rQName,
                         bool bIgnWSOutside, bool bIgnWSInside );
 
-    // Thes constructors do nothing if bDoSomething is not set
+    // These constructors do nothing if bDoSomething is not set
     SvXMLElementExport( SvXMLExport& rExp, bool bDoSomething,
                         sal_uInt16 nPrefix,
                         enum ::xmloff::token::XMLTokenEnum eName,
diff --git a/sc/source/core/data/table1.cxx b/sc/source/core/data/table1.cxx
index 1ad6ebe..8f34af0 100644
--- a/sc/source/core/data/table1.cxx
+++ b/sc/source/core/data/table1.cxx
@@ -1509,7 +1509,7 @@ void ScTable::UpdateReference(
     SCROW nRow1 = rCxt.maRange.aStart.Row(), nRow2 = rCxt.maRange.aEnd.Row();
     SCTAB nTab1 = rCxt.maRange.aStart.Tab(), nTab2 = rCxt.maRange.aEnd.Tab();
 
-    // Named expressions need to be updated before formulas acessing them.
+    // Named expressions need to be updated before formulas accessing them.
     if (mpRangeName)
         mpRangeName->UpdateReference(rCxt, nTab);
 
diff --git a/solenv/gdb/libreoffice/util/string.py b/solenv/gdb/libreoffice/util/string.py
index 4583f59..3258371 100644
--- a/solenv/gdb/libreoffice/util/string.py
+++ b/solenv/gdb/libreoffice/util/string.py
@@ -28,7 +28,7 @@ class StringPrinterHelper(object):
             len = self.length()
             return self.make_string(data, self.encoding, len)
         else:
-            return "unintialized %s" % self.typename
+            return "uninitialized %s" % self.typename
 
     def display_hint(self):
         if self.valid():

... etc. - the rest is truncated


More information about the Libreoffice-commits mailing list