Peter Gerwinski <peter@gerwinski.de> el dÃa Tue, 14 Sep 1999 19:54:13 +0200, escribió:
These scopes are nothing that comes from itself; we have to write them. The linker has its name space. If we do not want our Pascal names to conflict with, say, the libc, we must feed the linker with names that cannot conflict. One way to do this is capitalization of the first letter which is not done in most C libraries. A better way will be introduced together with qualified identifiers, as Frank already pointed out.
what about feeding GPC_* to the linker ? (capitalization of the first letter will broke sooner or later, IMO) btw, FPC uses all uppercase, I think ... Sergio Received: (qmail 1196 invoked from network); 14 Sep 1999 05:03:42 -0000 Received: from tim.gerwinski.de (194.221.119.17) by tim.gerwinski.de with SMTP; 14 Sep 1999 05:03:42 -0000 Received: (qmail 893 invoked from network); 14 Sep 1999 04:57:44 -0000 Received: from faui45.informatik.uni-erlangen.de (root@131.188.2.45) by tim.gerwinski.de with SMTP; 14 Sep 1999 04:57:44 -0000 Received: from mi.uni-erlangen.de (root@helena.mi.uni-erlangen.de [131.188.103.20]) by faui45.informatik.uni-erlangen.de (8.9.1/8.1.49-FAU) with ESMTP id GAA26341 for <frank@pascal.gnu.de>; Tue, 14 Sep 1999 06:57:15 +0200 (MET DST) Received: from faui45.informatik.uni-erlangen.de (root@faui45.informatik.uni-erlangen.de [131.188.2.45]) by mi.uni-erlangen.de (8.9.1a/8.1.3-FAU) with ESMTP id GAA05514 for <heckenb@mi.uni-erlangen.de>; Tue, 14 Sep 1999 06:57:13 +0200 (MET DST) Received: from tim.gerwinski.de (tim.gerwinski.de [194.221.119.17]) by faui45.informatik.uni-erlangen.de (8.9.1/8.1.49-FAU) with SMTP id GAA26336 for <heckenb@mi.uni-erlangen.de>; Tue, 14 Sep 1999 06:57:12 +0200 (MET DST) Received: (qmail 822 invoked by uid 28); 14 Sep 1999 04:57:04 -0000 Delivered-To: gpc@gerwinski.de Received: (qmail 809 invoked by uid 10); 14 Sep 1999 04:56:42 -0000 Received: from goedel.fjf.gnu.de (goedel.fjf.gnu.de [10.1.6.1]) by goedel.fjf.gnu.de (8.8.8/8.8.8) with ESMTP id EAA17407 for <gpc@gnu.de>; Tue, 14 Sep 1999 04:21:57 +0200 Date: Tue, 14 Sep 1999 04:21:57 +0200 From: Frank Heckenbach <frank@g-n-u.de> Message-Id: <2EC12BEF.19990914042157.FOO-43FD.frank@g-n-u.de> X-Mailer: smtphack 0.3.5 by Jan Andres To: gpc@gnu.de Subject: Re: GPC on Solaris 2.6 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=iso-8859-1 Sender: owner-gpc@gnu.de Precedence: bulk Tom Schneider wrote:
Thanks Frank. Would the following modification just leave the names alone properly?
Yes, but it would leave them alone like the compiler stores them, i.e. first letter capitalized, the rest lower-case. That might not be what you want. It is planned to change this as soon as we've got the qualified identifiers working (before that, doing so would cause name space conflicts with libc).
Also, since I haven't gotten around to applying patches like this, what would the command line be?
Change into the right directory and do `patch < patchfile'. You might need GNU patch (haven't tried Solaris' patch, so I don't know if it works with unified diffs, but after my recent experiences with other Solaris tools, I doubt it...), and take care of the directory which is the most common source of problems with patch (note the `-p' option to patch). Afterwards, of course, recompile and reinstall. Frank -- Frank Heckenbach, frank@g-n-u.de, http://fjf.gnu.de/ GPC To-Do list, latest features, fixed bugs: http://agnes.dida.physik.uni-essen.de/~gnu-pascal/todo.html Received: (qmail 1203 invoked from network); 14 Sep 1999 05:03:44 -0000 Received: from tim.gerwinski.de (194.221.119.17) by tim.gerwinski.de with SMTP; 14 Sep 1999 05:03:44 -0000 Received: (qmail 1072 invoked from network); 14 Sep 1999 05:01:05 -0000 Received: from faui45.informatik.uni-erlangen.de (root@131.188.2.45) by tim.gerwinski.de with SMTP; 14 Sep 1999 05:01:05 -0000 Received: from mi.uni-erlangen.de (root@helena.mi.uni-erlangen.de [131.188.103.20]) by faui45.informatik.uni-erlangen.de (8.9.1/8.1.49-FAU) with ESMTP id HAA26466 for <frank@pascal.gnu.de>; Tue, 14 Sep 1999 07:00:28 +0200 (MET DST) Received: from faui45.informatik.uni-erlangen.de (root@faui45.informatik.uni-erlangen.de [131.188.2.45]) by mi.uni-erlangen.de (8.9.1a/8.1.3-FAU) with ESMTP id HAA05573 for <heckenb@mi.uni-erlangen.de>; Tue, 14 Sep 1999 07:00:27 +0200 (MET DST) Received: from tim.gerwinski.de (tim.gerwinski.de [194.221.119.17]) by faui45.informatik.uni-erlangen.de (8.9.1/8.1.49-FAU) with SMTP id HAA26461 for <heckenb@mi.uni-erlangen.de>; Tue, 14 Sep 1999 07:00:24 +0200 (MET DST) Received: (qmail 841 invoked by uid 28); 14 Sep 1999 04:57:08 -0000 Delivered-To: gpc@gerwinski.de Received: (qmail 813 invoked by uid 10); 14 Sep 1999 04:56:43 -0000 Received: from goedel.fjf.gnu.de (goedel.fjf.gnu.de [10.1.6.1]) by goedel.fjf.gnu.de (8.8.8/8.8.8) with ESMTP id EAA17688 for <gpc@gnu.de>; Tue, 14 Sep 1999 04:54:16 +0200 Date: Tue, 14 Sep 1999 04:54:16 +0200 From: Frank Heckenbach <frank@g-n-u.de> Message-Id: <6AEC3BBB.19990914045416.FOO-4516.frank@g-n-u.de> X-Mailer: smtphack 0.3.5 by Jan Andres To: gpc@gnu.de Subject: Re: Compiling GPC - mysteries MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=iso-8859-1 Sender: owner-gpc@gnu.de Precedence: bulk Hi, I hope you don't mind my reply to the list, but perhaps there are others who'd like a little insight into the Makefiles (or correct my mistakes)... The Chief wrote:
To make sure that I was not doing anything wrong, I downloaded the latest GPC snapshot again, and extracted the files. I am a bit confused by what I see in the directory tree:
Directory of C:\cygnus\p 03/08/99 08:10 23,724 Makefile.in 1 File(s) 23,724 bytes
Directory of C:\cygnus\p\rts 20/06/99 20:11 3,674 Makefile.in 1 File(s) 3,674 bytes
Directory of C:\cygnus\p 03/08/99 08:18 4,139 config-lang.in 1 File(s) 4,139 bytes
Directory of C:\cygnus\p\rts 05/08/99 18:05 3,107 configure.in 1 File(s) 3,107 bytes
This shows that there are 2 different copies of 'Makefile.in' in the GPC source tree. Which is the right one?
Both of them. Actually, things are even more complicated. The main Makefile is created from Makefile.in and p/Make-lang.in (and possibly Make-lang.in's of other languages when installed). p/Makefile is created from p/Makefile.in. When you call make, you use Makefile. This does some work and at some time calls make with p/Makefile, calls p/rts/configure which creates p/rts/Makefile from p/rts/Makefile.in, and then calls make with p/rts/Makefile. Complicated, huh? configure.in, p/config-lang.in and p/rts/configure.in are used to create configure and p/rts/configure by the maintainers (with a utility called autoconf), so you don't normally execute them, but only configure, whereas p/rts/configure is called by Makefile (see above).
When I run 'configure' from the 'rts' directory, everything works okay [...]
That might be the problem, very probably indeed. You're not supposed to run configure in the p/rts directory because the Makefile does this and passes some appropriate parameters. In fact, after some recent changes of mine, it is now possible to run configure in p/rts manually -- but only if a current GPC is already installed, which is exactly not the case when building a new version of GPC...
If I copy the other 'Makefile.in' into the rts directory and run 'configure' from there, a different makefile is generated, which contains references to 'xgpc'. However, this makefile seems buggy. First, it points to '../configure' - which doesn't exist. Second, if I copy 'configure' to where it expects it, then any attempt to run 'make' results in a message that I should invoke it from top level directory.
You should not have to move files around. As described above, the Makefiles and configure scripts in the various directories are quite different ones and only work in their respective directories.
To compile GPC, copy or move `gpc/p' to become a subdirectory `p' of the GCC source directory, `cd' to the GCC source directory, and type
./configure make CFLAGS="-g -O3" LANGUAGES=pascal make CFLAGS="-g -O3" LANGUAGES=pascal install
Well, this does not work, because 'configure' does not exist in the GCC source directory. AFAICS it only exists in the 'p/rts' directory,
No, it should be in the GCC source directory. If it doesn't, this explains why you ran the "wrong" configure, and probably explains the other problems, but why doesn't it exist? Which GCC sources did you get, the official gcc-2.8.1.tar.gz (or another version) from a GNU site, or from somewhere else? gcc-2.8.1.tar.gz contains one directory (gcc-2.8.1) which is the GCC source directory, and in this directory, there is a configure script. You can rename this directory to whatever you want, but the `p' directory must be a subdirectory of it. So to sum up:
1. in which exact directory do I have to run 'configure'?
In the GCC source directory, which is above the p directory. There must be a configure script there, otherwise something's wrong. You might want to try with the official GNU GCC sources...
2. why are there 2 different copies of 'makefile.in' ? 3. which is the correct one?
See above. All of them, for different purposes.
4. in which exact directory do I have to run 'make' ?
In the GCC source directory, i.e. the same directory where you ran configure.
5. Is the generated copy of 'Makefile' correct, or do I have to make manual changes?
You should not have to make any manual changes. However, you might need some additional makeflags (i.e. parameters on the make command line), e.g. (most likely) `exeext=.exe'. Also, you'll need a fairly complete set of GNU file, text and other utilities for the compilation and installation to succeed, including `ln' (in whatever way this might be realised, since MS-Windows does not support symbolic or hard links, AFAIK -- but if `ln' just copies, this would be sufficient here, except for increased disk space usage). Frank -- Frank Heckenbach, frank@g-n-u.de http://fjf.gnu.de/ PGP and GPG keys: http://fjf.gnu.de/plan Received: (qmail 1682 invoked from network); 14 Sep 1999 05:19:10 -0000 Received: from tim.gerwinski.de (194.221.119.17) by tim.gerwinski.de with SMTP; 14 Sep 1999 05:19:10 -0000 Received: (qmail 1612 invoked from network); 14 Sep 1999 05:17:47 -0000 Received: from faui45.informatik.uni-erlangen.de (root@131.188.2.45) by tim.gerwinski.de with SMTP; 14 Sep 1999 05:17:47 -0000 Received: from mi.uni-erlangen.de (root@helena.mi.uni-erlangen.de [131.188.103.20]) by faui45.informatik.uni-erlangen.de (8.9.1/8.1.49-FAU) with ESMTP id HAA27206 for <frank@pascal.gnu.de>; Tue, 14 Sep 1999 07:17:16 +0200 (MET DST) Received: from faui45.informatik.uni-erlangen.de (root@faui45.informatik.uni-erlangen.de [131.188.2.45]) by mi.uni-erlangen.de (8.9.1a/8.1.3-FAU) with ESMTP id HAA05718 for <heckenb@mi.uni-erlangen.de>; Tue, 14 Sep 1999 07:17:14 +0200 (MET DST) Received: from tim.gerwinski.de (tim.gerwinski.de [194.221.119.17]) by faui45.informatik.uni-erlangen.de (8.9.1/8.1.49-FAU) with SMTP id HAA27201 for <heckenb@mi.uni-erlangen.de>; Tue, 14 Sep 1999 07:17:12 +0200 (MET DST) Received: (qmail 1488 invoked by uid 28); 14 Sep 1999 05:16:26 -0000 Delivered-To: gpc@gerwinski.de Received: (qmail 1483 invoked from network); 14 Sep 1999 05:16:17 -0000 Received: from anugpo.anu.edu.au (150.203.2.6) by tim.gerwinski.de with SMTP; 14 Sep 1999 05:16:17 -0000 Received: from lawpc98 (lawpc98.anu.edu.au [150.203.87.132]) by anugpo.anu.edu.au (8.9.3/8.9.3) with ESMTP id PAA13187 for <gpc@gnu.de>; Tue, 14 Sep 1999 15:15:43 +1000 (EST) Message-Id: <199909140515.PAA13187@anugpo.anu.edu.au> From: "Dr A Olowofoyeku" <laa12@keele.ac.uk> To: gpc@gnu.de Date: Tue, 14 Sep 1999 15:15:17 +1000 MIME-Version: 1.0 Content-type: text/plain; charset=US-ASCII Content-transfer-encoding: 7BIT Subject: Re: Compiling GPC - mysteries Reply-to: laa12@keele.ac.uk In-reply-to: <6AEC3BBB.19990914045416.FOO-4516.frank@g-n-u.de> X-mailer: Pegasus Mail for Win32 (v3.12a) Sender: owner-gpc@gnu.de Precedence: bulk On 14 Sep 99, at 4:54, Frank Heckenbach wrote: [...]
GCC source directory. AFAICS it only exists in the 'p/rts' directory,
No, it should be in the GCC source directory. If it doesn't, this explains why you ran the "wrong" configure, and probably explains the other problems, but why doesn't it exist?
Which GCC sources did you get, the official gcc-2.8.1.tar.gz (or another version) from a GNU site, or from somewhere else? gcc-2.8.1.tar.gz contains one directory (gcc-2.8.1) which is the GCC source directory, and in this directory, there is a configure script. You can rename this directory to whatever you want, but the `p' directory must be a subdirectory of it.
This explains *a lot* of things - thanks. I can now see that I have been doing it all wrongly. I didn't realise that the GCC sources were required (a bit silly really, since I have seen a lot of references to the 'GCC source directory' - but somehow my brain never registered what this actually meant). Back to the drawing board :-( Best regards, The Chief -------- Dr. Abimbola A. Olowofoyeku (The African Chief) Email: laa12@keele.ac.uk Received: (qmail 1414 invoked from network); 14 Sep 1999 05:06:53 -0000 Received: from tim.gerwinski.de (194.221.119.17) by tim.gerwinski.de with SMTP; 14 Sep 1999 05:06:53 -0000 Received: (qmail 1337 invoked from network); 14 Sep 1999 05:05:20 -0000 Received: from faui45.informatik.uni-erlangen.de (root@131.188.2.45) by tim.gerwinski.de with SMTP; 14 Sep 1999 05:05:20 -0000 Received: from mi.uni-erlangen.de (root@helena.mi.uni-erlangen.de [131.188.103.20]) by faui45.informatik.uni-erlangen.de (8.9.1/8.1.49-FAU) with ESMTP id HAA26618 for <frank@pascal.gnu.de>; Tue, 14 Sep 1999 07:04:51 +0200 (MET DST) Received: from faui45.informatik.uni-erlangen.de (root@faui45.informatik.uni-erlangen.de [131.188.2.45]) by mi.uni-erlangen.de (8.9.1a/8.1.3-FAU) with ESMTP id HAA05626 for <heckenb@mi.uni-erlangen.de>; Tue, 14 Sep 1999 07:04:49 +0200 (MET DST) Received: from tim.gerwinski.de (tim.gerwinski.de [194.221.119.17]) by faui45.informatik.uni-erlangen.de (8.9.1/8.1.49-FAU) with SMTP id HAA26611 for <heckenb@mi.uni-erlangen.de>; Tue, 14 Sep 1999 07:04:48 +0200 (MET DST) Received: (qmail 1137 invoked by uid 28); 14 Sep 1999 05:02:29 -0000 Delivered-To: gpc@gerwinski.de Received: (qmail 1129 invoked from network); 14 Sep 1999 05:02:21 -0000 Received: from santra.hut.fi (130.233.224.1) by tim.gerwinski.de with SMTP; 14 Sep 1999 05:02:21 -0000 Received: from digger1.defence.gov.au (digger1.defence.gov.au [203.5.217.4]) by santra.hut.fi (8.9.3/8.9.3) with ESMTP id IAA02908 for <gpc@hut.fi>; Tue, 14 Sep 1999 08:01:48 +0300 (EET DST) Received: from dsto-ms2.dsto.defence.gov.au (dsto-ms2.defence.gov.au [131.185.2.150]) by digger1.defence.gov.au (8.7.5/8.7.3) with ESMTP id OAA16623 for <gpc@hut.fi>; Tue, 14 Sep 1999 14:32:05 +0930 (CST) Received: from exchsa1.dsto.defence.gov.au (unverified [131.185.2.94]) by dsto-ms2.dsto.defence.gov.au (Integralis SMTPRS 2.0.15) with ESMTP id <B0000478260@dsto-ms2.dsto.defence.gov.au> for <gpc@hut.fi>; Tue, 14 Sep 1999 14:29:50 +0930 Received: by exchsa1.dsto.defence.gov.au with Internet Mail Service (5.5.2232.9) id <SZ93YK9S>; Tue, 14 Sep 1999 14:30:52 +0930 Message-Id: <C15155CADE2FD211A4A300062B000EDD21CE8E@exchsa5.dsto.defence.gov.au> From: "Thamm, Russell" <russell.thamm@dsto.defence.gov.au> To: "'gpc@hut.fi'" <gpc@hut.fi> Subject: unsubscribe Date: Tue, 14 Sep 1999 14:30:50 +0930 MIME-Version: 1.0 X-Mailer: Internet Mail Service (5.5.2232.9) Content-Type: text/plain Sender: owner-gpc@gnu.de Precedence: bulk unsubscribe