automake
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Automake digest, Vol 1 #542 - 4 msgs


From: Christophe Tronche
Subject: Re: Automake digest, Vol 1 #542 - 4 msgs
Date: Fri, 2 Nov 2001 20:37:11 +0100
User-agent: SEMI/1.13.7 (Awazu) CLIME/1.13.6 (وخ±) Emacs/20.7 (i386-redhat-linux-gnu) (with unibyte mode)

On 01 Nov 2001 20:06:01 -0500, Braden McDaniel <address@hidden> wrote:

> On Thu, 2001-11-01 at 13:14, Simon Perkins wrote:
> > Hi,
> > 
> > Are there any plans to introduce the ability to generate RPMs using 
> > automake?
> > Perhaps as an option to 'make dist'? What about the solaris packages format?
> > 
> > If people have Makefile.am files they've hacked by hand to do this, I'd 
> > also be
> > interesting in some pointers...
> 
> Why bother? Just use dist-hook to include your specfile in the tarball.
> Once you have a tarball with a specfile in it, making an RPM is a simple
> as
> 
>     rpm -tb tarball.tar.gz
> 

I agree that _once_ you got a spec file inside your tarball, it's easy
to build an rpm (if you know how to do it). However, I think there are
strong arguments to include some support inside automake to do
it. Here are some:

1) Certainly it's easy to make an RPM. But what about a Solaris
   package ? An AIX one ? If you're writing some piece of software and
   want it to be distributed widely, probably you don't know how to
   write spec for all of them. And even if you do, there are more
   interesting things in life. One _shouldn't_ have to master this
   kind of skills.

2) Writing and maintaining a specfile is a pain in the ass (excuse my
   french). In particular, the section describing the list of files to
   include in the package (called %files in RPM) can be derived from
   the Makefiles. It's basically the files that are installed by a
   "make install".

3) If you write specs for the RPMs, the debian packager, the foobar
   packager, you've to repeat many things in each specfile, such as
   the list of files to include, the author's name or the package
   version, and redundancy is evil. One should write this once for
   all, and configure.ac seems a good candidate to me.



The more I think, the stronger the case appears to me, so I think I'm
gonna write something right now. Here's how I see things:

1) an additional macro in configure.ac to specify the author's name,
   the license, etc... configure.ac holds the revision number already;

2) Additionnal targets list-install and list-install-doc to know
   what's gonna be installed;

3) you put an AUTOMAKE_OPTIONS = rpm in your Makefile.am, you get an
   additional target $(PACKAGE).spec to build the package spec, and of
   course an "rpm" target. If you put AUTOMAKE_OPTIONS = exe, you get
   an AIX package, and so on.


Seems like there's some fun ahead for the week-end !

-- 
Christophe Tronche      address@hidden
                        http://tronche.com/



reply via email to

[Prev in Thread] Current Thread [Next in Thread]