[Pkg-octave-devel] Building octave from git clone fails
Mike Miller
mtmiller at debian.org
Sat Jan 23 19:06:33 UTC 2016
On Sat, Jan 23, 2016 at 19:04:46 +0100, Rafael Laboissiere wrote:
> * Rafael Laboissiere <rafael at laboissiere.net> [2016-01-23 17:23]:
>
> >It is strange, because gperf would be needed only if octave.gperf is more
> >recent than oct-gperf.h. Now, we have:
> >
> > gbp clone git://git.debian.org/git/pkg-octave/octave.git
> > cd octave
> > $ stat libinterp/parse-tree/*gperf* | grep '\(File\|Change\):'
> > File: ‘libinterp/parse-tree/octave.gperf’
> > Change: 2016-01-23 14:19:02.862901791 -0200
> > File: ‘libinterp/parse-tree/oct-gperf.h’
> > Change: 2016-01-23 14:19:02.858901820 -0200
>
> I have overseen the time stamps above. Actually, after a git clone,
> oct-gperf.h is older than octave.gperf. This triggers the building of the
> former and, hence, make the package build fails, because gperf is not
> installed.
>
> Touching the target file seems to fix the problem:
>
> touch libinterp/parse-tree/oct-gperf.h
>
> I am considering adding this to d/rules. Any objections?
Why not go the other way and touch the .gperf file and add build-deps on
gperf, and bison and flex while we're at it? See also #798427.
In general, Debian likes to build everything from original source files.
Bison, flex, and gperf files are generated and packed with the source,
but are not the preferred form of modification.
I know this adds a risk of modifying a source file so there's no going
back to a clean state (other than git checkout).
--
mike
More information about the Pkg-octave-devel
mailing list