Opened 15 years ago

Closed 15 years ago

Last modified 15 years ago

#21949 closed defect (fixed)

icu +universal is broken

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by: nox@…
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc:
Port: icu

Description

I'm on Snow Leopard trying to build icu +universal (universal_archs is x86_64 i386). It builds and install just fine, but the files it installs are not.

For example, it installs ${prefix}/bin/icu-config, but it is not executable. This causes programs like yaz which require icu to fail to find it.

icu-config is installed non-executable because it has been merged by the muniversal merger, because the i386 and x86_64 files differed. The merger has also inserted C compiler directives into the file, e.g.:

#ifndef __LP64__
CFLAGS="-O2 -arch i386 -O2 -Wall -ansi -pedantic -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -Wno-long-long ${THREADSCFLAGS} "
#else /* __LP64__ */
CFLAGS="-O2 -arch x86_64 -O2 -Wall -ansi -pedantic -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -Wno-long-long ${THREADSCFLAGS} "
#endif /* __LP64__ */

Since this is a bash script and not a C file, however, these are just treated as comments and ignored. To bash, this just looks like you're setting CFLAGS, then setting it again to a different value. (Lines beginning with "#" are ignored.)

In this particular file, the resolution is probably to remove the -arch flags entirely. However there are other files icu +universal installs which need similar attention. I suggest you install icu both universal and non-universal, then diff the two directories in ${prefix}/var/macports/software/icu to see all the differences.

Change History (5)

comment:1 Changed 15 years ago by nox@…

Port: icu added; yaz removed
Status: newassigned
Version: 1.8.1

comment:2 Changed 15 years ago by nox@…

Resolution: duplicate
Status: assignedclosed

I know that. I will work on that soon. Marking as duplicate of #21838.

comment:3 Changed 15 years ago by nox@…

Resolution: duplicate
Status: closedreopened

Mmmh. I didn't say anything.

comment:4 Changed 15 years ago by ryandesign (Ryan Carsten Schmidt)

Resolution: fixed
Status: reopenedclosed

Fixed in r61112.

comment:5 Changed 15 years ago by ryandesign (Ryan Carsten Schmidt)

Sorry: that broke the non-universal build. Fixed that in r61114.

Note: See TracTickets for help on using tickets.