#18214 closed enhancement (fixed)
muniversal portgroup uses host core2-apple-darwin
Reported by: | ryandesign (Ryan Carsten Schmidt) | Owned by: | MarcusCalhoun-Lopez (Marcus Calhoun-Lopez) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 1.7.0 |
Keywords: | universal | Cc: | |
Port: |
Description
When building universal on a PowerPC Mac, the muniversal portgroup uses the host core2-apple-darwin to build the Intel parts, but at least on my Power Mac G4 with Mac OS X 10.4.11 and Xcode 2.5, it doesn't know any such host. Here is the output I get from cairo @1.8.6_3:
universal: Running configure for architecture ppc universal: Running configure for architecture i386 Error: Target org.macports.configure returned: configure failure: shell command " cd "/mp/var/macports/build/_Volumes_data_macports_ports_graphics_cairo/work/i386" && ./configure --prefix=/mp --disable-glitz --disable-xcb --enable-ft --enable-pdf --enable-png --enable-ps --enable-svg --enable-xlib --enable-xlib-xrender --with-x --disable-dependency-tracking --enable-quartz --enable-quartz-font --enable-quartz-image --host=core2-apple-darwin " returned error 1 Command output: configure: WARNING: If you wanted to set the --build type, don't use --host. If a cross compiler is detected then cross compile mode will be used. checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... build/install-sh -c -d checking for gawk... gawk checking whether make sets $(MAKE)... yes checking for core2-apple-darwin-strip... no checking for strip... strip checking build system type... powerpc-apple-darwin8.11.0 checking host system type... Invalid configuration `core2-apple-darwin': machine `core2-apple' not recognized configure: error: /bin/sh build/config.sub core2-apple-darwin failed Error: Status 1 encountered during processing.
I get the same output from libiconv @1.12_2 if I use the original patch that was in #18190.
I had never heard of "core2-apple-darwin" before seeing it in the muniversal portgroup code, and searching Google, there are no hits for "core2-apple-darwin" except as part of the muniversal portgroup. Shouldn't it be "i686-apple-darwin" for which Google has thousands of results? If I change core2-apple-darwin to i686-apple-darwin in the muniversal portgroup, then I can build libiconv universal (2-way 32-bit) without needing to set merger_host in the libiconv portfile. Maybe that doesn't properly take 64-bit into account. So the portgroup should set host to i686-apple-darwin or x86_64-apple-darwin accordingly. All I know is "locate i686-apple-darwin
" and "locate x86_64-apple-darwin
" return plenty of results on my Power Mac whereas "locate core2-apple-darwin
" returns none.
Change History (4)
comment:1 follow-up: 2 Changed 16 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
Keywords: | universal added |
---|---|
Status: | new → assigned |
Type: | defect → enhancement |
comment:2 Changed 16 years ago by ryandesign (Ryan Carsten Schmidt)
Replying to mcalhoun@…:
Does this change satisfy your concerns?
It looks good, thanks. I'll test it soon.
comment:3 Changed 16 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
comment:4 Changed 15 years ago by jmroot (Joshua Root)
Component: | base → ports |
---|---|
Milestone: | MacPorts Future |
Since merger_host can always be set to override the default, the basic question seems to be:
what is the best default value for host on each architecture?
muniversal only sets the host value during PowerPC/Intel cross-compilation.
I see now that core2-apple-darwin was a bad default choice.
Almost every port will reject it.
gmp, however, uses it to create a better build than the more generic i386-apple-darwin.
In r46000, I changed the default host value for the different architectures to:
Thanks for pointing this out.
Does this change satisfy your concerns?