[MacPorts] #35310: netpbm broken under xcode 4.4 -- clang problem
#35310: netpbm broken under xcode 4.4 -- clang problem --------------------------------+------------------------------------------- Reporter: perry@… | Owner: macports-tickets@… Type: defect | Status: new Priority: High | Milestone: Component: ports | Version: 2.1.1 Keywords: | Port: netpbm --------------------------------+------------------------------------------- It appears that clang lacks some of the intrinsics supplied by gcc, and that building netpbm under xcode 4.4 results in the following error message. This is rather important, as netpbm is a dependency of many packages. /usr/bin/clang -c -I. -Iimportinc -Iimportinc/netpbm -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_netpbm/netpbm/work/advanced/editor/pamflip -DNDEBUG -I/opt/local/include -O3 -arch x86_64 -o pamflip_sse.o pamflip_sse.c pamflip_sse.c:136:39: error: use of unknown builtin '__builtin_ia32_pcmpeqb128' [-Wimplicit-function-declaration] register v16qi const compare =__builtin_ia32_pcmpeqb128(vReg,zero128); ^ pamflip_sse.c:136:30: error: initializing 'const v16qi' with an expression of incompatible type 'int' register v16qi const compare =__builtin_ia32_pcmpeqb128(vReg,zero128); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2 errors generated. gnumake[2]: *** [pamflip_sse.o] Error 1 gnumake[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_netpbm/netpbm/work/advanced/editor/pamflip' -- Ticket URL: <https://trac.macports.org/ticket/35310> MacPorts <http://www.macports.org/> Ports system for Mac OS
#35310: netpbm broken under xcode 4.4 -- clang problem --------------------------------+------------------------------------------- Reporter: perry@… | Owner: macports-tickets@… Type: defect | Status: new Priority: High | Milestone: Component: ports | Version: 2.1.1 Keywords: | Port: netpbm --------------------------------+------------------------------------------- Changes (by snc@…): * cc: jeremyhu@… (added) Comment: OP believes that clang is missing an sse intrinsic from gcc. -- Ticket URL: <https://trac.macports.org/ticket/35310#comment:1> MacPorts <http://www.macports.org/> Ports system for Mac OS
#35310: netpbm broken under xcode 4.4 -- clang problem --------------------------------+------------------------------------------- Reporter: perry@… | Owner: macports-tickets@… Type: defect | Status: new Priority: High | Milestone: Component: ports | Version: 2.1.1 Keywords: | Port: netpbm --------------------------------+------------------------------------------- Description changed by jeremyhu@…: Old description:
It appears that clang lacks some of the intrinsics supplied by gcc, and that building netpbm under xcode 4.4 results in the following error message. This is rather important, as netpbm is a dependency of many packages.
/usr/bin/clang -c -I. -Iimportinc -Iimportinc/netpbm -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_netpbm/netpbm/work/advanced/editor/pamflip -DNDEBUG -I/opt/local/include -O3 -arch x86_64 -o pamflip_sse.o pamflip_sse.c pamflip_sse.c:136:39: error: use of unknown builtin '__builtin_ia32_pcmpeqb128' [-Wimplicit-function-declaration] register v16qi const compare =__builtin_ia32_pcmpeqb128(vReg,zero128); ^ pamflip_sse.c:136:30: error: initializing 'const v16qi' with an expression of incompatible type 'int' register v16qi const compare =__builtin_ia32_pcmpeqb128(vReg,zero128); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2 errors generated. gnumake[2]: *** [pamflip_sse.o] Error 1 gnumake[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_netpbm/netpbm/work/advanced/editor/pamflip'
New description: It appears that clang lacks some of the intrinsics supplied by gcc, and that building netpbm under xcode 4.4 results in the following error message. This is rather important, as netpbm is a dependency of many packages. {{{ /usr/bin/clang -c -I. -Iimportinc -Iimportinc/netpbm -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_netpbm/netpbm/work/advanced/editor/pamflip -DNDEBUG -I/opt/local/include -O3 -arch x86_64 -o pamflip_sse.o pamflip_sse.c pamflip_sse.c:136:39: error: use of unknown builtin '__builtin_ia32_pcmpeqb128' [-Wimplicit-function-declaration] register v16qi const compare =__builtin_ia32_pcmpeqb128(vReg,zero128); ^ pamflip_sse.c:136:30: error: initializing 'const v16qi' with an expression of incompatible type 'int' register v16qi const compare =__builtin_ia32_pcmpeqb128(vReg,zero128); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2 errors generated. gnumake[2]: *** [pamflip_sse.o] Error 1 gnumake[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_netpbm/netpbm/work/advanced/editor/pamflip' }}} -- -- Ticket URL: <https://trac.macports.org/ticket/35310#comment:2> MacPorts <http://www.macports.org/> Ports system for Mac OS
#35310: netpbm broken under xcode 4.4 -- clang problem --------------------------------+------------------------------------------- Reporter: perry@… | Owner: macports-tickets@… Type: defect | Status: new Priority: High | Milestone: Component: ports | Version: 2.1.1 Keywords: | Port: netpbm --------------------------------+------------------------------------------- Comment(by jeremyhu@…): Since ML is now out, I can now discuss this. netpbm needs to change. clang is behaving correctly. netpbm assumes that it has access to __builtin_ia32_pcmpeqb128, but it doesn't. clang dropped suport for the GCC-specific builtin and now supports the standard _mm_cmpeq_epi8. <rdar://problem/11858813> -- Ticket URL: <https://trac.macports.org/ticket/35310#comment:3> MacPorts <http://www.macports.org/> Ports system for Mac OS
#35310: netpbm broken under xcode 4.4 -- clang problem -----------------------------------+---------------------------------------- Reporter: perry@… | Owner: macports-tickets@… Type: defect | Status: new Priority: High | Milestone: Component: ports | Version: 2.1.1 Keywords: MountainLion XCode4.4 | Port: netpbm -----------------------------------+---------------------------------------- Changes (by jeremyhu@…): * keywords: => MountainLion XCode4.4 -- Ticket URL: <https://trac.macports.org/ticket/35310#comment:4> MacPorts <http://www.macports.org/> Ports system for Mac OS
#35310: netpbm broken under xcode 4.4 -- clang problem -----------------------------------+---------------------------------------- Reporter: perry@… | Owner: cal@… Type: defect | Status: new Priority: High | Milestone: Component: ports | Version: 2.1.1 Keywords: MountainLion XCode4.4 | Port: netpbm -----------------------------------+---------------------------------------- Changes (by jeremyhu@…): * owner: macports-tickets@… => cal@… -- Ticket URL: <https://trac.macports.org/ticket/35310#comment:5> MacPorts <http://www.macports.org/> Ports system for Mac OS
#35310: netpbm broken under xcode 4.4 -- clang problem -----------------------------------+---------------------------------------- Reporter: perry@… | Owner: cal@… Type: defect | Status: new Priority: High | Milestone: Component: ports | Version: 2.1.1 Keywords: MountainLion XCode4.4 | Port: netpbm -----------------------------------+---------------------------------------- Comment(by jeremyhu@…): r95870 should work around the issue for now, but it should still be fixed. -- Ticket URL: <https://trac.macports.org/ticket/35310#comment:6> MacPorts <http://www.macports.org/> Ports system for Mac OS
#35310: netpbm broken under xcode 4.4 -- clang problem --------------------------------+------------------------------------------- Reporter: perry@… | Owner: cal@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.1 Keywords: | Port: netpbm --------------------------------+------------------------------------------- Changes (by cal@…): * keywords: MountainLion XCode4.4 => * priority: High => Normal Comment: Jeremy, do you want to take this upstream? Other than the line you wrote I have no idea what the problem is about, but you seem to have more information. The website suggests mailing to the local part bryanh below giraffe-data.com. -- Ticket URL: <https://trac.macports.org/ticket/35310#comment:7> MacPorts <http://www.macports.org/> Ports system for Mac OS
#35310: netpbm broken under xcode 4.4 -- clang problem --------------------------------+------------------------------------------- Reporter: perry@… | Owner: cal@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.1 Keywords: | Port: netpbm --------------------------------+------------------------------------------- Comment(by cal@…): Has duplicate #35310. -- Ticket URL: <https://trac.macports.org/ticket/35310#comment:8> MacPorts <http://www.macports.org/> Ports system for Mac OS
#35310: netpbm broken under xcode 4.4 -- clang problem --------------------------------+------------------------------------------- Reporter: perry@… | Owner: cal@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.1 Keywords: | Port: netpbm --------------------------------+------------------------------------------- Comment(by cal@…): Has duplicate #35156. -- Ticket URL: <https://trac.macports.org/ticket/35310#comment:9> MacPorts <http://www.macports.org/> Ports system for Mac OS
#35310: netpbm broken under xcode 4.4 -- clang problem ----------------------+------------------- Reporter: perry@… | Owner: cal@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.1 Resolution: | Keywords: Port: netpbm | ----------------------+------------------- Comment (by jmr@…): See http://clang.llvm.org/compatibility.html#vector_builtins -- Ticket URL: <https://trac.macports.org/ticket/35310#comment:10> MacPorts <http://www.macports.org/> Ports system for Mac OS
#35310: netpbm needs to use standard intel interfaces rather than gcc __builtins ----------------------+------------------- Reporter: perry@… | Owner: cal@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.1 Resolution: | Keywords: Port: netpbm | ----------------------+------------------- -- Ticket URL: <https://trac.macports.org/ticket/35310#comment:11> MacPorts <http://www.macports.org/> Ports system for OS X
#35310: netpbm needs to use standard intel interfaces rather than gcc __builtins ----------------------+------------------- Reporter: perry@… | Owner: cal@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.1 Resolution: | Keywords: Port: netpbm | ----------------------+------------------- Comment (by ryandesign@…): Replying to [comment:6 jeremyhu@…]:
r95870 should work around the issue for now, but it should still be fixed.
In netpbm 10.60.00 they changed their check to no longer try to use these GCC-specific functions with clang so I removed the patch in r112197. Replying to [comment:7 cal@…]:
Jeremy, do you want to take this upstream? Other than the line you wrote I have no idea what the problem is about, but you seem to have more information. The website suggests mailing to the local part bryanh below giraffe-data.com.
I emailed the developer about this. -- Ticket URL: <https://trac.macports.org/ticket/35310#comment:12> MacPorts <http://www.macports.org/> Ports system for OS X
participants (1)
-
MacPorts