On Tue, 5 Jul 2005, Johan Jansson wrote:
> Hi, > > Below is some discussion about PETSc standard installation and > packages. It seems that a petsc-dev package should include the PETSc > source, and thus that DOLFIN can assume the PETSc source is available > when building. This would solve both the pcimpl.h issue as well as the > issue of extracting PETSc compiler flags. Hi, I mean no disrespect, but I think that assuming that the source is available would make life much more difficult for packagers, is very non-standard, and generally undesirable. If you don't believe me, ask people on an appropriate technical mailing list. debian-devel at lists.debian.org comes to mind. In general a *-dev should contain headers files and that is all. I could probably find some technical standards material to quote you on this if you wanted. If I understand correctly, you want to access some internals of PETSc, so having the 'public' headers available is not sufficient since you want to compile against a header that defines a 'private' implementation, is that correct? I don't know what the best way of resolving this is, but I do think that compiling DOLFIN should work 'out-of-the-box' on a 'make install' of PETSc. I can see three possibilities. a) The PETSc 'make install' adds these internal details as necessary to a make install. This would be a reasonable solution. One could argue that if someone needs to access these private details, then perhaps they should be regarded as public. b) The packager adds these files to the PETSc package to make the compilation of DOLFIN work. I'm certainly willing to do that if you told me what and where to put the extra files. However, this means DOLFIN would not compile with the result of a PETSc 'make install'. Also, this solution does not scale well, since some other package may want to access some other internal stuff. However, this would still be better than expecting the full source to be present. c) DOLFIN includes those files itself. This is another possibility which is not ideal, since DOLFIN should not really be shipping bits of another package. However, still preferable to assuming the source is available. Please bear in mind that the current size of PETSc, as I have packaged it, is around 130 Mb. This is already on the large size for a library package, and having to make the source available would make this even larger. I'd like to figure out ways to make this smaller. Please, I beg both the DOLFIN and PETSc development teams to reconsider. Again, I mean no disrespect. I appreciate all your hard work and expertise, and just want what is technically best. Thank you for your attention. Faheem.
