Ricardo Wurmus writes: > Marius Bakke writes: > >> Ben Woodcroft writes: >> >>> Hi, >>> >>> It seems that the pardre source has been updated in place. I'm not sure what >>> the procedure is for verifying that nothing untoward has taken place, since I >>> cannot download and old version from the hydra content addressed mirror - >>> it does not seem to exist there either. >> >> "diffoscope" has native support for tarballs and can quickly point out >> any differences. Perhaps Ricardo has a copy at the MDC? > > I do! I still have a copy of > /gnu/store/xp2yzil11yk9askvpp56a8jjqynqb12k-ParDRe-rel1.1.5.tar.gz > > The diff looks very familiar. Could it be that this has happened > before? Or maybe I noticed the changed hash before and forgot to submit > an update...? > > Anyway, here’s the full diff: > > > diff -ur ParDRe-rel1.1.5* > diff -ur ParDRe-rel1.1.5/.cproject ParDRe-rel1.1.5-new/.cproject > --- ParDRe-rel1.1.5/.cproject 2015-12-21 13:02:38.000000000 +0100 > +++ ParDRe-rel1.1.5-new/.cproject 2016-07-05 14:10:22.000000000 +0200 > @@ -1,8 +1,8 @@ > > > > - > - > + > + > > > > @@ -14,23 +14,23 @@ > > > > - > - > - > - > - > - > - > - > + > + > + > + > + > + > + > + > > - > - > + > + > > - > - > + > + > > - > - > + > + > > > > @@ -41,41 +41,44 @@ > > > > - > + > > > > - > - > - > > > > - > + > + > + > + > > > - > + > > > + > + > + > > > > - > + > > > - > - > + > + > > > > > - > + > > > > > > - > + > > > > diff -ur ParDRe-rel1.1.5/PairedEnd.cpp ParDRe-rel1.1.5-new/PairedEnd.cpp > --- ParDRe-rel1.1.5/PairedEnd.cpp 2016-05-18 11:46:38.000000000 +0200 > +++ ParDRe-rel1.1.5-new/PairedEnd.cpp 2016-07-06 12:15:02.000000000 +0200 > @@ -210,6 +210,7 @@ > } > } > } > + fflush(NULL); > } > MPI::COMM_WORLD.Barrier(); > } > diff -ur ParDRe-rel1.1.5/SingleEnd.cpp ParDRe-rel1.1.5-new/SingleEnd.cpp > --- ParDRe-rel1.1.5/SingleEnd.cpp 2016-05-18 11:47:07.000000000 +0200 > +++ ParDRe-rel1.1.5-new/SingleEnd.cpp 2016-07-06 12:13:13.000000000 +0200 > @@ -27,12 +27,12 @@ > if(!myRank){ > Utils::log("Process %d/%d: To print in %s\n", myRank, MPI::COMM_WORLD.Get_size(), outPath.c_str()); > } > - if(myRank){ > + /*if(myRank){ > outPath.append("_id"); > outPath.append(to_string(myRank)); > } > _parserOut = new SeqFileParser(options, outPath.c_str(), true, false); > - _parserOut->setFormat(_parser->getFormat()); > + _parserOut->setFormat(_parser->getFormat());*/ > } > } > > @@ -186,6 +186,7 @@ > } > } > } > + fflush(NULL); > } > MPI::COMM_WORLD.Barrier(); > } > diff -ur ParDRe-rel1.1.5/Utils.cpp ParDRe-rel1.1.5-new/Utils.cpp > --- ParDRe-rel1.1.5/Utils.cpp 2015-11-17 16:16:54.000000000 +0100 > +++ ParDRe-rel1.1.5-new/Utils.cpp 2016-05-27 14:03:38.000000000 +0200 > @@ -62,5 +62,12 @@ > } > > uint64_t Utils::popcount(uint64_t v){ > - return __builtin_popcount(v); > + uint64_t b = (v & 0x5555555555555555LU) + (v >> 1 & 0x5555555555555555LU); > + b = (b & 0x3333333333333333LU) + (b >> 2 & 0x3333333333333333LU); > + b = b + (b >> 4) & 0x0F0F0F0F0F0F0F0FLU; > + b = b + (b >> 8); > + b = b + (b >> 16); > + b = b + (b >> 32) & 0x0000007F; > + > + return b; > } Looks like a portability fix, although I can't really tell what that bitshifting is about. Assuming it's the same as the GCC builtin :-)