[Date Index][Thread Index]
[Date Prev][Date Next][Thread Prev][Thread Next]

New include files



Hi WMLers,

i have uploaded 2 new include files, in a new directory devoted to
modularity.

The first one is wml::mod::MakeMaker, which is strongly inspired by the
ExtUtils::MakeMaker Perl module. My intention is to ease distribution of
unofficial WML modules, and maybe one day we will have a CWAN ;-)

Suppose for instance that John Smith is a Gimp guru and he wrote
Gimp scripts in WML macros in files called logo.wml, button.wml and 
margin.wml. He wants to distribute his work. He has to
 1) Create an empty directory $workdir.
 2) Copy logo.wml button.wml and margin.wml into $workdir/gimp
 3) Rename these files with the .wml suffix replaced by .src
 4) Write documentation into those files, 
 5) Create this Makefile.wml file in $workdir:
#!wml -o Makefile
#include 'MakeMaker.src'
<write-makefile
    package="js-gimp"
    version="0.60"
    modules="gimp/logo.js gimp/button.js gimp/margin.js"
>
 6) Write a README.

And that's all. After that, he runs ``wml Makefile.wml; make dist'' and
a js-gimp-0.60.tar.gz is ready to go to the web.

After downloading this archive, someone else runs
   wml Makefile.wml; make; make install
and John's modules js::gimp::logo, js::gimp::button and js::gimp::margin
go to ...lib/wml/include/gimp/

But to create such a distribution, John needs the Ralf's GNU shtool
<URL:http://www.gnu.org/software/shtool/> and my (freshly released)
tarcust <URL:http://www.engelschall.com/sw/tarcust/distrib/>.
As you see, the web area is under construction, and if John Smith could
help me to design a nice logo, it would be great ;-)

The second file is wml::mod::version, which provides the <require> tag
to make sure WML is new enough to compile some files. If you use 
features appeared in wml-1.7.2, you could put <require 1.7.2> to make
sure your pages will gracefully fail with an explicit message when
trying to compile on another machine running wml-1.6.8.

The final version of these files will be in the 21-08-1999 06am snapshot,
 <URL:http://www.engelschall.com/sw/wml/distrib/wml-SNAP/wml_include/mod/>

-- 
Denis Barbier
WML Maintainer

______________________________________________________________________
Website META Language (WML)                www.engelschall.com/sw/wml/
Official Support Mailing List                   sw-wml@engelschall.com
Automated List Manager                       majordomo@engelschall.com