FAQ Search Today's Posts Mark Forums Read

» Linux Archive
Home
New Posts
Search
FAQ


Go Back   Linux Archive > Redhat > Fedora Packaging

 
 
LinkBack Thread Tools
 
Old 10-12-2008, 06:16 AM
Braden McDaniel
 
Default PackagingDrafts/AutoConf

I would like to make some progress on this:

<http://fedoraproject.org/wiki/PackagingDrafts/AutoConf>

The goal, I think, is incorporation of something like this into Fedora's
Packaging Guidelines. I'm told this is the place to come.

--
Braden McDaniel e-mail: <braden@endoframe.com>
<http://endoframe.com> Jabber: <braden@jabber.org>


--
Fedora-packaging mailing list
Fedora-packaging@redhat.com
https://www.redhat.com/mailman/listinfo/fedora-packaging
 
Old 10-14-2008, 03:50 PM
"Tom "spot" Callaway"
 
Default PackagingDrafts/AutoConf

On Sun, 2008-10-12 at 01:16 -0400, Braden McDaniel wrote:
> I would like to make some progress on this:
>
> <http://fedoraproject.org/wiki/PackagingDrafts/AutoConf>
>
> The goal, I think, is incorporation of something like this into Fedora's
> Packaging Guidelines. I'm told this is the place to come.

This is the right place... do you feel that Draft is ready for us to
consider it for inclusion in the Packaging Guidelines as is?

~spot

--
Fedora-packaging mailing list
Fedora-packaging@redhat.com
https://www.redhat.com/mailman/listinfo/fedora-packaging
 
Old 10-15-2008, 02:14 AM
Toshio Kuratomi
 
Default PackagingDrafts/AutoConf

Braden McDaniel wrote:
> I would like to make some progress on this:
>
> <http://fedoraproject.org/wiki/PackagingDrafts/AutoConf>
>
> The goal, I think, is incorporation of something like this into Fedora's
> Packaging Guidelines. I'm told this is the place to come.
>
Note that I will vote against this draft as written but I'm only one
person on the FPC :-)

I outlined in the other thread what kind of draft I would vote for.

-Toshio

--
Fedora-packaging mailing list
Fedora-packaging@redhat.com
https://www.redhat.com/mailman/listinfo/fedora-packaging
 
Old 10-15-2008, 06:19 AM
Braden McDaniel
 
Default PackagingDrafts/AutoConf

On Tue, 2008-10-14 at 10:50 -0400, Tom "spot" Callaway wrote:
> On Sun, 2008-10-12 at 01:16 -0400, Braden McDaniel wrote:
> > I would like to make some progress on this:
> >
> > <http://fedoraproject.org/wiki/PackagingDrafts/AutoConf>
> >
> > The goal, I think, is incorporation of something like this into Fedora's
> > Packaging Guidelines. I'm told this is the place to come.
>
> This is the right place... do you feel that Draft is ready for us to
> consider it for inclusion in the Packaging Guidelines as is?

After some discussion on fedora-devel, I'd say "not yet".

While I do think it's appropriate to steer packagers toward patching
configure and Makefile.in for trivial cases, I'm coming around to the
notion that for more complex cases the prose should restrict itself to
being informational. But I continue to think that certain invocations
of the tools should be practically forbidden. ("autoreconf -f", I'm
looking at you.)

I'll ping back here when I think it's ready.

--
Braden McDaniel e-mail: <braden@endoframe.com>
<http://endoframe.com> Jabber: <braden@jabber.org>


--
Fedora-packaging mailing list
Fedora-packaging@redhat.com
https://www.redhat.com/mailman/listinfo/fedora-packaging
 
Old 10-15-2008, 06:48 AM
Ralf Corsepius
 
Default PackagingDrafts/AutoConf

On Wed, 2008-10-15 at 01:19 -0400, Braden McDaniel wrote:
> On Tue, 2008-10-14 at 10:50 -0400, Tom "spot" Callaway wrote:
> > On Sun, 2008-10-12 at 01:16 -0400, Braden McDaniel wrote:
> > > I would like to make some progress on this:
> > >
> > > <http://fedoraproject.org/wiki/PackagingDrafts/AutoConf>
> > >
> > > The goal, I think, is incorporation of something like this into Fedora's
> > > Packaging Guidelines. I'm told this is the place to come.
> >
> > This is the right place... do you feel that Draft is ready for us to
> > consider it for inclusion in the Packaging Guidelines as is?
>
> After some discussion on fedora-devel, I'd say "not yet".
ACK.

> While I do think it's appropriate to steer packagers toward patching
> configure and Makefile.in for trivial cases, I'm coming around to the
> notion that for more complex cases the prose should restrict itself to
> being informational.
Not ACK. Patching auto-tools sources and generated files is always
preferred, because only this guarantees deterministic builds.

If I were to decide, I would ban all calls to the autotools inside of
specs, unfortunately, many people do not want to accept this thought,
and consider running the autotools inside of *specs to be superior.

It's not a secret, I consider this practice to be "naive maintainers
outsmarting themselves" and these people to be exposing Fedora packages
to risks.

Unfortunately, I am preaching at walls

> But I continue to think that certain invocations
> of the tools should be practically forbidden. ("autoreconf -f", I'm
> looking at you.)

autoreconf is just a wrapper aiming at automating invocations of the
tools underneath and at replacing the plethora of (often broken)
"bootstrap.sh / autogen.sh etc." scripts.

So, if you intend to ban autoreconf, you should be consequent and ban
all calls to the autotools.

If you are aiming at banning "autoreconf -f" (Note: -f), then you are
right, "autoreconf -f" is harmful in many cases.

Ralf



--
Fedora-packaging mailing list
Fedora-packaging@redhat.com
https://www.redhat.com/mailman/listinfo/fedora-packaging
 
Old 10-15-2008, 07:57 AM
Braden McDaniel
 
Default PackagingDrafts/AutoConf

On Wed, 2008-10-15 at 07:48 +0200, Ralf Corsepius wrote:
> On Wed, 2008-10-15 at 01:19 -0400, Braden McDaniel wrote:
> > On Tue, 2008-10-14 at 10:50 -0400, Tom "spot" Callaway wrote:
> > > On Sun, 2008-10-12 at 01:16 -0400, Braden McDaniel wrote:
> > > > I would like to make some progress on this:
> > > >
> > > > <http://fedoraproject.org/wiki/PackagingDrafts/AutoConf>
> > > >
> > > > The goal, I think, is incorporation of something like this into Fedora's
> > > > Packaging Guidelines. I'm told this is the place to come.
> > >
> > > This is the right place... do you feel that Draft is ready for us to
> > > consider it for inclusion in the Packaging Guidelines as is?
> >
> > After some discussion on fedora-devel, I'd say "not yet".
> ACK.
>
> > While I do think it's appropriate to steer packagers toward patching
> > configure and Makefile.in for trivial cases, I'm coming around to the
> > notion that for more complex cases the prose should restrict itself to
> > being informational.
> Not ACK. Patching auto-tools sources and generated files is always
> preferred, because only this guarantees deterministic builds.

"and"? If you're patching both the sources *and* the generated files,
couldn't you wind up in a situation where the source is newer than the
generated files (i.e., the source gets patched after the generated
file)? If that happens, "make" calls the tools to regenerated stuff and
you've just outsmarted yourself. This subtlety is avoidable with
multiple different patches (applied in the correct order), of course;
but for the purpose of a guideline, I'm inclined not to recommend
patching both.

> If I were to decide, I would ban all calls to the autotools inside of
> specs, unfortunately, many people do not want to accept this thought,
> and consider running the autotools inside of *specs to be superior.

I agree, but I'm inclined to take a pragmatic approach where a package
maintainer might need to do extensive patching to the build scripts. I
think it's an exceptional case, but I don't want to make that guy's life
hell.

OTOH, I would certainly want the guideline to make clear that the
autotools should not be run just for the hell of it (i.e., because the
package maintainer wants to make sure the "latest stuff" gets used).

> It's not a secret, I consider this practice to be "naive maintainers
> outsmarting themselves" and these people to be exposing Fedora packages
> to risks.
>
> Unfortunately, I am preaching at walls

We're on the same page ideologically. But I want to find something that
will be palatable to most packagers while addressing the most glaring
potential for breakage.

> > But I continue to think that certain invocations
> > of the tools should be practically forbidden. ("autoreconf -f", I'm
> > looking at you.)
>
> autoreconf is just a wrapper aiming at automating invocations of the
> tools underneath and at replacing the plethora of (often broken)
> "bootstrap.sh / autogen.sh etc." scripts.
>
> So, if you intend to ban autoreconf, you should be consequent and ban
> all calls to the autotools.

My motivation for banning autoreconf would be that it is a shotgun. I
don't know if it can be relied upon to check timestamps and regenerate
only what needs regenerating. I wouldn't want someone who needs to
patch Makefile.[am/in] to wind up regenerating configure--that's silly.

If it *can* be relied upon to respect timestamps, then I have no more
quarrel with its use than I have with invoking any of the autotools
directly. (Which is not to say that I have no quarrel with it.)

> If you are aiming at banning "autoreconf -f" (Note: -f), then you are
> right, "autoreconf -f" is harmful in many cases.

I'd say every case.

--
Braden McDaniel e-mail: <braden@endoframe.com>
<http://endoframe.com> Jabber: <braden@jabber.org>


--
Fedora-packaging mailing list
Fedora-packaging@redhat.com
https://www.redhat.com/mailman/listinfo/fedora-packaging
 
Old 10-15-2008, 08:39 AM
Ralf Corsepius
 
Default PackagingDrafts/AutoConf

On Wed, 2008-10-15 at 02:57 -0400, Braden McDaniel wrote:
> On Wed, 2008-10-15 at 07:48 +0200, Ralf Corsepius wrote:
> > On Wed, 2008-10-15 at 01:19 -0400, Braden McDaniel wrote:
> > > On Tue, 2008-10-14 at 10:50 -0400, Tom "spot" Callaway wrote:
> > > > On Sun, 2008-10-12 at 01:16 -0400, Braden McDaniel wrote:
> > > > > I would like to make some progress on this:
> > > > >
> > > > > <http://fedoraproject.org/wiki/PackagingDrafts/AutoConf>
> > > > >
> > > > > The goal, I think, is incorporation of something like this into Fedora's
> > > > > Packaging Guidelines. I'm told this is the place to come.
> > > >
> > > > This is the right place... do you feel that Draft is ready for us to
> > > > consider it for inclusion in the Packaging Guidelines as is?
> > >
> > > After some discussion on fedora-devel, I'd say "not yet".
> > ACK.
> >
> > > While I do think it's appropriate to steer packagers toward patching
> > > configure and Makefile.in for trivial cases, I'm coming around to the
> > > notion that for more complex cases the prose should restrict itself to
> > > being informational.
> > Not ACK. Patching auto-tools sources and generated files is always
> > preferred, because only this guarantees deterministic builds.
>
> "and"? If you're patching both the sources *and* the generated files,
> couldn't you wind up in a situation where the source is newer than the
> generated files (i.e., the source gets patched after the generated
> file)?
Yes, it would require preserving timestamps and/or touching files.

Preserving timestamps isn't easily doable with rpm (c.f. option -T in
man patch), but touching often is very simple. Depending on the
complexity of a patch and the complexity of a package, normally reduces
to very few touch'es (working principle: set the time stamps of modified
files to that of an unmodified file at the root of auto*tools
dependency)

e.g. often a
touch -r aclocal.m4 configure.*
or similar after applying a patch works.


> > > But I continue to think that certain invocations
> > > of the tools should be practically forbidden. ("autoreconf -f", I'm
> > > looking at you.)
> >
> > autoreconf is just a wrapper aiming at automating invocations of the
> > tools underneath and at replacing the plethora of (often broken)
> > "bootstrap.sh / autogen.sh etc." scripts.
> >
> > So, if you intend to ban autoreconf, you should be consequent and ban
> > all calls to the autotools.
>
> My motivation for banning autoreconf would be that it is a shotgun.

Agreed.

> I
> don't know if it can be relied upon to check timestamps and regenerate
> only what needs regenerating.
AFAICT, older autoreconf's had been problematic, but newer ones seem to
work quite well with packages having been developed with modern
autotools - At least, I haven't see a breakage for while a while.

> I wouldn't want someone who needs to
> patch Makefile.[am/in] to wind up regenerating configure--that's silly.
It's not that silly, because newer automake/aclocal's require newer
autoconf's.

The effects only show on rare occasions, nevertheless they occasionally
show. However, more often you encounter cases, where regenerating
Makefile.am's with new automakes breaks Makefile.ins, which had been
developed with old automakes.

> If it *can* be relied upon to respect timestamps, then I have no more
> quarrel with its use than I have with invoking any of the autotools
> directly. (Which is not to say that I have no quarrel with it.)
>
> > If you are aiming at banning "autoreconf -f" (Note: -f), then you are
> > right, "autoreconf -f" is harmful in many cases.
>
> I'd say every case.


Ralf



--
Fedora-packaging mailing list
Fedora-packaging@redhat.com
https://www.redhat.com/mailman/listinfo/fedora-packaging
 
Old 10-15-2008, 08:52 AM
Enrico Scholz
 
Default PackagingDrafts/AutoConf

Braden McDaniel <braden@endoframe.com> writes:

>> Not ACK. Patching auto-tools sources and generated files is always
>> preferred, because only this guarantees deterministic builds.
>
> "and"? If you're patching both the sources *and* the generated files,
> couldn't you wind up in a situation where the source is newer than the
> generated files (i.e., the source gets patched after the generated
> file)?

Use 'touch --reference' and submit an patch to upstream which adds
'AM_MAINTAINER_MODE' to configure.ac.


Enrico

--
Fedora-packaging mailing list
Fedora-packaging@redhat.com
https://www.redhat.com/mailman/listinfo/fedora-packaging
 
Old 10-15-2008, 09:10 AM
Patrice Dumas
 
Default PackagingDrafts/AutoConf

On Wed, Oct 15, 2008 at 01:19:15AM -0400, Braden McDaniel wrote:
> On Tue, 2008-10-14 at 10:50 -0400, Tom "spot" Callaway wrote:
> > On Sun, 2008-10-12 at 01:16 -0400, Braden McDaniel wrote:
> > > I would like to make some progress on this:
> > >
> > > <http://fedoraproject.org/wiki/PackagingDrafts/AutoConf>
> > >
> > > The goal, I think, is incorporation of something like this into Fedora's
> > > Packaging Guidelines. I'm told this is the place to come.
> >
> > This is the right place... do you feel that Draft is ready for us to
> > consider it for inclusion in the Packaging Guidelines as is?
>
> After some discussion on fedora-devel, I'd say "not yet".
>
> While I do think it's appropriate to steer packagers toward patching
> configure and Makefile.in for trivial cases, I'm coming around to the
> notion that for more complex cases the prose should restrict itself to
> being informational. But I continue to think that certain invocations

I think that it would be very nice if you could summary the whole
conversation in
http://fedoraproject.org/wiki/PackageMaintainers/Packaging_Tricks
with a (controversial) in the title.

I personnally think that this kind of complicate recommendation should
not be in the guideline in any case, the guidelines are already too big,
but it should definitively be somewhere such that one has just to point
to the text when doing reviews.

--
Pat

--
Fedora-packaging mailing list
Fedora-packaging@redhat.com
https://www.redhat.com/mailman/listinfo/fedora-packaging
 
Old 10-15-2008, 09:19 AM
Braden McDaniel
 
Default PackagingDrafts/AutoConf

On Wed, 2008-10-15 at 09:52 +0200, Enrico Scholz wrote:
> Braden McDaniel <braden@endoframe.com> writes:
>
> >> Not ACK. Patching auto-tools sources and generated files is always
> >> preferred, because only this guarantees deterministic builds.
> >
> > "and"? If you're patching both the sources *and* the generated files,
> > couldn't you wind up in a situation where the source is newer than the
> > generated files (i.e., the source gets patched after the generated
> > file)?
>
> Use 'touch --reference' and submit an patch to upstream which adds
> 'AM_MAINTAINER_MODE' to configure.ac.

Many maintainers have made a conscious choice not to use that macro. I
know I have.

--
Braden McDaniel e-mail: <braden@endoframe.com>
<http://endoframe.com> Jabber: <braden@jabber.org>


--
Fedora-packaging mailing list
Fedora-packaging@redhat.com
https://www.redhat.com/mailman/listinfo/fedora-packaging
 

Thread Tools




All times are GMT. The time now is 08:36 AM.

VBulletin, Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright ©2007 - 2008, www.linux-archive.org