[CMake] Target names now pollute namespace of filenames (was CMake 2.4.4 available for download)

Alan W. Irwin irwin at beluga.phys.uvic.ca
Thu Nov 23 12:01:00 EST 2006


On 2006-11-23 07:13-0800 Alan W. Irwin wrote:

> Upon further reflection, I think this is a newly introduced bug in
> CMake-2.4.4 that urgently needs to be fixed.  Essentially what is going on
> is that the namespace of filenames which are mentioned in DEPENDS
> subcommands has been contaminated by the target namespace in 2.4.4.  This is
> especially bad since targets affect the whole build tree.  Thus, all build
> systems (KDE?) with coincidences between any target name and any filename
> DEPENDS will be adversely affected by this bug.
>
> I hope to create a simple example and bug report soon.

Done, see bug 4072 including the promised simple example of this bug.

For all those trying cmake-2.4.4, if custom commands that executed fine for
2.4.3 fail to execute for 2.4.4 it may well be this bug.  The only
workaround for 2.4.4 that I have found is to check for any coincidences
between DEPENDS filenames and target names (library, executable or custom)
and change the target name or file name to break the coincidence.  Note, if
you want to keep the names of the generated executables, libraries, and
files identical in all respects, you can change a target name for say an
executable or library and change the associated name of the executable or
library back to the old name using the OUTPUT_NAME subcommand of the
SET_TARGET_PROPERTIES command. However, for big projects that workaround
could be a lot of trouble, and in general it is not good to have such
namespace pollution from targets to filenames so I hope this bug gets fixed
in a quick bugfix release instead.

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 Yorick front-end to PLplot (yplot.sf.net); the
Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project
(lbproject.sf.net).
__________________________

Linux-powered Science
__________________________


More information about the CMake mailing list