Closed
Bug 72693
Opened 24 years ago
Closed 23 years ago
Build PSM 2.0 for OS/2
Categories
(Core Graveyard :: Security: UI, defect, P2)
Tracking
(Not tracked)
VERIFIED
FIXED
psm2.0
People
(Reporter: jhpedemonte, Assigned: ddrinan0264)
References
Details
Attachments
(8 files)
(deleted),
patch
|
Details | Diff | Splinter Review | |
(deleted),
patch
|
Details | Diff | Splinter Review | |
(deleted),
patch
|
Details | Diff | Splinter Review | |
(deleted),
patch
|
Details | Diff | Splinter Review | |
(deleted),
patch
|
Details | Diff | Splinter Review | |
(deleted),
patch
|
Details | Diff | Splinter Review | |
(deleted),
patch
|
Details | Diff | Splinter Review | |
(deleted),
patch
|
Details | Diff | Splinter Review |
Changes needed to allow PSM 2.0 to build under OS/2. This bug is for
any fixes needed to get this going.
Reporter | ||
Comment 1•24 years ago
|
||
Reporter | ||
Comment 2•24 years ago
|
||
Attached a patch above that contains the fixes that I needed to get
this building for OS/2, using the trunk for security/manager and the
PSM20_M_1_5_TAG for coreconf and nss.
One question: security/ssl/src/Makefile.in looks for libssl.lib,
libnss.lib and so on in the main Mozilla DIST, but they are not copied
there. So I added some lines in security/manager/Makefile.in to copy
the required libraries from the security dist to the main dist
directory. Why don't the other platforms need this? What is OS/2
doing wrong?
Comment 3•24 years ago
|
||
Becouse OS/2 build copies many files from dist/ to dist/OBJxxxx/
Its ugly.
Reporter | ||
Comment 4•24 years ago
|
||
Reporter | ||
Comment 5•24 years ago
|
||
Added patch with better CALLBACK support. Once again, based on
PSM20_M_1_5_TAG for security/coreconf and security/nss, and trunk for
security/manager.
Assignee | ||
Comment 6•24 years ago
|
||
Thanks for the patch. I'm currently reviewing it.
Reporter | ||
Comment 7•24 years ago
|
||
Reporter | ||
Comment 8•24 years ago
|
||
Reporter | ||
Comment 9•24 years ago
|
||
Created a new patch incorporating nelsonb's suggestions. Also, had to
include nsprpub/pr/include/prtypes.h in order to properly defined
NSS_CALLBACK_DECL in nssbaset.h.
Reporter | ||
Comment 10•24 years ago
|
||
Reporter | ||
Comment 11•24 years ago
|
||
NOTE: Latest patch supercedes all previous ones. Based on
PSM20_M_2_TAG.
Reporter | ||
Comment 12•24 years ago
|
||
Could we at least get a review for nssbaset.h? Once that is checked
in, then the rest can go in piece by piece.
Reporter | ||
Comment 14•24 years ago
|
||
Reporter | ||
Comment 15•24 years ago
|
||
Reporter | ||
Updated•24 years ago
|
Reporter | ||
Comment 16•24 years ago
|
||
When building in security/manager/ssl/src, it looks for NSS libs in
dist/lib, rather than OS2_DBG.OBJ/dist/lib. I got around this by
copying those libs to the main dist in security/manager/Makefile.in.
Why don't other platforms need to do this? Is this solution the
correct way to do this?
Assignee | ||
Comment 17•23 years ago
|
||
I'm concerned by having to copy NSS libs to dist/lib, instead of having PSM find
them in OS2_DBG.OBJ/dist/lib. Any idea why $(DIST) appears to be broken when
building PSM? I'm assuming $(DIST) is set correctly for the other components
such as necko etc.
Comment 18•23 years ago
|
||
David -- you can go ahead and check in the changes for the
other files. Just replace "NSS_CALLBACK" by "PR_CALLBACK".
The "PR_CALLBACK" changes can be committed independent of
the NSS patch.
Reporter | ||
Comment 19•23 years ago
|
||
drinan:
Sorry for taking so long to respond. I have been trying to build
security in order to find out why we need to copy over the files.
Basically, my dist directory (mozilla/obj/dist) looks like this:
bin
idl
include
lib
OS22.45_DBG.OBJ
private
public
The last three entries are created by the security build process. The
directory OS22.45_DBG.OBJ contains headers copied from dist/include as
well as the security headers, and the "lib" directory, where the NSS
libs are located. When we come to security/manager/ssl/src, the
Makefile there considers $(DIST) to be mozilla/obj/dist/lib, and has
no idea about the existence of OS22.45_DBG.OBJ. What is the best way
to fix this problem?
Reporter | ||
Comment 20•23 years ago
|
||
Assignee | ||
Comment 21•23 years ago
|
||
I'm adding Javier Delgadillo to cc-list.
Javi,
Please review this patch and let me know what you think of the $(DIST) issue.
Otherwise, the rest of the patch is good.
Comment 22•23 years ago
|
||
I really don't like listing all of the static libraries and then copying them
over. I'd almost prefer a cp *.lib as a work around and then filing a bug
against NSS to let us tell it where to put the lib files.
wtc, is there another solution to Javier's problem?
Comment 23•23 years ago
|
||
Javier (of Netscape): I am testing a fix that makes it unnecessary
to copy the static libs over. I understand why Javier (of IBM) needs
to do that on OS/2.
David: You can go ahead and review the non-makefile changes. I'd
suggest that you hold on doing anything with the makefile.
Assignee | ||
Comment 24•23 years ago
|
||
OK, r=ddrinan for all the non-makefile changes. I've applied this patch to my
tree and will check in once this bug has sr=.
Comment 25•23 years ago
|
||
David,
My patch for bug #81181
(http://bugzilla.mozilla.org/showattachment.cgi?attach_id=35573)
should address the issue that Javier Pedemonte's patch for
security/manager/Makefile.in attempts to fix, so you can safely
ignore that part of his patch.
Assignee | ||
Comment 26•23 years ago
|
||
wtc,
Good. I'll just check in the non-makefile changes.
Javier (Pedemont),
Who is doing super-review on this bug? I can't check in until we get sr=
Assignee | ||
Comment 27•23 years ago
|
||
Comment 28•23 years ago
|
||
r=wtc.
Comment 29•23 years ago
|
||
I don't understand why you guys changed all the NSS_CALLBACKs to PR_CALLBACKs
(including wtc's NSS that is already checked in)
if you have this:
#define NSS_IMPLEMENT PR_IMPLEMENT(DUMMY)
#define NSS_EXTERN_DATA PR_EXTERN_DATA(DUMMY)
#define NSS_IMPLEMENT_DATA PR_IMPLEMENT_DATA(DUMMY)
why wouldn't you have this:
#define NSS_CALLBACK PR_CALLBACK
Security is its own component/module and should have its own callback that can
be set independent of what NSPRs callback is set to, similar to Javascript
having JS_DLL_CALLBACK
I don't think the calling convention in NSS should be dependent on the calling
convention in NSPR.
This becomes especially important when we try to switch calling conventions. We
could actually leave NSS alone (only change the header from mapping to
PR_CALLBACK to mapping to a calling convention explicitly) and only change NSPR
to a new calling convention.
Comment 30•23 years ago
|
||
http://lxr.mozilla.org/seamonkey/search?string=PR_CALLBACK
PR_CALLBACK is used all over the places. Are you planning to
fix them all?
Javascript has JS_DLL_CALLBACK because it has the requirement
that it can be built without NSPR. NSS does not have that
requirement.
These NSS_ macros were added because the PR_XXX(type) form
breaks some Unix source code browsing tools such as ctags,
which don't like to see the function return type in parentheses:
#define NSS_IMPLEMENT PR_IMPLEMENT(DUMMY)
#define NSS_EXTERN_DATA PR_EXTERN_DATA(DUMMY)
#define NSS_IMPLEMENT_DATA PR_IMPLEMENT_DATA(DUMMY)
Comment 31•23 years ago
|
||
> PR_CALLBACK is used all over the places. Are you planning to
> fix them all?
We're trying :)
We're looking at different places in the code and changing it where it makes
sense. For instance PNG, MNG, and JPEG have there own way to set calling
convention, so they shouldn't use PR_CALLBACK - they should use the one in their
own header.
We also changed tons of PR_CALLBACKS to JS_DLL_CALLBACKS and vice versa.
So we are trying to clean it up a bit. I don't know if there is any "right" way
to do it.
For instance, there is a PrefChangedCallback in prefs that uses PR_CALLBACK -
I'm not sure what it should be. Should there be a generic NS_CALLBACK or a
PREF_CALLBACK? NS_QuickSort is another good example.
I think the original purpose of PR_CALLBACK was for function callbacks to NSPR,
and people (especially OS/2) just used it because it was there. So we're doing
what we can to make it a little easier for components to exist standalone.
But if NSS is totally dependendent on NSPR, then that's OK with me. I trust you
guys on this. You've had the code a lot longer than me :)
So let's just get this stuff in and I'll stop worrying about it.
Reporter | ||
Comment 32•23 years ago
|
||
wtc, drinan:
Yes, I build fine with the patch from 81181. No other changes
necessary to security/manager/Makefile.in.
I think Javier Delgadillo is the sr for psm bugs.
Comment 33•23 years ago
|
||
PR_CALLBACK is intended for general use.
Comment 34•23 years ago
|
||
heh. I have fooled people into thinking I have power ;)
I can give r= for PSM bugs, but our super reviews have been going to
blizzard@mozilla.org, scc@mozilla.org, or brendan@mozilla.org
Feel free to forward the sr request to one of them.
Reporter | ||
Comment 35•23 years ago
|
||
well, i'm glad to give javi an ego boost!
blizzard, can you super-review this?
Comment 36•23 years ago
|
||
sr=blizzard
Assignee | ||
Comment 37•23 years ago
|
||
Checked in.
Assignee | ||
Comment 38•23 years ago
|
||
Marking FIXED.
Status: NEW → RESOLVED
Closed: 23 years ago
Resolution: --- → FIXED
Updated•8 years ago
|
Product: Core → Core Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•