[CMake] Current binary directory confusion

Robert Dailey rcdailey.lists at gmail.com
Thu Jun 21 14:10:04 EDT 2012


I really want to do that, but unless I can add source files to a target
after its been created, I'm in a catch 22:

I need the location of that directory to place a resource file there, which
will be included in the target. HOWEVER-
I can't get the location without creating the target, and I can't include
the resource into the target without that.

On Thu, Jun 21, 2012 at 12:26 PM, Yuri Timenkov <yuri at timenkov.ru> wrote:

> Then you should use LOCATION target property
> (http://www.cmake.org/cmake/help/v2.8.8/cmake.html#prop_tgt:LOCATION)
> or use generator expressions, because exact place where resulting
> binary located depends on many things (used generator, other
> variables, like CMAKE_RUNTIME_OUTPUT_DIR, etc).
>
> On Thu, Jun 21, 2012 at 8:26 PM, Robert Dailey <rcdailey.lists at gmail.com>
> wrote:
> > You're totally confused. I'm not looking to work around a problem, I just
> > want information from CMake that I know it has. Somewhere it knows
> exactly
> > where binaries will be placed (those binaries that get compiled) because
> it
> > has to generate the scripts and visual studio projects with those paths
> > inside.
> >
> > CMake is generating resource files that must be placed in these
> directories
> > and are later included in the targets to be compiled, so I need to know
> this
> > directory so that no matter what generator I'm using, the resource file
> will
> > always be copied to the proper location.
> >
> >
> > On Thu, Jun 21, 2012 at 11:07 AM, J Decker <d3ck0r at gmail.com> wrote:
> >>
> >> On Thu, Jun 21, 2012 at 8:58 AM, Robert Dailey <
> rcdailey.lists at gmail.com>
> >> wrote:
> >> > So how do I get the absolute path to this directory in a portable
> >> > (between
> >> > generators) way?
> >> >
> >> >
> >>
> >> Well, what is it you want from there?  I generate INSTALL commands to
> >> put the outputs where I want them and let them worry about where the
> >> files are?
> >>
> >> > On Thu, Jun 21, 2012 at 9:03 AM, J Decker <d3ck0r at gmail.com> wrote:
> >> >>
> >> >> On Wed, Jun 20, 2012 at 12:08 PM, Robert Dailey
> >> >> <rcdailey.lists at gmail.com> wrote:
> >> >> > ${CMAKE_CURRENT_BINARY_DIR} returns a directory that contains
> >> >> > generated
> >> >> > files, such as vcproj files when generating for visual studio.
> >> >> > However,
> >> >> > actual compiled binaries are placed:
> >> >> >
> >> >> > ${CMAKE_CURRENT_BINARY_DIR}/${target_name}.dir/Debug (for debug
> >> >> > configuration)
> >> >> >
> >> >> > Is there a variable or target property that will give me the
> >> >> > following
> >> >> > path
> >> >> > for any target:
> >> >> >
> >> >> > ${CMAKE_CURRENT_BINARY_DIR}/${target_name}.dir
> >> >> >
> >> >> > (I don't care about debug/release being part of the path, I just
> want
> >> >> > the
> >> >> > "target.dir" part to be included in the path. Right now I'm
> >> >> > hard-coding
> >> >> > the
> >> >> > ".dir" directory and appending it to my path, but I don't know if
> >> >> > this
> >> >> > naming scheme is guaranteed by CMake or if it will change in the
> >> >> > future.
> >> >> >
> >> >> it differs from generator to generator
> >> >>
> >> >> > --
> >> >> >
> >> >> > Powered by www.kitware.com
> >> >> >
> >> >> > Visit other Kitware open-source projects at
> >> >> > http://www.kitware.com/opensource/opensource.html
> >> >> >
> >> >> > Please keep messages on-topic and check the CMake FAQ at:
> >> >> > http://www.cmake.org/Wiki/CMake_FAQ
> >> >> >
> >> >> > Follow this link to subscribe/unsubscribe:
> >> >> > http://www.cmake.org/mailman/listinfo/cmake
> >> >
> >> >
> >
> >
> >
> > --
> >
> > Powered by www.kitware.com
> >
> > Visit other Kitware open-source projects at
> > http://www.kitware.com/opensource/opensource.html
> >
> > Please keep messages on-topic and check the CMake FAQ at:
> > http://www.cmake.org/Wiki/CMake_FAQ
> >
> > Follow this link to subscribe/unsubscribe:
> > http://www.cmake.org/mailman/listinfo/cmake
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.cmake.org/pipermail/cmake/attachments/20120621/b6787ec7/attachment-0001.htm>


More information about the CMake mailing list