[CMake] nested replacement with @@
Clinton Stimpson
clinton at elemtech.com
Wed Apr 10 16:02:45 EDT 2013
Another workaround is to make an intermediate variable in the CMakeLists.txt
file and use this intermediate variable from the .in file. That elminates the
nested @@'s.
Clint
On Wednesday, April 10, 2013 07:51:03 PM Eric Clark wrote:
> Nico,
>
> I had this same problem at one point in time, but was able to change it to
> the ${...} syntax which works beautifully. I know that you cannot use this
> syntax, but I will tell you that I did find a work-around for the nested
> @...@ syntax. The workaround is to run configure_file on the file twice.
> The nested @...@ symbols will always be replaced from the inside out which
> is the behavior that you want, you just have to run configure_file on the
> file for as many nests that you have. If the deepest nest you have is two
> nests, then you only need to run configure_file twice. I know this is kind
> of a kludge to fix it, but it does work from my experience...
>
> Hope this helps...
> Eric
>
> > -----Original Message-----
> > From: cmake-bounces at cmake.org [mailto:cmake-bounces at cmake.org] On
> > Behalf Of Nico Schlömer
> > Sent: Wednesday, April 10, 2013 12:55 PM
> > To: cmake
> > Subject: [CMake] nested replacement with @@
> >
> > Hi all,
> >
> > in a ProjectContfigTemplate.cmake.in file, I'd like to have variables such
> > as ${${PROJECT_NAME}_VERSION}. In ${}-syntax, the nesting is recognized
> > properly, and this string would be replaced by, e.g., "2.1".
> >
> > I know need to have ${}-variables in the output file, so I tried to switch
> > to the @-syntax. Replacing the above line by
> >
> > @@PROJECT_NAME at _VERSION@
> >
> > doesn't work however: The output file contains
> >
> > @Myproject_VERSION@
> >
> > i.e., only the inner variable was replaced.
> >
> > How to fix this?
> >
> > Cheers,
> > Nico
> > --
> >
> > 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
--
Clinton Stimpson
Elemental Technologies, Inc
Computational Simulation Software, LLC
www.csimsoft.com
More information about the CMake
mailing list