[petsc-dev] BuildSystem: how to prevent 'make clean' before 'make'

Blaise A Bourdin bourdin at lsu.edu
Wed Nov 29 17:20:40 CST 2017


I am trying to get BuildSystem to build pnetcdf (parallel netcdf automatically).
The build process is very straightforward (configure; make; make install)
Looking at other packages, I came up with the following for $PETSC_DIR/config/BuildSystem/config/packages/pnetcdf.py

import config.package
import os

class Configure(config.package.GNUPackage):
  def __init__(self, framework):
    config.package.Package.__init__(self, framework)
    self.download          = ['http://cucis.ece.northwestern.edu/projects/PnetCDF/Release/parallel-netcdf-1.8.1.tar.gz']
    self.functions         = ['ncmpi_create']
    self.includes          = ['pnetcdf.h']
    self.liblist           = [['libpnetcdf.a']]
    self.downloaddirnames  = ['parallel-netcdf-1.8.1']

  def setupDependencies(self, framework):
    config.package.GNUPackage.setupDependencies(self, framework)
    self.mpi   = framework.require('config.packages.MPI', self)
    self.deps  = [self.mpi]

  def formGNUConfigureArgs(self):
    args = config.package.GNUPackage.formGNUConfigureArgs(self)
    return args

Looking at configure.log, it looks like BuildSystem does a make clean between configure and make
Unfortunately, there must be something wrong with the parallel-netcdf makefile, as make clean erases some of the files generated by pkgconfig (?), so that make install later fails...

Is there an easy way to skip the 'make clean' step? 


Department of Mathematics and Center for Computation & Technology
Louisiana State University, Baton Rouge, LA 70803, USA
Tel. +1 (225) 578 1612, Fax  +1 (225) 578 4276 http://www.math.lsu.edu/~bourdin

More information about the petsc-dev mailing list