diff options
author | Nicolás Reynolds <fauno@endefensadelsl.org> | 2013-05-07 22:31:25 -0300 |
---|---|---|
committer | Nicolás Reynolds <fauno@endefensadelsl.org> | 2013-05-07 22:31:25 -0300 |
commit | 9f7fb9c12e84f20cd108b933f1a51e216f76cd98 (patch) | |
tree | 06520d9024b40745b94f02d0d3419386e6496863 /extra/avogadro | |
parent | 6cc893589a6bd208f2b7711f985e17df7a6df816 (diff) | |
parent | a86ff663185661ee304bb1f6d00d982102dd706d (diff) |
Merge branch 'master' of gparabola:abslibre-mips64el
Diffstat (limited to 'extra/avogadro')
-rw-r--r-- | extra/avogadro/PKGBUILD | 17 | ||||
-rw-r--r-- | extra/avogadro/boost153.patch | 60 | ||||
-rw-r--r-- | extra/avogadro/fix-boost.patch | 33 | ||||
-rw-r--r-- | extra/avogadro/fix-opengl-headers.patch | 53 | ||||
-rw-r--r-- | extra/avogadro/replace-qt4_automoc-with-qt4_wrap_cpp.patch | 778 |
5 files changed, 70 insertions, 871 deletions
diff --git a/extra/avogadro/PKGBUILD b/extra/avogadro/PKGBUILD index 39d1d61cc..9631d7030 100644 --- a/extra/avogadro/PKGBUILD +++ b/extra/avogadro/PKGBUILD @@ -1,32 +1,35 @@ -# $Id: PKGBUILD 176282 2013-01-28 16:48:15Z stephane $ +# $Id: PKGBUILD 181116 2013-03-31 19:16:38Z stephane $ # Maintainer: # Contributor: Andrea Scarpino <andrea@archlinux.org> # Contributor: Nick B <Shirakawasuna at gmail _dot_com> pkgname=avogadro pkgver=1.1.0 -pkgrel=3 +pkgrel=4 pkgdesc="An advanced molecular editor based on Qt" arch=('i686' 'x86_64' 'mips64el') url="http://avogadro.openmolecules.net/wiki/Main_Page" license=('GPL2') depends=('eigen2' 'openbabel' 'python2-pyqt' 'boost-libs' 'glew' 'python2-numpy') -makedepends=('cmake' 'boost' 'doxygen' 'mesa') +makedepends=('cmake' 'boost' 'doxygen' 'mesa-libgl') install=avogadro.install source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.bz2" - "avogadro-1.1.0-textrel.patch") + 'boost153.patch') md5sums=('f4fbef5ffc69cc312b2316426c36a78d' - '88c68540c0ccce7007e515f1b3fd03ed') + 'aa2573f78d5dbd85b3cb79e08acde8ab') build() { - patch -Np0 -i ${srcdir}/avogadro-1.1.0-textrel.patch + cd ${pkgname}-${pkgver} + patch -p1 -i "${srcdir}"/boost153.patch + cd ../ + mkdir build cd build cmake ../${pkgname}-${pkgver} \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=/usr \ -DPYTHON_EXECUTABLE=/usr/bin/python2 \ - -DQT_MKSPECS_RELATIVE=share/qt/mkspecs + -DQT_MKSPECS_RELATIVE=share/qt4/mkspecs make } diff --git a/extra/avogadro/boost153.patch b/extra/avogadro/boost153.patch new file mode 100644 index 000000000..fd8685974 --- /dev/null +++ b/extra/avogadro/boost153.patch @@ -0,0 +1,60 @@ +--- avogadro-1.1.0/libavogadro/src/pythonengine_p.h~ 2013-03-29 12:46:16.306165881 +0000 ++++ avogadro-1.1.0/libavogadro/src/pythonengine_p.h 2013-03-29 12:45:43.123089622 +0000 +@@ -27,7 +27,9 @@ + + #include <avogadro/global.h> + #include <avogadro/engine.h> ++#ifndef Q_MOC_RUN + #include <boost/python.hpp> ++#endif + + namespace Avogadro { + +--- avogadro-1.1.0/libavogadro/src/pythonextension_p.h~ 2013-03-29 12:46:32.156043085 +0000 ++++ avogadro-1.1.0/libavogadro/src/pythonextension_p.h 2013-03-29 12:47:07.265771087 +0000 +@@ -29,7 +29,9 @@ + #include <avogadro/extension.h> + #include <avogadro/primitive.h> + #include <avogadro/glwidget.h> ++#ifndef Q_MOC_RUN + #include <boost/python.hpp> ++#endif + + #include <QWidget> + #include <QList> +--- avogadro-1.1.0/libavogadro/src/pythontool_p.h~ 2013-03-29 12:47:33.335569185 +0000 ++++ avogadro-1.1.0/libavogadro/src/pythontool_p.h 2013-03-29 12:47:50.732101147 +0000 +@@ -27,7 +27,9 @@ + + #include <avogadro/global.h> + #include <avogadro/tool.h> ++#ifndef Q_MOC_RUN + #include <boost/python.hpp> ++#endif + + #include <QObject> + #include <QAction> +--- avogadro-1.1.0/libavogadro/src/pythoninterpreter.h~ 2013-03-29 12:50:46.550738652 +0000 ++++ avogadro-1.1.0/libavogadro/src/pythoninterpreter.h 2013-03-29 12:51:00.853961341 +0000 +@@ -26,7 +26,9 @@ + #define PYTHONINTERPRETER_H + + #include <avogadro/global.h> ++#ifndef Q_MOC_RUN + #include <boost/python.hpp> ++#endif + #include <avogadro/primitive.h> + #include <QString> + +--- avogadro-1.1.0/libavogadro/src/pythonscript.h~ 2013-03-29 12:52:00.723488935 +0000 ++++ avogadro-1.1.0/libavogadro/src/pythonscript.h 2013-03-29 12:52:11.676745364 +0000 +@@ -27,7 +27,9 @@ + #define PYTHONSCRIPT_H + + #include <avogadro/global.h> ++#ifndef Q_MOC_RUN + #include <boost/python.hpp> ++#endif + + #include "pythonerror.h" + diff --git a/extra/avogadro/fix-boost.patch b/extra/avogadro/fix-boost.patch deleted file mode 100644 index 8fb53ef12..000000000 --- a/extra/avogadro/fix-boost.patch +++ /dev/null @@ -1,33 +0,0 @@ ---- avogadro-1.0.3/libavogadro/src/CMakeLists.txt~ 2011-11-29 18:33:01.777291627 +0000 -+++ avogadro-1.0.3/libavogadro/src/CMakeLists.txt 2011-11-29 18:33:23.480814612 +0000 -@@ -149,7 +149,7 @@ - endforeach(P_ITEM ${PYTHON_SRCS}) - endif(NOT ENABLE_PYTHON OR NOT ALL_PYTHON_FOUND) - --QT4_WRAP_CPP(libavogadro_MOC_SRCS ${libavogadro_MOC_HDRS}) -+QT4_WRAP_CPP(libavogadro_MOC_SRCS ${libavogadro_MOC_HDRS} OPTIONS -DBOOST_TT_HAS_OPERATOR_HPP_INCLUDED) - - # you have to add link_directories before you add the target - if(ENABLE_PYTHON AND ALL_PYTHON_FOUND) ---- avogadro-1.0.3/libavogadro/src/python/CMakeLists.txt~ 2011-11-29 18:37:15.449506548 +0000 -+++ avogadro-1.0.3/libavogadro/src/python/CMakeLists.txt 2011-11-29 18:37:52.729831744 +0000 -@@ -11,7 +11,7 @@ - # use all cpp files in this directory - FILE(GLOB wrapper_SRCS "*.cpp") - --QT4_WRAP_CPP(MOC_SRCS moleculelist.h) -+QT4_WRAP_CPP(MOC_SRCS moleculelist.h OPTIONS -DBOOST_TT_HAS_OPERATOR_HPP_INCLUDED) - - ADD_LIBRARY(python-module MODULE ${wrapper_SRCS} ${MOC_SRCS}) - SET_TARGET_PROPERTIES(python-module PROPERTIES OUTPUT_NAME Avogadro) ---- avogadro-1.0.3/libavogadro/CMakeLists.txt~ 2011-11-29 19:41:34.066938217 +0000 -+++ avogadro-1.0.3/libavogadro/CMakeLists.txt 2011-11-29 19:42:53.084320315 +0000 -@@ -18,7 +18,7 @@ - # Assume all MOC stuff is in the headers, replace .cpp and use qt4_wrap_cpp - # We should probably scan the header to verify the Q_OBJECT macro is used - string(REPLACE ".cpp" ".h" hdr_list "${src_list}") -- qt4_wrap_cpp(moc_files ${hdr_list}) -+ qt4_wrap_cpp(moc_files ${hdr_list} OPTIONS -DBOOST_TT_HAS_OPERATOR_HPP_INCLUDED) - # Now sort out the ui and qrc files, process them as appropriate - set(ui_plugin_files) - set(qrc_plugin_files) diff --git a/extra/avogadro/fix-opengl-headers.patch b/extra/avogadro/fix-opengl-headers.patch deleted file mode 100644 index e6e8bc3b5..000000000 --- a/extra/avogadro/fix-opengl-headers.patch +++ /dev/null @@ -1,53 +0,0 @@ ---- avogadro-1.0.3/libavogadro/src/camera.cpp~ 2012-02-27 18:35:52.109999585 +0000 -+++ avogadro-1.0.3/libavogadro/src/camera.cpp 2012-02-27 18:36:27.103053453 +0000 -@@ -25,6 +25,8 @@ - #include "camera.h" - #include "glwidget.h" - #include <avogadro/molecule.h> -+#include <Eigen/LU> -+#include <GL/glu.h> - - using namespace Eigen; - ---- avogadro-1.0.3/libavogadro/src/glpainter_p.cpp~ 2012-02-27 18:37:28.535894209 +0000 -+++ avogadro-1.0.3/libavogadro/src/glpainter_p.cpp 2012-02-27 18:37:46.912413557 +0000 -@@ -42,6 +42,7 @@ - #include <QColor> - #include <QVarLengthArray> - #include <Eigen/Geometry> -+#include <GL/glu.h> - - namespace Avogadro - { ---- avogadro-1.0.3/libavogadro/src/glwidget.cpp~ 2012-02-27 18:37:55.099014598 +0000 -+++ avogadro-1.0.3/libavogadro/src/glwidget.cpp 2012-02-27 18:38:30.805395066 +0000 -@@ -70,6 +70,8 @@ - - #include <openbabel/mol.h> - -+#include <GL/glu.h> -+ - using namespace OpenBabel; - using namespace Eigen; - ---- avogadro-1.0.3/libavogadro/src/extensions/povpainter.cpp~ 2012-02-27 18:36:53.646173944 +0000 -+++ avogadro-1.0.3/libavogadro/src/extensions/povpainter.cpp 2012-02-27 18:37:10.739370227 +0000 -@@ -36,6 +36,7 @@ - #include <QFile> - #include <QDebug> - #include <Eigen/Geometry> -+#include <GL/glu.h> - - namespace Avogadro - { ---- avogadro-1.0.3/libavogadro/src/tools/selectrotatetool.cpp~ 2012-02-27 18:38:47.491928000 +0000 -+++ avogadro-1.0.3/libavogadro/src/tools/selectrotatetool.cpp 2012-02-27 18:39:05.735115136 +0000 -@@ -44,6 +44,8 @@ - #include <QComboBox> - #include <QDebug> - -+#include <GL/glu.h> -+ - using namespace std; - using namespace OpenBabel; - using namespace Eigen; diff --git a/extra/avogadro/replace-qt4_automoc-with-qt4_wrap_cpp.patch b/extra/avogadro/replace-qt4_automoc-with-qt4_wrap_cpp.patch deleted file mode 100644 index 11f58a505..000000000 --- a/extra/avogadro/replace-qt4_automoc-with-qt4_wrap_cpp.patch +++ /dev/null @@ -1,778 +0,0 @@ -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/CMakeLists.txt avogadro-1.0.3-edit/libavogadro/src/CMakeLists.txt ---- avogadro-1.0.3/libavogadro/src/CMakeLists.txt 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/CMakeLists.txt 2011-11-29 18:49:58.520790652 +0100 -@@ -75,6 +75,42 @@ - zmatrix.h - ) - -+SET(libavogadro_MOC_HDRS -+ animation.h -+ atom.h -+ bond.h -+ color.h -+ colorbutton.h -+ colors/elementcolor.h -+ cube.h -+ elementdetail_p.h -+ elementtranslator.h -+ engine.h -+ engines/bsdyengine.h -+ extension.h -+ fragment.h -+ glwidget.h -+ mesh.h -+ molecule.h -+ moleculefile.h -+ moleculefile_p.h -+ periodictablescene_p.h -+ periodictableview.h -+ plotwidget.h -+ plugin.h -+ pluginmanager.h -+ primitive.h -+ protein.h -+ pythonengine_p.h -+ pythonerror.h -+ pythonextension_p.h -+ pythontool_p.h -+ residue.h -+ tool.h -+ toolgroup.h -+ zmatrix.h -+) -+ - set(libavogadro_SRCS ${libavogadro_SRCS} ${libavogadro_UIS}) - # Also add in the qtiocompressor class - #set(libavogadro_SRCS ${libavogadro_SRCS} ../qtiocompressor/qtiocompressor.cpp) -@@ -113,7 +148,7 @@ - endforeach(P_ITEM ${PYTHON_SRCS}) - endif(NOT ENABLE_PYTHON OR NOT ALL_PYTHON_FOUND) - --qt4_automoc(${libavogadro_SRCS}) -+QT4_WRAP_CPP(libavogadro_MOC_SRCS ${libavogadro_MOC_HDRS}) - - # you have to add link_directories before you add the target - if(ENABLE_PYTHON AND ALL_PYTHON_FOUND) -@@ -149,7 +184,7 @@ - COMMAND ${CMAKE_COMMAND} -E ${header_cmd} "${from}" "${to}") - endforeach(headerFile ${libavogadro_HDRS}) - --add_library(avogadro SHARED ${libavogadro_SRCS} ${libavogadro_QM} ${pythontool_RC_SRCS}) -+add_library(avogadro SHARED ${libavogadro_SRCS} ${libavogadro_MOC_SRCS} ${libavogadro_QM} ${pythontool_RC_SRCS}) - set_target_properties(avogadro - PROPERTIES VERSION ${Avogadro_VERSION_FULL} SOVERSION 1 ) - target_link_libraries(avogadro ${AVO_LINK_LIBRARIES}) -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/animation.cpp avogadro-1.0.3-edit/libavogadro/src/animation.cpp ---- avogadro-1.0.3/libavogadro/src/animation.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/animation.cpp 2011-11-29 18:48:47.967839537 +0100 -@@ -224,5 +224,3 @@ - } - - } // end namespace Avogadro -- --#include "animation.moc" -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/atom.cpp avogadro-1.0.3-edit/libavogadro/src/atom.cpp ---- avogadro-1.0.3/libavogadro/src/atom.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/atom.cpp 2011-11-29 18:48:39.561218412 +0100 -@@ -293,5 +293,3 @@ - } - - } // End namespace Avogadro -- --#include "atom.moc" -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/bond.cpp avogadro-1.0.3-edit/libavogadro/src/bond.cpp ---- avogadro-1.0.3/libavogadro/src/bond.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/bond.cpp 2011-11-29 18:49:00.067773985 +0100 -@@ -166,5 +166,3 @@ - } - - } // End namespace Avogadro -- --#include "bond.moc" -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/color.cpp avogadro-1.0.3-edit/libavogadro/src/color.cpp ---- avogadro-1.0.3/libavogadro/src/color.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/color.cpp 2011-11-29 18:49:05.207746140 +0100 -@@ -152,5 +152,3 @@ - return "Generic Color"; - } - } -- --#include "color.moc" -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/colorbutton.cpp avogadro-1.0.3-edit/libavogadro/src/colorbutton.cpp ---- avogadro-1.0.3/libavogadro/src/colorbutton.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/colorbutton.cpp 2011-11-29 18:49:11.987709410 +0100 -@@ -94,5 +94,3 @@ - } - - } // end namespace -- --#include "colorbutton.moc" -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/colors/elementcolor.cpp avogadro-1.0.3-edit/libavogadro/src/colors/elementcolor.cpp ---- avogadro-1.0.3/libavogadro/src/colors/elementcolor.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/colors/elementcolor.cpp 2011-11-29 18:50:11.077389292 +0100 -@@ -63,7 +63,5 @@ - - } - --#include "elementcolor.moc" - //this is a static color plugin... - //Q_EXPORT_PLUGIN2(elementcolor, Avogadro::ElementColorFactory) -- -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/cube.cpp avogadro-1.0.3-edit/libavogadro/src/cube.cpp ---- avogadro-1.0.3/libavogadro/src/cube.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/cube.cpp 2011-11-29 18:50:26.357306516 +0100 -@@ -322,5 +322,3 @@ - } - - } // End namespace Avogadro -- --#include "cube.moc" -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/elementdetail_p.cpp avogadro-1.0.3-edit/libavogadro/src/elementdetail_p.cpp ---- avogadro-1.0.3/libavogadro/src/elementdetail_p.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/elementdetail_p.cpp 2011-11-29 18:50:37.680578505 +0100 -@@ -132,5 +132,3 @@ - } - - } // End namespace Avogadro -- --#include "elementdetail_p.moc" -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/elementtranslator.cpp avogadro-1.0.3-edit/libavogadro/src/elementtranslator.cpp ---- avogadro-1.0.3/libavogadro/src/elementtranslator.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/elementtranslator.cpp 2011-11-29 18:50:48.160521729 +0100 -@@ -401,5 +401,3 @@ - } - - } // End namespace Avogadro -- --#include "elementtranslator.moc" -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/engine.cpp avogadro-1.0.3-edit/libavogadro/src/engine.cpp ---- avogadro-1.0.3/libavogadro/src/engine.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/engine.cpp 2011-11-29 18:50:54.397154610 +0100 -@@ -377,5 +377,3 @@ - return m_molecule->bonds(); - } - } -- --#include "engine.moc" -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/engines/bsdyengine.cpp avogadro-1.0.3-edit/libavogadro/src/engines/bsdyengine.cpp ---- avogadro-1.0.3/libavogadro/src/engines/bsdyengine.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/engines/bsdyengine.cpp 2011-11-29 18:51:18.733689435 +0100 -@@ -442,7 +442,5 @@ - } - - } -- --#include "bsdyengine.moc" - // This is a static engine... - // Q_EXPORT_PLUGIN2( bsdyengine, Avogadro::BSDYEngineFactory ) -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/extension.cpp avogadro-1.0.3-edit/libavogadro/src/extension.cpp ---- avogadro-1.0.3/libavogadro/src/extension.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/extension.cpp 2011-11-29 18:51:56.360152261 +0100 -@@ -80,5 +80,3 @@ - } - - } -- --#include "extension.moc" -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/fragment.cpp avogadro-1.0.3-edit/libavogadro/src/fragment.cpp ---- avogadro-1.0.3/libavogadro/src/fragment.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/fragment.cpp 2011-11-29 18:52:01.906788880 +0100 -@@ -82,5 +82,3 @@ - } - - } // End namespace Avogadro -- --#include "fragment.moc" -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/glwidget.cpp avogadro-1.0.3-edit/libavogadro/src/glwidget.cpp ---- avogadro-1.0.3/libavogadro/src/glwidget.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/glwidget.cpp 2011-11-29 18:52:14.346721486 +0100 -@@ -1966,5 +1966,3 @@ - d->updateCache = true; - } - } -- --#include "glwidget.moc" -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/mesh.cpp avogadro-1.0.3-edit/libavogadro/src/mesh.cpp ---- avogadro-1.0.3/libavogadro/src/mesh.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/mesh.cpp 2011-11-29 18:52:23.033341093 +0100 -@@ -231,5 +231,3 @@ - } - - } // End namespace Avogadro -- --#include "mesh.moc" -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/molecule.cpp avogadro-1.0.3-edit/libavogadro/src/molecule.cpp ---- avogadro-1.0.3/libavogadro/src/molecule.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/molecule.cpp 2011-11-29 18:52:33.573283993 +0100 -@@ -1575,5 +1575,3 @@ - } - - } // End namespace Avogadro -- --#include "molecule.moc" -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/moleculefile.cpp avogadro-1.0.3-edit/libavogadro/src/moleculefile.cpp ---- avogadro-1.0.3/libavogadro/src/moleculefile.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/moleculefile.cpp 2011-11-29 18:56:26.728687548 +0100 -@@ -22,23 +22,14 @@ - 02110-1301, USA. - **********************************************************************/ - --#include "moleculefile.h" -+#include "moleculefile_p.h" - - #include <avogadro/molecule.h> - --#include <QFile> - #include <QFileInfo> --#include <QStringList> --#include <QThread> - #include <QDebug> - #include <QPointer> - --#include <openbabel/mol.h> --#include <openbabel/obconversion.h> -- --// Included in obconversion.h --//#include <iostream> -- - namespace Avogadro { - - using OpenBabel::OBConversion; -@@ -578,164 +569,6 @@ - return false; - } - -- class ReadFileThread : public QThread -- { -- // Q_OBJECT -- -- public: -- ReadFileThread(MoleculeFile *moleculeFile) : m_moleculeFile(moleculeFile) -- { -- } -- -- void addConformer(const OpenBabel::OBMol &conformer) -- { -- unsigned int numAtoms = conformer.NumAtoms(); -- std::vector<Eigen::Vector3d> *coords = new std::vector<Eigen::Vector3d>(numAtoms); -- for (unsigned int i = 0; i < numAtoms; ++i) -- coords->push_back(Eigen::Vector3d(conformer.GetAtom(i+1)->GetVector().AsArray())); -- m_moleculeFile->m_conformers.push_back(coords); -- } -- -- void detectConformers(unsigned int c, const OpenBabel::OBMol &first, const OpenBabel::OBMol ¤t) -- { -- if (!c) { -- // this is the first molecule read -- m_moleculeFile->setConformerFile(true); -- addConformer(current); -- return; -- } -- -- if (!m_moleculeFile->isConformerFile()) -- return; -- -- // as long as we are not sure if this really is a -- // conformer/trajectory file, add the conformers -- addConformer(current); -- -- // performance: check only certain molecule 1-10,20,50 -- switch (c) { -- case 1: -- case 2: -- case 3: -- case 4: -- case 5: -- case 6: -- case 7: -- case 8: -- case 9: -- case 10: -- case 20: -- case 50: -- break; -- default: -- return; -- } -- -- if (first.NumAtoms() != current.NumAtoms()) { -- m_moleculeFile->setConformerFile(false); -- m_moleculeFile->m_conformers.clear(); -- return; -- } -- -- for (unsigned int i = 0; i < first.NumAtoms(); ++i) { -- OpenBabel::OBAtom *firstAtom = first.GetAtom(i+1); -- OpenBabel::OBAtom *currentAtom = current.GetAtom(i+1); -- if (firstAtom->GetAtomicNum() != currentAtom->GetAtomicNum()) { -- m_moleculeFile->setConformerFile(false); -- m_moleculeFile->m_conformers.clear(); -- return; -- } -- } -- } -- -- void run() -- { -- // Check that the file can be read from disk -- if (!MoleculeFile::canOpen(m_moleculeFile->m_fileName, QFile::ReadOnly | QFile::Text)) { -- // Cannot read the file -- m_moleculeFile->m_error.append(QObject::tr("File %1 cannot be opened for reading.") -- .arg(m_moleculeFile->m_fileName)); -- return; -- } -- -- // Construct the OpenBabel objects, set the file type -- OpenBabel::OBConversion conv; -- OpenBabel::OBFormat *inFormat; -- if (!m_moleculeFile->m_fileType.isEmpty() && !conv.SetInFormat(m_moleculeFile->m_fileType.toAscii().data())) { -- // Input format not supported -- m_moleculeFile->m_error.append( -- QObject::tr("File type '%1' is not supported for reading.").arg(m_moleculeFile->m_fileType)); -- return; -- } else { -- inFormat = conv.FormatFromExt(m_moleculeFile->m_fileName.toAscii().data()); -- if (!inFormat || !conv.SetInFormat(inFormat)) { -- // Input format not supported -- m_moleculeFile->m_error.append(QObject::tr("File type for file '%1' is not supported for reading.") -- .arg(m_moleculeFile->m_fileName)); -- return; -- } -- } -- -- // set any options -- if (!m_moleculeFile->m_fileOptions.isEmpty()) { -- foreach(const QString &option, -- m_moleculeFile->m_fileOptions.split('\n', QString::SkipEmptyParts)) { -- conv.AddOption(option.toAscii().data(), OBConversion::INOPTIONS); -- } -- } -- -- // Now attempt to read the molecule in -- ifstream ifs; -- ifs.open(m_moleculeFile->m_fileName.toLocal8Bit()); // This handles utf8 file names etc -- if (!ifs) // Should not happen, already checked file could be opened -- return; -- -- // read all molecules -- OpenBabel::OBMol firstOBMol, currentOBMol; -- unsigned int c = 0; -- conv.SetInStream(&ifs); -- m_moleculeFile->streamposRef().push_back(ifs.tellg()); -- while (ifs.good() && conv.Read(¤tOBMol)) { -- if (!c) -- firstOBMol = currentOBMol; -- -- if (c > 20 && !m_moleculeFile->isConformerFile()) -- m_moleculeFile->setFirstReady(true); -- -- // detect conformer/trajectory files -- detectConformers(c, firstOBMol, currentOBMol); -- // store information about molecule -- m_moleculeFile->streamposRef().push_back(ifs.tellg()); -- m_moleculeFile->titlesRef().append(currentOBMol.GetTitle()); -- // increment count -- ++c; -- } -- m_moleculeFile->streamposRef().pop_back(); -- -- // signle molecule files are not conformer files -- if (c == 1) { -- m_moleculeFile->setConformerFile(false); -- m_moleculeFile->m_conformers.clear(); -- } -- -- // check for empty titles -- for (int i = 0; i < m_moleculeFile->titlesRef().size(); ++i) { -- if (!m_moleculeFile->titlesRef()[i].isEmpty()) -- continue; -- -- QString title; -- if (m_moleculeFile->isConformerFile()) -- title = tr("Conformer %1").arg(i+1); -- else -- title = tr("Molecule %1").arg(i+1); -- -- m_moleculeFile->titlesRef()[i] = title; -- } -- } -- -- MoleculeFile *m_moleculeFile; -- }; // end ReadFileThread class -- - MoleculeFile* MoleculeFile::readFile(const QString &fileName, - const QString &fileType, const QString &fileOptions, bool wait) - { -@@ -794,6 +627,3 @@ - } - - } // end namespace Avogadro -- --#include "moleculefile.moc" -- -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/moleculefile_p.h avogadro-1.0.3-edit/libavogadro/src/moleculefile_p.h ---- avogadro-1.0.3/libavogadro/src/moleculefile_p.h 1970-01-01 01:00:00.000000000 +0100 -+++ avogadro-1.0.3-edit/libavogadro/src/moleculefile_p.h 2011-11-29 18:57:43.108273764 +0100 -@@ -0,0 +1,202 @@ -+/********************************************************************** -+ MoleculeFile - Class representing molecule file. -+ -+ Copyright (C) 2009 Marcus Hanwell, Tim Vandermeersch -+ -+ This file is part of the Avogadro molecular editor project. -+ For more information, see <http://avogadro.openmolecules.net/> -+ -+ Avogadro is free software; you can redistribute it and/or modify -+ it under the terms of the GNU General Public License as published by -+ the Free Software Foundation; either version 2 of the License, or -+ (at your option) any later version. -+ -+ Avogadro is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ GNU General Public License for more details. -+ -+ You should have received a copy of the GNU General Public License -+ along with this program; if not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -+ 02110-1301, USA. -+ **********************************************************************/ -+ -+#ifndef MOLECULEFILE_P_H -+#define MOLECULEFILE_P_H -+ -+#include "moleculefile.h" -+ -+#include <openbabel/mol.h> -+#include <openbabel/obconversion.h> -+ -+#include <QFile> -+#include <QStringList> -+#include <QThread> -+ -+namespace Avogadro { -+ -+ using OpenBabel::OBConversion; -+ using std::ifstream; -+ -+class ReadFileThread : public QThread -+{ -+ Q_OBJECT -+ -+ public: -+ ReadFileThread(MoleculeFile *moleculeFile) : m_moleculeFile(moleculeFile) -+ { -+ } -+ -+ void addConformer(const OpenBabel::OBMol &conformer) -+ { -+ unsigned int numAtoms = conformer.NumAtoms(); -+ std::vector<Eigen::Vector3d> *coords = new std::vector<Eigen::Vector3d>(numAtoms); -+ for (unsigned int i = 0; i < numAtoms; ++i) -+ coords->push_back(Eigen::Vector3d(conformer.GetAtom(i+1)->GetVector().AsArray())); -+ m_moleculeFile->m_conformers.push_back(coords); -+ } -+ -+ void detectConformers(unsigned int c, const OpenBabel::OBMol &first, const OpenBabel::OBMol ¤t) -+ { -+ if (!c) { -+ // this is the first molecule read -+ m_moleculeFile->setConformerFile(true); -+ addConformer(current); -+ return; -+ } -+ -+ if (!m_moleculeFile->isConformerFile()) -+ return; -+ -+ // as long as we are not sure if this really is a -+ // conformer/trajectory file, add the conformers -+ addConformer(current); -+ -+ // performance: check only certain molecule 1-10,20,50 -+ switch (c) { -+ case 1: -+ case 2: -+ case 3: -+ case 4: -+ case 5: -+ case 6: -+ case 7: -+ case 8: -+ case 9: -+ case 10: -+ case 20: -+ case 50: -+ break; -+ default: -+ return; -+ } -+ -+ if (first.NumAtoms() != current.NumAtoms()) { -+ m_moleculeFile->setConformerFile(false); -+ m_moleculeFile->m_conformers.clear(); -+ return; -+ } -+ -+ for (unsigned int i = 0; i < first.NumAtoms(); ++i) { -+ OpenBabel::OBAtom *firstAtom = first.GetAtom(i+1); -+ OpenBabel::OBAtom *currentAtom = current.GetAtom(i+1); -+ if (firstAtom->GetAtomicNum() != currentAtom->GetAtomicNum()) { -+ m_moleculeFile->setConformerFile(false); -+ m_moleculeFile->m_conformers.clear(); -+ return; -+ } -+ } -+ } -+ -+ void run() -+ { -+ // Check that the file can be read from disk -+ if (!MoleculeFile::canOpen(m_moleculeFile->m_fileName, QFile::ReadOnly | QFile::Text)) { -+ // Cannot read the file -+ m_moleculeFile->m_error.append(QObject::tr("File %1 cannot be opened for reading.") -+ .arg(m_moleculeFile->m_fileName)); -+ return; -+ } -+ -+ // Construct the OpenBabel objects, set the file type -+ OpenBabel::OBConversion conv; -+ OpenBabel::OBFormat *inFormat; -+ if (!m_moleculeFile->m_fileType.isEmpty() && !conv.SetInFormat(m_moleculeFile->m_fileType.toAscii().data())) { -+ // Input format not supported -+ m_moleculeFile->m_error.append( -+ QObject::tr("File type '%1' is not supported for reading.").arg(m_moleculeFile->m_fileType)); -+ return; -+ } else { -+ inFormat = conv.FormatFromExt(m_moleculeFile->m_fileName.toAscii().data()); -+ if (!inFormat || !conv.SetInFormat(inFormat)) { -+ // Input format not supported -+ m_moleculeFile->m_error.append(QObject::tr("File type for file '%1' is not supported for reading.") -+ .arg(m_moleculeFile->m_fileName)); -+ return; -+ } -+ } -+ -+ // set any options -+ if (!m_moleculeFile->m_fileOptions.isEmpty()) { -+ foreach(const QString &option, -+ m_moleculeFile->m_fileOptions.split('\n', QString::SkipEmptyParts)) { -+ conv.AddOption(option.toAscii().data(), OBConversion::INOPTIONS); -+ } -+ } -+ -+ // Now attempt to read the molecule in -+ ifstream ifs; -+ ifs.open(m_moleculeFile->m_fileName.toLocal8Bit()); // This handles utf8 file names etc -+ if (!ifs) // Should not happen, already checked file could be opened -+ return; -+ -+ // read all molecules -+ OpenBabel::OBMol firstOBMol, currentOBMol; -+ unsigned int c = 0; -+ conv.SetInStream(&ifs); -+ m_moleculeFile->streamposRef().push_back(ifs.tellg()); -+ while (ifs.good() && conv.Read(¤tOBMol)) { -+ if (!c) -+ firstOBMol = currentOBMol; -+ -+ if (c > 20 && !m_moleculeFile->isConformerFile()) -+ m_moleculeFile->setFirstReady(true); -+ -+ // detect conformer/trajectory files -+ detectConformers(c, firstOBMol, currentOBMol); -+ // store information about molecule -+ m_moleculeFile->streamposRef().push_back(ifs.tellg()); -+ m_moleculeFile->titlesRef().append(currentOBMol.GetTitle()); -+ // increment count -+ ++c; -+ } -+ m_moleculeFile->streamposRef().pop_back(); -+ -+ // signle molecule files are not conformer files -+ if (c == 1) { -+ m_moleculeFile->setConformerFile(false); -+ m_moleculeFile->m_conformers.clear(); -+ } -+ -+ // check for empty titles -+ for (int i = 0; i < m_moleculeFile->titlesRef().size(); ++i) { -+ if (!m_moleculeFile->titlesRef()[i].isEmpty()) -+ continue; -+ -+ QString title; -+ if (m_moleculeFile->isConformerFile()) -+ title = tr("Conformer %1").arg(i+1); -+ else -+ title = tr("Molecule %1").arg(i+1); -+ -+ m_moleculeFile->titlesRef()[i] = title; -+ } -+ } -+ -+ MoleculeFile *m_moleculeFile; -+}; -+ -+} // end namespace Avogadro -+ -+#endif // MOLECULEFILE_P_H -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/periodictablescene_p.cpp avogadro-1.0.3-edit/libavogadro/src/periodictablescene_p.cpp ---- avogadro-1.0.3/libavogadro/src/periodictablescene_p.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/periodictablescene_p.cpp 2011-11-29 18:52:50.259860261 +0100 -@@ -213,5 +213,3 @@ - } - - } // End namespace Avogadro -- --#include "periodictablescene_p.moc" -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/periodictableview.cpp avogadro-1.0.3-edit/libavogadro/src/periodictableview.cpp ---- avogadro-1.0.3/libavogadro/src/periodictableview.cpp 2011-11-29 19:30:25.130970122 +0000 -+++ avogadro-1.0.3-edit/libavogadro/src/periodictableview.cpp 2011-11-29 18:52:50.259860261 +0100 -@@ -69,4 +69,3 @@ - - } // End namespace Avogadro - --#include "periodictableview.moc" -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/plotwidget.cpp avogadro-1.0.3-edit/libavogadro/src/plotwidget.cpp ---- avogadro-1.0.3/libavogadro/src/plotwidget.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/plotwidget.cpp 2011-11-29 18:53:09.389756626 +0100 -@@ -27,7 +27,6 @@ - **********************************************************************/ - - #include "plotwidget.h" --#include "plotwidget.moc" - - #include <math.h> - #include <QDebug> -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/plugin.cpp avogadro-1.0.3-edit/libavogadro/src/plugin.cpp ---- avogadro-1.0.3/libavogadro/src/plugin.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/plugin.cpp 2011-11-29 18:53:16.016387394 +0100 -@@ -65,5 +65,3 @@ - } - - } // end namespace Avogadro -- --#include "plugin.moc" -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/pluginmanager.cpp avogadro-1.0.3-edit/libavogadro/src/pluginmanager.cpp ---- avogadro-1.0.3/libavogadro/src/pluginmanager.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/pluginmanager.cpp 2011-11-29 18:53:23.569679807 +0100 -@@ -784,5 +784,3 @@ - } - - } -- --#include "pluginmanager.moc" -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/primitive.cpp avogadro-1.0.3-edit/libavogadro/src/primitive.cpp ---- avogadro-1.0.3/libavogadro/src/primitive.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/primitive.cpp 2011-11-29 18:53:29.139649631 +0100 -@@ -77,5 +77,3 @@ - } - - } -- --#include "primitive.moc" -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/protein.cpp avogadro-1.0.3-edit/libavogadro/src/protein.cpp ---- avogadro-1.0.3/libavogadro/src/protein.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/protein.cpp 2011-11-29 18:53:37.952935219 +0100 -@@ -978,5 +978,3 @@ - } - - } // End namespace Avogadro -- --#include "protein.moc" -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/python/CMakeLists.txt avogadro-1.0.3-edit/libavogadro/src/python/CMakeLists.txt ---- avogadro-1.0.3/libavogadro/src/python/CMakeLists.txt 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/python/CMakeLists.txt 2011-11-29 18:58:02.354836165 +0100 -@@ -11,9 +11,9 @@ - # use all cpp files in this directory - FILE(GLOB wrapper_SRCS "*.cpp") - --qt4_automoc(moleculelist.cpp) -+QT4_WRAP_CPP(MOC_SRCS moleculelist.h) - --ADD_LIBRARY(python-module MODULE ${wrapper_SRCS}) -+ADD_LIBRARY(python-module MODULE ${wrapper_SRCS} ${MOC_SRCS}) - SET_TARGET_PROPERTIES(python-module PROPERTIES OUTPUT_NAME Avogadro) - SET_TARGET_PROPERTIES(python-module PROPERTIES PREFIX "") - if (WIN32) -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/python/moleculelist.cpp avogadro-1.0.3-edit/libavogadro/src/python/moleculelist.cpp ---- avogadro-1.0.3/libavogadro/src/python/moleculelist.cpp 2011-11-29 19:26:07.562214311 +0100 -+++ avogadro-1.0.3-edit/libavogadro/src/python/moleculelist.cpp 2011-11-29 19:26:14.538843182 +0100 -@@ -70,4 +70,3 @@ - - } - --#include "moleculelist.moc" -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/pythonengine_p.cpp avogadro-1.0.3-edit/libavogadro/src/pythonengine_p.cpp ---- avogadro-1.0.3/libavogadro/src/pythonengine_p.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/pythonengine_p.cpp 2011-11-29 18:53:45.492894371 +0100 -@@ -289,5 +289,3 @@ - - - } -- --#include "pythonengine_p.moc" -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/pythonerror.cpp avogadro-1.0.3-edit/libavogadro/src/pythonerror.cpp ---- avogadro-1.0.3/libavogadro/src/pythonerror.cpp 2011-11-29 19:24:26.949426045 +0100 -+++ avogadro-1.0.3-edit/libavogadro/src/pythonerror.cpp 2011-11-29 19:24:41.176015640 +0100 -@@ -112,4 +112,3 @@ - - } // namespace - --#include "pythonerror.moc" - -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/pythonextension_p.cpp avogadro-1.0.3-edit/libavogadro/src/pythonextension_p.cpp ---- avogadro-1.0.3/libavogadro/src/pythonextension_p.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/pythonextension_p.cpp 2011-11-29 18:53:54.082847836 +0100 -@@ -340,5 +340,3 @@ - } - - } -- --#include "pythonextension_p.moc" -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/pythontool_p.cpp avogadro-1.0.3-edit/libavogadro/src/pythontool_p.cpp ---- avogadro-1.0.3/libavogadro/src/pythontool_p.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/pythontool_p.cpp 2011-11-29 18:54:02.269470152 +0100 -@@ -344,5 +344,3 @@ - } - - } -- --#include "pythontool_p.moc" -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/residue.cpp avogadro-1.0.3-edit/libavogadro/src/residue.cpp ---- avogadro-1.0.3/libavogadro/src/residue.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/residue.cpp 2011-11-29 18:54:14.316071557 +0100 -@@ -160,6 +160,3 @@ - } - - } // End namespace Avogadro -- -- #include "residue.moc" -- -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/tool.cpp avogadro-1.0.3-edit/libavogadro/src/tool.cpp ---- avogadro-1.0.3/libavogadro/src/tool.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/tool.cpp 2011-11-29 18:55:05.515794184 +0100 -@@ -117,5 +117,3 @@ - } - - } // end namespace Avogadro -- --#include "tool.moc" -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/toolgroup.cpp avogadro-1.0.3-edit/libavogadro/src/toolgroup.cpp ---- avogadro-1.0.3/libavogadro/src/toolgroup.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/toolgroup.cpp 2011-11-29 18:55:11.699094018 +0100 -@@ -206,5 +206,3 @@ - } - - } // end namespace Avogadro -- --#include "toolgroup.moc" -diff -U 3 -H -d -r -N -- avogadro-1.0.3/libavogadro/src/zmatrix.cpp avogadro-1.0.3-edit/libavogadro/src/zmatrix.cpp ---- avogadro-1.0.3/libavogadro/src/zmatrix.cpp 2011-04-25 07:22:18.000000000 +0200 -+++ avogadro-1.0.3-edit/libavogadro/src/zmatrix.cpp 2011-11-29 18:55:17.209064168 +0100 -@@ -149,5 +149,3 @@ - - - } // End namespace Avogadro -- --#include "zmatrix.moc" |