Thread: SGML makefile
Can I ask why we seem to build the HTML twice in the SGML makefile? $(addsuffix .tar, $(BOOKS)): $(MAKE) -C sgml clean 1) $(MAKE) -C sgml $(basename $@).html 2) $(MAKE) -C sgml $(basename $@).html JADEFLAGS='-V html-manifest' cd sgml && $(TAR) -cf ../$@ `cat HTML.manifest` `echo *.gif | grep -v '\*'` *.css I don't understand. -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 853-3000 + If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania 19026
Bruce Momjian <pgman@candle.pha.pa.us> writes: > Can I ask why we seem to build the HTML twice in the SGML makefile? I suspect that's to get the indexes right. Peter? regards, tom lane
Bruce Momjian writes: > Can I ask why we seem to build the HTML twice in the SGML makefile? It's to resolve the index entries. Think LaTeX. -- Peter Eisentraut peter_e@gmx.net
> Bruce Momjian writes: > > > Can I ask why we seem to build the HTML twice in the SGML makefile? > > It's to resolve the index entries. Think LaTeX. OK, got it. LaTeX sometimes builds three times. :-) I added a comment to document the purpose. Thanks. -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 853-3000 + If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania 19026
Bruce Momjian <pgman@candle.pha.pa.us> writes: > I added a comment to document the purpose. Thanks. Um ... is it portable to stick a comment into the body of a make rule like that? Shell comments and make comments aren't always the same. regards, tom lane
> Bruce Momjian <pgman@candle.pha.pa.us> writes: > > I added a comment to document the purpose. Thanks. > > Um ... is it portable to stick a comment into the body of a make > rule like that? Shell comments and make comments aren't always > the same. I thought about that. Gmake texinfo manual says it is OK. I don't see any other uses of it in our source, though. --------------------------------------------------------------------------- The commands of a rule consist of shell command lines to be executed one by one. Each command line must start with a tab, except that the first command line may be attached to the target-and-prerequisites line with a semicolon in between. Blank lines and lines of just comments may appear among the command lines; they are ignored. (But beware, an apparently "blank" line that begins with a tab is _not_ blank! It is an empty command; *note Empty Commands::.) -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 853-3000 + If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania 19026
I also see this. Looks OK: Users use many different shell programs, but commands in makefiles are always interpreted by `/bin/sh' unless the makefile specifies otherwise. *Note Command Execution: Execution. The shell that is in use determines whether comments can be written on command lines, and what syntax they use. When the shell is `/bin/sh', a `#' starts a comment that extends to the end of the line. The `#' does not have to be at the beginning of a line. Text on a line before a `#' is not part of the comment. -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 853-3000 + If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania 19026