Closed Bug 327864 Opened 20 years ago Closed 20 years ago

LDAP C-SDK support for Mac cross builds

Categories

(Directory Graveyard :: LDAP C SDK, defect)

PowerPC
macOS
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: mark, Assigned: mark)

Details

(Keywords: fixed1.8.0.2, fixed1.8.1)

Attachments

(1 file)

This is bug 322578 for the LDAP C-SDK. It needs to support Mac cross builds in order to enable universal binaries of Thunderbird and Seamonkey. In order to do this properly, Mac SDK support needs to be added to the LDAP C-SDK. It's managed to escape unscathed so far (unlike NSPR and NSS), but its time has now come.
This patch mostly brings the work I've done in NSPR over to LDAP. The only suspicious-looking thing here is the removal of the AC_TRY_COMPILE/HOST_CC check, which was failing because OBJEXT wasn't set. We don't have this check at all in NSPR or the top-level Mozilla configure script.
Attachment #212502 - Flags: review?(mcs)
I did not do any of the autoconf work for LDAP. I think it would be better if dmose and richm could review this. Complicating matters, Rich has recently made significant (but unrelated) configure changes on the trunk... so we need to make sure the MacOS cross-compile fixes eventually land on both the trunk and on ldapcsdk_50_client_branch.
Comment on attachment 212502 [details] [diff] [review] Mac cross build and SDK support Retargeting.
Attachment #212502 - Flags: review?(richm)
Attachment #212502 - Flags: review?(mcs)
Attachment #212502 - Flags: review?(dmose)
Although this patch was generated against ldapcsdk_50_client_branch, it applies cleanly to the trunk as well.
Looks good, and should not conflict with any recent changes. However, I don't have access to a Mac to try this out.
richm, is that r+ or would you like someone with a Mac to give this a spin first?
I would like to get someone with a Mac to confirm this, but if this is time critical, and since it doesn't affect the builds on the other platforms, it can be an r+.
I'll hopefully have the universal machinery on the trunk today. After that, it will be easy for someone else with a Mac to test this patch.
Rich, I tested this on my 10.3.9 machine with an in-tree build of nss, nspr, and svrcore, and I had no problems building the SDK plus the command-line tools.
Thanks Nathan. r+
Comment on attachment 212502 [details] [diff] [review] Mac cross build and SDK support Marking r+ for richm. dmose, would you like to have a look too?
Attachment #212502 - Flags: review?(richm) → review+
I'm super caught up in Lightning stuff at the moment. If Rich is happy with it, I don't feel that I need to look at it as well.
Comment on attachment 212502 [details] [diff] [review] Mac cross build and SDK support Checked in on ldapcsdk_50_client_branch (for Mozilla trunk), along with a regenerated configure script. Is the directory trunk a restricted partition like I think it is? If so, one of you will need to check in. If not, I'll do it. There doesn't seem to be an approval1.8.1 flag here, could a directory owner/peer approve for landing on the MOZILLA_1_8_BRANCH?
Attachment #212502 - Flags: review?(dmose) → approval1.8.0.2?
Go ahead and check it into the ldap c sdk trunk. If you have any problems, let me know.
You may not check into partition Directory SDK the file mozilla/directory/c-sdk/configure on branch HEAD If you think you should be allowed to, send mail to one of the below people: leif@ogre.com dmose@mozilla.org mcs@pearlcrescent.com cvs commit: Pre-commit check failed Seeing as how all of those people are already CCed here, this message should suffice. richm, despot says you can check this in to the LDAP trunk. Also, separately, let me ask: on the client branch, configure was generated by autoconf 2.13, but on the trunk, it was generated by 2.59. Why the shift? Are you using anything new in 2.59 (and is it now incompatible with 2.13?)
I use Fedora Core 4 for devel so I use that version of autoconf. I'm not aware of any incompatability, in fact I was able to use the trunk to build thunderbird. See bug 325625 for more details.
The only reason I bring it up is that other autoconf-based build systems in the Mozilla tree depend on autoconf 2.13, so seeing 2.59 piqued my curiosity.
Checked into trunk. Checking in configure.in; /cvsroot/mozilla/directory/c-sdk/configure.in,v <-- configure.in new revision: 5.48; previous revision: 5.47 done Checking in configure; /cvsroot/mozilla/directory/c-sdk/configure,v <-- configure new revision: 5.48; previous revision: 5.47 done Checking in config/autoconf.mk.in; /cvsroot/mozilla/directory/c-sdk/config/autoconf.mk.in,v <-- autoconf.mk.in new revision: 5.10; previous revision: 5.9 done
Comment on attachment 212502 [details] [diff] [review] Mac cross build and SDK support approved for 1.8.0 branch, a=dveditz for drivers
Attachment #212502 - Flags: approval1.8.0.2? → approval1.8.0.2+
Can I get LDAP owner/peer approval for 1.8.1 too? mcs, dmose?
sure, a=dmose.
On 1_8 and 1_8_0 too. All wrapped up.
Status: NEW → RESOLVED
Closed: 20 years ago
Resolution: --- → FIXED
(In reply to comment #17) > The only reason I bring it up is that other autoconf-based build systems in the > Mozilla tree depend on autoconf 2.13, so seeing 2.59 piqued my curiosity. You man need to ping benjamin to confirm that using autconf 2.59 is acceptable for the c-sdk.
Benjamin says that autoconf 2.59 is ok: Rich Megginson wrote: > https://bugzilla.mozilla.org/show_bug.cgi?id=327864 > > I've been using autoconf 2.59 (Fedora Core 4) for my ldap c sdk development. > I was able to take this version to build the current thunderbird. Should I be > using 2.13 for the ldap c sdk? That is not necessary. Since autoconf is a develop-time tool and the resulting configure script is checked into CVS, you can use any autoconf that's commonly distributed. Most systems, including FC and cygwin, ship both autoconf-2.13 and autoconf (2.5x) in parallel. --BDS
I'd also add that it's especially not a concern as long as configure.in remains compatible with 2.13 (which some Mozilla developers may be expecting). Even if it script breaks with 2.13, there's no auto-regen of this specific configure script, so there's very little risk of breakage.
Just for the record, this patch has also been checked into the ldapcsdk_5_17_client_branch - apparently the branch was cut just before it went into the trunk.
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: