tinycc-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Tinycc-devel] Support for hidden symbols?


From: Austin English
Subject: [Tinycc-devel] Support for hidden symbols?
Date: Sat, 12 Apr 2014 17:40:55 -0700

Howdy,

I recently revisited compiling Wine with TinyCC. I've got some patches for wine for that, but my current blocker is a lack of support for hidden symbols on tcc:
make[1]: Entering directory `/home/austin/src/wine-tcc/dlls/acledit'
/home/austin/tcc/bin/i386-linux-gnu-tcc -m32 -c -I. -I. -I../../include -I../../include  -D__WINESRC__  -D_REENTRANT -fPIC   -g  -o main.o main.c
../../tools/winegcc/winegcc -m32 -B../../tools/winebuild --sysroot=../..  -shared ./acledit.spec main.o           -o acledit.dll.so    ../../libs/port/libwine_port.a  
acledit.pEPjUb.s:14: error: unknown assembler directive '.hidden'
winebuild: /home/austin/tcc/bin/i386-linux-gnu-tcc failed with status 1
winegcc: ../../tools/winebuild/winebuild failed
make[1]: *** [acledit.dll.so] Error 2
make[1]: Leaving directory `/home/austin/src/wine-tcc/dlls/acledit'
make: *** [dlls/acledit] Error 2

relevant Wine code (tools/winebuild/utils.c):

/* return a global symbol declaration for an assembly symbol */
const char *asm_globl( const char *func )
{
    static char *buffer;

    free( buffer );
    switch (target_platform)
    {
    case PLATFORM_APPLE:
        buffer = strmake( "\t.globl _%s\n\t.private_extern _%s\n_%s:", func, func, func );
        break;
    case PLATFORM_WINDOWS:
        buffer = strmake( "\t.globl _%s\n_%s:", func, func );
        break;
    default:
        buffer = strmake( "\t.globl %s\n\t.hidden %s\n%s:", func, func, func );
        break;
    }
    return buffer;
}

is there any plan for supporting this?

--
-Austin

reply via email to

[Prev in Thread] Current Thread [Next in Thread]