[My initial reply to this was blocked by opensolaris.org for being
too large, because I had attached the generated install-sfw file to
it. Here it is again, without the bloat]

Paul,

    Thank you for taking the time to look at this. It's
greatly appreciated!

The answer to some of your questions is covered in the readme
file I pointed at in my original message. (Note that its
name has changed from README.SUNWemacs to README.SUNWgnu-emacs,
a result of having completed the trip through PSARC):

     
http://cr.opensolaris.org/~alib/emacs/usr/src/cmd/emacs/README.SUNWgnu-emacs.html

Please have a quick look there, and let me know if it still doesn't make sense.

I'll provide answers to your questions inline below.


 > === Start of Comments ====
 >
 > 1. usr/src/cmd/Makefile
 >      & usr/src/pkgdefs/Makefile
 >    This looks as though it needs resyncing with the
 >    gate, so it doesn't look as though you are try to
 >    delete stuff.

The SFW gate is always changing, so it's not surprising that a static
webrev will become out of date. I've just freshened it again.


 >
 > 2. usr/src/pkgdefs/SUNWgnu-emacs-*/pkginfo.tmpl
 >    You don't need the version number on the NAME= lines

The rule for that wasn't clear to me, so I put it in both NAME and
DESC. I'll consult with our packaging folks here and fix it as
necessary. Thanks for reminding me to follow up on that.


 >
 > 3. usr/src/cmd/emacs/Makefile.sfw
 >    This invokes '$(SH) install-sfw' but that is
 >    not in your webrev.

It's a generated file --- there's a rule for it in Makefile.sfw.

Emacs is different from lots of stuff in SFW, in that it has to be built
4 (or 6 with GTK) times in order to harvest all the needed binaries. To manage
this, and the sheer number of files involved, I use a local proto directory
to stage the results.

There's a script (tools/process_manifest.pl) that takes the manifest file,
and generates both install-sfw, and all of the svr4 packaging lines, 
automatically.
Since emacs ships with ~2800 files, this approach gives me some leverage, and
reduces the risk of mechanical error.

I'll attach a copy of the install-sfw to this message so that you can see
what it looks like.

 > 4. usr/src/cmd/emacs/augment/man/man1/*.1
 >    Were these part of the original src tarball, if so
 >    why have you not used them from there rather than
 >    having your own copy of them?

Everything under augment is something missing from the emacs tarball
that I am supplying. (See the README)

I'm going to offer those manpages back to the emacs developers.
Whether they take them or not remains to be seen.


 >
 > 5. src/cmd/emacs/Makefile.sfw
 >    Lines 142 to 147 '.... make install'; does the
 >    package's Makefile allow you to use something
 >    like 'make DISTDIR=$(LPROTO) install' rather than
 >    having to set prefix, bindir, etc. ?

I think it does. However, the resulting default emacs layout
isn't what we want for Solaris. A default emacs creates
a libexec directory, whereas I wanted it to be /usr/lib/emacs.
I felt that being explicit here was a better course.

 >
 >    Is INSTALL_ROOT root (/) or is it the proto area?
 >    (I forget); if it's the proto area shouldn't it be
 >    root (/) ie. where it really runs from.

INSTALL_ROOT is the place where emacs expects to find itself at
runtime. So, it's normally root (/). When you're bringing up
a new version, and want to experiment with it without installing
it, it can be convenient to define it to be the proto. However, it
would be a mistake to ship it that way.

Look at how it's used in tools/build_emacs --- a NULL value gets
turned into root (/).
 >
 > === End of Comments ======
 >

Thank you once again for taking this on.

- Ali
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: install-sfw.head
URL: 
<http://mail.opensolaris.org/pipermail/sfwnv-discuss/attachments/20080807/b459c179/attachment.ksh>

Reply via email to