[Bug 32872] New: Compilation broken if clang is installed, but not used for compilation.

wine-bugs at winehq.org wine-bugs at winehq.org
Fri Feb 1 15:00:21 CST 2013


http://bugs.winehq.org/show_bug.cgi?id=32872

             Bug #: 32872
           Summary: Compilation broken if clang is installed, but not used
                    for compilation.
           Product: Wine
           Version: 1.5.23
          Platform: x86
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: tools
        AssignedTo: wine-bugs at winehq.org
        ReportedBy: iive at yahoo.com
    Classification: Unclassified


When compiling I got the following error:
--
make[1]: Entering directory
`/dev/shm/fikus/wine-1.5.23/wine-1.5.23_GIT20130201_0618/dlls/avifile.dll16'
../../tools/winegcc/winegcc  -B../../tools/winebuild --sysroot=../..
-fasynchronous-unwind-tables -shared ./avifile.dll16.spec           -m16
-Wb,--main-module,avifil32.dll -o avifile.dll16.so  -lavifil32 
../../libs/port/libwine_port.a   
avifile.b0xGhP.s:443:2: error: invalid operand for instruction
        lretw
        ^
avifile.b0xGhP.s:580:2: error: invalid operand for instruction
        lretw
        ^
--

I did git-bisect between 1.5.22 and 1.5.23 and got:
--
c14bdaf1ddb7d0e5587f63f1216b61c9ecb7a8c3 is the first bad commit
commit c14bdaf1ddb7d0e5587f63f1216b61c9ecb7a8c3
Author: Charles Davis <cdavis5x at gmail.com>
Date:   Mon Jan 28 13:42:12 2013 -0700

    winebuild: Use Clang to assemble if found.

:040000 040000 6d74670c5b85af40c0294786d2fe62b6cf69e950
ce57d3edff2b26c81e9d4e15be97beead7bbd5a9 M      tools
bisect run success
--

Looking at the patch it is clear that if `clang` is found on the system it
would be used unconditionally. Since I have an old version (LLVM-3.0), that I
need for compiling the last stable Mesa3D v9.0 release (it is used for
shaders).

The configure script doesn't check for clang support or version. There are no
conditional option that would force gnu `as`, nor there is any code that would
prefer `as` when `gcc` is used.

FYI. I'm on Slackware 14. GCC-4.7.2 (latest release atm).
LLVM-3.0 fails.
LLVM-3.2 seems to work fine.

I expect the bug to be fixed by checking for minimum clang version.
If that is not feasible then there must be an configure option to select the
toolchain and it should be documented in `configure -help`.

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the wine-bugs mailing list