[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[IMP-dev] Cleanup of config/build/install script

I just committed a cleanup of the config/build/install scripts following comments and patches posted previously. The changes have the following user-visible consequences:
new arguments added to scons:
- cxxflags, ldflags which allow the addition of arbitrary compile and link flags
- pythonpath which allows dirs to be added to the python path

linking has been changed as follows:
- on a mac the library ids are now set properly, both for when the libraries are in build/lib and when they are in installed. This means that you can link against them without hassle once installed. It also means that you just have to have PYTHONPATH set properly in order to use IMP
- search paths orderings should be consistent everywhere
- on linux, unusual directories containing libraries (i.e. things passed in the libflags argument) are added to the libraries runtime search path. This makes it less likely that a library is linked against one external library and run against another, as was easily the case before.

imppy.sh has been changed as follows:
- the local paths are prepended to the search path, not appended, so local copies of IMP will hide ones elsewhere on the system - external LD_LIBRARY_FLAGS and PYTHONPATH and no longer propagated from the environment (but things can be added to them via scons). This means that "scons test" runs tests in the same environment as if you run the tests yourself with ./bin/imppy.sh
- on a mac, LD_LIBRARY_FLAGS is not set as it is no longer needed

I have tested everything on my linux box and mac, so I am reasonably confident that they should work. But please report any new problems promptly. And hopefully any issues with other platforms should be cleared up by Monday.

Unfortunately, it is still not possible to use the diva copy of modeller as the modeller test scripts are kind of strange and I didn't feel like messing with them. Likewise, since EMBed doesn't have a proper installer, it is still a special case.