[vtkusers] Improvements for VTK makefiles.

David Gobbi dgobbi at irus.rri.on.ca
Thu Dec 7 11:09:32 EST 2000


Hi Prabhu,

This is just to confirm that I committed the python-related changes and
they work fine.  Also, the RPMs now install in /usr (not /usr/local),
you mentioned that you'd like to see this (thanks, Dan).

As for the java & install changes, I won't have time to look at them
anytime soon but if someone else with CVS write access could take a
peek, please do!

 - David

On Thu, 7 Dec 2000, Prabhu Ramachandran wrote:

> As I had written a while back, I had desired to improve some of the
> VTK makefiles in order to ease packaging/installing VTK.  I did some
> work on this.  I dont have CVS access and David Gobbi was kind enough
> to accept, test and commit my first set of patches.  I have a few more
> and David might not have the time to look at them.  So if someone
> would like to help, let me know and I will mail you a tarball of the
> changed files so that you can take a look and commit the necessary
> stuff to VTK.  Here are some of things I have added that David has
> checked and has possibly already committed.
>
>     (1) The Python libraries were extremely large because they had the
>     C++ library code compiled into them as well.  This resulted in ~13
>     MB of bloat in the libraries!  David suggested that I try linking
>     the libraries to the required VTK C++ libraries instead of
>     compiling the C++ library code into it.  I tried it and it worked.
>
>     (2) He also urged me to add rules to build static libraries for
>     the Python bindings.  I added fixes to the Makefiles and configure
>     and tested it.  It seems to work well.  David also tested them and
>     has agreed to commit them when he can.  Thanks, David.
>
> So the Python libraries should be smaller and static Python libraries
> should also work fine.
>
> Here are some additions that are related to packaging.  I have tested
> these under linux and they work fine.  I dont know about other Unices.
>
>    (1) I have added new rules for 'make doc', 'make install_doc', 'make
>    install_headers' and 'make install_examples' to
>    <vtk_src_root>/Makefile.in.  The rules are not very sophisticated
>    and are relatively simple.  All the new additions will affect only
>    make install and make clean (which additionally removes the
>    generated documentation).  'make all' should not do anything new.
>
>    (2) Added some new variables to user.make to ease choice of install
>    dirs for different things - the names are self explanatory like
>    HEADER_INSTALL_DIR, EXAMPLE_INSTALL_DIR etc.
>
>    (3) Changed the python 'make install' rule a bit to make use of the
>    modified user.make.
>
>    (4) Fixed Java jar file creation/installation.  Basically, I do
>    this
>
>    vtk: libvtkJava$(SHLIB_SUFFIX)
>         # Make a jar file
>         cd ${JAVA_CLASS_HOME}; ${JAR} -fc vtk.jar vtk/*.class
>
>    which works.  I also set JAVA_CLASS_HOME = ${VTK_OBJ}/java in
>    user.make.  I modified the install rule similarly to install the
>    right jar file.  I dont know if this is optimal - but it sure works
>    under linux with jdk1.1.8v1-3.
>
>    (5) Changed a few things in the doxyfile to suit "normal" users
>    (set extract_all = NO) and to get it to work with the 'make doc'
>    and 'make install_doc' rules.
>
> Doing this simplifies the generation of rpms and debs somewhat.  If
> someone with CVS access has the time to look at this and commit it I
> will be happy to mail you a tarball of the changes.  Hopefully I will
> also update the spec file for the rpm next weekend.
>
> thanks,
> prabhu






More information about the vtkusers mailing list