[Oz] Contributing Packages to MOGUL

Denys Duchier Denys.Duchier at ps.uni-sb.de
Thu Mar 9 08:35:12 CET 2000


The reaction to MOGUL so far has been quite positive and the number of
contributions is slowly increasing.

1. if you have written Mozart libraries or applications, please
   consider contributing them to MOGUL.

2. when you develop new applications consider importing modules
   provided by other packages.

3. when you develop an application, and especially if you intend to
   contribute it to MOGUL, use the framework provided by ozskel.  This
   is very important.  It makes your life easier.  It makes the user's
   life easier.  and it makes all contributions fit into a uniform and
   consistent framework that permits easy and transparent reuse.

   When you start a new package, you create a directory for it and
   populate it by invoking the ozskel script.  This gives you such
   things as a configure script and a Makefile.in.  For most packages
   all you need to do is then to create a Makefile.vars file in which
   you set a few variables.  For example, here is the Makefile.vars
   for my mogul:/duchier/config package:

VERSION		= 1.0
PKG_NAME	= duchier-config-$(VERSION)
PKG_MOGUL_URI	= mogul:/duchier/config
PKG_URI		= x-ozlib://duchier/ap
PKG_SOURCES	= Config.oz index.html
PKG_INSTALLS	= Config.ozf
PKG_UPDATE	= tgz tarz
PKG_INSTALLS_DOC= index.html

   that's it! now "make" builds the package, "make install" builds and
   installs it, and "make update" creates a tar archive of the package
   and places it in my ~/.oz/pkg for the mogul librarian to pick up.
   All the necessary hairy Makefile support stuff is already provided
   in Makefile.in.  Users can install my package by fetching it from
   the MOGUL archive, untaring it, and then following the usual
   "./configure" followed by "make install" procedure.  After that
   they can import the Config module in their own functors as shown
   below:

   functor
   import Config at 'x-ozlib://duchier/ap/Config.ozf'
   define
      ...
   end

   If you use the ozskel framework, everybody wins.  If you don't,
   your package is unlikely to have many users; who needs the
   aggravation when it could be so easy.

happy hacking,

-- 
Dr. Denys Duchier			Denys.Duchier at ps.uni-sb.de
Forschungsbereich Programmiersysteme	(Programming Systems Lab)
Universitaet des Saarlandes, Geb. 45	http://www.ps.uni-sb.de/~duchier
Postfach 15 11 50			Phone: +49 681 302 5618
66041 Saarbruecken, Germany		Fax:   +49 681 302 5615
-
Please send submissions to users at mozart-oz.org
and administriva mail to users-request at mozart-oz.org.
The Mozart Oz web site is at http://www.mozart-oz.org/.





More information about the mozart-users mailing list