Consider adding conf to petsc4py install?

Issue #2 wontfix
Aron Ahmadia created an issue

We're using the modules in conf to build our own custom PETSc extensions.

It seems rather trivial to add this to the petsc4py install:

diff --git a/setup.py b/setup.py
index a4c62f5..eef8009 100755
--- a/setup.py
+++ b/setup.py
@@ -107,9 +107,11 @@ def run_setup():
             metadata['install_requires'] += ["petsc>=3.4,<3.5"]
     #
     setup(packages     = ['petsc4py',
-                          'petsc4py.lib',],
+                          'petsc4py.lib',
+                          'petsc4py.conf'],
           package_dir  = {'petsc4py'     : 'src',
-                          'petsc4py.lib' : 'src/lib'},
+                          'petsc4py.lib' : 'src/lib',
+                          'petsc4py.conf': 'conf'},
           package_data = {'petsc4py'     : ['include/petsc4py/*.h',
                                             'include/petsc4py/*.i',
                                             'include/petsc4py/*.pxd',

Objections?

Comments (5)

  1. Aron Ahmadia reporter

    Hmn, it seems like may need to edit the conf files themselves to import from the current "package" directory as well.

  2. Aron Ahmadia reporter

    Something like this:

    diff --git a/pkgs/petsc4py/petsc4py_install_conf.patch b/pkgs/petsc4py/petsc4py_install_conf.patch
    index 11fb628..8fee5c6 100644
    --- a/pkgs/petsc4py/petsc4py_install_conf.patch
    +++ b/pkgs/petsc4py/petsc4py_install_conf.patch
    @@ -1,3 +1,22 @@
    +diff --git a/conf/petscconf.py b/conf/petscconf.py
    +index a44164d..bde2ecd 100644
    +--- a/conf/petscconf.py
    ++++ b/conf/petscconf.py
    +@@ -12,10 +12,10 @@ __all__ = ['setup',
    +
    + # --------------------------------------------------------------------
    +
    +-from conf.baseconf import PetscConfig as BasePetscConfig
    +-from conf.baseconf import setup, Extension
    +-from conf.baseconf import config, build, build_src, build_ext
    +-from conf.baseconf import test, sdist
    ++from .baseconf import PetscConfig as BasePetscConfig
    ++from .baseconf import setup, Extension
    ++from .baseconf import config, build, build_src, build_ext
    ++from .baseconf import test, sdist
    +
    + # --------------------------------------------------------------------
    +
     diff --git a/setup.py b/setup.py
     index a4c62f5..eef8009 100755
     --- a/setup.py
    @@ -15,4 +34,4 @@ index a4c62f5..eef8009 100755
     +                          'petsc4py.conf': 'conf'},
                package_data = {'petsc4py'     : ['include/petsc4py/*.h',
                                                  'include/petsc4py/*.i',
    -                                             'include/petsc4py/*.pxd',
    +                                             'include/petsc4py/*.pxd',
    
  3. Lisandro Dalcin

    I think the code in conf/ is a mess. If we ever expose such features to users, we need to write something better, or perhaps expose it in core PETSc.

  4. Log in to comment