[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: make bootsrap problems
From: |
Espen Wiborg |
Subject: |
Re: make bootsrap problems |
Date: |
Tue, 27 May 2008 15:36:56 +0200 |
User-agent: |
Gnus/5.110009 (No Gnus v0.9) Emacs/23.0.60 (gnu/linux) |
David Kastrup <address@hidden> writes:
> Michael Kifer <address@hidden> writes:
>> In the latest cvs version under Ubuntu 8.04, I am getting:
>>
>> make maintainer-clean
>> configure
>> make bootstrap
>>
<-snip->
>> sed -f temp.sed /home/users/kifer/gnu/emacs/lisp/Makefile.in > temp-elcfiles
>> || rm temp-elcfiles
>> sed: file temp.sed line 3: unknown command: `('
>> rm temp.sed
>> chmod +w /home/users/kifer/gnu/emacs/lisp/Makefile.in
>> mv -f temp-elcfiles /home/users/kifer/gnu/emacs/lisp/Makefile.in || echo
>> "Maintainer warning: failed to update Makefile.in"
>> mv: cannot stat `temp-elcfiles': No such file or directory
>> Maintainer warning: failed to update Makefile.in
>
> Me too. The culprit would likely be
>
> ## Construct a sed command file that operates on lines between
> ## ^ELCFILES and the next blank line. Convert spaces between members
> ## of COMPILE_FIRST to "\|", and escape directory "/". List the .elc
> ## files, exclude the members of COMPILE_FIRST, convert ^$(lisp) to a
> ## literal " $(lisp)", add trailing " \\\" to the end of every line
> ## (the last \ continues the line in sed, the other \\ result in a
> ## single \ at the end of the replacement text). For the last line,
> ## just use a single "\", for sed. Finally, run sed using the command
> ## so constructed and update Makefile.in. chmod +w is for CVSREAD=1.
> ## Errors in final sed are non-fatal, since they have no effect on
> ## building Emacs.
> update-elclist:
<-snip->
>
> in lisp/Makefile.in. In particular, "Finally, run sed using the command
> so constructed and update Makefile.in." since the preceding recipe does
> not actually construct a command, but just a part of it.
The problem is that the generated sed script is missing a line
continuation backslash.
The following patch fixes:
Index: lisp/Makefile.in
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/Makefile.in,v
retrieving revision 1.123
diff -c -r1.123 Makefile.in
*** lisp/Makefile.in 27 May 2008 02:14:46 -0000 1.123
--- lisp/Makefile.in 27 May 2008 13:21:27 -0000
***************
*** 164,170 ****
## building Emacs.
update-elclist:
echo "/^ELCFILES/,/^$$/c\\" > temp.sed
! echo "ELCFILES = \\\\\\" >> temp.sed
exclude=`echo $(COMPILE_FIRST) | sed -e 's, ,\\\\|,g' -e
's,\/,\\\\/,g'`; \
ls $(lisp)/*.elc $(lisp)/*/*.elc | sed -e "/$$exclude/d" -e
"s|^$(lisp)| \$$(lisp)|" -e 's/$$/ \\\\\\/' -e '$$ s/ \\\\//' >> temp.sed
echo "" >> temp.sed
--- 164,170 ----
## building Emacs.
update-elclist:
echo "/^ELCFILES/,/^$$/c\\" > temp.sed
! echo "ELCFILES = \\\\\\\\\\" >> temp.sed
exclude=`echo $(COMPILE_FIRST) | sed -e 's, ,\\\\|,g' -e
's,\/,\\\\/,g'`; \
ls $(lisp)/*.elc $(lisp)/*/*.elc | sed -e "/$$exclude/d" -e
"s|^$(lisp)| \$$(lisp)|" -e 's/$$/ \\\\\\/' -e '$$ s/ \\\\//' >> temp.sed
echo "" >> temp.sed
--
Espen Wiborg <address@hidden>
Thermodynamics in a nutshell:
1st Law: You can't win. (Energy is conserved)
2nd Law: You can't break even. (Entropy)
0th Law: You can't even quit the game. (Closed systems) -- Taki Kogoma