Opened 16 years ago

Closed 16 years ago

Last modified 16 years ago

#17982 closed defect (fixed)

libiconv: universal LP64 fixes

Reported by: jmroot (Joshua Root) Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version: 1.7.0
Keywords: Cc: MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
Port: libiconv

Description

Attached patches correct libiconv's config.h when building for both 32- and 64-bit.

Attachments (3)

libiconv-lp64.diff (555 bytes) - added by jmroot (Joshua Root) 16 years ago.
patch-config.h.diff (671 bytes) - added by jmroot (Joshua Root) 16 years ago.
build_diff_32_64.diff (1.7 KB) - added by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez) 16 years ago.

Download all attachments as: .zip

Change History (15)

Changed 16 years ago by jmroot (Joshua Root)

Attachment: libiconv-lp64.diff added

Changed 16 years ago by jmroot (Joshua Root)

Attachment: patch-config.h.diff added

comment:1 Changed 16 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

Cc: mcalhoun@… added

Cc Me!

comment:2 Changed 16 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

Using #17972, there are a few more changes in the 32/64 build processes.
I do not know if they matter.

Changed 16 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

Attachment: build_diff_32_64.diff added

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

Resolution: fixed
Status: newclosed

Thank you both. I applied a combination of your fixes in r45447.

comment:4 Changed 16 years ago by jmroot (Joshua Root)

Unfortunately configuring libiconv now fails when the universal variant is not set, and also when building universal but not 64-bit. That long if statement in my patch was there for a reason.

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

Resolution: fixed
Status: closedreopened

Hum... I didn't understand why the patch had to be restricted to the universal variant, and I thought I had tested without it...

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

Ok, I see the problem is that the patch does not apply unless you build with 64 bits.

I wanted to do the fix all the time, not just in the universal variant, based on Joshua's comment in #16007 that some systems may want to build 64-bit all the time. I guess I should convert the patch into an ed script, as per Joshua's comment in #17042.

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

Or have you changed your mind on that idea?

comment:8 Changed 16 years ago by jmroot (Joshua Root)

Daniel didn't like the idea of adding a dependency on ed in #17090. Maybe it's not a big deal.

comment:9 Changed 16 years ago by jmroot (Joshua Root)

Also, in #16007 it was broken on 64-bit. In this case it's only broken when building for two different word lengths at once.

comment:10 in reply to:  8 Changed 16 years ago by ryandesign (Ryan Carsten Schmidt)

Replying to jmr@…:

Daniel didn't like the idea of adding a dependency on ed in #17090. Maybe it's not a big deal.

I think using ed is fine because ed is in /bin/ed while patch is in /usr/bin/patch, suggesting that ed is a lower-level utility than patch, which we already require, so ed should be on at least as many systems as have patch.

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

Resolution: fixed
Status: reopenedclosed

Now using an ed script in r45487. Increasing revision again because I got PTRDIFF_T_SUFFIX reversed in my first attempt.

comment:12 Changed 16 years ago by (none)

Milestone: Port Bugs

Milestone Port Bugs deleted

Note: See TracTickets for help on using tickets.