On Wed, 2002-08-07 at 17:34, Steve Youngs wrote:
VS> Okay, I did a "make distclean" in my packages/
directory yesterday.
VS> After this, I've been somewhat confused about the package dependencies.
VS> Looks like one has to do at least a "make" in some package
directories
VS> before other packages can be built. "make autoloads" in packages/
after
VS> a distclean there isn't enough.
I just did 'make distclean' 'make install' all went well, sorta
kinda. The only problems I saw was Semantic related (but we know
about that).
Hmm, maybe I didn't make myself quite clear here, I meant doing a "make
install" in _a package_ directory, not in packages/ or
packages/xemacs-packages/, after doing a "make distclean autoloads" in
packages/. To reproduce, do the following. (Actually, this won't work
ATM because of issues with semantic, but I guess you'll get the point.)
1) Remove the "ediff" REQUIRES from tramp/Makefile
2) cd to your XEmacs/packages directory
3) Do a "make distclean autoloads" in this dir
4) cd to xemacs-packages/tramp
5) Do a "make install"
This sequence didn't work for me, for some reason unknown to me the
build failed with something like "cannot load ediff-util". cd'ing back
to xemacs-packages/vc/ and doing a make install there *before* tramp
made building tramp succeed.
I can't verify that this is the case ATM for the reasons mentioned
above, and tramp has been updated since I've last tried. But it *did*
break like outlined above (and below, quoted).
VS> A particularily confusing example was when I tried to build
tramp
VS> yesterday, it failed telling me it cannot load ediff-util. I added
VS> ediff to REQUIRES, but I don't think tramp requires ediff directly, but
VS> "through" vc. Compiling vc before tramp helps, and after doing that
I
VS> could also build tramp *without* the explicit ediff requirement.
VS> Shouldn't this have Just Worked without doing a "make" in vc?
That
VS> doesn't seem to do anything else but byte-compiles .el files in vc/.
Yes it should, and to be honest, I'm surprised that it didn't for you.
See above, hopefully that sheds some light on the issue...
VS> Possibly related; It seems that pdepends.mk isn't used
at all when
VS> building from a package directory, nor is it created when running "make
VS> autoloads" in a package dir. Shouldn't it be? It will be created
(and
VS> used, I guess) when making autoloads from packages/ or
VS> packages/xemacs-packages/ and it will be removed when doing a "make
VS> clean" in these (though first created if it doesn't exist) or the
VS> package directory.
OK confession time... Before the advent of pdepends.mk, the packages
built fine for me, after pdepends.mk, they still built fine for me.
Because of that I never looked closely at what they were supposed to
do. I had noticed that they don't get built when building a package
from within a package directory
(./packages/xemacs-packages/pkgname/).
I think the stuff in them does autoloads for and compiles all packages
that the the one with the pdepends.mk in question requires.
Sorry Jan. I really did mean to bring this up with you, but because
it didn't appear broken, I never thought about it.
Uh, please forgive my ignorance, but what part does Jan play in this?
VS> Please advise. Because of this, I've already added
possibly wrong (or
VS> at least redundant) REQUIRES stuff to psgml and tramp.
What should happen, and did for me today...
make distclean -- cleans out any generated file
make (anything except the clean targets or html) -- should first of all do a
'make autoloads', then do whatever else.
Once all the autoloads are built, you should be able to build any
package in the tree.
Yes, that's what I thought too until recently.
I'll do a bit of investigating and see what I come up with.
Thanks! I'm anxious to hear more.
--
\/ille Skyttä
ville.skytta at
xemacs.org