Hi Vadim:

Thanks for your LIB_TAG bug report which was caused by some of our
visibility logic assuming LIB_TAG was always "d".  I have now fixed that bug
(revision 9843).  Please try out that revision to make sure it works for you
(with an additional suffix of "d", see below).

A question for all developers here:

During investigation of the above bug, I was reminded that our present build
system has the following logic in cmake/modules/double.cmake.

if(PL_DOUBLE)
  set(LIB_TAG "${LIB_TAG}d")
endif(PL_DOUBLE)

PL_DOUBLE defaults to ON (since most people want the double-precision
version of the PLplot libraries).  So what this logic normally does is
appends the suffix "d" (meaning "double precision") to whatever suffix you
specify for LIB_TAG as a cmake option.

I would prefer the following logic instead:

if(PL_DOUBLE AND NOT DEFINED LIB_TAG)
  set(LIB_TAG "d")
endif(PL_DOUBLE AND NOT DEFINED LIB_TAG)

In other words, if somebody specifies a library name suffix on the command
line including the null string, let us assume they know what they want so
that is exactly what they get.  However, if -DLIB_TAG is not specified at
all by the user, then the suffix will be "d" for the usual (default)
PL_DOUBLE case just like it is now.

Does any developer here mind this proposed change to the build-system logic?

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
__________________________
 Hello,



 I noticed that plplot build supported optionally appending a suffix to all

the libraries being built via the setting of LIB_TAG option. This seemed to

be exactly what I needed to make it possible to use both debug and release

builds of it at the same time (and looking at the archives, this seems to

be exactly what it was added for). However it simply doesn't work for me:

if I use (many more options omitted but they don't matter)



        cmake -G "NMake Makefiles" -DLIB_TAG=_debug_ ..



I get plenty of warnings about inconsistent DLL linkage as well as this

error:



plplot\include\plcore.h(93) : error C2491: 'plsc' : definition of dllimport 
data not allowed





 I have really hard time understanding anything in cmake-generated

makefiles (this system was clearly never meant to be understandable by

human beings...) but it seems that the source of the problem is that in

various flags.make files -Dplplotcxx_debug_d_EXPORTS is used instead of

-Dplplotcxxd_EXPORTS. Unfortunately I don't know what would be the right

way to fix this (and I could be wrong about the problem being due to this

anyhow).



 Thanks in advance for any help, it would be really great to have this

working!

VZ



P.S. It would be also nice if LIB_TAG setting actually overrode the "d"

     suffix added when using "double" or if the user-specified value were

     at least appended and not prepended to it as the current schema

     results in rather unreadable names like "plplotdd.dll" if you just

     naively use LIB_TAG="d" for the debug build as I originally did.

Attachment: pgpilsZzPyKdr.pgp
Description: PGP signature

------------------------------------------------------------------------------

Stay on top of everything new and different, both inside and 

around Java (TM) technology - register by April 22, and save

$200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.

300 plus technical and hands-on sessions. Register today. 

Use priority code J9JMT32. http://p.sf.net/sfu/p
_______________________________________________

Plplot-devel mailing list

Plplot-devel@lists.sourceforge.net

https://lists.sourceforge.net/lists/listinfo/plplot-devel

------------------------------------------------------------------------------
Crystal Reports - New Free Runtime and 30 Day Trial
Check out the new simplified licensign option that enables unlimited
royalty-free distribution of the report engine for externally facing 
server and web deployment.
http://p.sf.net/sfu/businessobjects
_______________________________________________
Plplot-devel mailing list
Plplot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-devel

Reply via email to