This is the mail archive of the
automake@gnu.org
mailing list for the automake project.
Re: package creation
- From: Daniel Reed <n at ml dot org>
- To: "Gustavo A. Baratto" <gbaratto at superb dot net>
- Cc: automake at gnu dot org
- Date: Thu, 12 Aug 2004 16:46:40 -0400 (EDT)
- Subject: Re: package creation
- References: <035d01c480aa$f2683dd0$9c01a8c0@chivas>
- Reply-to: automake at gnu dot org
On 2004-08-12T13:28-0700, Gustavo A. Baratto wrote:
) Basically, what I looking for is a 'make package' rule, where all the files
) that would be installed, plus an install script could be tarred up together,
) so we can copy the tarball to many diferent servers, unpack it, run the
) script, and the files get installed without the need of copying over or nfs
) mounting the whole source code? Not a fancy full blown package like rpm.
In naim, I do this by adding code to configure.in and Makefile.am.
configure.in addition:
AC_SUBST([pkgtarball], ['${PACKAGE_TARNAME}-${PACKAGE_VERSION}-${host}.tgz'])
AC_ARG_WITH(pkgtarball,
AC_HELP_STRING([--with-pkgtarball], [binary tarball file [[naim-VERSION-HOST.tgz]]]),
[
pkgtarball=${withval}
]
)
Makefile.am addition:
tarball: tgz
tgz:
mkdir "${top_builddir}/tmp"
make install-strip DESTDIR="`cd ${top_builddir}/tmp; pwd`"
(cd "${top_builddir}/tmp"; $(AMTAR) cf - --owner 0 --group 0 usr | GZIP=$(GZIP_ENV) gzip -c >../${pkgtarball})
rm -rf "${top_builddir}/tmp"
pkgtbz2 = `echo ${pkgtarball} | sed 's/gz$$/bz2/'`
tbz2:
mkdir "${top_builddir}/tmp"
make install-strip DESTDIR="`cd ${top_builddir}/tmp; pwd`"
(cd "${top_builddir}/tmp"; $(AMTAR) cf - --owner 0 --group 0 usr | bzip2 -9 -c >../${pkgtbz2})
rm -rf "${top_builddir}/tmp"
You can then ./configure --prefix=/usr && make tgz. The output will be
YOURPACKAGE-YOURVERSION-YOURHOST.tgz, which you can move to your
to-be-installed machines and untar from /
(By adding a little more code to Makefile.am, you can use this to create a
Cygwin-compatible package as well :)
--
Daniel Reed <n@ml.org> http://people.redhat.com/djr/ http://naim.n.ml.org/
"If you place a small value on yourself, rest assured, the world will
not raise your price."