#13622 closed enhancement (fixed)
cairo: add a universal variant
Reported by: | ryandesign (Ryan Carsten Schmidt) | Owned by: | ryandesign (Ryan Carsten Schmidt) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 1.5.2 |
Keywords: | Cc: | ||
Port: |
Description
Building cairo +universal doesn't work:
$ sudo port install cairo +universal ---> Fetching cairo ---> Verifying checksum(s) for cairo ---> Extracting cairo ---> Configuring cairo Error: Target org.macports.configure returned: configure failure: shell command " cd "/opt/local/var/macports/build/_Users_rschmidt_macports_dports-clean_graphics_cairo/work/cairo-1.4.12" && ./configure --prefix=/opt/local --disable-dependency-tracking " returned error 1 Command output: checking whether the /usr/bin/gcc-4.0 linker (/usr/bin/ld) supports shared libraries... yes checking dynamic linker characteristics... darwin8.11.1 dyld checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... yes configure: creating libtool appending configuration tag "CXX" to libtool checking for ld used by /usr/bin/g++-4.0... /usr/bin/ld checking if the linker (/usr/bin/ld) is GNU ld... no checking whether the /usr/bin/g++-4.0 linker (/usr/bin/ld) supports shared libraries... yes checking for /usr/bin/g++-4.0 option to produce PIC... -fno-common checking if /usr/bin/g++-4.0 PIC flag -fno-common works... yes checking if /usr/bin/g++-4.0 static flag -static works... no checking if /usr/bin/g++-4.0 supports -c -o file.o... yes checking whether the /usr/bin/g++-4.0 linker (/usr/bin/ld) supports shared libraries... yes checking dynamic linker characteristics... darwin8.11.1 dyld checking how to hardcode library paths into programs... immediate appending configuration tag "F77" to libtool checking for ANSI C header files... (cached) yes checking for inline... inline checking whether byte ordering is bigendian... no checking whether float word ordering is bigendian... unknown configure: error: Unknown float word ordering. You need to manually preset ax_cv_c_float_words_bigendian=no (or yes) according to your system. Error: Status 1 encountered during processing. $
The default +universal variant doesn't work because cairo tries to determine the processor endianness at configure time, or rather, it assumes at configure time that there is a single endianness, which there isn't with a universal build. The developers of cairo decline to modify their configuration system to assist us. Therefore we must do it the hard way, building twice and lipo'ing the result together. Fortunately there is only a single library that needs to be lipo'd so this shouldn't be too much trouble. I'll try to adapt the universal build technique of the openssl port.
Change History (2)
comment:1 Changed 17 years ago by ryandesign (Ryan Carsten Schmidt)
Resolution: | → fixed |
---|---|
Status: | new → closed |
comment:2 Changed 15 years ago by (none)
Milestone: | Port Enhancements |
---|
Milestone Port Enhancements deleted
Note: See
TracTickets for help on using
tickets.
Added a functional +universal variant in r32156.