Closed
Bug 204177
Opened 22 years ago
Closed 21 years ago
fix IPC ports bustage
Categories
(Core :: IPC, defect)
Core
IPC
Tracking
()
RESOLVED
FIXED
People
(Reporter: jonwil, Assigned: darin.moz)
References
Details
Attachments
(6 files, 1 obsolete file)
2.12 KB,
patch
|
dbaron
:
review+
darin.moz
:
superreview+
|
Details | Diff | Splinter Review |
630 bytes,
patch
|
Details | Diff | Splinter Review | |
1.05 KB,
patch
|
darin.moz
:
superreview+
|
Details | Diff | Splinter Review |
1.84 KB,
patch
|
Details | Diff | Splinter Review | |
1.85 KB,
patch
|
darin.moz
:
review+
dmosedale
:
superreview+
asa
:
approval1.4+
|
Details | Diff | Splinter Review |
1.37 KB,
patch
|
bryner
:
review+
|
Details | Diff | Splinter Review |
I tried to build the new IPC code, it didnt build. It built lockmodule.dll but
it then asked for liblockmodule.dll.
Reporter | ||
Comment 1•22 years ago
|
||
BTW, if this isnt going to be fixed anytime soon, someone should modify the
win32 build instructions to tell MingW builders to build with
--disable-profilesharing
Blocks: mingw
Reporter | ||
Comment 2•22 years ago
|
||
make[1]: *** No rule to make target `liblockmodule.dll', needed by `libs'. Stop.
make: *** [all] Error 2
Thats the error I got.
Looks like some build rule on MingW is causing one bit of the system to build a
lockmodule.dll then another bit to ask for liblocmodule.dll
Comment 3•22 years ago
|
||
note that this particular Makefile is breaking the static builds, too.
Comment 4•22 years ago
|
||
looks like the same error that linux balsa dep (ports) is showing.
a bunch of other bustage on ports too.
Summary: make IPC build on MingW builds → fix IPC ports bustage
Comment 5•22 years ago
|
||
Looking at it...
Comment 6•22 years ago
|
||
> make[1]: *** No rule to make target `liblockmodule.dll', needed by `libs'.
Since this is killing both static builds, is it possible that the expected
lib*.dll is not being produced because it's a static build? Instead, only a
static lib?
Comment 7•22 years ago
|
||
From ipc/extensions/lock/src/module/Makefile.in:
IS_COMPONENT = 1
NO_DIST_INSTALL = 1
I think IS_COMPONENT is having bad side-affects with the static build. This
makefile is building a component that the ipc code loads - but it's not a
component as far as the rest of the build is concerned. It was needed at some
point for OS X in order to get the linker args which you get with IS_COMPONENT.
Doing a Mac static build right now to test this.
.
Assignee: mozbugs-build → ccarlen
Component: Build Config → Profile Manager BackEnd
QA Contact: granrose → gbush
Assignee | ||
Comment 9•22 years ago
|
||
ipc/extensions/lock/src/module/Makefile.in
probably shouldn't have IS_COMPONENT=1 in it. the code in there is a daemon
module. currently, even in static mozilla builds, the daemon code should
continue to build dynamically loaded modules. i'm guessing that IS_COMPONENT=1
just crept in there by accident.
Comment 10•22 years ago
|
||
Darin, see comment 7 - IS_COMPONENT was needed. In order to get it to build a
shared lib, even in a static build, it needs FORCE_SHARED_LIB. That will require
FORCE_USE_PIC here and there...
Comment 11•22 years ago
|
||
Comment 12•22 years ago
|
||
r=, somebody? Fixes my Mach-O static build, trying others now...
Attachment #122322 -
Flags: review+
Assignee | ||
Comment 13•22 years ago
|
||
Comment on attachment 122322 [details] [diff] [review]
patch to fix static build bustage
sr=darin
Attachment #122322 -
Flags: superreview+
Comment 14•22 years ago
|
||
Checked in. That should fix balsa and worms. nebiros is hopefully fixed. That
leaves IRIX and OS/2.
Assignee | ||
Comment 15•22 years ago
|
||
Assignee | ||
Comment 16•22 years ago
|
||
Comment on attachment 122348 [details] [diff] [review]
wishful patch for irix bustage
got a verbal sr=dbaron on this patch, and checked in. let's see if it does the
trick.
Comment 17•22 years ago
|
||
Camino Tinderbox gives: make[3]: *** No rule to make target
`../../dist/lib/liblockmodule.a', needed by `mozilla-bin'. Stop.
Looks like anything which uses EXPORT_LIBRARY = 1 causes it to end up in
config/final-link-libs. But, since FORCE_SHARED_LIB was used, it doesn't exist.
The question is: does EXPORT_LIBRARY need to be removed from all the makefiles
in ipc/ipcd? Or, as long as static libs exist, they'll just be dead-stripped by
the linker during staticmod link?
Assignee | ||
Comment 18•22 years ago
|
||
Comment on attachment 122353 [details] [diff] [review]
another patch to fix static build bustage
sr=darin
Attachment #122353 -
Flags: superreview+
Reporter | ||
Comment 19•22 years ago
|
||
MingW is still broken.
Looking at the makefile.in for the directory in question, it looks like the
problem on MingW is that it uses $(LIB_PREFIX) instead of $(DLL_PREFIX) in the
_IPC_FILES defintion. On Visual C++ this doesnt matter because $(LIB_PREFIX) and
$(DLL_PREFIX) are the same. But for MingW, this is whats causing the error I think.
Comment 20•22 years ago
|
||
With this, the full build finally links.
Reporter | ||
Comment 21•22 years ago
|
||
This should fix the MingW bustage caused by usage of $(LIB_PREFIX) instead of
$(DLL_PREFIX). Dont know if there is a logical reason to use $(LIB_PREFIX) with
$(DLL_SUFFIX) or if it was a mistake but it breaks MingW :)
Reporter | ||
Updated•22 years ago
|
Attachment #122370 -
Flags: review?(cls)
Attachment #122370 -
Flags: review?(cls)
Comment 22•22 years ago
|
||
Comment on attachment 122370 [details] [diff] [review]
patch for the mingw bustage
This looks like the correct fix to me. sr=dmose@mozilla.org
Attachment #122370 -
Flags: superreview+
Comment 23•22 years ago
|
||
BeOS port is still in bustage:
http://bugzilla.mozilla.org/show_bug.cgi?id=204298
Comment 24•22 years ago
|
||
OS/2 bustage is at least a problem of XP_WIN != !XP_UNIX in ipcTransport.*
Not sure what OS/2 really needs to do, of course.
Comment 25•22 years ago
|
||
*** Bug 204298 has been marked as a duplicate of this bug. ***
Reporter | ||
Updated•22 years ago
|
Attachment #122370 -
Flags: review?(bryner)
Comment 26•22 years ago
|
||
Comment 27•22 years ago
|
||
Comment on attachment 122476 [details] [diff] [review]
fix checking out standalone modules
ipc needs to copy all code in client.mk, not just the fun bits, cls, mind
reviewing this?
Attachment #122476 -
Flags: review?(cls)
Attachment #122476 -
Flags: review?(cls)
Comment 28•22 years ago
|
||
Comment on attachment 122476 [details] [diff] [review]
fix checking out standalone modules
cls suggested that I try to get bryner to review this fixup in client.mk
Attachment #122476 -
Flags: review?(bryner)
Reporter | ||
Updated•22 years ago
|
Attachment #122370 -
Flags: review?(darin)
Attachment #122370 -
Flags: review?(bryner)
Attachment #122370 -
Flags: approval1.4b?
Attachment #122370 -
Flags: approval1.4?
Updated•22 years ago
|
Component: Profile Manager BackEnd → IPC
Updated•22 years ago
|
QA Contact: gbush → carosendahl
Assignee | ||
Comment 29•22 years ago
|
||
Comment on attachment 122370 [details] [diff] [review]
patch for the mingw bustage
r=darin
Attachment #122370 -
Flags: review?(darin) → review+
Comment 30•22 years ago
|
||
Comment on attachment 122370 [details] [diff] [review]
patch for the mingw bustage
a=asa (on behalf of drivers) for checkin to 1.4.
Attachment #122370 -
Flags: approval1.4b?
Attachment #122370 -
Flags: approval1.4?
Attachment #122370 -
Flags: approval1.4+
Updated•22 years ago
|
Attachment #122476 -
Flags: review?(bryner) → review+
Comment 31•22 years ago
|
||
Comment on attachment 122476 [details] [diff] [review]
fix checking out standalone modules
this patch fixes that xpcom standalone and other standalone builds like
transformiix pull ipc. requesting 1.4 approval
Attachment #122476 -
Flags: approval1.4?
Comment 32•22 years ago
|
||
Comment on attachment 122476 [details] [diff] [review]
fix checking out standalone modules
a=sspitzer
Attachment #122476 -
Flags: approval1.4? → approval1.4+
Comment 33•22 years ago
|
||
Comment on attachment 122476 [details] [diff] [review]
fix checking out standalone modules
this patch is in. thanx.
Attachment #122476 -
Attachment is obsolete: true
Assignee | ||
Comment 34•22 years ago
|
||
so can this bug be closed now?
Comment 35•22 years ago
|
||
I don't think the MinGW patch has been checked in yet. I'll try and do that in
the next few days, unless someone else gets to it first.
Comment 36•22 years ago
|
||
MinGW gcc patch has been checked in.
Comment 37•22 years ago
|
||
I made changes to get BeOS building.
I believe that when IPC landed people assured me that it would not be enabled
for places where it wouldn't work. The world is not just win or unix.
You can't assume that !win is always the same as unix or vice versa,
whatever conditions you choose in once file should be used for the same
codepath in other files.
Severity: normal → blocker
OS: Windows XP → All
Hardware: PC → All
Comment 38•22 years ago
|
||
It's a bit overboard to change the status/platform to blocker/All if it's
building everywhere except BeOS and OS/2.
The problem now is that it should not be nescesary to use
--disable-profilesharing in order to build. We need some logic in configure.in
which turns that off for any platforms on which it doesn't build. AFAIK, that's
BeOS, OS/2, and VMS.
I could use some pointers on configure.in, but, would something like this do it?
MOZ_PROFILESHARING=1
case "$target" in
*-beos*)
MOZ_PROFILESHARING=
;;
*-openvms*)
MOZ_PROFILESHARING=
;;
*-os2*)
MOZ_PROFILESHARING=
;;
esec
Comment 39•22 years ago
|
||
Just some terminology from the page which describes those terms:
Blocker Blocks development and/or testing work
All (...; cross-platform bug)
My default BeOS build failed. That blocked my development work <period>
It happens on more than just Windows XP and OS/2 => All
As for configure, how about making it opt in instead of opt out?
set it to 1 for unix and windows, when other platforms implement it, let them
add a line which sets it to 1 for their platform.
Assignee | ||
Comment 40•22 years ago
|
||
timeless: BeOS, VMS, and OS2 are not officially supported by mozilla.org (they
are ports). we try not to bust the ports, but we try even harder not to bust
the primary platforms. it simply can't be the job of every developer to
maintain the ports. we can all try, but it can't be our first priority.
blocker status seems misused if only the ports are busted. moreover, your
development is not hindered... you can add --disable-profilesharing to your
mozconfig. so, why don't you help out with the patch (since you are capable of
testing on BeOS) instead of fussing over the status of this bug?
conrad: your approach looks right to me.
Severity: blocker → normal
Assignee | ||
Comment 41•22 years ago
|
||
Assignee | ||
Updated•22 years ago
|
Attachment #123378 -
Flags: review?(bryner)
Comment 42•22 years ago
|
||
While we're listing os's that don't do domain sockets:
QNX6.0/6.1
Please add that to your list :)
Comment 43•22 years ago
|
||
Comment on attachment 123378 [details] [diff] [review]
patch to disable profilesharing on os2, openvms, and beos
If you're going to do it this way, please indent the block under the *)
appropriately. Personally, I'd do it a bit differently... after the
MOZ_ARG_DISABLE_BOOL() I'd put:
case $target in
*-os2*|*-openvms*|*-beos*)
MOZ_PROFILESHARING=
;;
esac
Also, please add qnx (I'm not sure what the target string is for that offhand)
as timeless mentioned. r=bryner with those addressed.
Attachment #123378 -
Flags: review?(bryner) → review+
Comment 44•22 years ago
|
||
Comment on attachment 123378 [details] [diff] [review]
patch to disable profilesharing on os2, openvms, and beos
please remove beos from this list. currently, even though it doesn't work, the
ipc code does not stop the beos build from completing. Plus, I almost have a
native beos implementation completed, and don't want to have to patch this file
again.
Assignee | ||
Comment 45•21 years ago
|
||
What if anything still needs to be done for this bug? The ports all seem to be
fine now. Does that mean we can mark this as fixed?
(taking bug)
Assignee: ccarlen → darin
Comment 46•21 years ago
|
||
i have no idea what the status on qnx is, my guess is it's still hosed. my
computers should arrive next week, so maybe i'll get root and try qnx w/ this flag.
as for beos, afaik it still doesn't have an impl, so anything that forcefully
uses this stuff will fail miserably (at runtime).
Assignee | ||
Comment 47•21 years ago
|
||
Well, the summary suggests that some ports build doesn't compile on account of
code in ipc/ipcd. I believe that is no longer the case or else someone would
have raised a red flag by now. I understand that the IPCD code may not be
functional on some platforms, but that doesn't really meet the definition of
"bustage" especially since the IPCD code is currently unused. It sounds to me
like the task of implementing IPCD for the various ports where it is not
implemented would be better handled by separate bugs for each port.
If anyone knows of a build that is busted on the trunk because of code under
ipc/ipcd, please speak up. Otherwise, I think we can close this bug.
Comment 48•21 years ago
|
||
(In reply to comment #47)
> If anyone knows of a build that is busted on the trunk because of code under
> ipc/ipcd, please speak up. Otherwise, I think we can close this bug.
Resolving, please reopen as needed.
Status: NEW → RESOLVED
Closed: 21 years ago
Resolution: --- → FIXED
Updated•16 years ago
|
QA Contact: carosendahl → ipc
You need to log in
before you can comment on or make changes to this bug.
Description
•