To all PLplot developers and testers lurking on this list:

I have made an important change to the way we link libraries with
revision 12165 so please pay close attention to this message.

I am reviving this thread since non transitive linking is essential to
avoid excessive linking and the associated excessive package
dependencies.  Non-transitive linking (where only the direct
dependencies are linked, and not the dependencies of those
dependencies) is also a good way to flush out any linking issues
(e.g., failing to link to libraries which should be directly linked to
a library or executable) that are covered up by the sloppy practice of
transitive linking.

I wrote some time ago in this thread that -DNON_TRANSITIVE=ON worked
on my Debian Squeeze platform for the most comprehensive set of tests
allowed by our test suite. I _think_ that is also the case for other
more modern Linux platforms that have more careful linkers installed,
but please correct that impression if I got that wrong.

Assuming we have worked out all linking issues for the non transitive
case by our Linux experiments, then the only other issue is whether
the platform run-time linker can handle the case of non-transitive
linking.  We know that is true on Linux, I suspect it is true for
Mac OS X, but I have no clue for the Windows platform case whether
their run-time loader can handle the non-transitive linking case or not.

Anyhow, to flush out any final problems with the NON_TRANSITIVE=ON
case on Linux and also to see if setting that option to ON works for
Mac OS X, I have set (revision 12165) NON_TRANSITIVE=ON by default for
all non-Windows platforms (for the shared libraries case).

Please test this new default (for the default shared libraries case)
on all Linux and Mac OS X platforms. If any transitive linking
problems show up as a result of those tests (i.e., the default
NON_TRANSITIVE=ON does not work while -DNON_TRANSITIVE=OFF works) we
can adjust the default back to OFF for the affected platform.

Although NON_TRANSITIVE is set to OFF by default for Windows
platforms, I would also appreciate those with access to Windows
platforms overriding that default by trying -DNON_TRANSITIVE=ON to see
whether non-transitive linking works at all for various Windows
platforms.  For example, it might work fine for MinGW and Cygwin but
not for bare Windows, but we need tests to find that out so we can
finalize what the default value of NON_TRANSITIVE should be for the
various Windows platforms.

Alan
__________________________
Alan W. Irwin

Astronomical research affiliation with Department of Physics and Astronomy,
University of Victoria (astrowww.phys.uvic.ca).

Programming affiliations with the FreeEOS equation-of-state
implementation for stellar interiors (freeeos.sf.net); the Time
Ephemerides project (timeephem.sf.net); PLplot scientific plotting
software package (plplot.sf.net); the libLASi project
(unifont.org/lasi); the Loads of Linux Links project (loll.sf.net);
and the Linux Brochure Project (lbproject.sf.net).
__________________________

Linux-powered Science
__________________________

------------------------------------------------------------------------------
Virtualization & Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
_______________________________________________
Plplot-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/plplot-devel

Reply via email to