octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: new major release?


From: Rik
Subject: Re: new major release?
Date: Tue, 08 Dec 2009 15:45:27 -0800

John W. Eaton wrote:
> We are still not quite passing "make distcheck".  When I try it, I see
> the following problem:
>
>   make[3]: Entering directory 
> `/scratch/jwe/build/octave/octave-3.3.50+/_build/doc/interpreter'
>   restore=: && backupdir=".am$$" && \
>           am__cwd=`pwd` && CDPATH="${ZSH_VERSION+.}:" && cd 
> ../../../doc/interpreter && \
>           rm -rf $backupdir && mkdir $backupdir && \
>           if (/bin/sh /home/jwe/build/octave/octave-3.3.50+/missing --run 
> makeinfo --version) >/dev/null 2>&1; then \
>             for f in ../../../doc/interpreter/octave.info 
> ../../../doc/interpreter/octave.info-[0-9] 
> ../../../doc/interpreter/octave.info-[0-9][0-9] 
> ../../../doc/interpreter/octave.i[0-9] 
> ../../../doc/interpreter/octave.i[0-9][0-9]; do \
>               if test -f $f; then mv $f $backupdir; restore=mv; else :; fi; \
>             done; \
>           else :; fi && \
>           cd "$am__cwd"; \
>           if /bin/sh /home/jwe/build/octave/octave-3.3.50+/missing --run 
> makeinfo   -I ../../../doc/interpreter \
>            -o ../../../doc/interpreter/octave.info 
> ../../../doc/interpreter/octave.texi; \
>           then \
>             rc=0; \
>             CDPATH="${ZSH_VERSION+.}:" && cd ../../../doc/interpreter; \
>           else \
>             rc=$?; \
>             CDPATH="${ZSH_VERSION+.}:" && cd ../../../doc/interpreter && \
>             $restore $backupdir/* `echo 
> "./../../../doc/interpreter/octave.info" | sed 's|[^/]*$||'`; \
>           fi; \
>           rm -rf $backupdir; exit $rc
>   mkdir: cannot create directory `.am24407': Permission denied
>   ../../../doc/interpreter/octave.texi: No such file or directory
>   make[3]: *** [../../../doc/interpreter/octave.info] Error 1
>   make[3]: Leaving directory 
> `/scratch/jwe/build/octave/octave-3.3.50+/_build/doc/interpreter'
>   make[2]: *** [all-recursive] Error 1
>   make[2]: Leaving directory 
> `/scratch/jwe/build/octave/octave-3.3.50+/_build/doc'
>   make[1]: *** [all-recursive] Error 1
>   make[1]: Leaving directory `/scratch/jwe/build/octave/octave-3.3.50+/_build'
>   make: *** [all] Error 2
>
> If I make the doc directory tree writable in the build tree where I'm
> trying to run "make distcheck", it seems to work.  So I can't tell
> whether this is a bug in the automake rules, or a problem with our
> Makefile rules.
>   
This really isn't our problem.  There are numerous complaints about how
Automake handles building documentation and whether it occurs in the
build tree or the source tree.  During testing, I work around the
problem by making the source directories writeable.
> Although I would like to make it so that we pass distcheck and comply
> with the GNU coding standards about not requiring users to have
> Texinfo to build an Octave  distribution, we were already breaking
> that rule with the old build system.
>   
I just checked in a patch that allows octave to pass 'make distcheck'
(with the caveat of writeable src directories).  At this point, all of
the documentation, and all of the source files both .texi and .txi, are
shipped in the distribution. 

There are some big advantages which trump the slightly larger
distribution file.  First, for a typical user just untarring and
building octave will no longer require Texinfo.  Secondly, It speeds up
the build process by lopping off the documentation build portion.  The
final Makefiles are also a boon to maintainers.  Previously the
documentation would be re-built whenever a .cc file was modified even if
the documentation itself had not been changed.  This has changed thanks
to the $(simple_move_if_change_rule) and now the documentation rarely
requires rebuilding which helps speed development.

The only outstanding issue is a VPATH build where srcdir != builddir. 
The simple_move_if_change_rule fails for the DOCSTRINGS files because
the @-t file is created in $(builddir), but the file to compare to is in
$(srcdir).  Perhaps it would be worth writing a more complex
move_if_change rule?
> So I'm ready to make the changes needed to use gnulib functions in
> Octave.  Are there any further objections to doing that?
>   
I think it's safe to proceed.

--Rik


reply via email to

[Prev in Thread] Current Thread [Next in Thread]