Subject: [clisp-list] Clisp-1999.07.22 RPM for RedHat 6.1

From: Daniel Tourde <[email-masked]>
Date: Mon, 31 Jan 2000 10:26:58 +0100

Hello,

I have just created a rpm for RedHat 6.1 of Clisp-1999.07.22. To do so,
I have used and modified the clisp.spec provided in the source (few
things did not work properly). I have retared the file, renaming the top
directory clisp-1999.07.22 instead of clisp-1999-07-22 (rpm does not
like 1999-07-22 as a version number) and I have build it by placing the
spec file and clisp.gif under /usr/src/redhat/SPECS and the tared gziped
file under /usr/src/redhat/SOURCES.

Then rpm -ba --sign clisp-1999.07.22-2.clisp

Rmq: - I don't use the --with-module=postgresql642 option in ./configure
cause I have not installed PostgreSQL on my machine.
     - Unfortunately, the procedure installs the soft under /usr. To get
rid of this installation "parasite", just go to
/usr/src/redhat/BUILD/clisp-1999.07.22/src and type make uninstall

Then reinstall it by using the rpm file stored under
/usr/src/redhat/RPMS/i386

rpm -Uvh clisp-1999.07.22-2.i386.rpm 

Enjoy !

		Daniel

# Copyright (C) 1998, 1999 by Sam Steingold
# Modified by Daniel Tourde 27/01/2000
# GNU General Public License v.2 (GPL2) is applicable:
# No warranty; you may copy/modify/redistribute under the same
# conditions with the source code. See <URL:http://www.gnu.org>
# for the details and the precise copyright document.

# The purpose of this file is creation of source/binary RPMs, **NOT**
# building/installing CLISP.  If you read the comments below, you will
# learn why.

# to create the source/binary RPMs, do
#  rpm -ba --sign clisp-1999.07.22-2.spec

%define name clisp
%define version 1999.07.22
%define release 2

Summary:      Common Lisp (ANSI CL) implementation
Name:         %{name}
Version:      %{version}
Release:      %{release}
Icon:         clisp.gif
Copyright:    GPL
Group:        Development/Languages
Source:      
ftp://seagull.cdrom.com/pub/lisp/clisp/source/clisp-1999.07.22.tar.gz
URL:          http://clisp.cons.org
Packager:     Red Hat Contrib|Net <[email-masked]>
Provides:     clisp, ansi-cl
Distribution: Red Hat Contrib|Net

%description
Common Lisp is a high-level, all-purpose programming language.
CLISP is a Common Lisp implementation by Bruno Haible of Karlsruhe
University and Michael Stoll of Munich University, both in Germany.
It mostly supports Common Lisp as described in the ANSI CL standard.
It runs on microcomputers (DOS, OS/2, Windows NT, Windows 95, Amiga
500-4000, Acorn RISC PC) as well as on Unix workstations (Linux, SVR4,
Sun4, DEC Alpha OSF, HP-UX, NeXTstep, SGI, AIX, Sun3 and others) and
needs only 2 MB of RAM.
It is free software and may be distributed under the terms of GNU GPL,
while it is possible to distribute commercial applications compiled
with CLISP.
The user interface comes in German, English, French and Spanish.
CLISP includes an interpreter, a compiler, a large subset of CLOS, a
foreign language interface and a socket interface.
An X11 interface is available through CLX and Garnet.

More information on at <http://clisp.cons.org/>.
Sources and selected binaries are available by anonymous ftp from
<ftp://ftp2.cons.org/pub/lisp/clisp>.
The latest and greatest i386 binary RPM is on
<ftp://cellar.goems.com/pub/clisp>.

The package was created by Daniel Tourde <[email-masked]> and is built
for  RedHat 6.1.
(RHCN requires that I put their e-mail into the "Packager:" header).

# RPM doesn't provide for comfortable operation: when I want to create a
# package, I have to untar, build and install (--short-circuit works for
# compilation and installation only, so if I want to build a binary RPM,
# I am doomed to untar, compile and install!)  This is unacceptable, so
# I disabled untar completely - I don't need it anyway, I work from a
# CVS repository, and I comment out the build clause and `make install`.
# If *YOU* want to build using RPM, you are welcome to it: just
# uncomment the commands in the appropriate sections (do not uncomment
# the doubly commented lines - they are maintainer-only commands).
# Additionally, RPM barfs on rpmrc created with `rpm --showrc >
/etc/rpmrc`
# which is an unspeakable abomination.
# I reported all these as bugs and was told "it's a feature, not a bug".

%prep
cat <<EOF
This will build RPMs for CLISP: %{name}-%{version}-%{release}.
We assume that you are in the top level source directory already.
No unpacking or patching is done - we go straight to build and
creating the RPMs.  See 'clisp.spec' for more information.
EOF
#%setup -T -D -n /usr/src/%{name}
%setup -n /usr/src/redhat/BUILD/%{name}-%{version}
%build
##rm -rf src/VERSION
##date +%Y-%02m-%02d > src/VERSION
##make -f Makefile.devel src/version.h
## make -f Makefile.devel
## make -f Makefile.devel check-configures
#echo "Uncomment 'configure' in 'clisp.spec' if you want to build";
export LINGUAS="en_US en de es fr"
./configure --prefix=/usr --fsstnd=redhat --with-module=wildcard \
    --with-module=regexp --with-module=bindings/linuxlibc6 \
    --with-module=clx/new-clx --with-export-syscalls
cd src
./makemake  --prefix=/usr --fsstnd=redhat --with-module=wildcard \
    --with-module=regexp --with-module=bindings/linuxlibc6 \
    --with-module=clx/new-clx --with-export-syscalls \
    --with-readline --with-gettext --with-dynamic-ffi > Makefile
make config.lsp
make
make check

%install
#echo "Uncomment 'make install' in 'clisp.spec' if you want to install";
cd src
make install

%files
%dir /usr/lib/clisp/
/usr/lib/clisp/*
/usr/bin/clisp
%dir /usr/doc/%{name}-%{version}/
/usr/doc/%{name}-%{version}/*
/usr/man/man3/clreadline.3
/usr/man/man1/clisp.1
/usr/share/locale/de/LC_MESSAGES/clisp.mo
/usr/share/locale/en/LC_MESSAGES/clisp.mo
/usr/share/locale/es/LC_MESSAGES/clisp.mo
/usr/share/locale/fr/LC_MESSAGES/clisp.mo

-- 
***********************************************************************
Daniel TOURDE                                   E-mail : [email-masked]
The Aeronautical Research Institute of Sweden   Tel : +46 8 55 54 93 44
P.O. Box 11021 S-161 11 BROMMA, Sweden          Fax : +46 8    25 34 81
***********************************************************************

---

From: Sam Steingold <[email-masked]>
Date: 31 Jan 2000 12:31:39 -0500

thanks!

 - did you upload the source and binary rpms to rhcn?

 - why did you use configure/makemake/make instead of configure --build?

 - why did you discard the automatic revision setting?

-- 
Sam Steingold (http://www.podval.org/~sds)
Micros**t is not the answer.  Micros**t is a question, and the answer is Linux,
(http://www.linux.org) the choice of the GNU (http://www.gnu.org) generation.
You can have it good, soon or cheap.  Pick two...

---

From: Daniel Tourde <[email-masked]>
Date: Tue, 01 Feb 2000 09:51:27 +0100

Hi !

>  - did you upload the source and binary rpms to rhcn?

Not yet.

>  - why did you use configure/makemake/make instead of configure --build?

Cause I did not clearly understood the meaning of the last option of
configure. It became --build build and it sounded strange to me. I'm not
an expert in the domain (yet...), I'm sorry.....

>  - why did you discard the automatic revision setting?

Cause it simply did not work. First if a .revison (if I have a good
memory) file was not there it did not continue, when I created one with
the value 1 inside, the value was not increased when I was running
several times rpm -ba. So, I removed it and fixed it by hand. I did not
want to bother about such thing. Sorry.

Thanks for your help. Best regards

		Daniel

---

From: Sam Steingold <[email-masked]>
Date: 01 Feb 2000 12:07:34 -0500

>>>> In message <[email-masked]>
>>>> On the subject of "Re: [clisp-list] Clisp-1999.07.22 RPM for RedHat 6.1"
>>>> Sent on Tue Feb 01 03:51:49 EST 2000
>>>> Honorable Daniel Tourde <[email-masked]> writes:
 >> 
 >> configure. It became --build build and it sounded strange to me. I'm
 >> not an expert in the domain (yet...), I'm sorry.....

`--build' tells `configure' to configure, build and check.

`build' tells `configure' to configure the build in the separate
directory, named `build'.  it ***NOT*** a good idea to do build in the
source directory.

please try:

./configure --help

 >> memory) file was not there it did not continue, when I created one
 >> with the value 1 inside, the value was not increased when I was
 >> running several times rpm -ba. So, I removed it and fixed it by
 >> hand. I did not want to bother about such thing. Sorry.

worked for me.
strange.
what rpm version?

-- 
Sam Steingold (http://www.podval.org/~sds)
Micros**t is not the answer.  Micros**t is a question, and the answer is Linux,
(http://www.linux.org) the choice of the GNU (http://www.gnu.org) generation.
The only intuitive interface is the nipple.  The rest has to be learned.

---

From: Bruno Haible <[email-masked]>
Date: Tue, 1 Feb 2000 19:32:38 +0100 (MET)

> directory, named `build'.  it ***NOT*** a good idea to do build in the

Building in the source directory is possible, but be aware that

- if you want two or more different builds (for different machines, or
  with different compilers or compilation flags), then the source directory
  must be clean: building in the source directory _and_ outside won't work.

- the clean-up command is different: "make distclean" in one case, "rm -rf ..."
  in the other.

For most GNU style packages, you must build in the source directory if your
"make" doesn't support VPATH.

For clisp, you must build in the source directory if your "make" gets in
trouble with symbolic links; this is the case with HP-UX "make".

On non-Unix platforms, you have to build clisp in the source directory;
the makefiles are not setup to support $(srcdir).

Bruno

---

From: Daniel Tourde <[email-masked]>
Date: Wed, 02 Feb 2000 08:25:20 +0100

Hi Sam !

> directory, named `build'.  it ***NOT*** a good idea to do build in the

OK. Thanks.

>  >> hand. I did not want to bother about such thing. Sorry.

RPM version 3.0.3

Thanks for your advice. Best regards

		Daniel

---

From: Sam Steingold <[email-masked]>
Date: 02 Feb 2000 09:57:20 -0500

Hi Daniel,

>>>> In message <[email-masked]>
>>>> Sent on Wed Feb 02 02:26:36 EST 2000

that's the problem - I used 2.something.
apparently they changed the macro stuff.
can you figure out how to fix this?
thanks

-- 
Sam Steingold (http://www.podval.org/~sds)
Micros**t is not the answer.  Micros**t is a question, and the answer is Linux,
(http://www.linux.org) the choice of the GNU (http://www.gnu.org) generation.
Never trust a man who can count to 1024 on his fingers.