On Thu, 11 Apr 2013, Matthew Knepley wrote: > On Wed, Apr 10, 2013 at 7:53 PM, Satish Balay <balay at mcs.anl.gov> wrote: > > > How do we handle these packages with complicated dependencies [they > > are complicated as petsc dependencies?] > > > > In this report hdf5 was built with szip-2.1 and zlib-1.2.7. So how > > does petsc configure automatically detect this? > > > > And I've recently used the following for hdf5/necddf5 on fusion [with > > the extra implicit depenceny of hdf5 on zlib, and netcdf5 on hdf5 from > > within configure] > > > > '--with-hdf5-lib=-L/soft/hdf5/1.8.6-parallel/lib -lhdf5_hl -lhdf5 > > -lgpfs', > > > > '--with-netcdf-lib=-L/soft/netcdf/4.1.1-parallel/lib -lnetcdff > > -lnetcdf -L/usr/kerberos/lib64 -lcurl -ldl -lgssapi_krb5 -lkrb5 -lk5crypto > > -lcom_err -lidn -lssl -lcrypto -lz', > > > > Yeah - things work if the user knows the dependencies and the link > > command for those dependencies - and specify it to petsc configure as > > above. But I'm not sure how to autodetect this. > > > > Also currently -lz is handled in package.py with > > 'self.needsCompression' similar to 'self.needsMath' with the detection > > of -lz in libraires.py:checkCompression() - but one can't specify a > > --with-zlib-lib option this way. I guess this part can be fixed by > > migrating it a standalone package z.py. [And somehow handle the > > optional part of this dependency for hdf5] > > > We already have a mechanism for this. Lots of packages depend on > other packages. This is just screwed up in the case of libz because > someone (maybe me) did not want to write an entire package file for > it, and instead copped out with the needsCompression.
Currently we handle 'mandatory' dependencies properly - and optional >depencencies for --download-pakcage somewhat - but not for --with-package-dir For hdf5 - handling just zlib.py is not sufficient. Do we add szip.py, zlib.py, gpfs.py [and perhaps more] for hdf5? And somehow use these as optionaly when testing for user provided --with-hdf5? Which package currently implements this usage [to check for this optionaly dependency - and give the correct error]? i.e In this case - when the user specified --with-hdf5-dir option. We had to print an error.: * please provide --with-zlib-dir and --with-szip-dir options. [For a different user - with the same usage - there would be no error] For netcdf above one would have kerbros.py, curl.py and perhaps more? Satish
