Ptolemy currently is deployable as a number of jar files that do not
include the source code.
The Ptolemy project has a proposal to get funding to use OSGi to componentize
Ptolemy. This funding is likely, but until it is a done deal, the work
will not happen. This work is scheduled to begin in late Summer, 2011, but
could happen earlier.
The short term solution would be to use the current Ptolemy makefile
infrastructure to generate the list of jars:
svn co https://source.eecs.berkeley.edu/svn/chess/ptII/trunk ptII
cd ptII
export PTII=`pwd`
./configure
make >& make.out
make install jar_dist >& install.out &
make echo_jars JARS=PTINY_KEPLER_JNLP_JARS | grep .jar | awk -F \" '{print $2}'
The last rule produces the following jar files:
../../jar_dist/ptolemy/actor/gui/jnlp/PtinyKeplerApplication.jar
../../jar_dist/doc/docConfig.jar
../../jar_dist/lib/diva.jar
../../jar_dist/lib/kieler.jar
../../jar_dist/ptolemy/ptsupport.jar
../../jar_dist/ptolemy/vergil/vergil.jar
../../jar_dist/ptolemy/domains/domains.jar
../../jar_dist/ptolemy/actor/parameters/demo/demo.jar
../../jar_dist/ptolemy/matlab/matlab.jar
../../jar_dist/ptolemy/matlab/demo/demo.jar
../../jar_dist/lib/matlab.jar
../../jar_dist/doc/codeDoc.jar
../../jar_dist/doc/design/usingVergil/usingVergil.jar
../../jar_dist/lib/jython.jar
../../jar_dist/lib/ptcolt.jar
../../jar_dist/ptolemy/actor/lib/colt/colt.jar
../../jar_dist/ptolemy/actor/lib/colt/demo/demo.jar
../../jar_dist/ptolemy/actor/lib/comm/demo/demo.jar
../../jar_dist/ptolemy/actor/lib/hoc/demo/demo.jar
../../jar_dist/ptolemy/actor/lib/javasound/demo/demo.jar
../../jar_dist/ptolemy/actor/lib/jni/demo/demo.jar
../../jar_dist/ptolemy/actor/lib/python/python.jar
../../jar_dist/ptolemy/actor/lib/python/demo/demo.jar
../../jar_dist/ptolemy/actor/lib/security/demo/demo.jar
../../jar_dist/ptolemy/actor/ptalon/antlr/antlr.jar
../../jar_dist/ptolemy/actor/ptalon/demo/demo.jar
../../jar_dist/ptolemy/actor/ptalon/ptalon.jar
../../jar_dist/ptolemy/domains/continuous/demo/demo.jar
../../jar_dist/ptolemy/domains/continuous/doc/doc.jar
../../jar_dist/ptolemy/domains/ct/demo/demo.jar
../../jar_dist/ptolemy/domains/ct/doc/doc.jar
../../jar_dist/ptolemy/domains/fsm/doc/doc.jar
../../jar_dist/ptolemy/domains/fsm/demo/demo.jar
../../jar_dist/ptolemy/domains/modal/doc/doc.jar
../../jar_dist/ptolemy/domains/modal/demo/demo.jar
../../jar_dist/ptolemy/domains/sdf/demo/demo.jar
../../jar_dist/ptolemy/domains/sdf/doc/doc.jar
../../jar_dist/ptolemy/data/type/demo/demo.jar
../../jar_dist/ptolemy/data/unit/demo/demo.jar
../../jar_dist/ptolemy/domains/ddf/demo/demo.jar
../../jar_dist/ptolemy/domains/ddf/doc/doc.jar
../../jar_dist/ptolemy/domains/de/demo/demo.jar
../../jar_dist/ptolemy/domains/de/doc/doc.jar
../../jar_dist/ptolemy/domains/hdf/demo/demo.jar
../../jar_dist/ptolemy/domains/hdf/doc/doc.jar
../../jar_dist/ptolemy/domains/pn/demo/demo.jar
../../jar_dist/ptolemy/domains/pn/doc/doc.jar
../../jar_dist/ptolemy/domains/rendezvous/demo/demo.jar
../../jar_dist/ptolemy/domains/rendezvous/doc/doc.jar
../../jar_dist/ptolemy/domains/sr/demo/demo.jar
../../jar_dist/ptolemy/domains/sr/doc/doc.jar
../../jar_dist/ptolemy/moml/demo/demo.jar
../../jar_dist/ptolemy/vergil/kernel/attributes/demo/demo.jar
This is 106 jar files. 106 modules seems like too many. See
https://kepler-project.org/developers/reference/ptolemy-package-dependencies
for a list of possible modules.
I'm strongly opposed to creating a copy of the Ptolemy tree because it
makes updating a nightmare. For example, the ptolemy/module-info/revision.txt
has not been updated in almost a month, see bug 4324. This means that
any bug fixes or changes in functionality in Ptolemy are not present
in the Kepler devel tree.
It seems like a good interim solution would be to use ant to invoke the
Ptolemy makefile build system to create the jars and then group the jars
into a module. This would take less time, probably around 32 hrs.
I'd be willing to hack up some rules that would build a few jar files
that would match the module dependencies in
https://kepler-project.org/developers/reference/ptolemy-package-dependencies
The OSGi solution would take a few months and is scheduled for next year so
would probably not happen for Kepler-2.1