Closed Bug 426083 Opened 16 years ago Closed 16 years ago

Changes needed to build standalone XULRunner on BeOS ( branch 1.8 )

Categories

(Toolkit Graveyard :: XULRunner, defect)

x86
BeOS
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED
mozilla1.9

People

(Reporter: mattmadia, Assigned: mattmadia)

Details

(Keywords: fixed1.8.1.15)

Attachments

(3 files, 2 obsolete files)

User-Agent:       Mozilla/5.0 (BeOS; U; BeOS BePC; en-US; rv:1.8.1.14pre) Gecko/20080320 BonEcho/2.0.0.14pre
Build Identifier: 

Currently the standalone component, XULRunner does not build on BeOS.
This bug id provides a patch to resolve that issue.

Reproducible: Always

Steps to Reproduce:
1.
2.
3.
Attached patch preliminary patch (obsolete) — Splinter Review
does Volume.h need to be included?
Comment on attachment 312631 [details] [diff] [review]
preliminary patch

>Index: stub/nsXULStub.cpp
>===================================================================
>+//Added code to include necessary BEOS header for BEOS specific code
>+#ifdef XP_BEOS
>+//#include <StorageKit.h>
>+#include <Entry.h>
>+#include <Path.h>
>+#include <Volume.h>
>+#endif
>+

Why is StorageKit.h commented out?

> 
>-#ifndef XP_WIN
>+#ifdef XP_BEOS
>+  putenv(strcat("XPCOM_SEARCH_KEY=", greDir));
>+#else
>   setenv(XPCOM_SEARCH_KEY, greDir, 1);
> #endif
> 

Isn't the #ifndef XP_WIN needed inside the #else ? Or you could keep it like this:

> #ifndef XP_WIN
>+#ifdef XP_BEOS
>+  putenv(strcat("XPCOM_SEARCH_KEY=", greDir));
>+#else
>   setenv(XPCOM_SEARCH_KEY, greDir, 1);
> #endif
>+#endif
originally these changes were included in another patch: id=425962
as per requested in https://bugzilla.mozilla.org/show_bug.cgi?id=425962#c8 ,  i made this patch.   
 
<Entry.h>, <Path.h>, <Volume.h>  are individual parts of <StorageKit.h>
I forgot to completely remove the //#include <StorageKit.h> when creating this patch.

Later I'll test your suggestions and post a new patch.
Attached patch second version (obsolete) — Splinter Review
has mfinkle's suggestions,
"-lgame" was removed from xulrunner/app/Makefile.in,
"#include <Volume.h>" was removed from xulrunner/stub/nsXULStub.cpp, xulrunner was built successfully.
Attachment #312631 - Attachment is obsolete: true
Comment on attachment 312657 [details] [diff] [review]
second version

Thanks for minimizing the code changes. No other OS should be affected by your changes now either.

Without BeOS, I can't test the changes, but I trust you if you say they work.

Nit:
+  if (err == B_OK)
+    //p.Path returns a pointer, so use strcpy to store path in iniPath
+    strcpy(iniPath, p.Path());
+
+
+#else 

Extra line that should be removed before checkin.
Attachment #312657 - Flags: review+
What do you mean "-lgame" was removed?

The game library is used for sound output in widget/src/beos and when statically linking the binary it is needed.
Originally, I added -lgame expecting it to be needed, much like other mozilla applications.
However, XULRunner will not allow itself to be built statically.
More specifically:
configure: error: --enable-libxul is not compatible with --enable-static

So while implementing the requested changes, I tried removing -lgame and it built successfully.

Attached is the mozconfig used, for reference purposes.
Attachment #312657 - Flags: approval1.9?
Attachment #312657 - Flags: approval1.8.1.14?
Comment on attachment 312657 [details] [diff] [review]
second version

Approved for 1.8.1.15. a=ss.
Attachment #312657 - Flags: approval1.8.1.15? → approval1.8.1.15+
requesting checkin on trunk and branch 1_8
Attached patch third versionSplinter Review
As per request, the extra line has been removed for checkin.
Attachment #312657 - Attachment is obsolete: true
Attachment #312657 - Flags: approval1.9?
Attachment #313495 - Flags: approval1.9?
Comment on attachment 313495 [details] [diff] [review]
third version

BeOS only.  a1.9+=damons
Attachment #313495 - Flags: approval1.9? → approval1.9+
Assignee: nobody → mattmadia
Status: UNCONFIRMED → NEW
Ever confirmed: true
Attached patch what I landedSplinter Review
this is what I landed for trunk
Checking in xulrunner/app/Makefile.in;
/cvsroot/mozilla/xulrunner/app/Makefile.in,v  <--  Makefile.in
new revision: 1.40; previous revision: 1.39
done
Checking in xulrunner/stub/nsXULStub.cpp;
/cvsroot/mozilla/xulrunner/stub/nsXULStub.cpp,v  <--  nsXULStub.cpp
new revision: 1.14; previous revision: 1.13
done
Status: NEW → RESOLVED
Closed: 16 years ago
Keywords: checkin-needed
Resolution: --- → FIXED
Target Milestone: --- → mozilla1.9
MOZILLA_1_8_BRANCH:

Checking in xulrunner/app/Makefile.in;
/cvsroot/mozilla/xulrunner/app/Makefile.in,v  <--  Makefile.in
new revision: 1.23.2.4; previous revision: 1.23.2.3
done
Checking in xulrunner/stub/nsXULStub.cpp;
/cvsroot/mozilla/xulrunner/stub/nsXULStub.cpp,v  <--  nsXULStub.cpp
new revision: 1.1.2.9; previous revision: 1.1.2.8
done
Keywords: fixed1.8.1.15
Product: Toolkit → Toolkit Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: