Hi all,

I now compiled the rev 1776040 from svn export, and I found some build
issues.
I not a developer or c/c++ programmer, so my fixes may be ugly, but all
works.

checks.patch: do not search system jars, if $SOLAR_JAVA is empty, and fixed
qt4 search paths,

gcc6.patch: the comparison between signed and unsigned numbers causes an
compiler error with gcc 6.2.0,

unixodbc.patch: the sqlext.h, which is exist, never included, the compiler
always tries to include the missing odbc/sqlext.h.

Another issues:
- I need to add 'additionalparam="-Xdoclint:none -Xmaxwarns 0"' to
  main/xmerge/util/build.xml to compile xmerge,
- the ext_sources contains
  52654eb3b2e60c35731ea8fc87f1bd29-jpegsrc.v8d.tar.gz, but
  52654eb3b2e60c35731ea8fc87f1bd29-jpeg-8d.tar.gz is required to build.

Not issue: known-desktop.patch adds Unity, MATE and Xfce to known desktops.

-- 
Üdv,

Rezső
diff -Naur orig/main/configure.ac patched/main/configure.ac
--- orig/main/configure.ac	2016-12-25 21:30:44.000000000 +0100
+++ patched/main/configure.ac	2016-12-28 05:02:53.950188664 +0100
@@ -3931,6 +3931,7 @@
 dnl ===================================================================
 dnl Check for system lucene
 dnl ===================================================================
+if test "$SOLAR_JAVA" != ""; then
 AC_MSG_CHECKING([which lucene to use])
 if test -n "$with_system_lucene" -o -n "$with_system_libs" && \
        test "$with_system_lucene" != "no" && test "$with_system_jars" != "no"; then
@@ -4008,6 +4009,7 @@
 AC_SUBST(SYSTEM_LUCENE)
 AC_SUBST(LUCENE_CORE_JAR)
 AC_SUBST(LUCENE_ANALYZERS_JAR)
+fi
 
 AC_MSG_CHECKING([whether to build the MySQL Connector extension])
 if test -n "$enable_mysql_connector" -a "$enable_mysql_connector" != "no"; then
@@ -4123,6 +4125,7 @@
 dnl ===================================================================
 dnl Check for system hsqldb
 dnl ===================================================================
+if test "$SOLAR_JAVA" != ""; then
 AC_MSG_CHECKING([which hsqldb to use])
 if test -n "$with_system_hsqldb" -o -n "$with_system_libs" && \
        test "$with_system_hsqldb" != "no" && test "$with_system_jars" != "no"; then
@@ -4167,6 +4170,7 @@
 fi
 AC_SUBST(SYSTEM_HSQLDB)
 AC_SUBST(HSQLDB_JAR)
+fi
 
 dnl ===================================================================
 dnl Check for system beanshell
@@ -6448,8 +6452,8 @@
 KDE4_LIBS=""
 MOC4="moc"
 if test "$test_kde4" = "yes" -a "$ENABLE_KDE4" = "TRUE" ; then
-   qt_incdirs="$QT4INC $QT4DIR /usr/include/qt4 /usr/include $x_includes"
-   qt_libdirs="$QT4LIB /usr/lib $x_libraries"
+   qt_incdirs="$QT4INC $QT4DIR/include /usr/include/qt4 /usr/include $x_includes"
+   qt_libdirs="$QT4LIB $QT4DIR/lib /usr/lib $x_libraries"
    
    kde_incdirs="/usr/include /usr/include/kde4 $x_includes"
    kde_libdirs="/usr/lib /usr/lib/kde4 /usr/lib/kde4/devel $x_libraries"
@@ -6506,7 +6510,7 @@
    AC_PATH_PROG( MOCQT4, moc-qt4, no, [$QT4DIR/bin:$PATH] )
    MOC4="$MOCQT4"
    if test "$MOC4" = "no" ; then
-      AC_PATH_PROG( MOC4, moc, no, [$PATH:$QT4DIR/bin] )
+      AC_PATH_PROG( MOC4, moc, no, [$QT4DIR/bin:$PATH] )
       if test "$MOC4" = "no" ; then
          AC_MSG_ERROR([Qt Meta Object Compiler not found.  Please specify the root of your Qt installation by exporting QT4DIR before running "configure".])
       fi
@@ -6998,7 +7002,6 @@
    AC_MSG_RESULT([Ant lib directory found.])
 fi
 AC_SUBST(ANT_LIB)
-fi
 
 ant_minver=1.6.0
 # update for more extensions...
@@ -7068,6 +7071,7 @@
   fi
 fi
 rm -f conftest* core core.* *.core
+fi
 
 OOO_JUNIT_JAR=
 if test "$SOLAR_JAVA" != "" && test "$with_junit" != "no"; then
diff -Naur orig/main/basebmp/inc/basebmp/packedpixeliterator.hxx patched/main/basebmp/inc/basebmp/packedpixeliterator.hxx
--- orig/main/basebmp/inc/basebmp/packedpixeliterator.hxx	2016-11-23 22:17:07.000000000 +0100
+++ patched/main/basebmp/inc/basebmp/packedpixeliterator.hxx	2016-11-24 19:29:34.432593261 +0100
@@ -83,7 +83,7 @@
         num_intraword_positions=sizeof(value_type)*8/bits_per_pixel,
         /** Bit mask for one pixel (least significant bits)
          */
-        bit_mask=~(~0 << bits_per_pixel)
+        bit_mask=~(~0U << bits_per_pixel)
     };
 
 private:
@@ -253,7 +253,7 @@
         num_intraword_positions=sizeof(value_type)*8/bits_per_pixel,
         /** Bit mask for one pixel (least significant bits)
          */
-        bit_mask=~(~0 << bits_per_pixel)
+        bit_mask=~(~0U << bits_per_pixel)
     };
 
 private:
@@ -506,7 +506,7 @@
         num_intraword_positions=sizeof(value_type)*8/bits_per_pixel,
         /** Bit mask for one pixel (least significant bits)
          */
-        bit_mask=~(~0 << bits_per_pixel)
+        bit_mask=~(~0U << bits_per_pixel)
     };
 
     // TODO(F2): direction of iteration (ImageIterator can be made to
diff -Naur orig/main/vcl/unx/generic/desktopdetect/desktopdetector.cxx patched/main/vcl/unx/generic/desktopdetect/desktopdetector.cxx
--- orig/main/vcl/unx/generic/desktopdetect/desktopdetector.cxx	2014-02-25 09:32:38.000000000 +0100
+++ patched/main/vcl/unx/generic/desktopdetect/desktopdetector.cxx	2014-07-14 22:30:38.000000000 +0200
@@ -44,12 +44,16 @@
     DESKTOP_NONE = 0,
     DESKTOP_UNKNOWN,
     DESKTOP_GNOME,
+    DESKTOP_UNITY,
+    DESKTOP_XFCE,
+    DESKTOP_MATE,
     DESKTOP_KDE,
     DESKTOP_KDE4,
     DESKTOP_CDE
 };
 
-static const char * desktop_strings[] = { "none", "unknown", "GNOME", "KDE", "KDE4", "CDE" };
+static const char * desktop_strings[] = { 
+	"none", "unknown", "GNOME", "UNITY", "XFCE", "MATE", "KDE", "KDE4", "CDE" };
 
 static bool is_gnome_desktop( Display* pDisplay )
 {
@@ -263,6 +267,12 @@
             aRet.appendAscii( desktop_strings[DESKTOP_KDE4] );
         if ( aOver.equalsIgnoreAsciiCase( "gnome" ) )
             aRet.appendAscii( desktop_strings[DESKTOP_GNOME] );
+        if ( aOver.equalsIgnoreAsciiCase( "unity" ) )
+            aRet.appendAscii( desktop_strings[DESKTOP_UNITY] );
+        if ( aOver.equalsIgnoreAsciiCase( "xfce" ) )
+            aRet.appendAscii( desktop_strings[DESKTOP_XFCE] );
+        if ( aOver.equalsIgnoreAsciiCase( "mate" ) )
+            aRet.appendAscii( desktop_strings[DESKTOP_MATE] );
         if ( aOver.equalsIgnoreAsciiCase( "kde" ) )
             aRet.appendAscii( desktop_strings[DESKTOP_KDE] );
         if ( aOver.equalsIgnoreAsciiCase( "none" ) )
@@ -307,7 +317,22 @@
             */
             if( ! ( pNoXInitThreads && *pNoXInitThreads ) )
                 XInitThreads();
-            
+
+            static const char* pDesktop = getenv( "XDG_CURRENT_DESKTOP" );
+            if( pDesktop && *pDesktop )
+            {
+            	OString Desk( pDesktop );
+            	
+    			if ( Desk.equalsIgnoreAsciiCase( "unity" ) )
+        			aRet.appendAscii( desktop_strings[DESKTOP_UNITY] );
+   				else if ( Desk.equalsIgnoreAsciiCase( "gnome" ) )
+        			aRet.appendAscii( desktop_strings[DESKTOP_GNOME] );
+    			else if ( Desk.equalsIgnoreAsciiCase( "mate" ) )
+        			aRet.appendAscii( desktop_strings[DESKTOP_MATE] );
+    			else if ( Desk.equalsIgnoreAsciiCase( "xfce" ) )
+        			aRet.appendAscii( desktop_strings[DESKTOP_XFCE] );
+			}
+                        
             Display* pDisplay = XOpenDisplay( pDisplayStr );
             if( pDisplay )
             {
diff -Naur orig/main/vcl/unx/generic/plugadapt/salplug.cxx patched/main/vcl/unx/generic/plugadapt/salplug.cxx
--- orig/main/vcl/unx/generic/plugadapt/salplug.cxx	2014-02-25 09:32:47.000000000 +0100
+++ patched/main/vcl/unx/generic/plugadapt/salplug.cxx	2014-07-15 00:06:00.000000000 +0200
@@ -48,12 +48,16 @@
     DESKTOP_NONE = 0,
     DESKTOP_UNKNOWN,
     DESKTOP_GNOME,
+    DESKTOP_UNITY,
+    DESKTOP_XFCE,
+    DESKTOP_MATE,
     DESKTOP_KDE,
     DESKTOP_KDE4,
     DESKTOP_CDE
 };
 
-static const char * desktop_strings[] = { "none", "unknown", "GNOME", "KDE", "KDE4", "CDE" };
+static const char * desktop_strings[] = { 
+	"none", "unknown", "GNOME", "UNITY", "XFCE", "MATE", "KDE", "KDE4", "CDE" };
 
 static SalInstance* tryInstance( const OUString& rModuleBase )
 {
@@ -157,7 +161,13 @@
 {
     static const char* pKDEFallbackList[] =
     {
-        "kde4", "kde", "gtk", "gen", 0
+#if ENABLE_KDE4
+        "kde4",
+#endif
+#if ENABLE_KDE
+        "kde",
+#endif
+        "gtk", "gen", 0
     };
     
     static const char* pStandardFallbackList[] =
@@ -177,7 +187,10 @@
     // no server at all: dummy plugin
     if ( desktop.equalsAscii( desktop_strings[DESKTOP_NONE] ) )
         pList = pHeadlessFallbackList;
-    else if ( desktop.equalsAscii( desktop_strings[DESKTOP_GNOME] ) )
+    else if ( desktop.equalsAscii( desktop_strings[DESKTOP_GNOME] ) ||
+			  desktop.equalsAscii( desktop_strings[DESKTOP_UNITY] ) ||
+			  desktop.equalsAscii( desktop_strings[DESKTOP_XFCE] ) ||
+			  desktop.equalsAscii( desktop_strings[DESKTOP_MATE] ) )
         pList = pStandardFallbackList;
     else if( desktop.equalsAscii( desktop_strings[DESKTOP_KDE] ) )
     {
diff -Naur orig/main/dbaccess/source/ui/dlg/odbcconfig.cxx patched/main/dbaccess/source/ui/dlg/odbcconfig.cxx
--- orig/main/dbaccess/source/ui/dlg/odbcconfig.cxx	2016-11-23 01:11:56.000000000 +0100
+++ patched/main/dbaccess/source/ui/dlg/odbcconfig.cxx	2016-12-25 13:42:47.872942176 +0100
@@ -91,13 +91,7 @@
 #define DONT_TD_VOID
 #endif
 
-#ifdef SYSTEM_ODBC_HEADERS
 #include <sqlext.h>
-#else
-#ifndef __SQLEXT_H
-#include <odbc/sqlext.h>
-#endif
-#endif
 
 #if defined(WNT)
 #if defined _MSC_VER

Attachment: pgpVcBit__PfA.pgp
Description: OpenPGP digitális aláírás

Reply via email to