Thanks for the clarification on that. I did figure out the set
(variable ${varaible}) part though as a work-around.
Just my opinion but that is not very intuitive. Now that I know how
to deal with it I guess it is ok.
Thanks
---
Mike Jackson www.bluequartz.net
On Feb 4, 2009, at 10:04 AM, David Cole wrote:
There is no variable named "variable" inside your macro. There is
sort of like a "pre-processor token" that gets substituted in every
place ${variable} is referenced as the macro is expanded for use.
(Not exactly alike, but very similar to the C pre-processor macro
concept... (#define))
If you want a variable named the same as your macro parameter for
use in configure_file or other things that require actual variables,
simply do this inside your macro:
set(variable ${variable})
HTH,
David
On Wed, Feb 4, 2009 at 9:04 AM, Michael Jackson <[email protected]
> wrote:
Not sure what I am doing wrong but here is my problem.
I have a macro that takes a few arguments. Within the macro I am
calling "configure_file" and in the file that gets configured I am
using the values of the arguments. Unfortunately after the file is
configured during cmake time the values are blank. Here is a concise
test case.
#---- CMakeLists.txt file Begin
cmake_minimum_required(VERSION 2.6)
macro(vartest variable)
message(STATUS "----------------------------------")
message(STATUS "variable: ${variable}")
SET (Test_Variable "${variable}/Test_Output.cmake")
CONFIGURE_FILE("Test.txt.in" "Test.txt" @ONLY IMMEDIATE)
endmacro(vartest variable)
set (target "myTarget")
vartest(${target})
#---- CMakeLists.txt file End
# ---- Test.txt.in Begin
variable = @variable@
Test_Variable = @Test_Variable@
# ---- Test. txt.in End
The output I get from Cmake is:
509:[mjack...@shepard-2:Build]$ cmake ../
-- ----------------------------------
-- variable: myTarget
-- Configuring done
-- Generating done
-- Build files have been written to: /Users/mjackson/Desktop/Test/
Build
and the txt file looks like this:
variable =
Test_Variable = myTarget/Test_Output.cmake
Is this a bug or something I am doing wrong or am I just not
understanding something basic about macros. (Probably the "dumb"
part.. )
Thanks for any help
_________________________________________________________
Mike Jackson [email protected]
BlueQuartz Software www.bluequartz.net
Principal Software Engineer Dayton, Ohio
_______________________________________________
CMake mailing list
[email protected]
http://www.cmake.org/mailman/listinfo/cmake
_______________________________________________
CMake mailing list
[email protected]
http://www.cmake.org/mailman/listinfo/cmake