[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Package creation with GNU tools
From: |
Richard Stallman |
Subject: |
Re: Package creation with GNU tools |
Date: |
Tue, 10 Aug 2004 22:23:36 -0400 |
we have only spoken about how to control installed packages, not yet
about how to create and install them.
With the design I have proposed, installation is trivial. You untar
the package into a directory somewhere (wherever you like), and then
make a symlink to that directory from under /package.
Beside the pure extraction, installation contains configuring and
setting up the package and the environment for each other.
With my design, there is no need for this. We will not have any
feature to run scripts for installation or deinstallation.
The translator(s) will handle everything.
Moreover, the way the
environment is set up for the package -- including the provided files
in a database
I am not sure what database this refers to. My design does not
involve any database of files, aside from tables inside the
translator(s).
As for creating packages, that can be done by tricking `make install'
so that instead of installing files in system directories, it installs
them into a directory you made for the purpose. Then you tar up that
directory.
mkdir bindist
cd bindist
CFLAGS="-g3 -O3 -march=athlon-xp -Wall -W -Wstrict-prototypes
-Wmissting-prototypes" ../configure --prefix=/
make
make install prefix=foo-0.1
tar czf foo-0.1.tar.gz foo-0.1
Yes, these few lines build build the binary tarball for any package
that uses autoconf and automake -- without any packaging work.
Looks like you already had the same idea. (You forgot the call
to ./configure.)
This does NOT require that the package use autoconf or automake. It
only requires that the package satisfy the GNU standards for
configure and make targets.
There are programs that don't follow these GNU standards.
For those, something like the BSD ports system is useful.