[CMake] LIBRARY_OUTPUT_PATH,
EXECUTABLE_OUTPUT_PATH broken if CMake variables used.
Rob Mathews
Rob.Mathews at varolii.com
Wed May 9 09:33:58 EDT 2007
While we're at it, I notice some other VC variables that have crept in.
What's the CMake equivalent for these VC variables:?
$(OutDir)
$(ConfigurationName)
Thanks.
-----Original Message-----
From: Bill Hoffman [mailto:bill.hoffman at kitware.com]
Sent: Wednesday, May 09, 2007 8:11 AM
To: Rob Mathews
Cc: cmake at cmake.org
Subject: Re: [CMake] LIBRARY_OUTPUT_PATH, EXECUTABLE_OUTPUT_PATH broken
if CMake variables used.
Rob Mathews wrote:
> Ie, something like:
>
> SET(LIBRARY_OUTPUT_PATH "$(SolutionDir)lib" CACHE PATH "Single output
> directory for building all libraries." FORCE)
>
>
> doesn't work any more because cmSystemTools::FileIsFullPath() thinks
> that "$SolutionDir)lib" is a relative path && prepends the project
> location to it.
>
>
> The fix would either be to visit every place where
> cmSystemTools::FileIsFullPath() is called and consider if a variable
> should be allowed, or change cmSystemTools::FileIsFullPath to return
> "true" when it starts with a "$" (ie, a variable), and then let the
user
> deal with it.
>
>
That is not a CMake variable. That is a visual studio variable, and if
that ever worked it was by luck. Is there a reason not to use the CMake
variable ${PROJECT_BINARY_DIR}lib, it should have about the same
effect. Unless, you are trying to create relocatable vcproj files that
can be moved from machine to machine without having to run cmake, which
really is not that supported.
-Bill
More information about the CMake
mailing list