On 2017-11-08, Bernhard M. Wiedemann wrote: > While working on the “reproducible builds” effort [1] for openSUSE, > we have noticed that ipadic could not be built reproducibly [2] > and the same is the case for Debian [3]. > > The attached patch initializes memory written to .dat files. > Once applied, ipadic can be built reproducibly in our current > experimental framework.
I can confirm that the patch fixed the issue when building on Debian Stretch. I'm guessing sid or buster would work as well. live well, vagrant > Index: chasen-2.4.4/mkchadic/dumpdic.c > =================================================================== > --- chasen-2.4.4.orig/mkchadic/dumpdic.c > +++ chasen-2.4.4/mkchadic/dumpdic.c > @@ -45,6 +45,7 @@ dump_dat(lexicon_t *lex, FILE *datfile, > long index; > da_dat_t dat; > > + memset(&dat, 0, sizeof(dat)); > index = ftell(datfile); > dat.stem_len = lex->stem_len; > dat.reading_len = lex->reading_len; > @@ -137,6 +138,7 @@ dump_dic(lexicon_t *entries, FILE *outpu > da_lex_t lex; > long compound = NO_COMPOUND; > > + memset(&lex, 0, sizeof(lex)); > if (entries[1].pos) > compound = dump_compound(entries, lexfile, datfile);
signature.asc
Description: PGP signature

