[Paraview] OS X ParaView.app Package Creation Scripts
Mike Jackson
imikejackson at gmail.com
Wed Feb 27 22:34:56 EST 2008
I have been working a on rewrite of the shell scripts the put
together a final OS X application package during a "make install".
Currently I have the following paraview.app layout:
paraview.app
|-Contents
|-MacOS
|-Frameworks
|-lib
|-plugins
|-Resources
|-SharedSupport
|-Documentation
|-assistant.app
|-paraview {Python Support}
Note that a few things have been "moved around" somewhat. I have
attempted to put things where Apple and other application developers
seem to put the same types of "things". This also necessitated a few
changes to some source code files to update where to look for several
items. Currently I have a working installation that I can take to
another 10.4 machine (ppc or intel) and run from that location.
I am seeking any feedback from the OS X / ParaView community as to
this general layout or any other thoughts. Currently the source is
just residing on my machine but I would be happy to tar something up
if someone wants to try it on their system. I also wrote the core
update shell scripts to be able to be used for any CMake project that
wants to build an OS X app package with embedded libraries/
frameworks, like any Qt based project.
#------- More Detailed information ----------
I created a new directory in ParaView3/CMake called
OSX_Tools. Within that directory I have the following:
OSX_BundleBuilder.sh.in <- Configures to do the bulk of the updates
to the libs/executables
OSX_BundleTools.cmake <-Contains Macros to run other CMake files
OSX_MakeInstall.cmake.in <- CMake script that gets configured and
then run during "make install"
OSX_PluginUpdateScript.sh.in <- Bash script that gets configured and
then run during "make install"
OSX_InstallAndUpdateAssistant.sh.in <- Shell script that copies and
updates QtAssistant
I also added and updated the following files in ParaView3/
Applications/Client:
CMakeLists.txt <- Added the proper code to include
OSX_BundleTools.cmake and call the proper macro from that file
CreateBundle.sh.in <- Modified this file to perform paraview specific
tasks
The general flow is such.
CMake Time: All the cmake templates and shell script templates are
configured. A single cmake script is added to the "install" phase.
That cmake script calls OSX_BundleBuilder.sh first then calls
CreateBundle.sh. If there were plugins, then CreateBundle.sh will
call individual shell scripts that copy and update the plugins for
the paraview.app package.
#-------------------------------------------
Again, if you would like to try these out or have any feedback (good
or bad) I would like to hear it so that when I submit the files to
the ParaView team for hopeful inclusion in ParaView, then scripts
will be the best they can be.
Respectfully
--
Mike Jackson
imikejackson & gmail * com
More information about the ParaView
mailing list