GPC autoconf-ed

Mon, 29 Jul 96 13:09:49 CST


I mentioned my rts-autoconf adventures on the mailinglist; I dumped a
modified RTS (rts-autoconf.tar.gz) in my homedir on agnes.dida....

Usage is straightforward: cd to your $(gpcbin)/rts directory and 
run ../../$(gpcsrc)/rts/configure ; make

Autoconf is the way to go for GNU software and I think GNU Pascal should
use it too.

This is not finished: I have to do GPC itself, plus the result of a number
of tests is not yet used in the RTS makefile. But it deals with all the
-DSYSV -DNO_CASECMP -DMY_VERY_WEIRD_SYSTEM flags.

It can also do crosscompilation:

run CC=i386-go32-gcc AR=i386-go32-ar RANLIB=i386-go32-ranlib \
        ../../$(gpcsrc)/rts/configure --target=i386-go32 ; make

to get a djgpp RTS (on Linux)

I also added a definition in Makefile.in to build libgpc as a shared lib.
A 'make libgpc.so.2.8 CFLAGS="-O2 -fPIC"' results in:

lrwxrwxrwx   1 root     root           13 Jul 29 02:06 /usr/lib/libgpc.so -> libgpc.so.2.8*
-rwxr-xr-x   1 root     root        48960 Jul 29 02:06 /usr/lib/libgpc.so.2.8*

This reduces the size of executables:
-rwxr-xr-x   1 janjaap  users        2856 Jul 29 02:09 hello*
-rw-r--r--   1 janjaap  users          63 Jul 29 02:07 hello.pas

Statically linked, the minimum is ~33K.
BTW: this will work only on ELF un*x systems and I have only tested it on
Linux.

"ldd hello" shows:
        libgpc.so.2.8 => /usr/lib/libgpc.so.2.8
        libm.so.5 => /lib/libm.so.5.0.5
        libc.so.5 => /lib/libc.so.5.2.18

I will add this as an "--enable-shared" option to "configure"

As for your desire to release 2.7.2: I can have this finished by friday
(I think ...), then it should be tested on a number of different platforms.
I'm especially curious about BSD unix systems, because I developed this on
Linux, which is essentially SysV.

I created a "configure.bat" for the dos world where there's no bash.
Peter, you have the same with OS/2 so maybe you can take a look at
it and create something simular for the EMX thing.
(I ripped of binutils and GCC to create "configure.bat")

/janjaap

---
Thus spake the master programmer:
"After three days without programming, life becomes meaningless."
[The Tao Of Programming]


J.J. van der Heijden (j.j.vanderheijden@student.utwente.nl)

HTML conversion by Lluís de Yzaguirre i Maura
Institut de Lingüística Aplicada - Universitat "Pompeu Fabra"
e-mail: de_yza@upf.es