Hello,

I am trying to upload deal.II into Debian unstable, and am running into
two problems.  First, the QPL is incompatible with the GPL of the
functionparser library, and Debian won't accept anything with the
potential for a copyright violation suit.  Can deal.II get along without
functionparser?

Second, Debian unstable has PETSc 3.0 now, but the deal.II build with it
is running into trouble:

In file included from 
/home/hazelsct/deal.ii-6.1.0/lac/include/lac/petsc_block_vector.h:18,
                 from 
/home/hazelsct/deal.ii-6.1.0/lac/include/lac/petsc_block_sparse_matrix.h:21,
                 from source/petsc_block_sparse_matrix.cc:14:
/home/hazelsct/deal.ii-6.1.0/lac/include/lac/petsc_vector.h: In member function 
'dealii::PETScWrappers::Vector& dealii::PETScWrappers::Vector::operator=(const 
dealii::PETScWrappers::MPI::Vector&)':
/home/hazelsct/deal.ii-6.1.0/lac/include/lac/petsc_vector.h:301: error: cannot 
convert '_p_Vec* const' to '_p_VecScatter*' for argument '1' to 'PetscErrorCode 
VecScatterBegin(_p_VecScatter*, _p_Vec*, _p_Vec*, InsertMode, ScatterMode)'
/home/hazelsct/deal.ii-6.1.0/lac/include/lac/petsc_vector.h:305: error: cannot 
convert '_p_Vec* const' to '_p_VecScatter*' for argument '1' to 'PetscErrorCode 
VecScatterEnd(_p_VecScatter*, _p_Vec*, _p_Vec*, InsertMode, ScatterMode)'

I don't see anything in SVN which would fix this.  I also had to use the
attached patch to get it to even start to compile.

Have you worked on porting to PETSc 3.0 yet?

Thanks,
-Adam
-- 
GPG fingerprint: D54D 1AEE B11C CE9B A02B  C5DD 526F 01E8 564E E4B6

Engineering consulting with open source tools
http://www.opennovation.com/
--- deal.ii-6.1.0/aclocal.m4~	2008-04-25 20:11:57.000000000 -0400
+++ deal.ii-6.1.0/aclocal.m4	2009-04-08 20:38:39.000000000 -0400
@@ -5187,6 +5187,14 @@
         fi
         ;;
 
+      3.0*)
+        if test ! -d $DEAL_II_PETSC_DIR/$DEAL_II_PETSC_ARCH/lib \
+             ; then
+          AC_MSG_ERROR([PETSc has not been compiled for the architecture
+                        specified with --with-petsc-arch])
+        fi
+        ;;
+
       *)
         AC_MSG_ERROR([Unknown PETSc version])
 	;;
--- deal.ii-6.1.0/common/Make.global_options.in~	2008-03-04 16:08:20.000000000 -0500
+++ deal.ii-6.1.0/common/Make.global_options.in	2009-04-08 20:56:51.000000000 -0400
@@ -119,10 +119,15 @@
 # twiddle with whatever is necessary to link in PETSc.
 #
 # to make things more fun, the whole scheme was changed in petsc 2.3.0
+# and again in petsc 3.0.0!
 #
 # also sort of annoying is the fact that on Mac OS X, the trick with the
 # one library doesn't appear to work. Instead of a single library, we therefore
 # have to list all of them, at least if we are using shared libs.
+ifeq ($(DEAL_II_PETSC_VERSION_MAJOR),3)
+  lib-contrib-petsc-path.g = $(DEAL_II_PETSC_DIR)/$(DEAL_II_PETSC_ARCH)/lib
+  lib-contrib-petsc-path.o = $(DEAL_II_PETSC_DIR)/$(DEAL_II_PETSC_ARCH)/lib
+else
 ifeq ($(DEAL_II_PETSC_VERSION_MINOR),2)
   lib-contrib-petsc-path.g = $(DEAL_II_PETSC_DIR)/lib/libg_c++/$(DEAL_II_PETSC_ARCH)
   lib-contrib-petsc-path.o = $(DEAL_II_PETSC_DIR)/lib/libO_c++/$(DEAL_II_PETSC_ARCH)
@@ -130,6 +135,7 @@
   lib-contrib-petsc-path.g = $(DEAL_II_PETSC_DIR)/lib/$(DEAL_II_PETSC_ARCH)
   lib-contrib-petsc-path.o = $(DEAL_II_PETSC_DIR)/lib/$(DEAL_II_PETSC_ARCH)
 endif
+endif
 ifeq ($(findstring darwin,$(TARGET)),)
   lib-contrib-petsc.g = $(LIBDIR)/libpetscall.g$(lib-suffix)
   lib-contrib-petsc.o = $(LIBDIR)/libpetscall$(lib-suffix)
@@ -230,11 +235,15 @@
   # set PETSC_DIR and PETSC_ARCH to be used in variables file
   PETSC_DIR  = $(DEAL_II_PETSC_DIR)
   PETSC_ARCH = $(DEAL_II_PETSC_ARCH)
+  ifeq ($(DEAL_II_PETSC_VERSION_MAJOR),3)
+    include $(DEAL_II_PETSC_DIR)/conf/variables
+  else
   ifeq ($(DEAL_II_PETSC_VERSION_MINOR),2)
     include $(DEAL_II_PETSC_DIR)/bmake/$(DEAL_II_PETSC_ARCH)/variables
   else
     include $(DEAL_II_PETSC_DIR)/bmake/common/variables
   endif
+  endif
   CXXFLAGS.g += $(GCXX_PETSCFLAGS)
   CXXFLAGS.o += $(OCXX_PETSCFLAGS)
 endif

Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
dealii mailing list http://poisson.dealii.org/mailman/listinfo/dealii

Reply via email to