On 2009-05-03 10:14-0700 Alan W. Irwin wrote:

> Note, I think this is the first time that special stanza in pldll.h for
> the -DENABLE_DYNDRIVERS=OFF case has actually made a practical difference
> since all the rest of the PLDLLIMPEXP_DRIVER use is for symbols needed
> by the driver infrastructure code in libplplotd, and the matter of external
> visibility doesn't matter in that case because the required symbols are
> part of the library.  Therefore, if there is something wrong with that
> stanza, this is the first time we would know about it.  However, it's really
> simple logic to treat PLDLLIMPEXP_DRIVER the same as PLDLLIMPEXP, and I
> cannot see anything wrong with it.
>
> How can I debug this thicket of #ifdef's etc., to find whether my mental
> model of the pldll.h logic is deviating from reality?

I was a little surprised nobody here could answer that straightforward
question about debugging macros, but I discovered that the -dD cpp option
was what I wanted. That option dumps out all the values of the #defines, and
those in pldll.h were all empty because -DUSINGDLL was not specified by
cmake for the qt code being put into libplplot for the
-DENABLE_DYNDRIVERS=OFF case.

I have now (revision 9914) fixed that build system bug. As noted in the
src/CMakeLists.txt comments, the change is only for the qt code since there
is no other device driver where the driver symbols need to be visible for
the -DENABLE_DYNDRIVERS=OFF case.

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); PLplot scientific plotting software
package (plplot.org); 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
__________________________

------------------------------------------------------------------------------
The NEW KODAK i700 Series Scanners deliver under ANY circumstances! Your
production scanning environment may not be a perfect world - but thanks to
Kodak, there's a perfect scanner to get the job done! With the NEW KODAK i700
Series Scanner you'll get full speed at 300 dpi even with all image 
processing features enabled. http://p.sf.net/sfu/kodak-com
_______________________________________________
Plplot-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/plplot-devel

Reply via email to