[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
Re: More Apps porting to Alpha
- From: Alex Pilosov <apilos01 utopia poly edu>
- To: AXP-List <axp-list redhat com>
- Subject: Re: More Apps porting to Alpha
- Date: Tue, 10 Nov 1998 00:34:45 -0500 (EST)
Actually what happens is that alpha is defined by egcs config files to 1,
which (of course) makes your stuff crap out. do gcc -E test.c and see the
result. Solution is easy: just add -Ualpha flag to cc line/CFLAGS and it
would disable that behaviour. Of course, it'd also kill any stuff that
tries to do special behaviour on alpha, but I guess there isn't any in WM.
-alex
On Tue, 10 Nov 1998, Wai-Sun Chia wrote:
> To anyone who tried to build WindowMaker on Alpha-Linux and failed, just
> so that you feel better, you're not alone!
>
> Actually, after a couple of hours of investigation and confirmation,
> here's my result:
>
> Kernel: v2.1.125
> Egcs: 1.1b
> OS: RedHat 5.1, 5.2
>
> Apparently EGCS craps out when a variable is defined as the arch name:
> i.e. alpha, i386, arm, m68k, mips, ppc, sparc, sparc64
>
> I've confirmed it with i386 and alpha. To test yourself, try to compile
> the following simple program:
>
> ******************** try.c *********************
> #include <stdio.h>
>
> int main()
> {
> int alpha = 1;
> printf("alpha = %d\n", alpha);
> return 0;
> }
> ************************************************
> You will get a "parse error before `1'". If you change alpha to nalpha
> or beta or anything other than alpha, then it'll work!!!
>
> Furthermore, if you s/alpha/i386/g in an Intel Linux box, guess what?
> Same problem!!!
>
> Perhaps the GCC/EGCS developers think that any programmer which defines
> a variable with the name as "i386" ought to be shot, but "alpha" is a
> pretty common variable. This is especially so in the graphics world
> where there is such a thing as an alpha-channel: in fact if you were to
> do a recursive grep in the WindowMaker sources, you'd be swamped!
>
> At first, I tried to rename the alpha variables to something else one by
> one, after the 10th file in the first subdirectory, I gave up. I tried
> to be smart and put this is the WindowMaker's system header file,
> "wraster.h" (this is WindowMaker 0.20.2):
>
> #define alpha wmalpha
>
>
> And voila! WM compiles OK! albeit tons and tons of warning messages, it
> runs too! But the graphics (icons and colors) and totally kaput!
> Apparently my "smart hack" changed the semantics of the system.... :-(
>
> This is what I see our options:
> 1. Make sure _ALL_ apps don't use arch names as variables (if
> cross-platform is important)
> 2. Ask politely GCC/EGCS developers to kindly remove this constraint
> from the compilers.
>
> I haven't sent any emails to neither GCC/EGCS nor WindowMaker
> developers. Want to see what other people think...
>
> BTW, libpng also suffers from this "alpha" variable syndrome....
>
>
> --
> Wai-Sun
>
> --
> To unsubscribe: send e-mail to axp-list-request@redhat.com with
> 'unsubscribe' as the subject. Do not send it to axp-list@redhat.com
>
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
[]