On Wed, Oct 28, 2009 at 02:32:22PM -0400, David Cole wrote: > You are touching an existing header file... > > What happens if you add a new header file that was not there the first time > you ran make install?
Sorry, I left out the part where I cleaned up and switched to the other CMakeLists in my copy-pasting. [tyle...@alta:~/install-dir-vs-file-glob-test/b]$ ls ../include/ foo.h [tyle...@alta:~/install-dir-vs-file-glob-test/b]$ cmake .. -- The C compiler identification is GNU -- The CXX compiler identification is GNU -- Check for working C compiler: /usr/bin/gcc -- Check for working C compiler: /usr/bin/gcc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Configuring done -- Generating done -- Build files have been written to: /alta/tylermr/install-dir-vs-file-glob-test/b [tyle...@alta:~/install-dir-vs-file-glob-test/b]$ make install Install the project... -- Install configuration: "" -- Installing: /tmp/install.test.tmr/include/include -- Installing: /tmp/install.test.tmr/include/include/foo.h [tyle...@alta:~/install-dir-vs-file-glob-test/b]$ touch ../include/bar.h [tyle...@alta:~/install-dir-vs-file-glob-test/b]$ make install Install the project... -- Install configuration: "" -- Installing: /tmp/install.test.tmr/include/include -- Up-to-date: /tmp/install.test.tmr/include/include/foo.h -- Installing: /tmp/install.test.tmr/include/include/bar.h tyler > On Wed, Oct 28, 2009 at 2:26 PM, Tyler Roscoe <ty...@cryptio.net> wrote: > > > On Wed, Oct 28, 2009 at 01:18:55PM -0400, David Cole wrote: > > > Except: that argument is not valid in this case. Neither file(GLOB nor > > > install(DIRECTORY will "rerun" anything if a new header file is added > > into > > > the directory... > > > > David I don't think this is correct. > > > > Here's a test using file(GLOB) + install(FILES): > > > > [tyle...@alta:~/install-dir-vs-file-glob-test/b]$ cat ../CMakeLists.txt > > cmake_minimum_required(VERSION 2.6) > > project (test) > > > > set (CMAKE_INSTALL_PREFIX "/tmp/install.test.tmr") > > > > file (GLOB header_files "include/*.h") > > install (FILES ${header_files} DESTINATION include) > > > > [tyle...@alta:~/install-dir-vs-file-glob-test/b]$ cmake .. > > -- Configuring done > > -- Generating done > > -- Build files have been written to: > > /alta/tylermr/install-dir-vs-file-glob-test/b > > > > [tyle...@alta:~/install-dir-vs-file-glob-test/b]$ make install > > Install the project... > > -- Install configuration: "" > > -- Installing: /tmp/install.test.tmr/include/foo.h > > > > [tyle...@alta:~/install-dir-vs-file-glob-test/b]$ touch > > ../include/bar.h > > > > [tyle...@alta:~/install-dir-vs-file-glob-test/b]$ make install > > Install the project... > > -- Install configuration: "" > > -- Up-to-date: /tmp/install.test.tmr/include/foo.h > > > > > > Note that CMake does not notice the addition of bar.h. > > > > > > Here's a test using install(DIRECTORY): > > > > [tyle...@alta:~/install-dir-vs-file-glob-test/b]$ cat ../CMakeLists.txt > > cmake_minimum_required(VERSION 2.6) > > project (test) > > > > set (CMAKE_INSTALL_PREFIX "/tmp/install.test.tmr") > > > > install (DIRECTORY include DESTINATION include) > > > > [tyle...@alta:~/install-dir-vs-file-glob-test/b]$ make install > > Install the project... > > -- Install configuration: "" > > -- Installing: /tmp/install.test.tmr/include/include > > -- Installing: /tmp/install.test.tmr/include/include/foo.h > > > > [tyle...@alta:~/install-dir-vs-file-glob-test/b]$ touch > > ../include/bar.h > > > > [tyle...@alta:~/install-dir-vs-file-glob-test/b]$ make install > > Install the project... > > -- Install configuration: "" > > -- Installing: /tmp/install.test.tmr/include/include > > -- Up-to-date: /tmp/install.test.tmr/include/include/foo.h > > -- Installing: /tmp/install.test.tmr/include/include/bar.h > > > > > > Note that bar.h is noticed and installed. > > > > > > tyler > > _______________________________________________ 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