Source: libqglviewer
Version: 2.3.4-4
User: [email protected]
Usertags: qt48-transition
Hi,
Your package fails to build against Qt 4.8 which is currently in experimental.
The transition to unstable/testing is tracked in bug #653903.
I'm attaching a patch that contains the necessary changes.
It should be applied once Qt 4.8 enters unstable.
Build log:
> g++ -c -m64 -pipe -O2 -D_REENTRANT -Wall -W -fPIC -DQT_NO_DEBUG -DQT_XML_LIB
> -DQT_OPENGL_LIB
-DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++-64 -I.
-I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4/QtOpenGL
-I/usr/include/qt4/QtXml -I/usr/include/qt4 -I/usr/X11R6/include -I.moc -I. -o
.obj/qglviewer.o
qglviewer.cpp
> qglviewer.cpp: In member function 'virtual void QGLViewer::drawLight(GLenum,
> float) const':
> qglviewer.cpp:768:9: error: 'GLUquadric' does not name a type
> qglviewer.cpp:800:17: error: 'quadric' was not declared in this scope
> qglviewer.cpp:800:122: error: 'gluCylinder' was not declared in this scope
> qglviewer.cpp:803:15: error: 'quadric' was not declared in this scope
> qglviewer.cpp:803:42: error: 'gluSphere' was not declared in this scope
> qglviewer.cpp: In member function 'virtual void
> QGLViewer::beginSelection(const QPoint&)':
> qglviewer.cpp:1265:89: error: 'gluPickMatrix' was not declared in this scope
> qglviewer.cpp: In static member function 'static void
> QGLViewer::drawArrow(float, float, int)':
> qglviewer.cpp:3379:9: error: 'GLUquadric' does not name a type
> qglviewer.cpp:3387:14: error: 'quadric' was not declared in this scope
> qglviewer.cpp:3387:94: error: 'gluCylinder' was not declared in this scope
> make[1]: *** [.obj/qglviewer.o] Error 1
> make[1]: Leaving directory `/tmp/buildd/libqglviewer-2.3.4/qglviewer-qt4'
> make: *** [build-stamp] Error 2
Regards,
Felix
diff -u libqglviewer-2.3.4/debian/changelog libqglviewer-2.3.4/debian/changelog
--- libqglviewer-2.3.4/debian/changelog
+++ libqglviewer-2.3.4/debian/changelog
@@ -1,3 +1,16 @@
+libqglviewer (2.3.4-5) unstable; urgency=low
+
+ [ Daniel T Chen ]
+ * debian/rules: Use Qt4 multiarch lib path. Fixes FTBFS.
+
+ [ Felix Geyer ]
+ * Add 04glu-include.dpatch to fix FTBFS with Qt 4.8.
+ * Add 05glu-link.dpatch to make libqglviewer-qt4 link against libGLU.
+ * Add Pre-Depends: ${misc:Pre-Depends} to libqglviewer-qt4-2.
+ * Mark libqglviewer-qt4-2 as Multi-Arch: same.
+
+ -- Felix Geyer <[email protected]> Mon, 05 Mar 2012 22:06:25 +0100
+
libqglviewer (2.3.4-4) unstable; urgency=high
* reupload with high urgency
diff -u libqglviewer-2.3.4/debian/control libqglviewer-2.3.4/debian/control
--- libqglviewer-2.3.4/debian/control
+++ libqglviewer-2.3.4/debian/control
@@ -5,7 +5,7 @@
DM-Upload-Allowed: yes
Homepage: http://www.libqglviewer.com/
Standards-Version: 3.8.3
-Build-Depends: debhelper (>= 7), libqt3-mt-dev, libqt4-dev, libqt4-opengl-dev,
dpatch
+Build-Depends: debhelper (>= 8.1.3~), libqt3-mt-dev, libqt4-dev (>= 4:4.8.0~),
libqt4-opengl-dev (>= 4:4.8.0~), dpatch
Package: libqglviewer-dev-common
Section: libdevel
@@ -83,6 +83,8 @@
Package: libqglviewer-qt4-2
Section: libs
Architecture: any
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: an OpenGL 3D viewer library based on Qt - runtime library
libqglviewer (also known as libQGLViewer) is a free C++ library based on Qt
diff -u libqglviewer-2.3.4/debian/rules libqglviewer-2.3.4/debian/rules
--- libqglviewer-2.3.4/debian/rules
+++ libqglviewer-2.3.4/debian/rules
@@ -22,6 +22,8 @@
INSTALL_PROGRAM += -s
endif
+DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
+
version:=$(shell dpkg-parsechangelog | grep ^Version: | sed -e 's/^Version:
//' -e 's/-.*$$//')
ver2:=$(shell echo $(version) | cut -d. -f-2)
major:=$(shell echo $(version) | cut -d. -f1)
@@ -76,13 +78,13 @@
cd qglviewer-qt4 && $(MAKE) install INSTALL_ROOT=$(CURDIR)/debian/tmp
cd designerPlugin-qt4 && $(MAKE) install
INSTALL_ROOT=$(CURDIR)/debian/tmp
- mkdir -p debian/libqglviewer-qt4-2/usr/lib
debian/libqglviewer-qt4-dev/usr/lib/qt4/plugins/designer
+ mkdir -p debian/libqglviewer-qt4-2/usr/lib/$(DEB_HOST_MULTIARCH)
debian/libqglviewer-qt4-dev/usr/lib/$(DEB_HOST_MULTIARCH)/qt4/plugins/designer
- cp -d debian/tmp/usr/lib/*.so.* debian/libqglviewer-qt4-2/usr/lib
- cp -d qglviewer-qt4/libqglviewer-qt4.a
debian/libqglviewer-qt4-dev/usr/lib
- cp -d debian/tmp/usr/lib/*.so debian/libqglviewer-qt4-dev/usr/lib
- cp -d debian/tmp/usr/lib/*.prl debian/libqglviewer-qt4-dev/usr/lib
- cp -d debian/tmp/usr/lib/qt4/plugins/designer/libqglviewerplugin.so
debian/libqglviewer-qt4-dev/usr/lib/qt4/plugins/designer
+ cp -d debian/tmp/usr/lib/*.so.*
debian/libqglviewer-qt4-2/usr/lib/$(DEB_HOST_MULTIARCH)
+ cp -d qglviewer-qt4/libqglviewer-qt4.a
debian/libqglviewer-qt4-dev/usr/lib/$(DEB_HOST_MULTIARCH)
+ cp -d debian/tmp/usr/lib/*.so
debian/libqglviewer-qt4-dev/usr/lib/$(DEB_HOST_MULTIARCH)
+ cp -d debian/tmp/usr/lib/*.prl
debian/libqglviewer-qt4-dev/usr/lib/$(DEB_HOST_MULTIARCH)
+ cp -d
debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/qt4/plugins/designer/libqglviewerplugin.so
debian/libqglviewer-qt4-dev/usr/lib/$(DEB_HOST_MULTIARCH)/qt4/plugins/designer
cp -dr debian/tmp/usr/include/QGLViewer
debian/libqglviewer-dev-common/usr/include
diff -u libqglviewer-2.3.4/debian/patches/00list
libqglviewer-2.3.4/debian/patches/00list
--- libqglviewer-2.3.4/debian/patches/00list
+++ libqglviewer-2.3.4/debian/patches/00list
@@ -3,2 +3,4 @@
03only-headers-in-include-dir
+04glu-include
+05glu-link
99compile-examples
only in patch2:
unchanged:
--- libqglviewer-2.3.4.orig/debian/patches/04glu-include.dpatch
+++ libqglviewer-2.3.4/debian/patches/04glu-include.dpatch
@@ -0,0 +1,32 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## 04glu-include.dpatch by Felix Geyer <[email protected]>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: No description.
+
+@DPATCH@
+
+diff -Nur libqglviewer-2.3.4.org/QGLViewer/camera.cpp
libqglviewer-2.3.4/QGLViewer/camera.cpp
+--- libqglviewer-2.3.4.org/QGLViewer/camera.cpp
++++ libqglviewer-2.3.4/QGLViewer/camera.cpp
+@@ -24,6 +24,8 @@
+ #include "camera.h"
+ #include "qglviewer.h"
+
++#include <GL/glu.h>
++
+ using namespace std;
+ using namespace qglviewer;
+
+diff -Nur libqglviewer-2.3.4.org/QGLViewer/qglviewer.cpp
libqglviewer-2.3.4/QGLViewer/qglviewer.cpp
+--- libqglviewer-2.3.4.org/QGLViewer/qglviewer.cpp
++++ libqglviewer-2.3.4/QGLViewer/qglviewer.cpp
+@@ -58,6 +58,8 @@
+ # define value data
+ #endif
+
++#include <GL/glu.h>
++
+ using namespace std;
+ using namespace qglviewer;
+
only in patch2:
unchanged:
--- libqglviewer-2.3.4.orig/debian/patches/05glu-link.dpatch
+++ libqglviewer-2.3.4/debian/patches/05glu-link.dpatch
@@ -0,0 +1,20 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## 05glu-link.dpatch by Felix Geyer <[email protected]>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: No description.
+
+@DPATCH@
+
+diff -Nur libqglviewer-2.3.4.org/QGLViewer/QGLViewer.pro
libqglviewer-2.3.4/QGLViewer/QGLViewer.pro
+--- libqglviewer-2.3.4.org/QGLViewer/QGLViewer.pro
++++ libqglviewer-2.3.4/QGLViewer/QGLViewer.pro
+@@ -131,6 +131,8 @@
+ QMAKE_LIBS_OPENGL *= -lglut
+ }
+
++ QMAKE_LIBS_OPENGL *= -lGLU
++
+ MOC_DIR = .moc
+ OBJECTS_DIR = .obj
+