[Pkg-shadow-devel] out of my depth

Bálint Réczey balint at balintreczey.hu
Tue Nov 29 23:47:19 UTC 2016


2016-11-30 0:45 GMT+01:00 Bálint Réczey <balint at balintreczey.hu>:
> Hi,
>
> 2016-11-27 9:02 GMT+01:00 Mike Frysinger <vapier at gentoo.org>:
>> On 25 Nov 2016 13:42, Serge E. Hallyn wrote:
>>> On Tue, Nov 22, 2016 at 02:23:56AM +0100, Bálint Réczey wrote:
>>> > 2016-11-22 2:19 GMT+01:00 Serge E. Hallyn <serge at hallyn.com>:
>>> > > Quoting Bálint Réczey (balint at balintreczey.hu):
>>> > >> Hi Serge,
>>> > >>
>>> > >> I started reviewing the new package. The changes in Debian look good
>>> > >> but the generated
>>> > >> files in the original tarball do worry me.
>>> > >> Those are not present in tag 4.4 in upstream repository.
>>> > >
>>> > > Hi,
>>> > >
>>> > > Are you talking about the po/*.gmo files?  They keep getting
>>> > > autogenerated now witha 'make dist'.  That is what the first email
>>> > > in this thread was asking about, in particular:
>>> > >
>>> > > |>> autogen.sh calls autoreconf which calls autopoint, which creates
>>> > > |>> m4/po.m4, which creates po/Makefile.in.in, which creates a makefile
>>> > > |>> which ends up calling
>>> > > |>>
>>> > > |>> cd $(srcdir) && rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics -o t-$${lang}.gmo $${lang}.po && mv t-$${lang}.gmo $${lang}.gmo
>>> > > |>>
>>> > > |>> etc.  The *.gmo files are binary ones, which we don't want to be
>>> > > |>> shipping iiuc.  So - what is an ignorant packager to do?  It seems
>>> > > |>> like there must be an obvious flag to add to autoreconf in autogen.sh,
>>> > > |>> but I can't find it.
>>> > >
>>> > > So they are not in the git tree but they are in fact in the upstream tarball.
>>> > > I could manually pull them out of the packaging source.orig.gz if that's
>>> > > the right thing to do...
>>> >
>>> >
>>> > Please don't use make dist.
>>>
>>> Huh.  That's the first time I've heard that suggestion.
>>
>> it's a bad suggestion in this case.  some people try to be super strict
>> in that the releases are always reproducible from git.  while that might
>> work for some projects, it doesn't for ones that use a generated build
>> system like autotools.  in order to pull it off, you'd have to actually
>> commit the generated output (e.g. "configure" and "config.h.in" and all
>> the rest) to git which is an even worse idea.
>
> I may not have been clear enough, but I had no intention to suggest
> storing generated files in git. This would be a bad idea. I would like to ask
> for basing the Debian package on a tarball _not_ containing generated
> files such as Makefile.in.
>
> Reviewing changes when autogenerated files pollute the diff is harder
> and shadow is an important package.
>
> Note that 4.2-3 did not have generated files in the source package:
> $ git diff --stat debian/4.2-3  | head
>  .gitignore                                         |    47 -
>  ABOUT-NLS                                          |  1101 +
>  Makefile.in                                        |   852 +
>  aclocal.m4                                         | 12674 +++++++++++
>  autogen.sh                                         |    12 -
>  compile                                            |   347 +
>  config.guess                                       |  1441 ++
>  config.h.in                                        |   603 +
>  config.rpath                                       |   614 +
>  config.sub                                         |  1813 ++
>
>>
>>
>> so when making shadow releases, you should be using `make distcheck`.
>> you can then attach the tarball to the github page under the releases
>> section.
>
> Why? Who can't use the git archive output?
> In Debian you have to regenerate all generated files in the source package
> or prove that they can be regenerated. How do you prove that for all
> the files in the dist tarball?
>
> Tomorrow I'll update the packaging repository and show what I meant.

BTW when importing new upstream please push the upstream branch and
tag to the packaging repo because git-buildpackage needs those.

Cheers,
Balint



More information about the Pkg-shadow-devel mailing list