Another gcc34 question

Matthew Dillon dillon at apollo.backplane.com
Tue Jul 13 16:10:48 PDT 2004


:I've noticed that some (maybe all?) kde ports don't compile
:with gcc34 -- as far as I can tell because this test in
:/usr/X11/include/qglobal.h fails:
:#elif defined(__FreeBSD__) || defined(__DragonFly__)
:
:Now, when I grep thru the headers in /usr/include I find
:many places where the very same test is used.
:
:First -- I'm wondering if by using gcc34 to build world/kernel
:all of those tests fail, just like the test fails for kde ports?
:
:Second -- where are those variables defined?  The only place I've
:found the definitions is in dragonfly.h in the gcc2 sources directory.
:Is this why gcc2 works and gcc34 doesn't work for kde?
:
:Thanks for any clues.

    Our gcc2 defines both __FreeBSD__ and __DragonFly__.  Our gcc34
    defines only __DragonFly__.  This is on purpose.

    I don't know why the conditional above failed, it shouldn't have.
    When I compile a program with gcc34 the conditional works:

    main()
    {
    #if defined(__DragonFly__)
	puts("YES");
    #else
	puts("NO");
    #endif
    }

    % setenv CCVER gcc34
    % cc x.c -o x
    % ./x
    YES


					-Matt
					Matthew Dillon 
					<dillon at xxxxxxxxxxxxx>





More information about the Bugs mailing list