On Mon, Sep 28, 2009 at 10:58 AM, Johan Hake <h...@simula.no> wrote: > On Monday 28 September 2009 09:07:49 Johannes Ring wrote: >> On Sun, Sep 27, 2009 at 8:51 PM, Johan Hake <h...@simula.no> wrote: >> > On Sunday 27 September 2009 20:18:07 Garth N. Wells wrote: >> >> Johan Hake wrote: >> >> > On Sunday 27 September 2009 19:49:09 Garth N. Wells wrote: >> >> >> Where's the appropriate place in the build system to test for the >> >> >> version number of external libraries? Is it in dolfin/SConscript >> >> >> (using the simula-scons function 'checkVersion')? >> >> > >> >> > I do not think we have any defined sections in SConstruct/SConscript >> >> > where this should be done. We have used checkVersion to check for the >> >> > swig version some years ago... It is still there as out-commented code >> >> > in the SConscript file. >> >> > >> >> > I think the function just compare a version string with another handed >> >> > version string, where the numbers are delimited by '.'. >> >> > >> >> > Aren't there any version checks done in the pkg-config generator >> >> > files? >> >> >> >> No, but I guess that's not the place to do it since they are unrelated >> >> to DOLFIN and just produce a foo.pc file. >> >> >> >> I guest the right way is to use 'pkg-config --version foo.pc' rather >> >> than checkVersion. >> > >> > Again, checkVersion is just a function that check if a version string is >> > larger or equal than a passed version string. So the test might look >> > something like this: >> > >> > foo_version = getoutput("pkg-config --version foo.pc") >> > if scons.checkVersion(foo_version,"3.0.0"): >> > raise Error >> > >> >> Still, I don't know where this check is best performed. >> > >> > Not sure either. I added an extensive check for the SWIG version in >> > SConscript. I have never felt good about that piece of code... >> > >> > With the present state of the build system it is not easy to answer >> > questions like this. However it would be nice to add some functionality >> > to the scons.cfg file. Instead of passing a list of strings, stating the >> > dependencies we pass a dict. >> > >> > Something like: >> > >> > OptDependencies = {'petsc':'3.0.0', >> > 'slepc':'2.3.3': >> > 'foo':None, >> > ...} >> >> This is already possible. After a few minor bug fixes I ended up with >> the following OptDependencies in dolfin/scons.cfg: >> >> OptDependencies = {'petsc': '3.0.0', >> 'slepc': '3.0.0', >> 'scotch': '5.1', >> 'umfpack': '5.2.0', >> 'gts': '0.7.6', >> 'trilinos': '7.0.0', >> 'cholmod': '1.6.0', >> 'mtl4': '4', >> 'parmetis': '3.1', >> 'gmp': '4.2.4', >> 'zlib': '1.2.3'} > > Is this possible for the Dependencies and SwigDependencies too? I think we are > dependent on Python 2.5 for PyDOLFIN.
Yes, it is possible. Johannes > And what is it with the last part of the naming of some generated pkg-config > files: > > ufc-1.pc, numpy-1.pc and python-2 > > I understand that this denote the major version number, but isn't this handled > with the version flag? > > If we do not use the versioning by naming, should we change the naming? > > Johan > _______________________________________________ DOLFIN-dev mailing list DOLFIN-dev@fenics.org http://www.fenics.org/mailman/listinfo/dolfin-dev