Bug#872918: sketch: parallel FTBFS
Adrian Bunk
bunk at debian.org
Tue Aug 22 13:23:19 UTC 2017
Source: sketch
Version: 1:0.3.7-5
Severity: serious
Tags: patch
dh compat 10 enables paralles building,
which sometimes runs into the following bug:
https://tests.reproducible-builds.org/debian/rb-pkg/unstable/amd64/sketch.html
...
dh_auto_build
make -j15
make[2]: Entering directory '/build/1st/sketch-0.3.7'
gcc -O1 -g -Wall -Wall -g -O2 -Wdate-time -D_FORTIFY_SOURCE=2 -c -o bsp.o bsp.c
gcc -O1 -g -Wall -Wall -g -O2 -Wdate-time -D_FORTIFY_SOURCE=2 -c -o cmdline.o cmdline.c
gcc -O1 -g -Wall -Wall -g -O2 -Wdate-time -D_FORTIFY_SOURCE=2 -c -o emit.o emit.c
gcc -O1 -g -Wall -Wall -g -O2 -Wdate-time -D_FORTIFY_SOURCE=2 -c -o error.o error.c
gcc -O1 -g -Wall -Wall -g -O2 -Wdate-time -D_FORTIFY_SOURCE=2 -c -o expr.o expr.c
gcc -O1 -g -Wall -Wall -g -O2 -Wdate-time -D_FORTIFY_SOURCE=2 -c -o geometry.o geometry.c
gcc -O1 -g -Wall -Wall -g -O2 -Wdate-time -D_FORTIFY_SOURCE=2 -c -o geomio.o geomio.c
gcc -O1 -g -Wall -Wall -g -O2 -Wdate-time -D_FORTIFY_SOURCE=2 -c -o global.o global.c
gcc -O1 -g -Wall -Wall -g -O2 -Wdate-time -D_FORTIFY_SOURCE=2 -c -o langver.o langver.c
bison --defines --debug --report=all --yacc sketch.y
gcc -O1 -g -Wall -Wall -g -O2 -Wdate-time -D_FORTIFY_SOURCE=2 -c -o main.o main.c
gcc -O1 -g -Wall -Wall -g -O2 -Wdate-time -D_FORTIFY_SOURCE=2 -c -o memutil.o memutil.c
gcc -O1 -g -Wall -Wall -g -O2 -Wdate-time -D_FORTIFY_SOURCE=2 -c -o opts.o opts.c
gcc -O1 -g -Wall -Wall -g -O2 -Wdate-time -D_FORTIFY_SOURCE=2 -c -o scene.o scene.c
gcc -O1 -g -Wall -Wall -g -O2 -Wdate-time -D_FORTIFY_SOURCE=2 -c -o symbol.o symbol.c
expr.c: In function 'to_integer':
expr.c:374:12: warning: variable 'frac_part' set but not used [-Wunused-but-set-variable]
double frac_part, int_part;
^~~~~~~~~
bison --defines --debug --report=all --yacc sketch.y
gcc -O1 -g -Wall -Wall -g -O2 -Wdate-time -D_FORTIFY_SOURCE=2 -c -o lex.yy.o lex.yy.c
sketch.l: In function 'yylex':
sketch.l:86:3: error: 'yylval' undeclared (first use in this function); did you mean 'yylex'?
yylval.str = safe_malloc(yyleng + 1 - 2);
^~~~~~
yylex
...
Note how bison is running twice, with an output file already being
used while the second bison regenerates it again resulting in an
incomplete file being used.
Fix attached.
-------------- next part --------------
Description: Fix parallel FTBFS
Don't run bison twice, with a generated file already being used
while the second bison is still running.
Author: Adrian Bunk <bunk at debian.org>
--- sketch-0.3.7.orig/makefile
+++ sketch-0.3.7/makefile
@@ -43,7 +43,9 @@ HEADERS=bsp.h cmdline.h dynarray.h emit.
$(EXE) : $(OBJECTS)
$(CC) -o $(EXE) $(OBJECTS) -lm
-y.tab.c y.tab.h : sketch.y
+y.tab.c : y.tab.h
+
+y.tab.h : sketch.y
$(YACC) $<
lex.yy.c : sketch.l
More information about the debian-science-maintainers
mailing list