Opened 11 years ago

Closed 11 years ago

#25057 closed defect (fixed)

hdf5-18 +universal: h5cc, h5c++ and libhdf5.settings contain -arch flags

Reported by: ryandesign (Ryan Schmidt) Owned by: mamoll (Mark Moll)
Priority: Normal Milestone:
Component: ports Version: 1.8.2
Keywords: Cc:
Port: hdf5-18

Description

hdf5-18 +universal installs h5cc and h5c++ programs that don't work. They don't work because their executable bit isn't set, and their executable bit isn't set because they have been merged by the muniversal portgroup. h5cc for example contains this:

SHOW="eval"
CCBASE="/usr/bin/gcc-4.2"
CLINKERBASE="/usr/bin/gcc-4.2"
#ifndef __LP64__
CFLAGS=" -O2 -arch i386"
#else /* __LP64__ */
CFLAGS=" -O2 -arch x86_64"
#endif /* __LP64__ */
CPPFLAGS=" -I/opt/local/include"
#ifndef __LP64__
LDFLAGS=" -L/opt/local/lib -arch i386"
#else /* __LP64__ */
LDFLAGS=" -L/opt/local/lib -arch x86_64"
#endif /* __LP64__ */
LIBS=" -lsz -lz -lm "

These are obviously C preprocessor directives and have no business being in a shell script, but muniversal didn't know this wasn't a C file and put them there anyway.

The solution will likely be to remove the -arch flags from this and any other file where they occur (before the end of the destroot phase when the merging happens) since it's not appropriate to install files with -arch flags anyway. The affected files are h5cc, h5c++ and libhdf5.settings.

Change History (4)

comment:1 Changed 11 years ago by ryandesign (Ryan Schmidt)

Has duplicate #25033.

comment:2 Changed 11 years ago by mamoll (Mark Moll)

I think I understand the problem, but I don't fully understand the instructions on how to fix this. If anyone else wants to take a stab at this, feel free to do so.

comment:3 Changed 11 years ago by ryandesign (Ryan Schmidt)

I can fix this in just a moment.

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

Resolution: fixed
Status: newclosed

Fixed in r68277.

Note: See TracTickets for help on using tickets.