Hi William,

I encountered the following error using your update:

CMake Error at images/icons/CMakeLists.txt:12 (ADD_SUBDIRECTORY):
  add_subdirectory given source "mac" which is not an existing directory.

It looks like icon files weren't moved from src/mac to images/icons/mac.

Tom


William Kyngesburye wrote:
I did some CMake cleanup, along with changing the qgis libraries to frameworks 
for OS X.  Some notes:

- removed a lot of unnecessary conditionals for target configuration for 
platform-specific options.  Cmake is designed so that platform-specific options 
are only used for the platform, so they can all be specified in a single 
configuration command. ie for an application:

   ADD_EXECUTABLE ([exename] MACOSX_BUNDLE WIN32 [sources...])

- header installation is an automatic part of targets.  Though some headers may 
still need a separate install command (ui headers don't exist when cmake runs). 
 I also put all global header installation (qgsconfig.h, qgisplugin.h, 
qgsrendererplugin.h) in qgis_core, since in the OS X framework setup there is 
no place for random headers.

- core, gui, analysis, grass and sqlanywhere libs are now frameworks on OS X.  
I couldn't make qgispython a framework because it's loaded dynamically and the 
Qt dyld functions expect standard file extensions, and a framework has none 
(the binary inside the framework, that is).  Really, grass and sqlanywhere 
don't need to be frameworks, maybe I got carried away there ;)

There is also an option to install core, gui and analysis as "developer" 
frameworks.  This gets around the potential problem of the internal relative path 
linking, and makes the libraries more accessible.  The cmake option is 
QGIS_MACAPP_INSTALL_DEV (bool).  They are installed by default in /Library/Frameworks, 
but this can be changed with QGIS_MACAPP_DEV_PREFIX.

Note that the headers are not updated to make "proper" frameworks, so -I flags to 
each framework's Headers folder are still needed.  (A proper framework header references other 
framework headers prefixed by the framework name, ie #include<qgis_core/qgis.h>.  Needs 
some discussion about reorganizing the headers in QGIS, if there is interest.)

-----
William Kyngesburye<kyngchaos*at*kyngchaos*dot*com>
http://www.kyngchaos.com/

"The beast is actively interested only in now, and, as it is always now and always 
shall be, there is an eternity of time for the accomplishment of objects."

- the wisdom of Tarzan





_______________________________________________
Qgis-developer mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/qgis-developer


_______________________________________________
Qgis-developer mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/qgis-developer

Reply via email to