Try putting ${FOO_HEADER_FILES} in the add_library call, too. I reproduced this by adding a file, with **ANY** name, to the PUBLIC_HEADER list of the [CMake/Tests/Framework/CMakeLists.txt](https://github.com/Kitware/CMake/blob/master/Tests/Framework/CMakeLists.txt) file... but NOT adding it to the list of sources given to add_library.
It would appear from this experiment that the header files for a framework must be listed as sources of the library **and** added to the PUBLIC_HEADER target property. (I am guessing that you have the other header files that are working already in your FOO_SOURCE_FILES variable. Either that, or I'm missing something still...) HTH, David C. On Tue, Jul 21, 2015 at 1:39 PM, Steven Wilson <steven.wesley.wil...@gmail.com> wrote: > I am saying the file does not exist in the either installed framework or in > the framework in the build directory. CMake is not moving the header files > that start with a capital letter into the framework headers directory. Now > I did double check and it *is* moving the .hpp header that matches the name > of the framework (Foo.hpp in the example case), but it is not copying Foo.h. > In addition I tried adding two more arbitrary headers called AnotherHeader.h > and AnotherHeader.hpp and neither of those get included in the framework > either. > > The example I have posted is just an example. My actual source files do not > share names where case sensitivity is a problem. The file names in the > real project do not collide in any form. I am running on a a Mac with the > HFS+ system without case sensitivity. > > > > On Tue, Jul 21, 2015 at 12:51 PM, David Cole <dlrd...@aol.com> wrote: >> >> Are you saying the file does not exist in the installed framework, or >> that you do not see "copying Foo.h" in the install output ...? This >> seems very unlikely. The header files are supposed to be in the >> framework in the build tree, and the built framework in its entirety >> is supposed to be recursively copied at install time ... >> >> Are you running on a Mac volume with a case sensitive file system or not? >> >> Are the source header files in question named with the case you've >> listed in the CMakeLists file? >> >> Does this reproduce if you add another header file named >> "AnotherHeader.h" and add it into the mix, say listing it first in the >> list of header files? >> >> >> >> >> >> On Tue, Jul 21, 2015 at 12:15 PM, Steven Wilson >> <steven.wesley.wil...@gmail.com> wrote: >> > Not to be picky, but the issue of case sensitivity ignores the original >> > question. >> > >> > If it helps someone think about the issue better, change: >> > >> > set(FOO_HEADER_FILES "foo.h;bar.h;bat.h;Foo.h;Foo.hpp") >> > >> > to >> > >> > set(FOO_HEADER_FILES "bar.h;bat.h;Foo.h;Foo.hpp") >> > >> > >> > Thanks, >> > >> > Steve >> > >> > On Tue, Jul 21, 2015 at 10:59 AM, Michael Jackson >> > <mike.jack...@bluequartz.net> wrote: >> >> >> >> to be very precise, >> >> OS X is a "Case Preserving but NOT Case sensitive" be default. OS X >> >> can be made to be case sensitive but no one actually recommends it. >> >> >> >> this means that on OS X foo.h and Foo.h resolve to be the same file, >> >> where >> >> as on Linux they would be 2 different files. You would have the same >> >> issues >> >> on Windows. >> >> >> >> Mike Jackson >> >> >> >> >> >> On Jul 21, 2015, at 10:35 AM, Dan Kegel <d...@kegel.com> wrote: >> >> >> >> It can't installiert both foo.h and Foo.h in the mac, better correct >> >> your >> >> example. >> >> >> >> Am 21.07.2015 5:19 vorm. schrieb "Steven Wilson" >> >> <steven.wesley.wil...@gmail.com>: >> >>> >> >>> I've noticed that CMake 3.3.0-rc3 will not install a header file in a >> >>> Mac >> >>> OS X framework if the header file starts with a capital letter (either >> >>> that >> >>> or has the same name as the framework). >> >>> >> >>> For example if I have the following: >> >>> >> >>> >> >>> set(FOO_HEADER_FILES "foo.h;bar.h;bat.h;Foo.h;Foo.hpp") >> >>> >> >>> add_library(Foo SHARED ${FOO_SOURCE_FILES}) >> >>> >> >>> set_target_properties(Foo PROPERTIES >> >>> FRAMEWORK ON >> >>> OUTPUT_NAME Foo >> >>> PUBLIC_HEADER "${FOO_HEADER_FILES}" >> >>> ) >> >>> >> >>> install(TARGETS Foo >> >>> FRAMEWORK DESTINATION "frameworks") >> >>> >> >>> >> >>> Then when running 'make install' or the install target from Xcode, the >> >>> installation step silently does not install Foo.h or Foo.hpp. >> >>> >> >>> This behavior seems arbitrary, wrong, and completely annoying. >> >>> >> >>> Comments? >> >>> >> >>> -- >> >>> >> >>> Powered by www.kitware.com >> >>> >> >>> Please keep messages on-topic and check the CMake FAQ at: >> >>> http://www.cmake.org/Wiki/CMake_FAQ >> >>> >> >>> Kitware offers various services to support the CMake community. For >> >>> more >> >>> information on each offering, please visit: >> >>> >> >>> CMake Support: http://cmake.org/cmake/help/support.html >> >>> CMake Consulting: http://cmake.org/cmake/help/consulting.html >> >>> CMake Training Courses: http://cmake.org/cmake/help/training.html >> >>> >> >>> Visit other Kitware open-source projects at >> >>> http://www.kitware.com/opensource/opensource.html >> >>> >> >>> Follow this link to subscribe/unsubscribe: >> >>> http://public.kitware.com/mailman/listinfo/cmake >> >> >> >> -- >> >> >> >> Powered by www.kitware.com >> >> >> >> Please keep messages on-topic and check the CMake FAQ at: >> >> http://www.cmake.org/Wiki/CMake_FAQ >> >> >> >> Kitware offers various services to support the CMake community. For >> >> more >> >> information on each offering, please visit: >> >> >> >> CMake Support: http://cmake.org/cmake/help/support.html >> >> CMake Consulting: http://cmake.org/cmake/help/consulting.html >> >> CMake Training Courses: http://cmake.org/cmake/help/training.html >> >> >> >> Visit other Kitware open-source projects at >> >> http://www.kitware.com/opensource/opensource.html >> >> >> >> Follow this link to subscribe/unsubscribe: >> >> http://public.kitware.com/mailman/listinfo/cmake >> >> >> >> >> > >> > >> > -- >> > >> > Powered by www.kitware.com >> > >> > Please keep messages on-topic and check the CMake FAQ at: >> > http://www.cmake.org/Wiki/CMake_FAQ >> > >> > Kitware offers various services to support the CMake community. For more >> > information on each offering, please visit: >> > >> > CMake Support: http://cmake.org/cmake/help/support.html >> > CMake Consulting: http://cmake.org/cmake/help/consulting.html >> > CMake Training Courses: http://cmake.org/cmake/help/training.html >> > >> > Visit other Kitware open-source projects at >> > http://www.kitware.com/opensource/opensource.html >> > >> > Follow this link to subscribe/unsubscribe: >> > http://public.kitware.com/mailman/listinfo/cmake > > -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake