[CMake] file (GLOB) on linux with CMake 2.8

Ryan Pavlik rpavlik at iastate.edu
Mon Mar 1 13:05:45 EST 2010


>> your directory to get a list of files, and do a "set(SOURCES)" command
>> and paste your file list in, or some similar technique.
>>
>> See this link for some info on why:
>> http://www.cmake.org/cmake/help/cmake2.6docs.html#command:aux_source_directory
>>      
> Your technique (use ls) is no better than file(GLOB) because either way
> the logic is only run at CMake configure time which leads to CMake not
> knowing when it needs to regenerate your build files.
>
> The best practice (which I heartily recommend) is to hardcode the list
> of files into your CMakeLists.txt.
>
> tyler
>    
I meant to use "ls" when writing the cmakelists.txt file, not to have 
cmake itself run ls.  It's a "lazy coder" trick; running this command in 
a terminal :
ls *.cpp *.c *.h | sort

provides something I can copy and paste into my cmakelists.txt file, and 
update as I add new files.

Ryan

-- 
Ryan Pavlik
HCI Graduate Student
Virtual Reality Applications Center
Iowa State University

rpavlik at iastate.edu
http://academic.cleardefinition.com
Internal VRAC/HCI Site: http://tinyurl.com/rpavlik



More information about the CMake mailing list