kkofler pushed to avogadro (f20). "build against Eigen3 (patch from Debian) (..more)"
notifications at fedoraproject.org
notifications at fedoraproject.org
Sun Mar 29 03:22:13 UTC 2015
>From ef7f9bfd2e07e6d093028b87bc674ae514d0711c Mon Sep 17 00:00:00 2001
From: Kevin Kofler <Kevin at tigcc.ticalc.org>
Date: Sun, 29 Mar 2015 05:22:02 +0200
Subject: build against Eigen3 (patch from Debian)
* Sun Mar 29 2015 Kevin Kofler <Kevin at tigcc.ticalc.org> - 1.0.3-20
- apply Debian patch to use Eigen3 instead of Eigen2, build against Eigen3
- -devel: add missing Requires: eigen3-devel (eigen2-devel was missing before)
I'm applying this to F20 because I want Kalzium to stop building with 2
versions of Eigen, a recipe for chaos and conflicts. Current versions of
Kalzium require Eigen3.
diff --git a/avogadro-1.0.3-eigen3.patch b/avogadro-1.0.3-eigen3.patch
new file mode 100644
index 0000000..743bd0b
--- /dev/null
+++ b/avogadro-1.0.3-eigen3.patch
@@ -0,0 +1,101 @@
+Description: migrate from eigen2 to eigen3
+Applied-Upstream: https://github.com/cryos/avogadro/commit/3cc14da0f92e6ea0bd763e97b5711c4afe56a7cd
+Author: Anton Gladky <gladk at debian.org>
+Bug-Debian: http://bugs.debian.org/728610
+Last-Update: 2013-11-03
+
+--- a/avogadro.prf.in
++++ b/avogadro.prf.in
+@@ -3,6 +3,6 @@
+ INCLUDEPATH += . \
+ $$AVOGADRO_PREFIX/include \
+ @OPENBABEL2_INCLUDE_DIR@ \
+- @EIGEN2_INCLUDE_DIR@
++ @EIGEN3_INCLUDE_DIR@
+ LIBS += -L$$AVOGADRO_PREFIX/lib -lavogadro \
+ -L$$OPENBABEL_PREFIX/lib -lopenbabel
+--- a/avogadro/src/CMakeLists.txt
++++ b/avogadro/src/CMakeLists.txt
+@@ -19,7 +19,7 @@
+ include_directories(
+ ${CMAKE_CURRENT_SOURCE_DIR}
+ ${OPENBABEL2_INCLUDE_DIR}
+- ${EIGEN2_INCLUDE_DIR}
++ ${EIGEN3_INCLUDE_DIR}
+ ${CMAKE_CURRENT_BINARY_DIR}
+ )
+
+--- a/cmake/modules/AvogadroUse.cmake
++++ b/cmake/modules/AvogadroUse.cmake
+@@ -16,8 +16,9 @@
+
+ # Add the Avogadro modules directory to the CMake module path
+ set(CMAKE_MODULE_PATH ${Avogadro_PLUGIN_DIR}/cmake ${CMAKE_MODULE_PATH})
+-find_package(Eigen2 REQUIRED)
+-include_directories(${EIGEN2_INCLUDE_DIR})
++find_package(Eigen3 REQUIRED)
++include_directories(${EIGEN3_INCLUDE_DIR})
++add_definitions(-DEIGEN2_SUPPORT_STAGE10_FULL_EIGEN2_API)
+ if(Avogadro_ENABLE_GLSL)
+ find_package(GLEW)
+ if(GLEW_FOUND)
+--- a/libavogadro/src/CMakeLists.txt
++++ b/libavogadro/src/CMakeLists.txt
+@@ -14,7 +14,7 @@
+ "${libavogadro_BINARY_DIR}/include;${tmp_include_dirs}")
+ include_directories(
+ ${CMAKE_CURRENT_BINARY_DIR}
+- ${EIGEN2_INCLUDE_DIR}
++ ${EIGEN3_INCLUDE_DIR}
+ ${OPENBABEL2_INCLUDE_DIR}
+ )
+
+--- a/libavogadro/tests/CMakeLists.txt
++++ b/libavogadro/tests/CMakeLists.txt
+@@ -14,7 +14,7 @@
+ include_directories(
+ ${CMAKE_SOURCE_DIR}
+ ${CMAKE_CURRENT_BINARY_DIR}
+- ${EIGEN2_INCLUDE_DIR}
++ ${EIGEN3_INCLUDE_DIR}
+ ${OPENBABEL2_INCLUDE_DIR}
+ ${BOOST_PYTHON_INCLUDES}
+ ${PYTHON_INCLUDE_PATH}
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -192,7 +192,7 @@
+ find_package(Qt4 REQUIRED) # find and setup Qt4 for this project
+ find_package(OpenGL REQUIRED) # find and setup OpenGL
+ find_package(Linguist) # find and setup Linguist
+-find_package(Eigen2 REQUIRED) # find and setup Eigen2
++find_package(Eigen3 REQUIRED) # find and setup Eigen3
+ find_package(ZLIB REQUIRED)
+ find_package(OpenBabel2 REQUIRED) # find and setup OpenBabel
+
+@@ -427,7 +427,6 @@
+
+ # Install the find modules we require to be present
+ install(FILES
+- "${CMAKE_MODULE_PATH}/FindEigen2.cmake"
+ "${CMAKE_MODULE_PATH}/FindGLEW.cmake"
+ DESTINATION "${Avogadro_PLUGIN_INSTALL_DIR}/cmake")
+
+--- a/libavogadro/CMakeLists.txt
++++ b/libavogadro/CMakeLists.txt
+@@ -3,6 +3,7 @@
+ # We probably want to adopt the libtool scheme once we hit 1.0.0
+ set(SOVERSION 0)
+
++add_definitions(-DEIGEN2_SUPPORT_STAGE10_FULL_EIGEN2_API)
+ if (WIN32)
+ add_definitions( -DWIN32 )
+ # add definitions for OB in WIN32
+--- a/avogadro/CMakeLists.txt
++++ b/avogadro/CMakeLists.txt
+@@ -6,5 +6,6 @@
+ add_definitions( -DUSING_OBDLL -DUSING_DYNAMIC_LIBS )
+ endif (WIN32)
+
++add_definitions(-DEIGEN2_SUPPORT_STAGE10_FULL_EIGEN2_API)
+ # tell cmake to process CMakeLists.txt in that subdirectory
+ add_subdirectory(src)
diff --git a/avogadro.spec b/avogadro.spec
index 4f22ea9..95ec1d5 100644
--- a/avogadro.spec
+++ b/avogadro.spec
@@ -5,7 +5,7 @@
Name: avogadro
Version: 1.0.3
-Release: 19%{?dist}
+Release: 20%{?dist}
Summary: An advanced molecular editor for chemical purposes
Group: Applications/Editors
@@ -16,6 +16,8 @@ Source0: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.
Patch0: avogadro-1.0.3-mkspecs-dir.patch
# Remove -Wl,-s from the compiler flags, fixes -debuginfo (#700080)
Patch1: avogadro-1.0.3-no-strip.patch
+# port from Eigen2 to Eigen3, from Debian (Anton Gladky)
+Patch2: avogadro-1.0.3-eigen3.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@@ -24,7 +26,7 @@ BuildRequires: cmake >= 2.6.0
BuildRequires: desktop-file-utils
BuildRequires: docbook-utils
BuildRequires: numpy
-BuildRequires: pkgconfig(eigen2) >= 2.0.3
+BuildRequires: pkgconfig(eigen3)
BuildRequires: pkgconfig(glew) >= 1.5.0
BuildRequires: pkgconfig(openbabel-2.0) >= 2.2.2
BuildRequires: pkgconfig(QtGui) pkgconfig(QtNetwork) pkgconfig(QtOpenGL)
@@ -57,6 +59,7 @@ Requires: %{name}-libs%{?_isa} = %{version}-%{release}
# all this stuff is in the link interface in AvogadroLibraryDeps.cmake
# ... and it probably shouldn't. FIXME -- rex
Requires: qt4-devel glew-devel python-devel boost-devel
+Requires: eigen3-devel
%description devel
This package contains files to develop applications using
@@ -67,6 +70,7 @@ Avogadros libraries.
%setup -q
%patch0 -p1 -b .mkspecs-dir
%patch1 -p1 -b .no-strip
+%patch2 -p1 -b .eigen3
# nuke unpatched copy, use working version included in cmake instead -- Rex
rm -f cmake/modules/FindPythonLibs.cmake
@@ -150,6 +154,10 @@ rm -rf $RPM_BUILD_ROOT
%changelog
+* Sun Mar 29 2015 Kevin Kofler <Kevin at tigcc.ticalc.org> - 1.0.3-20
+- apply Debian patch to use Eigen3 instead of Eigen2, build against Eigen3
+- -devel: add missing Requires: eigen3-devel (eigen2-devel was missing before)
+
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1.0.3-19
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
--
cgit v0.10.2
http://pkgs.fedoraproject.org/cgit/avogadro.git/commit/?h=f20&id=ef7f9bfd2e07e6d093028b87bc674ae514d0711c
More information about the scm-commits
mailing list