That is great news. Seems I was not keeping up with how things are preferred to 
be done. I'll update my "cmp" project to use target properties which will fix a 
whole slew of my own projects. Thanks for the help tracking this down. 

___________________________________________________________
Mike Jackson                      www.bluequartz.net
Principal Software Engineer       mike.jack...@bluequartz.net 
BlueQuartz Software               Dayton, Ohio

On Feb 10, 2011, at 3:30 PM, David Cole wrote:

> Yes.... I just reproduced this with the CMake test "BundleTest" by modifying 
> it like so:
> 
> function(hide_var)
> SET(MACOSX_BUNDLE_INFO_STRING "bundle_info_string")
> ADD_EXECUTABLE(BundleTest
>   MACOSX_BUNDLE
>   BundleTest.cxx
>   SomeRandomFile.txt
>   "${BundleTest_SOURCE_DIR}/../../ChangeLog.txt"
>   "${CMAKE_CURRENT_BINARY_DIR}/randomResourceFile.plist"
>   )
> TARGET_LINK_LIBRARIES(BundleTest BundleTestLib)
> endfunction()
> 
> hide_var()
> 
> So... the bottom line is that the MACOSX_BUNDLE_* as *variables* have to be 
> defined at directory scope in order to work like they're supposed to with the 
> automatically configured Info.plist file. However, there is another 
> (preferred) way to do this. Set the same names as target properties *after* 
> the add_executable call. Then the variable scoping does not matter.
> 
> These are not documented either in --help-variable-list or 
> --help-property-list .... I had to go to the source code to figure this out. 
> However, the one that is documented, MACOSX_BUNDLE_INFO_PLIST, references the 
> MACOSX_BUNDLE_* values as target properties:
> 
>   
> http://cmake.org/cmake/help/cmake-2-8-docs.html#prop_tgt:MACOSX_BUNDLE_INFO_PLIST
> 
> This is not a bug that we will fix (other than possibly adding better 
> documentation at some point) -- but please use the target properties and not 
> the variables from now on. It's been that way since at least CMake 
> 2.6.something...
> 
> 
> Thanks,
> David
> 
> 
> On Thu, Feb 10, 2011 at 3:04 PM, Michael Jackson 
> <mike.jack...@bluequartz.net> wrote:
> Instructions to reproduce:
> 
> Pull the sample Qt Project from the CMake wiki
> 
> http://www.cmake.org/Wiki/images/2/25/QtTest-Package-Example.zip
> 
> Unzip it
> cd into it.
> 
> Replace the CMakeLists.txt file with the one attached to this email.
> 
> run the following:
> 
> git clone git://scm.bluequartz.net/support-libraries/cmp.git
> 
> configure the project.
> 
> Note how the plist is NOT filled in correct. Edit the CMakeLists.txt file at 
> line 137 to make cmake go into the "if()" statement. Reconfigure. Note how 
> the plist has all the "correct" values now.
> 
> The functions and macros you want to look at are in 
> QtTest/cmp/cmpCMakeMacros.cmake.
> ___________________________________________________________
> Mike Jackson                      www.bluequartz.net
> 
> 
> 
> 
> On Feb 10, 2011, at 2:39 PM, David Cole wrote:
> 
> > Can you share your source code so I can repro the issue here?
> >
> > Thx,
> > David
> >
> >
> > On Thu, Feb 10, 2011 at 2:25 PM, Michael Jackson 
> > <mike.jack...@bluequartz.net> wrote:
> >
> > On Feb 10, 2011, at 2:04 PM, David Cole wrote:
> >
> > > On Thu, Feb 10, 2011 at 1:51 PM, Bill Hoffman <bill.hoff...@kitware.com> 
> > > wrote:
> > > On 2/10/2011 1:27 PM, Michael Jackson wrote:
> > > Bump?
> > >
> > > Did you try cmake --trace to see when it was configure...
> > >
> > >
> > > --
> > > Mike Jackson<www.bluequartz.net>
> > >
> > > On Feb 8, 2011, at 5:36 PM, Michael Jackson wrote:
> > >
> > > At what point is the MacOSXBundleInfo.plist.in configured? I am setting 
> > > all the relevant variables but they are not getting inserted into the 
> > > plist.
> > >
> > > Here is some debug output from a CMake run of my project:
> > >
> > > -- MACOSX_BUNDLE_INFO_STRING: StatsGenerator_debug Version 2011.02.08, 
> > > Copyright 2009 BlueQuartz Software.
> > > -- MACOSX_BUNDLE_ICON_FILE: StatsGenerator.icns
> > > -- MACOSX_BUNDLE_GUI_IDENTIFIER: StatsGenerator_debug
> > > -- MACOSX_BUNDLE_LONG_VERSION_STRING: StatsGenerator_debug Version 
> > > 2011.02.08
> > > -- MACOSX_BUNDLE_BUNDLE_NAME: StatsGenerator_debug
> > > -- MACOSX_BUNDLE_SHORT_VERSION_STRING: 2011.02.08
> > > -- MACOSX_BUNDLE_BUNDLE_VERSION: 2011.02.08
> > > -- MACOSX_BUNDLE_COPYRIGHT: Copyright 2011, BlueQuartz Software. All 
> > > Rights Reserved.
> > >
> > >
> > > I set all those variables before and after the add_executable call but 
> > > most of the values does not show up in the plist file. Probably something 
> > > simple I am missing.
> > >
> > > Thanks.
> > > ___________________________________________________________
> > > Mike Jackson                      www.bluequartz.net
> > > Principal Software Engineer       mike.jack...@bluequartz.net
> > > BlueQuartz Software               Dayton, Ohio
> > >
> > >
> > > Does your add_executable call have the MACOSX_BUNDLE flag in it?
> > >
> > > You should definitely set those variables before calling add_executable, 
> > > and they should definitely show up if you have MACOSX_BUNDLE turned on.
> > >
> > > What generator are you using? Xcode or Unix Makefiles or something else?
> > >
> > >
> >
> > Using Makefiles generator. Correctly set MACOSX_BUNDLE in the 
> > add_executable() call. This is on OS X 10.6.6 with CMake 2.8.3 (self 
> > compiled)
> >
> > I tried the --trace but I don't really know what I should be looking for. 
> > There is a lot of output to look through.
> >
> > Tried from a clean build directory and still has the same thing.
> >
> > Mike Jackson
> >
> >
> >
> > _______________________________________________
> > 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
> >
> 
> 
> _______________________________________________
> 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
> 

_______________________________________________
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

Reply via email to