Ticket #31137 (closed defect: fixed)
unbound @1.4.2 doesn't configure +universal
| Reported by: | cal@… | Owned by: | snc@… |
|---|---|---|---|
| Priority: | Normal | Milestone: | |
| Component: | ports | Version: | |
| Keywords: | universal llvm-gcc-4.2 clang | Cc: | ryandesign@… |
| Port: | unbound |
Description
Unbound doesn't succeed the configure phase when installing with +universal.
Configure fails at finding ldns.h, although it's installed.
Attachments
Change History
Changed 21 months ago by cal@…
- Attachment config.log added
comment:2 Changed 21 months ago by snc@…
- Status changed from new to assigned
- Owner changed from snc@… to snc@…
comment:3 Changed 21 months ago by snc@…
This is the normal test: configure:16789: /Developer/usr/bin/llvm-gcc-4.2 -c -pipe -O2 -arch x86_64 -g -O2 -flto -D_THREAD_SAFE -I/opt/local/include -I/opt/local/include conftest.c >&5
This is the universal test: configure:16789: /Developer/usr/bin/llvm-gcc-4.2 -c -pipe -O2 -arch x86_64 -arch i386 -g -O2 -flto -I/opt/local/include -I/opt/local/include -I/opt/local/include conftest.c >&5
Changed 19 months ago by ryandesign@…
- Attachment main.ryandesign1.log added
successful build on Snow Leopard with Xcode 3.2.6
comment:4 Changed 19 months ago by ryandesign@…
- Keywords universal added
- Cc ryandesign@… added
Interesting: it builds fine universal for me, on Snow Leopard with Xcode 3.2.6.
comment:5 Changed 19 months ago by ryandesign@…
But I am able to reproduce the failure on the same system with configure.compiler=llvm-gcc-4.2.
The relevant lines in config.log seem to be these:
configure:16789: checking for ldns/ldns.h
configure:16789: /Developer/usr/bin/llvm-gcc-4.2 -c -pipe -O2 -arch x86_64 -arch i386 -g -O2 -flto -I/opt/local/include -I/opt/local/include -I/opt/local/include conftest.c >&5
conftest.c:82:1: warning: "malloc" redefined
conftest.c:81:1: warning: this is the location of the previous definition
In file included from conftest.c:122:
/usr/include/stdio.h:78: error: two or more data types in declaration specifiers
/usr/include/stdio.h:78: error: two or more data types in declaration specifiers
/usr/include/stdio.h:414: error: two or more data types in declaration specifiers
/usr/include/stdio.h:414: error: two or more data types in declaration specifiers
/usr/include/stdio.h:442: error: two or more data types in declaration specifiers
In file included from /usr/include/machine/types.h:35,
from /usr/include/sys/types.h:78,
from conftest.c:124:
/usr/include/i386/types.h:78: error: duplicate 'signed'
/usr/include/i386/types.h:78: error: two or more data types in declaration specifiers
/usr/include/i386/types.h:83: error: duplicate 'short'
/usr/include/i386/types.h:88: error: two or more data types in declaration specifiers
/usr/include/i386/types.h:93: error: 'long long long' is too long for GCC
/usr/include/i386/types.h:93: error: 'long long long' is too long for GCC
In file included from conftest.c:124:
/usr/include/sys/types.h:84: error: duplicate 'unsigned'
/usr/include/sys/types.h:84: error: two or more data types in declaration specifiers
/usr/include/sys/types.h:126: error: two or more data types in declaration specifiers
/usr/include/sys/types.h:126: error: two or more data types in declaration specifiers
/usr/include/sys/types.h:131: error: two or more data types in declaration specifiers
/usr/include/sys/types.h:131: error: two or more data types in declaration specifiers
/usr/include/sys/types.h:167: error: two or more data types in declaration specifiers
Try using clang; if also fails, use gcc-4.2 / apple-gcc-4.2. If you're sure it works fine with llvm-gcc-4.2 and clang when built non-universal, you could enclose that compiler block in a if {[variant_isset universal]} block, to avoid making people install the apple-gcc42 port unnecessarily if they're not building universal.
comment:7 follow-up: ↓ 10 Changed 18 months ago by snc@…
- Keywords clang added
- Version 2.0.99 deleted
Clang does not appear to work either. Ryan, can you file a radar for this please?
comment:8 Changed 18 months ago by snc@…
Apple clang version 2.0 (tags/Apple/clang-139) (based on LLVM 2.9svn)
i686-apple-darwin10-llvm-gcc-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.9)
ProductName: Mac OS X Server ProductVersion: 10.6.8 BuildVersion: 10K549
comment:9 Changed 18 months ago by snc@…
- Status changed from assigned to closed
- Resolution set to fixed
+unviersal requires gcc, r87102.
comment:10 in reply to: ↑ 7 Changed 18 months ago by ryandesign@…
Replying to snc@…:
Ryan, can you file a radar for this please?
I could enter a report at http://bugreport.apple.com, but you could too...
comment:11 Changed 16 months ago by snc@…
As of r89571 (unbound @1.4.16) llvm and clang work for normal compiling, but only llvm can now handle +universal.
comment:12 Changed 16 months ago by ryandesign@…
unbound 1.4.16 seemed to build fine universal for me on Snow Leopard with Xcode 3.2.6 and therefore gcc-4.2.
comment:13 Changed 16 months ago by snc@…
Thanks for the SL input, which indicates no changes needed (clang only being on Lion). I tried all my combinations in a Lion VM.
comment:14 Changed 16 months ago by ryandesign@…
clang would also be used on Snow Leopard if the user had installed Xcode 4.2.
comment:15 Changed 16 months ago by snc@…
So Snow Leopard has all three compilers with Xcode 4.2 (clang, llvm, gcc)?
comment:16 Changed 16 months ago by ryandesign@…
Snow Leopard is no different from Lion in that regard. Xcode 4.2 does not include gcc. The different is that on Snow Leopard Xcode 4 is not free; the latest free version is 3.2.6.


config.log showing the error messages causing the problem