[OS X Emacs] Emacs.app 9.0-rc3 released
Peter Dyballa
Peter_Dyballa at Web.DE
Tue Nov 27 05:57:25 EST 2007
Am 27.11.2007 um 04:56 schrieb Joe Davison:
> One thing I did notice in comparing epaths.h and epaths.h-orig is
> that I could tell how many compiles I'd done with that flag,
> because the process always copies epaths.h to epaths.h-orig and
> then modifies epaths.h.n
>
>
> You may want to replace the first line of your modification:
>
> < (cd src; mv epaths.h epaths.h-orig; \
>
> with something like:
>
> > (cd src; if [ ! -r epaths.h-orig ]; then mv epaths.h epaths.h-
> orig; else echo epaths.h-orig already exist, not recreated; fi; \
>
> With the current scheme it's possible to make a trashed epath
> persistent by trying to build with the bad path and then trying
> again...
Yes, that's true! I made already years, or so, ago another change to
my compile script, when I found that a subsequent re-compilation
produced something strange: I added a 'make clean' to start the whole
process with, i.e. before configure is invoked.
My assumption was that the inherent configure step completely
overwrites src/epaths.h, so that I don't need to take care whether
there is a patched version lying around. This does not seem to be
true, because I might have observed it in a cleaned environment, so
your correction should be put into the compile script. A bit
modified, because when src/epaths.h-orig exists another change might
not be necessary (/might/, because a user could decide to try another
local lisp path), from the old
(cd src; mv epaths.h epaths.h-orig; \
printf "s,\(#define PATH_LOADSEARCH \"\),\\\1%s:,\n" "$
{locallisppath}" > locallisppath.sed; \
cat epaths.h-orig | sed -f locallisppath.sed > epaths.h; rm
locallisppath.sed)
to newer
(cd src
if [ -r epaths.h-orig ]; then
echo "### src/epaths.h-orig already exists, no further change ###"
else
mv epaths.h epaths.h-orig
printf "s,\(#define PATH_LOADSEARCH \"\),\\\1%s:,\n" "$
{locallisppath}" > locallisppath.sed
cat epaths.h-orig | sed -f locallisppath.sed > epaths.h
rm locallisppath.sed
fi)
And 'make *clean' need to remove src/epath.h-orig!
The actual problem is that the system conforming local lisp path in
Mac OS X is /Library/Application Support/Emacs, a path name with a
space. This character needs to be saved when passed within the
argument to the configure script, and it needs to be recognised as
part of the path name and not a separator by configure. I have no
solution, only this work-around ...
--
Greetings
Pete
From error to error, one discovers the entire truth.
- Sigmund Freud
More information about the MacOSX-Emacs
mailing list