r46354 - in /packages/fenics/dolfin/trunk/debian: changelog patches/petsc-3.4.patch patches/petsc-slepc-3.4.2.patch patches/series patches/slepc-3.4.patch
sebastien at users.alioth.debian.org
sebastien at users.alioth.debian.org
Sun Oct 27 15:21:07 UTC 2013
Author: sebastien
Date: Sun Oct 27 15:21:07 2013
New Revision: 46354
URL: http://svn.debian.org/wsvn/debian-science/?sc=1&rev=46354
Log:
Refactor patches for PETSc/SLEPc 3.4, to fix a missing symbol in the library
+ petsc-slepc-3.4.2.patch: remove patch
+ {slepc,petsc}-3.4.patch: new patches taken from upstream
Added:
packages/fenics/dolfin/trunk/debian/patches/petsc-3.4.patch
packages/fenics/dolfin/trunk/debian/patches/slepc-3.4.patch
Removed:
packages/fenics/dolfin/trunk/debian/patches/petsc-slepc-3.4.2.patch
Modified:
packages/fenics/dolfin/trunk/debian/changelog
packages/fenics/dolfin/trunk/debian/patches/series
Modified: packages/fenics/dolfin/trunk/debian/changelog
URL: http://svn.debian.org/wsvn/debian-science/packages/fenics/dolfin/trunk/debian/changelog?rev=46354&op=diff
==============================================================================
--- packages/fenics/dolfin/trunk/debian/changelog (original)
+++ packages/fenics/dolfin/trunk/debian/changelog Sun Oct 27 15:21:07 2013
@@ -1,3 +1,12 @@
+dolfin (1.2.0+dfsg-3) unstable; urgency=low
+
+ * Team upload.
+ * Refactor patches for PETSc/SLEPc 3.4, to fix a missing symbol in the library
+ + petsc-slepc-3.4.2.patch: remove patch
+ + {slepc,petsc}-3.4.patch: new patches taken from upstream
+
+ -- Sébastien Villemot <sebastien at debian.org> Sun, 27 Oct 2013 15:48:52 +0100
+
dolfin (1.2.0+dfsg-2) unstable; urgency=low
* Team upload.
Added: packages/fenics/dolfin/trunk/debian/patches/petsc-3.4.patch
URL: http://svn.debian.org/wsvn/debian-science/packages/fenics/dolfin/trunk/debian/patches/petsc-3.4.patch?rev=46354&op=file
==============================================================================
--- packages/fenics/dolfin/trunk/debian/patches/petsc-3.4.patch (added)
+++ packages/fenics/dolfin/trunk/debian/patches/petsc-3.4.patch Sun Oct 27 15:21:07 2013
@@ -0,0 +1,99 @@
+Description: Fix compilation against PETSc 3.4
+Origin: upstream, https://bitbucket.org/fenics-project/dolfin/commits/d3c6c050549820415496ebced578be29a074e8ce
+Last-Update: 2013-10-27
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/dolfin/la/PETScKrylovSolver.cpp
++++ b/dolfin/la/PETScKrylovSolver.cpp
+@@ -528,13 +528,8 @@
+ {
+ // Get name of solver and preconditioner
+ PC pc;
+- #if PETSC_VERSION_RELEASE
+- const KSPType ksp_type;
+- const PCType pc_type;
+- #else
+ KSPType ksp_type;
+ PCType pc_type;
+- #endif
+ KSPGetType(*_ksp, &ksp_type);
+ KSPGetPC(*_ksp, &pc);
+ PCGetType(pc, &pc_type);
+@@ -542,13 +537,8 @@
+ // If using additive Schwarz or block Jacobi, get 'sub' method which is
+ // applied to each block
+ const std::string pc_type_str = pc_type;
+- #if PETSC_VERSION_RELEASE
+- const KSPType sub_ksp_type;
+- const PCType sub_pc_type;
+- #else
+ KSPType sub_ksp_type;
+ PCType sub_pc_type;
+- #endif
+ PC sub_pc;
+ KSP* sub_ksp = NULL;
+ if (pc_type_str == PCASM || pc_type_str == PCBJACOBI)
+--- a/dolfin/la/PETScVector.cpp
++++ b/dolfin/la/PETScVector.cpp
+@@ -158,11 +158,7 @@
+ dolfin_assert(_x);
+
+ // Get type
+- #if PETSC_VERSION_RELEASE
+- const VecType petsc_type;
+- #else
+ VecType petsc_type;
+- #endif
+ VecGetType(*_x, &petsc_type);
+
+ // Return type
+@@ -680,11 +676,7 @@
+ if (verbose)
+ {
+ // Get vector type
+- #if PETSC_VERSION_RELEASE
+- const VecType petsc_type;
+- #else
+ VecType petsc_type;
+- #endif
+ dolfin_assert(_x);
+ VecGetType(*_x, &petsc_type);
+
+@@ -714,11 +706,7 @@
+ PETScVector& _y = as_type<PETScVector>(y);
+
+ // Check that y is a local vector
+- #if PETSC_VERSION_RELEASE
+- const VecType petsc_type;
+- #else
+ VecType petsc_type;
+- #endif
+ VecGetType(*(_y.vec()), &petsc_type);
+
+ #ifndef HAS_PETSC_CUSP
+--- a/dolfin/nls/PETScSNESSolver.cpp
++++ b/dolfin/nls/PETScSNESSolver.cpp
+@@ -87,6 +87,23 @@
+ ("ncg", std::make_pair("Nonlinear conjugate gradient method", SNESNCG))
+ ("fas", std::make_pair("Full Approximation Scheme nonlinear multigrid method", SNESFAS))
+ ("ms", std::make_pair("Multistage smoothers", SNESMS));
++ #elif PETSC_VERSION_MAJOR == 3 && PETSC_VERSION_MINOR == 4 // PETSc 3.4
++ // Mapping from method string to PETSc
++ const std::map<std::string, std::pair<std::string, const SNESType> >
++ PETScSNESSolver::_methods
++ = boost::assign::map_list_of
++ ("default", std::make_pair("default SNES method", ""))
++ ("newtonls", std::make_pair("Line search method", SNESNEWTONLS))
++ ("newtontr", std::make_pair("Trust region method", SNESNEWTONTR))
++ ("test", std::make_pair("Tool to verify Jacobian approximation", SNESTEST))
++ ("ngmres", std::make_pair("Nonlinear generalised minimum residual method", SNESNGMRES))
++ ("nrichardson", std::make_pair("Richardson nonlinear method (Picard iteration)", SNESNRICHARDSON))
++ ("vinewtonrsls", std::make_pair("Reduced space active set solver method (for bounds)", SNESVINEWTONRSLS))
++ ("vinewtonssls", std::make_pair("Reduced space active set solver method (for bounds)", SNESVINEWTONSSLS))
++ ("qn", std::make_pair("Limited memory quasi-Newton", SNESQN))
++ ("ncg", std::make_pair("Nonlinear conjugate gradient method", SNESNCG))
++ ("fas", std::make_pair("Full Approximation Scheme nonlinear multigrid method", SNESFAS))
++ ("ms", std::make_pair("Multistage smoothers", SNESMS));
+ #endif
+
+ #else // Development version
Modified: packages/fenics/dolfin/trunk/debian/patches/series
URL: http://svn.debian.org/wsvn/debian-science/packages/fenics/dolfin/trunk/debian/patches/series?rev=46354&op=diff
==============================================================================
--- packages/fenics/dolfin/trunk/debian/patches/series (original)
+++ packages/fenics/dolfin/trunk/debian/patches/series Sun Oct 27 15:21:07 2013
@@ -1 +1,2 @@
-petsc-slepc-3.4.2.patch
+slepc-3.4.patch
+petsc-3.4.patch
Added: packages/fenics/dolfin/trunk/debian/patches/slepc-3.4.patch
URL: http://svn.debian.org/wsvn/debian-science/packages/fenics/dolfin/trunk/debian/patches/slepc-3.4.patch?rev=46354&op=file
==============================================================================
--- packages/fenics/dolfin/trunk/debian/patches/slepc-3.4.patch (added)
+++ packages/fenics/dolfin/trunk/debian/patches/slepc-3.4.patch Sun Oct 27 15:21:07 2013
@@ -0,0 +1,16 @@
+Description: Make dolfin compile against SLEPc 3.4
+Origin: upstream, https://bitbucket.org/fenics-project/dolfin/commits/405ec0d0c87eec652758bd77024798e03b34109a#chg-dolfin/la/SLEPcEigenSolver.cpp
+Last-Update: 2013-10-27
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/dolfin/la/SLEPcEigenSolver.cpp
++++ b/dolfin/la/SLEPcEigenSolver.cpp
+@@ -164,7 +164,7 @@
+ dolfin::la_index num_iterations = 0;
+ EPSGetIterationNumber(eps, &num_iterations);
+
+- const EPSType eps_type = 0;
++ EPSType eps_type = 0;
+ EPSGetType(eps, &eps_type);
+ log(PROGRESS, "Eigenvalue solver (%s) converged in %d iterations.",
+ eps_type, num_iterations);
More information about the debian-science-commits
mailing list