Opened 8 years ago

Closed 8 years ago

#52652 closed defect (fixed)

libopus @1.1.3: absolute addressing not allowed in slidable image

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by: jeremyhu (Jeremy Huddleston Sequoia)
Priority: Normal Milestone:
Component: ports Version: 2.3.4
Keywords: powerpc haspatch Cc:
Port: libopus

Description

On PowerPC Leopard:

ld: absolute addressing (perhaps -mdynamic-no-pic) used in _compute_band_energies from celt/.libs/bands.o not allowed in slidable image. Use '-read_only_relocs suppress' to enable text relocs

Attachments (2)

main.log (223.0 KB) - added by ryandesign (Ryan Carsten Schmidt) 8 years ago.
libopus-powerpc.diff (772 bytes) - added by ryandesign (Ryan Carsten Schmidt) 8 years ago.

Download all attachments as: .zip

Change History (9)

Changed 8 years ago by ryandesign (Ryan Carsten Schmidt)

Attachment: main.log added

Changed 8 years ago by ryandesign (Ryan Carsten Schmidt)

Attachment: libopus-powerpc.diff added

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

Keywords: haspatch added; leopard removed

The attached patch works for me.

comment:2 Changed 8 years ago by ryandesign (Ryan Carsten Schmidt)

Of course, this means intrinsics aren't enabled on PowerPC:

configure: WARNING: No intrinsics support for your architecture
      Intrinsics Optimizations.......: no

I don't know whether that's important. But since they're called "Optimizations" here, I assume it's not critical to have them.

comment:3 Changed 8 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Dose that trigger for i386 and x86_64? Or should it be inside of an:

if (${build_arch} eq "x86_64" || ${build_arch} eq "i386")

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

platform i386 means any Intel processor, just as platform powerpc means any PowerPC processor.

comment:5 Changed 8 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Ok, then go ahead and commit this, thanks.

Given that ‘platform x86_64’ means x86_64, what does one do for i386 specific (not x86_64)?

comment:6 Changed 8 years ago by ryandesign (Ryan Carsten Schmidt)

platform x86_64 has no meaning in MacPorts. The only possible values for os.platform are powerpc and i386.

You can inspect configure.build_arch and configure.universal_archs if you need to know more than just whether the system is Intel or PowerPC.

comment:7 Changed 8 years ago by ryandesign (Ryan Carsten Schmidt)

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.