[silo-llnl] 09/21: * Add qt5-defaults to ensure build under Qt5. * Ack. FTBFS fixed in -4 upload. Closes: #797414. * Build silex. * Regression: put tools back in /usr/bin not /bin. * Fix reported version number. 4.9.1 -> 4.10.2 * Install tools properly rather than copy from install script. Closes: #797414. * Move QtGui, QtWidgets to QT_LIBS for saner linking.

Alastair McKinstry mckinstry at moszumanska.debian.org
Fri Jul 28 11:55:36 UTC 2017


This is an automated email from the git hooks/post-receive script.

mckinstry pushed a commit to branch debian/master
in repository silo-llnl.

commit fb58337975c10dec642fe8f6fccde392503b0c2a
Author: Alastair McKinstry <mckinstry at debian.org>
Date:   Tue Jul 19 08:13:54 2016 +0100

    * Add qt5-defaults to ensure build under Qt5.
    * Ack. FTBFS fixed in -4 upload. Closes: #797414.
    * Build silex.
    * Regression: put tools back in /usr/bin not /bin.
    * Fix reported version number. 4.9.1 -> 4.10.2
    * Install tools properly rather than copy from install script.
      Closes: #797414.
    * Move QtGui, QtWidgets to QT_LIBS for saner linking.
---
 debian/changelog           |  23 ++++++-
 debian/control             |   4 +-
 debian/libsilo-bin.install |  10 +--
 debian/patches/qt5.patch   | 155 ++++++++++++++++++++++++++++++++++++++++++++-
 debian/patches/series      |   1 +
 debian/rules               |  21 +++---
 6 files changed, 194 insertions(+), 20 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index e11a50d..624b227 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,8 +1,25 @@
-silo-llnl (4.10.2-3) UNRELEASED; urgency=medium
+silo-llnl (4.10.2-5) unstable; urgency=medium
 
-  * Standards-Version: 3.9.8
+  * Add qt5-defaults to ensure build under Qt5.
+  * Ack. FTBFS fixed in -4 upload. Closes: #797414. 
 
- -- Alastair McKinstry <mckinstry at debian.org>  Sat, 04 Jun 2016 14:26:04 +0100
+ -- Alastair McKinstry <mckinstry at debian.org>  Tue, 22 Sep 2015 13:27:13 +0100
+
+silo-llnl (4.10.2-4) unstable; urgency=medium
+
+  * Build silex.  
+  * Regression: put tools back in /usr/bin not /bin.
+
+ -- Alastair McKinstry <mckinstry at debian.org>  Tue, 08 Sep 2015 16:05:46 +0100
+
+silo-llnl (4.10.2-3) unstable; urgency=medium
+
+  * Fix reported version number. 4.9.1 -> 4.10.2
+  * Install tools properly rather than copy from install script.
+    Closes: #797414.
+  * Move QtGui, QtWidgets to QT_LIBS for saner linking.
+
+ -- Alastair McKinstry <mckinstry at debian.org>  Mon, 07 Sep 2015 23:20:17 +0100
 
 silo-llnl (4.10.2-2) experimental; urgency=medium
 
diff --git a/debian/control b/debian/control
index ab1952e..ba3d7a0 100644
--- a/debian/control
+++ b/debian/control
@@ -6,11 +6,11 @@ Build-Depends: debhelper (>= 9), libreadline-dev, libhdf5-mpi-dev | libhdf5-dev,
   zlib1g-dev, 
   gfortran, chrpath, python-all-dev, mpi-default-dev, autoconf-archive, autoconf, automake, libtool, 
   dh-autoreconf (>= 4~),
-  qtbase5-dev
+  qtbase5-dev, qt5-default
 Build-Conflicts: qt3-dev-tools, qt4-dev-tools
 X-Python-Version: >= 2.6
 X-Python3-Version: >= 3.2
-Standards-Version: 3.9.8
+Standards-Version: 3.9.6
 Homepage:  https://wci.llnl.gov/simulation/computer-codes/silo/
 Vcs-Git: git://anonscm.debian.org/debian-science/packages/silo-llnl.git
 
diff --git a/debian/libsilo-bin.install b/debian/libsilo-bin.install
index 3e58615..48e10ed 100644
--- a/debian/libsilo-bin.install
+++ b/debian/libsilo-bin.install
@@ -1,5 +1,5 @@
-tools/browser/browser /usr/bin
-tools/browser/silodiff	/usr/bin
-tools/browser/silofile	/usr/bin
-tools/silock/silock	/usr/bin
-debian/bash_completion.d/libsilo-bin	/usr/share/bash-completion/completions/
+/bin/browser	/usr/bin
+/bin/silodiff	/usr/bin
+/bin/silofile	/usr/bin
+/bin/silock	/usr/bin
+/bin/silex	/usr/bin
diff --git a/debian/patches/qt5.patch b/debian/patches/qt5.patch
index 75d5333..1558b38 100644
--- a/debian/patches/qt5.patch
+++ b/debian/patches/qt5.patch
@@ -1,6 +1,6 @@
 Author: Alastair McKinstry <mckinstry at debian.org>
 Description: Patch needed for Qt5 support.
-Last-Updated: 2014-05-02
+Last-Updated: 2014-09-08
 Forwarded: no
 
 Index: silo-llnl-4.9.1/config/ax_have_qt.m4
@@ -25,3 +25,156 @@ Index: silo-llnl-4.9.1/config/ax_have_qt.m4
        AC_TRY_LINK([#include <$qt_direct_test_header>],
          $qt_direct_test_main,
        [
+Index: silo-llnl-4.10.2/tools/silex/SiloView.cpp
+===================================================================
+--- silo-llnl-4.10.2.orig/tools/silex/SiloView.cpp
++++ silo-llnl-4.10.2/tools/silex/SiloView.cpp
+@@ -109,8 +109,8 @@ SiloView::SiloView(const QString &file,
+         dirTreeView->OpenRootDir();
+         dirView->Set(silo->root);
+ 
+-        dirTreeView->header()->setResizeMode(QHeaderView::Interactive);
+-        dirView->header()->setResizeMode(QHeaderView::Interactive);
++        dirTreeView->header()->setSectionResizeMode(QHeaderView::Interactive);
++        dirView->header()->setSectionResizeMode(QHeaderView::Interactive);
+     }
+ }
+ 
+Index: silo-llnl-4.10.2/tools/silex/SiloObjectView.cpp
+===================================================================
+--- silo-llnl-4.10.2.orig/tools/silex/SiloObjectView.cpp
++++ silo-llnl-4.10.2/tools/silex/SiloObjectView.cpp
+@@ -177,8 +177,8 @@ SiloObjectView::SiloObjectView(SiloFile
+         void *comp = silo->GetComponent(name, compname);
+         if (!comp)
+         {
+-            const char *asciiname = name.toAscii();
+-            const char *asciicomp = compname.toAscii();
++            const char *asciiname = name.toUtf8();
++            const char *asciicomp = compname.toUtf8();
+             std::cerr << "ERROR: DBGetComponent failed for object '"
+                       << asciiname
+                       <<"', component '"
+@@ -230,11 +230,11 @@ SiloObjectView::SiloObjectView(SiloFile
+             break;
+           default:
+             typestr = "var";
+-            std::string valStr = std::string(pdbname.toAscii());
++            std::string valStr = std::string(pdbname.toUtf8());
+             if (pdbname.indexOf("'<s>") == 0)
+             {
+                 int len = pdbname.length();
+-                valStr = std::string((const char*)(pdbname.toAscii()),4,len-5);
++                valStr = std::string((const char*)(pdbname.toUtf8()),4,len-5);
+             }
+             sprintf(value, "%s", valStr.c_str());
+             break;
+Index: silo-llnl-4.10.2/tools/silex/SiloFile.cpp
+===================================================================
+--- silo-llnl-4.10.2.orig/tools/silex/SiloFile.cpp
++++ silo-llnl-4.10.2/tools/silex/SiloFile.cpp
+@@ -97,7 +97,7 @@ SiloDir::SiloDir(DBfile *db, const QStri
+     int drt = DBGetDriverType(db);
+     if (canCallFreeCompression[drt] && DBFreeCompressionResources(db,0) == -1)
+         canCallFreeCompression[drt] = false;
+-    DBSetDir(db, (const char*)path.toAscii());
++    DBSetDir(db, (const char*)path.toUtf8());
+     DBtoc *toc = DBGetToc(db);
+ 
+     int i;
+@@ -204,7 +204,7 @@ SiloDir::~SiloDir()
+ // ****************************************************************************
+ SiloFile::SiloFile(const QString &name)
+ {
+-    db = DBOpen((const char*)name.toAscii(), DB_UNKNOWN, DB_READ);
++    db = DBOpen((const char*)name.toUtf8(), DB_UNKNOWN, DB_READ);
+     if (db)
+         root = new SiloDir(db, "/", "/");
+     else
+@@ -247,47 +247,47 @@ SiloFile::~SiloFile()
+ void*
+ SiloFile::GetVar(const QString &name)
+ {
+-    return DBGetVar(db, (const char*)name.toAscii());
++    return DBGetVar(db, (const char*)name.toUtf8());
+ }
+ 
+ int
+ SiloFile::GetVarType(const QString &name)
+ {
+-    return DBGetVarType(db, (const char*)name.toAscii());
++    return DBGetVarType(db, (const char*)name.toUtf8());
+ }
+ 
+ int
+ SiloFile::GetVarLength(const QString &name)
+ {
+-    return DBGetVarLength(db, (const char*)name.toAscii());
++    return DBGetVarLength(db, (const char*)name.toUtf8());
+ }
+ 
+ DBobject*
+ SiloFile::GetObject(const QString &name)
+ {
+-    return DBGetObject(db, (const char*)name.toAscii());
++    return DBGetObject(db, (const char*)name.toUtf8());
+ }
+ 
+ void*
+ SiloFile::GetComponent(const QString &oname, const QString &cname)
+ {
+-    return DBGetComponent(db, (const char*)oname.toAscii(), (const char*)cname.toAscii());
++    return DBGetComponent(db, (const char*)oname.toUtf8(), (const char*)cname.toUtf8());
+ }
+ 
+ int
+ SiloFile::GetComponentType(const QString &oname, const QString &cname)
+ {
+-    return DBGetComponentType(db, (const char*)oname.toAscii(), (const char*)cname.toAscii());
++    return DBGetComponentType(db, (const char*)oname.toUtf8(), (const char*)cname.toUtf8());
+ }
+ 
+ DBObjectType
+ SiloFile::InqVarType(const QString &name)
+ {
+-    return DBInqVarType(db, (const char*)name.toAscii());
++    return DBInqVarType(db, (const char*)name.toUtf8());
+ }
+ 
+ bool
+ SiloFile::InqVarExists(const QString &name)
+ {
+-    return DBInqVarExists(db, (const char*)name.toAscii());
++    return DBInqVarExists(db, (const char*)name.toUtf8());
+ }
+Index: silo-llnl-4.10.2/tools/silex/main.cpp
+===================================================================
+--- silo-llnl-4.10.2.orig/tools/silex/main.cpp
++++ silo-llnl-4.10.2/tools/silex/main.cpp
+@@ -57,9 +57,10 @@ be used for advertising or product endor
+ 
+ #include <cstdlib>
+ 
+-#ifndef Q_WS_MACX
+-#include "qwindowsstyle.h"
+-#endif
++// Edit out as Styles code has changed in Qt5 ..
++// #ifndef Q_WS_MACX
++// #include "qwindowsstyle.h"
++// #endif
+ #include "qfiledialog.h"
+ #include "qstring.h"
+ #include <iostream>
+@@ -90,9 +91,9 @@ int main( int argc, char **argv )
+ {
+     QApplication::setColorSpec(QApplication::ManyColor);
+     QApplication a(argc, argv);
+-#ifndef Q_WS_MACX
+-    a.setStyle(new QWindowsStyle);
+-#endif
++//  #ifndef Q_WS_MACX
++//     a.setStyle(new QWindowsStyle);
++// #endif
+     Explorer *w = 0;
+     if (argc > 1)
+     {
diff --git a/debian/patches/series b/debian/patches/series
index 6138d8f..f9da1b5 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -13,3 +13,4 @@ python3.patch
 compile-fixes.patch
 qt5.patch
 remove-mpiposix.patch
+version-number.patch
diff --git a/debian/rules b/debian/rules
index 8af2339..4d04ede 100755
--- a/debian/rules
+++ b/debian/rules
@@ -19,16 +19,17 @@ else
   CC:=mpicc
 endif
 
-DEFAULT_PYTHON=$(shell pyversions -d)
 PYVERS= $(shell pyversions -s)
 DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
 LIBDIR:=/usr/lib/$(DEB_HOST_MULTIARCH)
 
-# QT version 4 or 5
+
 QT:=5
-QT_INC:=/usr/include/$(DEB_HOST_MULTIARCH)/$(QT)
-QT_BINDIR=/usr/lib/$(DEB_HOST_MULTIARCH)/bin
+QT_MOC:=moc
+QT_INC:=/usr/include/$(DEB_HOST_MULTIARCH)/qt5
+QT_BINDIR=/usr/bin
 QT_INCLUDES:=-I$(QT_INC) -I$(QT_INC)/QtGui -I$(QT_INC)/QtCore -I$(QT_INC)/QtWidgets
+QT_LIBS=-lQt5Core -lQt5Gui -lQt5Widgets
 
 # Work with either old or new-style (co-installable)  HDF5 layouts
 ifneq ($(wildcard $(LIBDIR)/hdf5/$(MPI)/libhdf5.so),)
@@ -50,26 +51,27 @@ override_dh_auto_configure:
 	dh_auto_configure -- \
 		--with-versioned-symbols \
 		--enable-pythonmodule \
+		--enable-silex \
 		--with-hdf5=$(HDF5_INC),$(HDF5_DIR) \
 		--enable-install-lite-headers \
-		--with-Qt-bin-dir=$(QT_BINDIR) --with-Qt-include-dir=$(QT_INC) -with-Qt-lib=Qt5Widgets \
+		--with-Qt-bin-dir=$(QT_BINDIR) --with-Qt-include-dir=$(QT_INC) \
 		CC=$(CXX) CXX=$(CXX) CFLAGS="$(CFLAGS) -fPIC " CXXFLAGS="$(CXXFLAGS) -fPIC " \
-		LIBS=" -lQt5Core " LDFLAGS="$(LDFLAGS) -L$(HDF5_LIB) " \
+		LDFLAGS="$(LDFLAGS) -L$(HDF5_LIB) " \
 		CPPFLAGS=" $(QT_INCLUDES) -I$(MPI_INC) $(CPPFLAGS)"
 
 # Iterate over some directories to avoid stepping into tools/silex, which doesn't build.
 override_dh_auto_build:
 	for d in src tools/browser tools/silock ; do \
 		$(MAKE) -C $$d CC=$(CC) CXX=$(CXX) ; done
+	$(MAKE) -C tools/silex CXX=$(CXX) QT_MOC=moc QT_LIBS="$(QT_LIBS)" 
 	set -e ; for p in $(PYVERS) $(PY3VERS) ; do   \
 		$(MAKE) -C tools/python clean all check CC=$(CC) CXX=$(CXX) PYTHON=$$p; \
 		mkdir -p  debian/tmp/usr/lib/pyshared/$$p ;  \
 		cp tools/python/.libs/Silo.so debian/Silo.so.$$p  ; \
 	done
 
-# Need to avoid trying to building  tools/silex.
 override_dh_auto_test:
-	for d in src tools/browser tools/silock ; do \
+	for d in tests src tools/browser tools/silock ; do \
                 $(MAKE) -C $$d check; done
 
 override_dh_auto_install:
@@ -79,7 +81,8 @@ override_dh_auto_install:
 		chrpath -d debian/Silo.so.$$p ; \
 		cp debian/Silo.so.$$p debian/tmp/usr/lib/$$p/site-packages/Silo.so ; \
 	done
-	$(MAKE) -C src install prefix=`pwd`/debian/tmp
+	for p in src tools/browser tools/silock  tools/silex ; do \
+		$(MAKE) -C $$p install prefix=`pwd`/debian/tmp ; done
 	dh_install
 	# cp src/.libs/libsiloh5.a debian/libsilo-dev/$(LIBDIR)
 	mkdir -p debian/libsiloh5-0/$(LIBDIR)

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/silo-llnl.git



More information about the debian-science-commits mailing list