With some small modifications to some cmake code you can create a self contained "installation" with your binary and dependent libraries which is "self contained" in a folder that can be moved any where. I have a project where I do exactly this.
I have my executable installed in CMAKE_INSTALL_PREFIX/bin and dependent libraries installed into CMAKE_INSTALL_PREFIX/lib and then run fixup_bundle (with some modifications) on the executable which then runs install_name_tool on the copied dependent libraries. Works quite well. As far as gfortran goes, if your users skip fink and simply download the appropriate version from the AT&T Research web site (http://r.research.att.com/tools/) then then can simply use the standard Xcode tools on their machines. MUCH easier than dealing with Fink. ___________________________________________________________ Mike Jackson www.bluequartz.net On Jan 21, 2011, at 10:41 AM, Yngve Inntjore Levinsen wrote: > It is a pure terminal application, so you are probably right. However, the > old way to install it was that a user had to first install Fink, then wait a > few hours for the correct gcc version to be installed with gfortran, then > download the correct version of the executable. Or he/she could download the > specific libraries you needed manually and use this install_name_tool to > manually relink the libraries. In the end it felt quite complicated for many, > every user did something different, and helping people out when they got > stuck was a mess. > > Perhaps I should use some of the other packaging types, like tgz or zip. I > will play around with it. At least now I have something that works and is > self-contained which was my main goal. > > Cheers, > Yngve > > On Friday, January 21, 2011 02:16:56 pm Michael Jackson wrote: >> IS your application a GUI application or an terminal application? If it is >> really a terminal application then you really should NOT be creating an .app >> bundle but instead just a plain executable. >> ___________________________________________________________ >> Mike Jackson www.bluequartz.net >> Principal Software Engineer [email protected] >> BlueQuartz Software Dayton, Ohio >> >> >> >> On Jan 21, 2011, at 5:10 AM, Yngve Inntjore Levinsen wrote: >> >>> Thank you so much for your tips and help Michael! My stupid mistake as you >>> can see it below is that I ran the install target command AFTER the >>> fixup_bundle. Hence the app did not exist in its location when the >>> fixup_bundle ran, but when I checked afterwards it all looked as one would >>> expect. >>> >>> Last question, anyone have some tip on how to set up a terminal application >>> in an app bundle? Currently I have to suggest to the user to open the >>> bundle and go to the MacOS folder and click on the binary file there. This >>> is of course a minor issue, but would be nicer if a click on the app bundle >>> itself would have the same behaviour... Something I can set in the plist >>> file perhaps? >>> >>> Cheers >>> Yngve >>> >>> On 1/20/11 9:02 PM, Michael Jackson wrote: >>>> There are a lot of different reasons it can fail. I usually end up >>>> debugging through the fixup_bundle() code and placing lots of >>>> "message(STATUS ....)" commands in order to try and follow what is going >>>> on. There are already some through out the cmake code you usually just >>>> have to set a cmake variable to "1" to get them to print. You can try >>>> posting the complete output from your "make install" run to try and see >>>> what is going on. >>>> -- >>>> Mike Jackson<www.bluequartz.net> >>>> >>>> On Jan 20, 2011, at 2:35 PM, Yngve Levinsen wrote: >>>> >>>>> Well I do have a folder structure, which looks like this: >>>>> $ ls -R madx_dev.app/ >>>>> Contents >>>>> >>>>> madx_dev.app//Contents: >>>>> Info.plist MacOS Resources >>>>> >>>>> madx_dev.app//Contents/MacOS: >>>>> madx_dev >>>>> >>>>> madx_dev.app//Contents/Resources: >>>>> MadX.icns >>>>> >>>>> But it does not seem that the fixup-command does anything for me with >>>>> the current configuration. Don't get why. >>>>> >>>>> On 20 January 2011 15:40, Michael Jackson<[email protected]> >>>>> wrote: >>>>>> If you are creating a command line program then the included >>>>>> fixup_bundle will not work since it looks for a ".app" folder structure >>>>>> to fix. Instead you probably want to pass in the path to the executable >>>>>> located in ${CMAKE_INSTALL_PREFIX}/bin/MyExecutable to BundleUtilities. >>>>>> >>>>>> Any library located in /usr/lib or System/Library/* will NOT be copied >>>>>> into your bundle/Folder structure as those are considered system >>>>>> libraries and available on every OS X system. >>>>>> >>>>>> -- >>>>>> Mike Jackson<www.bluequartz.net> >>>>>> >>>>>> On Jan 20, 2011, at 6:15 AM, Yngve Inntjore Levinsen wrote: >>>>>> >>>>>>> Thank you for your kind reply Michael, it got me some bit further and I >>>>>>> think I understand a bit more. I could not see any examples of the >>>>>>> usage of the BundleUtilities in CMake, but the example given in the >>>>>>> Wiki works as expected on my machine. >>>>>>> >>>>>>> I forgot to add some significant parts of my CMakeLists.txt file. I >>>>>>> have also made some fixes, so the current parts look like this: >>>>>>> ... >>>>>>> if (APPLE) >>>>>>> # So that we get the system X11 libraries if they exist: >>>>>>> set(CMAKE_LIBRARY_PATH /usr/lib/ /usr/X11/lib/ ${CMAKE_LIBRARY_PATH}) >>>>>>> endif (APPLE) >>>>>>> ... >>>>>>> if(APPLE) >>>>>>> SET(MACOSX_BUNDLE_STARTUP_COMMAND madx${BINARY_POSTFIX}) >>>>>>> SET(MACOSX_BUNDLE_ICON_FILE >>>>>>> "${CMAKE_CURRENT_SOURCE_DIR}/cmakesrc/MadX.icns") >>>>>>> SET(MACOSX_BUNDLE_LONG_VERSION_STRING "MadX ${BINARY_POSTFIX} version >>>>>>> ${madX_MAJOR_VERSION}.${madX_MINOR_VERSION}.${madX_PATCH_LEVEL}") >>>>>>> SET(MACOSX_BUNDLE_BUNDLE_NAME "MadX${BINARY_POSTFIX}") >>>>>>> SET(MACOSX_BUNDLE_GUI_IDENTIFIER "MadX${BINARY_POSTFIX}") >>>>>>> # add icns to the .app/Resources with these TWO commands: >>>>>>> SET(srcfiles ${srcfiles} ${CMAKE_CURRENT_SOURCE_DIR}/cmakesrc/MadX.icns) >>>>>>> SET_SOURCE_FILES_PROPERTIES(${CMAKE_CURRENT_SOURCE_DIR}/cmakesrc/MadX.icns >>>>>>> PROPERTIES MACOSX_PACKAGE_LOCATION Resources) >>>>>>> endif(APPLE) >>>>>>> >>>>>>> add_executable(madx${BINARY_POSTFIX} MACOSX_BUNDLE ${srcfiles}) >>>>>>> SET_TARGET_PROPERTIES(madx${BINARY_POSTFIX} PROPERTIES LINKER_LANGUAGE >>>>>>> Fortran) >>>>>>> ... >>>>>>> FIND_PACKAGE(X11) >>>>>>> IF(X11_FOUND) >>>>>>> message("Found X11 libraries") >>>>>>> INCLUDE_DIRECTORIES(${X11_INCLUDE_DIR}) >>>>>>> TARGET_LINK_LIBRARIES(madx${BINARY_POSTFIX} ${X11_X11_LIB}) >>>>>>> ENDIF(X11_FOUND) >>>>>>> ... >>>>>>> target_link_libraries(madx${BINARY_POSTFIX} z) >>>>>>> target_link_libraries(madx${BINARY_POSTFIX} pthread) >>>>>>> target_link_libraries(madx${BINARY_POSTFIX} c) >>>>>>> target_link_libraries(madx${BINARY_POSTFIX} gcc_eh) >>>>>>> ... >>>>>>> if(APPLE) >>>>>>> set(APPS "\${CMAKE_INSTALL_PREFIX}/madx${BINARY_POSTFIX}.app") # paths >>>>>>> to executables >>>>>>> set(DIRS "") >>>>>>> message("aps: ${APPS}") >>>>>>> INSTALL(CODE " >>>>>>> include(BundleUtilities) >>>>>>> message(\"aps: ${APPS}\") >>>>>>> fixup_bundle(\"${APPS}\" \"\" \"${DIRS}\") >>>>>>> " COMPONENT Runtime) >>>>>>> INSTALL(TARGETS madx${BINARY_POSTFIX} >>>>>>> BUNDLE DESTINATION . COMPONENT Runtime >>>>>>> RUNTIME DESTINATION bin COMPONENT Runtime >>>>>>> ) >>>>>>> else(APPLE) >>>>>>> INSTALL(TARGETS madx${BINARY_POSTFIX} >>>>>>> RUNTIME DESTINATION bin >>>>>>> LIBRARY DESTINATION lib >>>>>>> ARCHIVE DESTINATION lib >>>>>>> ) >>>>>>> endif(APPLE) >>>>>>> ... >>>>>>> # so that we can build dragndrop on osx (actually needed?): >>>>>>> set(CPACK_BINARY_DRAGNDROP ON) >>>>>>> include (CPack) >>>>>>> ... >>>>>>> >>>>>>> >>>>>>> What I don't understand is why it does not work on my own project. From >>>>>>> what I can see you can actually replace the fixup_bundle() in the >>>>>>> example with simply fixup_bundle(\"${APPS}\" \"\" \"\"). This still >>>>>>> gives the following result when I check the binary with otools: >>>>>>> otool -L >>>>>>> _CPack_Packages/Darwin/DragNDrop/QtTest-0.1.1-Darwin/QtTest.app/Contents/MacOS/QtTest >>>>>>> _CPack_Packages/Darwin/DragNDrop/QtTest-0.1.1-Darwin/QtTest.app/Contents/MacOS/QtTest: >>>>>>> @executable_path/../Frameworks/QtGui.framework/Versions/4/QtGui >>>>>>> (compatibility version 4.7.0, current version 4.7.0) >>>>>>> @executable_path/../Frameworks/QtCore.framework/Versions/4/QtCore >>>>>>> (compatibility version 4.7.0, current version 4.7.0) >>>>>>> @executable_path/../MacOS/libstdc++.6.dylib (compatibility version >>>>>>> 7.0.0, current version 7.13.0) >>>>>>> @executable_path/../MacOS/libgcc_s.1.dylib (compatibility version >>>>>>> 1.0.0, current version 1.0.0) >>>>>>> /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current >>>>>>> version 125.2.1) >>>>>>> The original shows: >>>>>>> otool -L QtTest.app/Contents/MacOS/QtTest >>>>>>> QtTest.app/Contents/MacOS/QtTest: >>>>>>> /opt/local/libexec/qt4-mac-devel/lib/QtGui.framework/Versions/4/QtGui >>>>>>> (compatibility version 4.7.0, current version 4.7.0) >>>>>>> >>>>>>> /opt/local/libexec/qt4-mac-devel/lib/QtCore.framework/Versions/4/QtCore >>>>>>> (compatibility version 4.7.0, current version 4.7.0) >>>>>>> /opt/local/lib/gcc44/libstdc++.6.dylib (compatibility version 7.0.0, >>>>>>> current version 7.13.0) >>>>>>> /opt/local/lib/gcc44/libgcc_s.1.dylib (compatibility version 1.0.0, >>>>>>> current version 1.0.0) >>>>>>> /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current >>>>>>> version 125.2.1) >>>>>>> >>>>>>> So it seems that it by itself figured out that libraries in /opt/local >>>>>>> should be relinked and added to the bundle, whereas the /usr/lib >>>>>>> library can stay as it is. This is great stuff. >>>>>>> >>>>>>> Doing the same with mine it fails with the "not a valid bundle" error. >>>>>>> I have the following original output from otools: >>>>>>> otool -L madx_dev.app/Contents/MacOS/madx_dev >>>>>>> madx_dev.app/Contents/MacOS/madx_dev: >>>>>>> /usr/X11/lib/libX11.6.dylib (compatibility version 9.0.0, current >>>>>>> version 9.0.0) >>>>>>> /usr/lib/libz.1.dylib (compatibility version 1.0.0, current version >>>>>>> 1.2.3) >>>>>>> /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current >>>>>>> version 125.2.1) >>>>>>> /opt/local/lib/gcc44/libstdc++.6.dylib (compatibility version 7.0.0, >>>>>>> current version 7.13.0) >>>>>>> /opt/local/lib/gcc44/libgfortran.3.dylib (compatibility version >>>>>>> 4.0.0, current version 4.0.0) >>>>>>> /opt/local/lib/gcc44/libgcc_s.1.dylib (compatibility version 1.0.0, >>>>>>> current version 1.0.0) >>>>>>> >>>>>>> In principle the only thing not available in /usr/ is the gfortran >>>>>>> library (right), but I guess I should expect that it would copy >>>>>>> everything that is linked to a library residing in /opt/local in the >>>>>>> same manner as for QtTest. However, the fixup_utilities does not relink >>>>>>> any of those libraries. What am I doing wrong? Are there anything you >>>>>>> need to set prior to the install(CODE "... command? I have been trying >>>>>>> to read through the QtTest example, and I don't see anything that >>>>>>> should imply so. >>>>>>> >>>>>>> I have too many questions at once I suppose, but there is still one >>>>>>> more important: My application is a "terminal app", so it does not come >>>>>>> with a GUI. Does this mean that the bundle-concept of osx is not fitted >>>>>>> very well to my application? Can I somehow run a script that will open >>>>>>> my application in a new Terminal.app window or something of that sort? >>>>>>> I realized that other applications work so that if you click on the >>>>>>> Name.app you see the GUI only, whereas if you click on the executable >>>>>>> Contents/MacOS/Name you first see a terminal that then opens the >>>>>>> GUI...? Is e.g. Octave bundled, and how is that done? >>>>>>> >>>>>>> Cheers >>>>>>> Yngve >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> On 1/19/11 4:42 PM, Michael Jackson wrote: >>>>>>>> You will need to look into the "BundleUtilities" functionality, >>>>>>>> specifically the "fixup_bundle()" function. This will copy and fixup >>>>>>>> dependent dylibs/frameworks needed by your project. There is a short >>>>>>>> example that uses Qt that you can download. >>>>>>>> >>>>>>>> You will also probably need to properly configure a plist that >>>>>>>> resides in your Application bundle. THere are CMake variables for this >>>>>>>> that you can set then CMake will create a default plist for you. >>>>>>>> >>>>>>>> There are a number of examples, CMake itself is one, that uses the >>>>>>>> "fixup_bundle()" in its own code. >>>>>>>> >>>>>>>> Separate from all of that is all the CPack variables that you >>>>>>>> probably need to set. >>>>>>>> >>>>>>>> Here is a macro that I wrote for one of my own projects: >>>>>>>> >>>>>>>> #------------------------------------------------------------------------------- >>>>>>>> # This macro will set all the variables necessary to have a "good" OS >>>>>>>> X Application >>>>>>>> # bundle. The variables are as follows: >>>>>>>> # PROJECT_NAME - which can be taken from the ${PROJECT_NAME} variable >>>>>>>> is needed >>>>>>>> # DEBUG_EXTENSION - The extension used to denote a debug built >>>>>>>> Application. Typically >>>>>>>> # this is '_debug' >>>>>>>> # ICON_FILE_PATH - The complete path to the bundle icon file >>>>>>>> # VERSION_STRING - The version string that you wish to use for the >>>>>>>> bundle. For OS X >>>>>>>> # this string is usually XXXX.YY.ZZ in type. Look at the Apple docs >>>>>>>> for more info >>>>>>>> #------------------------------------------------------------------------------- >>>>>>>> macro(ConfigureMacOSXBundlePlist PROJECT_NAME DEBUG_EXTENSION >>>>>>>> ICON_FILE_PATH VERSION_STRING) >>>>>>>> # message(STATUS "ConfigureMacOSXBundlePlist for ${PROJECT_NAME} ") >>>>>>>> IF(CMAKE_BUILD_TYPE MATCHES "Release") >>>>>>>> SET(DBG_EXTENSION "") >>>>>>>> else() >>>>>>>> set(DBG_EXTENSION ${DEBUG_EXTENSION}) >>>>>>>> endif() >>>>>>>> get_filename_component(ICON_FILE_NAME "${ICON_FILE_PATH}" NAME) >>>>>>>> >>>>>>>> #CFBundleGetInfoString >>>>>>>> SET(MACOSX_BUNDLE_INFO_STRING "${PROJECT_NAME}${DBG_EXTENSION} Version >>>>>>>> ${VERSION_STRING}, Copyright 2009 BlueQuartz Software.") >>>>>>>> SET(MACOSX_BUNDLE_ICON_FILE ${ICON_FILE_NAME}) >>>>>>>> SET(MACOSX_BUNDLE_GUI_IDENTIFIER "${PROJECT_NAME}${DBG_EXTENSION}") >>>>>>>> #CFBundleLongVersionString >>>>>>>> SET(MACOSX_BUNDLE_LONG_VERSION_STRING "${PROJECT_NAME}${DBG_EXTENSION} >>>>>>>> Version ${VERSION_STRING}") >>>>>>>> SET(MACOSX_BUNDLE_BUNDLE_NAME ${PROJECT_NAME}${DBG_EXTENSION}) >>>>>>>> SET(MACOSX_BUNDLE_SHORT_VERSION_STRING ${VERSION_STRING}) >>>>>>>> SET(MACOSX_BUNDLE_BUNDLE_VERSION ${VERSION_STRING}) >>>>>>>> SET(MACOSX_BUNDLE_COPYRIGHT "Copyright 2010, BlueQuartz Software. All >>>>>>>> Rights Reserved.") >>>>>>>> >>>>>>>> SET(${PROJECT_NAME}_PROJECT_SRCS ${${PROJECT_NAME}_PROJECT_SRCS} >>>>>>>> ${ICON_FILE_PATH}) >>>>>>>> SET_SOURCE_FILES_PROPERTIES(${ICON_FILE_PATH} PROPERTIES >>>>>>>> MACOSX_PACKAGE_LOCATION Resources) >>>>>>>> >>>>>>>> endmacro() >>>>>>>> >>>>>>>> Hope that helps >>>>>>>> ___________________________________________________________ >>>>>>>> Mike Jackson www.bluequartz.net >>>>>>>> Principal Software Engineer [email protected] >>>>>>>> BlueQuartz Software Dayton, Ohio >>>>>>>> >>>>>>>> On Jan 19, 2011, at 7:08 AM, Yngve Inntjore Levinsen wrote: >>>>>>>> >>>>>>>>> Dear fellow cmake users, >>>>>>>>> >>>>>>>>> I am trying to create a bundle of my project that I build using >>>>>>>>> CMake. I have tried using the DragNDrop generator, which works to >>>>>>>>> some extent. I do manage to create a .app folder which contains the >>>>>>>>> one binary that is the outcome of the project in the Contents/MacOS >>>>>>>>> folder. I do also create a .dmg file. However: >>>>>>>>> - When clicking the .dmg I am first presented with the license >>>>>>>>> (great!) before the dmg is mounted and I see an empty folder (??) >>>>>>>>> - When clicking on the<package>.app nothing happens. However, >>>>>>>>> clicking on the binary in Contents/MacOS works as expected. >>>>>>>>> - I would also like to know how to include the shared libraries >>>>>>>>> (dylib) that I need. I currently depend on stuff that is installed >>>>>>>>> with MacPorts, and I don't want to require that the user have to >>>>>>>>> install all that stuff. Isn't the bundle supposed to be >>>>>>>>> "self-contained"? Ideally I would like the bundle to automatically >>>>>>>>> include the libraries that are listed with the "otools -L<binary>" >>>>>>>>> command... >>>>>>>>> >>>>>>>>> Question: Where do I find the DragNDrop documentation/examples? On >>>>>>>>> the wiki ( >>>>>>>>> http://www.paraview.org/Wiki/CMake:CPackPackageGenerators#DragNDrop_.28OSX_only.29 >>>>>>>>> ) there are only two small lines, and my googling skills are >>>>>>>>> apparently not good enough.. >>>>>>>>> >>>>>>>>> Here is an extraction of the relevant part of my CMakeLists.txt: >>>>>>>>> ... >>>>>>>>> if(APPLE) >>>>>>>>> add_executable(madx${BINARY_POSTFIX} MACOSX_BUNDLE ${srcfiles}) >>>>>>>>> SET_TARGET_PROPERTIES(madx${BINARY_POSTFIX} PROPERTIES >>>>>>>>> CPACK_BUNDLE_STARTUP_COMMAND madx${BINARY_POSTFIX}) >>>>>>>>> SET_TARGET_PROPERTIES(madx${BINARY_POSTFIX} PROPERTIES >>>>>>>>> CPACK_BUNDLE_ICON "${CMAKE_CURRENT_SOURCE_DIR}/cmakesrc/MadX.icns") >>>>>>>>> else(APPLE) >>>>>>>>> add_executable(madx${BINARY_POSTFIX} ${srcfiles}) >>>>>>>>> endif(APPLE) >>>>>>>>> ... >>>>>>>>> >>>>>>>>> I also set some CPACK_BUNDLE properties because I earlier on tried to >>>>>>>>> use the BUNDLE generator, but from what I understand this should have >>>>>>>>> nothing to do with the DragNDrop generator? >>>>>>>>> >>>>>>>>> Thank you all for reading and thanks in advance for all help you >>>>>>>>> might provide! >>>>>>>>> >>>>>>>>> Cheers, >>>>>>>>> Yngve >>>>>>>>> >>>>>>> _______________________________________________ >>>>>>> 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 >>>> _______________________________________________ >>>> 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 >> > _______________________________________________ > 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
