Re: [CMake] OS X framework headers with capital letters

2015-07-21 Thread Steven Wilson
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

Re: [CMake] OS X framework headers with capital letters

2015-07-21 Thread Michael Jackson
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

Re: [CMake] OS X framework headers with capital letters

2015-07-21 Thread David Cole via CMake
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


Re: [CMake] OS X framework headers with capital letters

2015-07-21 Thread Michael Jackson
Well the definitely removes the case sensitivity issue. Do you have a compact 
example that shows the failure? I took a look in our project and we don't have 
any cases like this. I would find it a very odd and subtle bug it this really 
were an issue. one of those edge cases that just did not get tested.

Mike Jackson

On Jul 21, 2015, at 8:19 AM, Steven Wilson steven.wesley.wil...@gmail.com 
wrote:

 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


Re: [CMake] OS X framework headers with capital letters

2015-07-21 Thread Steven Wilson
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: 

Re: [CMake] OS X framework headers with capital letters

2015-07-21 Thread David Cole via CMake
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 

Re: [CMake] OS X framework headers with capital letters

2015-07-21 Thread Steven Wilson
Thanks David,

That change appears to have corrected the issue.

Steve

On Tue, Jul 21, 2015 at 4:30 PM, David Cole dlrd...@aol.com wrote:

 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
   

[CMake] OS X framework headers with capital letters

2015-07-21 Thread Steven Wilson
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

Re: [CMake] OS X framework headers with capital letters

2015-07-21 Thread Dan Kegel
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