[Pkg-jed-devel] byte compiling sl files

G. Milde g.milde@web.de
Wed, 27 Apr 2005 11:36:52 +0200


On 26.04.05, Jörg Sommer wrote:
> G. Milde schrieb am Tue 26. Apr, 10:43 (+0200) :
> > On 25.04.05, Jörg Sommer wrote:
> > > G. Milde schrieb am Mon 25. Apr, 12:57 (+0200) :
> > > > > 1) Each package needing byte-compiling
> > > >      * can do this in the postinst script with:
> > > >          cd <dir where the file is installed, e.g. Jed_Site_Library>
> > > >          jed --batch -f 'byte_compile_file("<myfile.sl>", 0)'
> > It gets updated by 3), if it is in Jed_Site_Library
> 
> But I see, it doesn't get builded, because jed-common doesn't depend on
> jed. If realizing this idea leads to every package depends on "(jed |
> xjed)" (and later maybe on (... | fljed)). And if xjed is installed, you
> can't call jed. (The same with fljed)

No dependency on any jed* package is needed for a file to provide a
"mode" for jed:

The package can install a file into /usr/share/jed/site-lib (creating
this directory if needed) and

   a) Do without a byte compiled file (this just slows down the loading
      of the file a bit and will not hurt much for small files)
      
      A preparsing will still occure with the next jed configuring
      (install, update, or reconfigure of the jed|xjed package)
      if not guarded against
   
   c)  * Check the PATH for the jed|xjed|fljed binary and
       * cd <Jed_Site_Library>
       * jed -l make_ini.sl (byte-compile and add autoloads or
         initialization code).

 
> > This would mean an addition to the standard jed package
> 
> Why JED does not add it to its package? It there a reason for it?

JED has a high priority on stability and interoperability. (And a low one
on adding user-provided code to the core. 

I doubt my extensions will run on VMS. However, if they prove usefull and
stable on Debian, maybe JED will reconsider an inclusion into the base.

> > With home-lib, jed-common would also provide (and initialize)
> > Jed_Site_Library for other packages (jed-extra or any other).
> 
> You are right. This would be an improvement. I'm not really happy mixing
> jed and jed-extra, but it has its advantage.

IMHO, a basic setup for extensions is not an extra but a basic need.
 

> > > > > 3) The jed-common package will run 
> > > > 
> > > >      cd <Jed_Site_Library>
> > > >      jed --batch -l make_ini.sl
> > > 
> > > Which fails.
 
> The same as above: jed might not be installed and you don't know which
> version of jed (jed, xjed, fljed) is going to install.

My error. Make_ini should be run by the jed|xjed|fljed packages. (If you
install just jed-common but none of these you are very unlikely to need
*.slc files!)

Günter



-- 
G.Milde web.de