GPC 20060325 + GCC 3.4.6 on AIX 6.1

Waldek Hebisch hebisch at math.uni.wroc.pl
Sat Dec 12 01:08:03 CET 2009


Gert Doering wrote:
> 
> $Management has now decided to have me working on "GPC on AIX 6" again,
> and I did some work with gcc-3.4.6 and gpc-20060325 today.
> 
> gcc-3.4.6 contains most of the patches contained in the mailing list
> posting quited above already, so the patch does not apply.  It is not
> needed, though - all that remains is one small bit in config.gcc:
> 
> 
> ------------------- snip --------------------
> diff -wur gcc-3.4.6.orig/gcc/config.gcc gcc-3.4.6/gcc/config.gcc
> --- gcc-3.4.6.orig/gcc/config.gcc	2005-07-19 23:08:48.000000000 +0200
> +++ gcc-3.4.6/gcc/config.gcc	2009-12-08 14:51:51.000000000 +0100
> @@ -1867,7 +1867,7 @@
>  	thread_file='aix'
>  	extra_headers=
>  	;;
> -rs6000-ibm-aix[56789].* | powerpc-ibm-aix[56789].*)
> +rs6000-ibm-aix[56789].* | powerpc-ibm-aix[56789].* | rs6000-ibm-aix )
>  	tm_file="${tm_file} rs6000/aix.h rs6000/aix52.h rs6000/xcoff.h"
>  	tmake_file=rs6000/t-aix52
>  	use_collect2=yes
> ------------------- snip --------------------
> 
> 
> (for some weird reason, AIX 6 is detected by configure as "rs6000-ibm-aix",
> without any version number.  But hey, the resulting pascal and C compiler 
> work, so who am I to complain...)
>
> 
> There's two further hickups in building GPC itself, one is that
> "mk-t-inc" doesn't like AIX sed but works fine with GNU sed, the other
> one is that gpidump.pas references a few symbols that I couldn't find 
> anywhere. 
> So I commented them out...
> 
> ------------------- snip --------------------
> diff -u -w --recursive gpc-20060325.orig/p/utils/gpidump.pas gpc-20060325/p/utils/gpidump.pas
> --- gpc-20060325.orig/p/utils/gpidump.pas	2006-03-24 03:47:16.000000000 +0100
> +++ gpc-20060325/p/utils/gpidump.pas	2009-12-08 15:18:22.000000000 +0100
> @@ -746,7 +746,9 @@
>                             OutputFlag ('method');
>                             IsMethod := True
>                           end;
> +{
>            OPERATOR_DECL: OutputFlag ('also_built_in');
> +}

mk-t-inc is supposed to create file declaring those symbols.

> diff -u -w --recursive gpc-20060325.orig/p/utils/mk-t-inc gpc-20060325/p/utils/mk-t-inc
> --- gpc-20060325.orig/p/utils/mk-t-inc	2006-03-25 01:28:56.000000000 +0100
> +++ gpc-20060325/p/utils/mk-t-inc	2009-12-08 15:09:23.000000000 +0100
> @@ -44,7 +44,7 @@
>  
>  GCCDIR="$1"
>  
> -version="`grep version_string "$GCCDIR/version.c" | sed -e 's/[^"]*"//;s/".*//'`"
> +version="`grep version_string "$GCCDIR/version.c" | gsed -e 's/[^"]*"//;s/".*//'`"
>  if [ x"$version" = x ]; then
>    exit 1
>  fi
> @@ -62,15 +62,15 @@
>  EOF
>  
>  # Use result of GPC's config-lang.in
> -sed -ne 's,#define\(.*\),{$define\1},p' ../../gcc-version.h
> +gsed -ne 's,#define\(.*\),{$define\1},p' ../../gcc-version.h
>

As local fix for your installation this is fine.
  
> The problem that remains now is the "collect2" bit that was discussed
> on this list a long while ago, but yet-unresolved...
> 
> gd at hilb31:/tmp> gpc -o hello hello.pas
> gd at hilb31:/tmp> gpc -fno-unit-path -o hello hello.pas
> cc1: warning: command line option "-fno-unit-path" is valid for Pascal but not for C
> 
> (this is just a warning, but upsets "make check")
> 
> 
> Waldek, in last year's "GPC on AIX 6" thread you mentioned a new GPC
> version, gpc-20070904.  I think it might be worthwile to start hacking
> on this (to get the option passing to collect2 fixed) before I work on
> the older version.  Is gpc-20070904 the latest version?  If yes, where
> can I find it?  http://www.gnu-pascal.de only lists the 20060325
> version.
>

As Maurice wrote it is on my gpc page:

http://www.math.uni.wroc.pl/~hebisch/gpc

> Who is rolling GPC "alpha releases" these days anyway?
>
 
I am affraid currently nobody.  I released the last five alphas,
but currently my work on gpc is suspended -- I am busy with other
projects.

-- 
                              Waldek Hebisch
hebisch at math.uni.wroc.pl 





More information about the Gpc mailing list