<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
<title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
You were close:<br>
<br>
here's a function to handle the wrapping - could stick this in the
Findtolua.cmake file that you've hopefully made.<br>
<br>
function wrap_tolua(outvar)<br>
set(outfiles)<br>
foreach(in ${ARGN})<br>
get_filename_component(inAbs ${in} ABSOLUTE)<br>
get_filename_component(basename ${in} NAME_WE)<br>
set(outfile
"${CMAKE_CURRENT_BINARY_DIR}/generated_${basename}.cpp")<br>
list(APPEND outfile "${outfile}")<br>
add_custom_command(OUTPUT "${outfile}"<br>
COMMAND ${TOLUA_EXECUTABLE} -o "${outfile}" -n
${basename} "${inAbs}"<br>
DEPENDS "${inAbs}"<br>
COMMENT "Wrapping ${basename} with tolua")<br>
endforeach()<br>
set(${outvar} ${outfiles} PARENT_SCOPE)<br>
endfunction()<br>
<br>
<br>
Then, to do your example:<br>
<br>
find_package(tolua REQUIRED)<br>
<br>
wrap_tolua(TOLUA_WRAPPED_SRC math.pkg another.pkg)<br>
add_library(myLib theMain.cpp ${TOLUA_WRAPPED_SRC})<br>
<br>
(This is similar to how Qt and FLTK builds take place.)<br>
<br>
Hope this helps! Please share your find module with this code added
and tweaked, if needed - thanks!<br>
<br>
Ryan<br>
<br>
On 08/31/2010 02:44 PM, Anders Backman wrote:
<blockquote
cite="mid:AANLkTi=wpgtEUW9MrUiK6HD+j5utjRKzQ4kTKkDEGnLB@mail.gmail.com"
type="cite">Hi all.
<div><br>
</div>
<div>I have a directory of .pkg files to be processed by tolua.
This in turn generates a bunch of cpp files, which I then link
into a library.</div>
<div><br>
</div>
<div>My problem right now is that, I would like to generate a
project, where each .pkg is associated with a custom command, so
that I in visual studio (for exampel) can "compile" each .pkg
file individually.</div>
<div><br>
</div>
<div>I have managed to create a library, and to get all the
generated cpp file associated to the library+a custom target
command which is executed PRE_BUILD to the library.</div>
<div>But thats not quite what I would like. Because then I cant
just compile one .pkg file if I edit it. Using the above
approach, requires me to build the whole project, which compiles
ALL .pkg files associated to it, not what I want. I want to
setup a proper dependency chain, so that If a .pkg file is
modified, the corresponding "generated"_xx.cpp is generated, and
the project is linked.</div>
<div><br>
</div>
<div>So I guess Im looking for something like:</div>
<div><br>
</div>
<div>add_library(myLib theMain.cpp </div>
<div> generated_math.cpp </div>
<div> math.pkg </div>
<div>)</div>
<div><br>
</div>
<div>
<div>set_source_files_properties(generated_math.cpp GENERATED)</div>
</div>
<div><br>
</div>
<div>being able to tell CMake that .pkg files are treated in a
certain way:</div>
<div>The command that I want to execute for each .pkg is:</div>
<div><br>
</div>
<div>tolua -o generated_math.cpp<span class="Apple-tab-span"
style="white-space: pre;"> </span>-n math<span
class="Apple-tab-span" style="white-space: pre;"> </span>math.pkg</div>
<div><br>
</div>
<div>So any hints on how to do this?</div>
<div>I can certainly do this in VisualStudio, adding .pkg files to
the project, and setting the build events on it, but I need a
portable solution...</div>
<div><br>
</div>
<div>/A</div>
<pre wrap="">
<fieldset class="mimeAttachmentHeader"></fieldset>
_______________________________________________
Powered by <a class="moz-txt-link-abbreviated" href="http://www.kitware.com">www.kitware.com</a>
Visit other Kitware open-source projects at <a class="moz-txt-link-freetext" href="http://www.kitware.com/opensource/opensource.html">http://www.kitware.com/opensource/opensource.html</a>
Please keep messages on-topic and check the CMake FAQ at: <a class="moz-txt-link-freetext" href="http://www.cmake.org/Wiki/CMake_FAQ">http://www.cmake.org/Wiki/CMake_FAQ</a>
Follow this link to subscribe/unsubscribe:
<a class="moz-txt-link-freetext" href="http://www.cmake.org/mailman/listinfo/cmake">http://www.cmake.org/mailman/listinfo/cmake</a></pre>
</blockquote>
<br>
<pre class="moz-signature" cols="72">--
Ryan Pavlik
HCI Graduate Student
Virtual Reality Applications Center
Iowa State University
<a class="moz-txt-link-freetext" href="http://academic.cleardefinition.com">http://academic.cleardefinition.com</a>
<a class="moz-txt-link-freetext" href="http://rpavlik.youcanbook.me">http://rpavlik.youcanbook.me</a></pre>
</body>
</html>