Hello, everybody!
A new alpha version of the GNU Pascal compiler (GPC) is being uploaded to the usual place,
ftp://agnes.dida.physik.uni-essen.de/gnu-pascal/alpha/ .
News: This version compiles with gcc-2.8.0, gcc-2.8.1, or egcs-19980508 (2.91.28). Compiling with EGCS requires a definition `-DEGCS' given to `make', like the following:
make LANGUAGES=pascal CFLAGS="-g -O6 -DEGCS" install
This will be automated in the future.
Together with the source, I am uploading binaries for Linux (gcc-2.8.1 and egcs-19980508) and DOS (DJGPP).
Enjoy - and send your test reports to the GPC mailing list gpc@hut.fi,
Peter
In message 199805111845.UAA23246@esmeralda.peter.gerwinski.essen.deyou write:
Hello, everybody!
A new alpha version of the GNU Pascal compiler (GPC) is being uploaded to the usual place,
ftp://agnes.dida.physik.uni-essen.de/gnu-pascal/alpha/ .
News: This version compiles with gcc-2.8.0, gcc-2.8.1, or egcs-19980508 (2.91.28). Compiling with EGCS requires a definition `-DEGCS' given to `make', like the following:
Great news!
I'm curious about how much stuff you had to change to make gpc work with egcs and any suggestions you might have to better document the existing front-end interface incompatibilities between gcc-2.8 and egcs.
I'm also curious about how much (if any) changes you need outside the pascal front end. It would be real cool if we could start moving toward the ability to plug gpc into egcs.
jeff
According to Jeffrey A Law:
I'm curious about how much stuff you had to change to make gpc work with egcs and any suggestions you might have to better document the existing front-end interface incompatibilities between gcc-2.8 and egcs.
Not too much. LANGUAGES does a good job (although I found it only *after* having done the changes;-).
BTW, in LANGUAGES is written: ] ] Right now there is no documentation for the GCC tree -> rtl interfaces ] (or more generally the interfaces for adding new languages).
See `info -f gpc -n "GPC source"' and from there especially `info -f gpc -n "Tree nodes"' for a building site of some documentation for tree nodes and such.
I'm also curious about how much (if any) changes you need outside the pascal front end.
About the same as with gcc-2.8.1, but ...
It would be real cool if we could start moving toward the ability to plug gpc into egcs.
... `convert.c' already has the relevant `#ifdef GPC' sections. :-)
See `p/diffs/gcc-egcs-2.91.28.diff' for all changes in the backend necessary to make GPC work.
Greetings,
Peter
I'm trying to build a GPC cross compiler so I can write Pascal programs for the Palm Pilot.
I have configured and built the GCC cross compiler ( 2.8.1 ) but when I try to build GPC-980511 I get the following output,
www:/usr/src/palm_pascal/gcc-2.8.1 $ make LANGUAGES=pascal
snip Things that look like they are working correctly
cd p; make "AR_FLAGS=rc" "AR_FOR_TARGET=/usr/local/gnu/palm_pascal/m68k-palmos-coff/bin/ar" "BISON=bison" "BISONFLAGS=" "CC=gcc" "CFLAGS=-g" "CLIB=" "GCC_FOR_TARGET=./xgcc -B./" "LDFLAGS=" "LEX=flex" "LEXFLAGS=" "LN=ln -s" "MAKEINFO=makeinfo" "MAKEINFOFLAGS=" "RANLIB_FOR_TARGET=/usr/local/gnu/palm_pascal/m68k-palmos-coff/bin/ranlib" "RANLIB_TEST_FOR_TARGET=[ -f /usr/local/gnu/palm_pascal/m68k-palmos-coff/bin/ranlib ]" "SHELL=/bin/sh" "STAGE_PREFIX=" "exeext=" "objext=.o" "exec_prefix=/usr/local/gnu/palm_pascal" "prefix=/usr/local/gnu/palm_pascal" "tooldir=/usr/local/gnu/palm_pascal/m68k-palmos-coff" "bindir=/usr/local/gnu/palm_pascal/bin" "libsubdir=/usr/local/gnu/palm_pascal/lib/gcc-lib/m68k-palmos-coff/2.8.1" "CROSS=-DCROSS_COMPILE" "AR_FLAGS=rc" "AR_FOR_TARGET=/usr/local/gnu/palm_pascal/m68k-palmos-coff/bin/ar" "BISON=bison" "BISONFLAGS=" "CFLAGS=-g" "X_CFLAGS=" "LDFLAGS=" "LEX=flex" "LEXFLAGS=" "MAKEINFO=makeinfo" "MAKEINFOFLAGS=" "MAYBE_TARGET_DEFAULT=" "MAYBE_USE_COLLECT2=" "RANLIB_FOR_TARGET=/usr/local/gnu/palm_pascal/m68k-palmos-coff/bin/ranlib" "RANLIB_TEST_FOR_TARGET=[ -f /usr/local/gnu/palm_pascal/m68k-palmos-coff/bin/ranlib ]" "SHELL=/bin/sh" "bindir=/usr/local/gnu/palm_pascal/bin" "exec_prefix=/usr/local/gnu/palm_pascal" "gxx_include_dir=/usr/local/gnu/palm_pascal/include/g++" "includedir=/usr/local/include" "libsubdir=/usr/local/gnu/palm_pascal/lib/gcc-lib/m68k-palmos-coff/2.8.1" "prefix=/usr/local/gnu/palm_pascal" "target_alias=m68k-palmos-coff" "tooldir=/usr/local/gnu/palm_pascal/m68k-palmos-coff" "gpc_version=980511" "rts_version=2.8" "version=2.8.1" ../gpc1 make[1]: Entering directory `/usr/src/palm_pascal/gpc-980511/p' make[1]: *** No rule to make target `../configure', needed by `Makefile'. Stop. make[1]: Leaving directory `/usr/src/palm_pascal/gpc-980511/p' make: *** [gpc1] Error 2 www:/usr/src/palm_pascal/gcc-2.8.1 $
Can anybody help or am I just pushing the envelope here and I should give up on my quest for awhile. Am I the first to try to build a GPC alpha 980511 cross compiler?
I'm building this on an Intel Linux box ( Red Hat 4.2 ) with GCC version 2.7.2.1.
Thanks in advance.
- Gerry
According to Gerry Dubois:
make[1]: *** No rule to make target `../configure', needed by `Makefile'.
I suspect that line 247 in GPC's `Makefile.in' is wrong. Please try with
Makefile: $(srcdir)/Makefile.in $(srcdir)/configure cd ..; $(SHELL) config.status
(i.e. without one `..') or even with
Makefile: $(srcdir)/Makefile.in cd ..; $(SHELL) config.status
since we know that the file exists. ;-)
Am I the first to try to build a GPC alpha 980511 cross compiler?
Yes, AFAIK.
I'm building this on an Intel Linux box ( Red Hat 4.2 ) with GCC version 2.7.2.1.
But with GCC source 2.8.1? Building gpc-980511 with gcc-2.7.2.x source works but might cause more problems.
Peter
Am I the first to try to build a GPC alpha 980511 cross compiler?
Yes, AFAIK.
!!! I think I need something just like this, and don't know how to go about it myself. I never saw the first part of this message, so I don't know what it's about exactly.
Are you trying to get GPC to compile DEC Alpha binaries on a RH Intel Linux box? What OS are the Alpha binaries for? I need them for Digital Unix 4.0D running on an Alpha 4100.
| clavicle@niagara.com "The LORD is my strength and my | www.niagara.com/~clavicle song; he has become my salvation." | Exodus 15:2b
According to Paul Doerwald:
Are you trying to get GPC to compile DEC Alpha binaries on a RH Intel Linux box?
As I have understood him, he needs some other type of cross compiler.
What OS are the Alpha binaries for? I need them for Digital Unix 4.0D running on an Alpha 4100.
In the GPC FAQ list (http://home.pages.de/~GNU-Pascal/gpc-faq.html) are some instructions how to create such a thing. It certainly needs an update.
A cross GPC should be created essentially the same way as a cross GCC. In both cases you will need cross Binutils.
I once succeeded to create a cross GPC that produced valid assembler source for an IBM RS6000 on a Linux box.
Peter
On Mon, 11 May 1998, Peter Gerwinski wrote:
Muchachos!
A new alpha version of the GNU Pascal compiler (GPC) is being uploaded to the usual place,
ftp://agnes.dida.physik.uni-essen.de/gnu-pascal/alpha/ .
The new alpha is better under IRIX 6.2. But still: the rts part is broken. Can someone advice me?
The result of 'make CC="stage2/xgcc -Bstage2/" LANGUAGES=pascal CFLAGS=-O2' attached.
Cheers,
miklos
Peter Gerwinski a écrit:
A new alpha version of the GNU Pascal compiler (GPC) is being uploaded to the usual place,
ftp://agnes.dida.physik.uni-essen.de/gnu-pascal/alpha/ .
Peter You have forgotten to stubedit gpc1.exe so that the same bug when compiling programs which call the graph unit is again there. After stubediting the stack of gpc1.exe to 0x180000 (the amount contained in cc1.exe, I did'nt remember what you had selected) it works fine: all my test programs and the graphics program compile and execute, except of course for the problem of bpString in the BPcompat package. Thanks again for your work
Date: Tue, 12 May 1998 22:17:01 -0700 From: Maurice Lombardi Maurice.Lombardi@ujf-grenoble.fr To: Peter Gerwinski peter@gerwinski.de Cc: egcs@cygnus.com, gpc@hut.fi Subject: Re: New GNU Pascal alpha gpc-980511 works with egcs-19980508
Peter You have forgotten to stubedit gpc1.exe so that the same bug when compiling programs which call the graph unit is again there. After stubediting the stack of gpc1.exe to 0x180000 (the amount contained in cc1.exe, I did'nt remember what you had selected) it works fine:
I had a problem with this release as well - and I just tried to stubedit gpc1.exe - it now works!
all my test programs and the graphics program compile and execute, except of course for the problem of bpString in the BPcompat package.
What is this problem? I am working on v2.0 of bpcompat, and I would like to know of any problems.
BTW: Frank and Peter - the "Readln" bug still exists under DJGPP.
This is my workaround; Readln ( MyText, s ); i := length ( s ); if s [ i ] = #13 then Delete ( s, i, 1);
I am not sure whether the fact that "s" contains the #13 character at the end of it is a GPC problem, or a DJGPP problem.
Best regards, The Chief -------- Dr. Abimbola A. Olowofoyeku (The African Chief) Email: laa12@keele.ac.uk Homepage: http://ourworld.compuserve.com/homepages/African_Chief/ Author of: Chief's Installer Pro 4.25 for Win16 and Win32: ftp://ftp.simtel.net/pub/simtelnet/win3/install/chief425.zip
Dr A Olowofoyeku (The African Chief) a écrit:
all my test programs and the graphics program compile and execute, except of course for the problem of bpString in the BPcompat package.
What is this problem? I am working on v2.0 of bpcompat, and I would like to know of any problems.
It is in the following redefinition of string in gpctypes.pas:
{$ifdef _Borland_Pascal_} String = bpString; {$endif _Borland_Pascal_}
then any instruction var s:String[25]; becomes illegal.
Best regards,
Date: Wed, 13 May 1998 11:22:39 -0700 From: Maurice Lombardi Maurice.Lombardi@ujf-grenoble.fr To: laa12@keele.ac.uk Cc: gpc@hut.fi Subject: Re: New GNU Pascal alpha gpc-980511
Dr A Olowofoyeku (The African Chief) a ecrit:
all my test programs and the graphics program compile and execute, except of course for the problem of bpString in the BPcompat package.
What is this problem? I am working on v2.0 of bpcompat, and I would like to know of any problems.
It is in the following redefinition of string in gpctypes.pas:
{$ifdef _Borland_Pascal_} String = bpString; {$endif _Borland_Pascal_}
then any instruction var s:String[25]; becomes illegal.
Ah! Yes, I had noticed that. :-(. It seems that redefining "String" is not a very good idea. I will probably remove that line from the next release. By the way, GPCTYPES.PAS has been merged into SYSTEM.PAS, and the "BinFile" stuff has been moved from SYSTEM.PAS into a new unit.
I hope to release a version of bpCompat 2.0, which takes into account all the recent developments in GPC, in about 2 weeks time. So, please report any problem with bpcompat so that I can have a look at it. Version 2.0 will hopefully be far more compatible with BP than the earlier versions.
Best regards, The Chief -------- Dr. Abimbola A. Olowofoyeku (The African Chief) Email: laa12@keele.ac.uk Homepage: http://ourworld.compuserve.com/homepages/African_Chief/ Author of: Chief's Installer Pro 4.25 for Win16 and Win32: ftp://ftp.simtel.net/pub/simtelnet/win3/install/chief425.zip
According to Maurice Lombardi:
You have forgotten to stubedit gpc1.exe so that the same bug when compiling programs which call the graph unit is again there.
I corrected it to 2MB of stack. Just uploading the new `.zip'.
Thanks,
Peter