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
