Subject: Re: Problems compiling gs5.50 under NetBSD1.4.1
To: Steve Woodford <swoodfor@bluews.com>
From: Richard Earnshaw <rearnsha@arm.com>
List: port-arm32
Date: 09/06/1999 10:30:18
This is a multipart MIME message.
--==_Exmh_-19296875140
Content-Type: text/plain; charset=us-ascii
> Frank Wennmohs wrote:
>
> > After installing the latest NetBSD1.4.1 release from
> > the binary distribution I tried to install ghostscript5.50 by
> > using the pkgsrc-tree.
> >
> > Having compiled and installed gs as usual, things got strange.
> > Typing "gs --help" produced the usual help message, but
> > simply typing "gs" to get to the gs-command-line, *nothing* happened!!!
> > Trying to translate some postscript-file didn't work either.
> >
> > Does anyone have an idea what's wrong?
>
> It's caused by a compiler code-gen bug on the 1.4.x arm32 platform. I'm
> not sure if this has been fixed in -current yet, although someone has
> investigated the problem.
>
> Cheers, Steve
Actually, I believe that the final conclusion was that there was a
compiler bug, but that there were also problems with the gs source. I
managed to get a working ghostcript with the 5.87 pre-release source after
the compiler had been patched, but I think you will be struggling with
5.50. There may be newer releases than 5.87 now.
I've attached the compiler patch below.
Richard.
--==_Exmh_-19296875140
Content-Type: application/x-patch ; name="mark_regp.patch"
Content-Description: mark_regp.patch
Content-Disposition: attachment; filename="mark_regp.patch"
Index: emit-rtl.c
===================================================================
RCS file: /egcs/carton/cvsfiles/egcs/gcc/emit-rtl.c,v
retrieving revision 1.66
diff -p -r1.66 emit-rtl.c
*** emit-rtl.c 1999/08/01 12:07:34 1.66
--- emit-rtl.c 1999/08/07 12:13:25
*************** mark_reg_pointer (reg, align)
*** 629,637 ****
rtx reg;
int align;
{
! REGNO_POINTER_FLAG (REGNO (reg)) = 1;
! if (align)
REGNO_POINTER_ALIGN (REGNO (reg)) = align;
}
--- 629,643 ----
rtx reg;
int align;
{
! if (! REGNO_POINTER_FLAG (REGNO (reg)))
! {
! REGNO_POINTER_FLAG (REGNO (reg)) = 1;
! if (align)
! REGNO_POINTER_ALIGN (REGNO (reg)) = align;
! }
! else if (align && align < REGNO_POINTER_ALIGN (REGNO (reg)))
! /* We can no-longer be sure just how aligned this pointer is */
REGNO_POINTER_ALIGN (REGNO (reg)) = align;
}
--==_Exmh_-19296875140--