Closed Bug 544377 Opened 13 years ago Closed 10 years ago

Build fails on FreeBSD, with unknown platform, in ipc


(Core :: IPC, defect, P5)






(Reporter: leighton, Assigned: mpk)




(2 obsolete files)

User-Agent:       Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_8; en-us) AppleWebKit/531.21.8 (KHTML, like Gecko) Version/4.0.4 Safari/531.21.10
Build Identifier: mozilla-central rev. 6d13028da120

Doing a Firefox build of mozilla-central rev. 6d13028da120 on FreeBSD 7.2.  If --disable-ipc is not specified, build fails with request to add support for your platform.  Error occurs at ipc/chromium/src/build/build_config.h:25

Reproducible: Always

Steps to Reproduce:
1. Download mozilla-central rev 6d13028da120 to a FreeBSD 7.2 machine
2. Be sure that --disable-ipc is _not_ specified in the .mozconfig file.
3. In build directory, run configure and gmake.
Actual Results:  
c++ -o nsXPComInit.o -c -I../../dist/system_wrappers -include ../../../config/gcc_hidden.h -DMOZILLA_INTERNAL_API -D_IMPL_NS_COM -DEXPORT_XPT_API -DEXPORT_XPTC_API -D_IMPL_NS_GFX -D_IMPL_NS_WIDGET -DIMPL_XREAPI -DIMPL_NS_NET -DIMPL_THEBES  -DZLIB_INTERNAL -DOSTYPE=\"FreeBSD7\" -DOSARCH=FreeBSD -DEXCLUDE_SKIA_DEPENDENCIES -DCHROMIUM_MOZILLA_BUILD  -DOS_LINUX=1 -DOS_POSIX=1  -D_IMPL_NS_COM -D_IMPL_NS_STRINGAPI -DEXPORT_XPT_API -DEXPORT_XPTC_API -DTARGET_XPCOM_ABI=\"x86-gcc3\" -I../../../xpcom/build -I.. -I../../../xpcom/build/../glue -I../../../xpcom/build/../base -I../../../xpcom/build/../ds -I../../../xpcom/build/../io -I../../../xpcom/build/../components -I../../../xpcom/build/../threads -I../../../xpcom/build/../threads/_xpidlgen -I../../../xpcom/build/../proxy/src -I../../../xpcom/build/../reflect/xptinfo/src  -I../../../ipc/chromium/src -I../../../ipc/glue -I../../ipc/ipdl/_ipdlheaders  -I../../../xpcom/build -I. -I../../dist/include -I../../dist/include/nsprpub  -I/home/leighton/development/firefox/source/sctp/src/obj-ff-dbg/dist/include/nspr -I/home/leighton/development/firefox/source/sctp/src/obj-ff-dbg/dist/include/nss       -fPIC -I/usr/local/include -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -Wno-long-long -fno-strict-aliasing -fshort-wchar -pipe -DDEBUG -D_DEBUG -DDEBUG_leighton -DTRACING -g -D_THREAD_SAFE -I/usr/local/include/gtk-2.0 -I/usr/local/lib/gtk-2.0/include -I/usr/local/include/atk-1.0 -I/usr/local/include/cairo -I/usr/local/include/pango-1.0 -I/usr/local/include -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include/pixman-1 -I/usr/local/include/freetype2 -I/usr/local/include/gtk-unix-print-2.0    -I/usr/local/include -DMOZILLA_CLIENT -include ../../mozilla-config.h -Wp,-MD,.deps/nsXPComInit.pp ../../../xpcom/build/nsXPComInit.cpp
In file included from ../../../ipc/chromium/src/base/port.h:9,
                 from ../../../ipc/chromium/src/base/basictypes.h:50,
                 from ../../../xpcom/build/nsXPComInit.cpp:41:
../../../ipc/chromium/src/build/build_config.h:25:2: error: #error Please add support for your platform in build/build_config.h
In file included from ../../../xpcom/build/../io/nsLocalFile.h:78,
                 from ../../../xpcom/build/nsXPComInit.cpp:103:
../../../xpcom/build/../io/nsLocalFileUnix.h:84:1: warning: "STATFS" redefined
../../../xpcom/build/../io/nsLocalFileUnix.h:75:1: warning: this is the location of the previous definition
In file included from ../../dist/include/mozilla/ipc/GeckoThread.h:48,
                 from ../../../xpcom/build/nsXPComInit.cpp:155:
../../dist/include/mozilla/ipc/ScopedXREEmbed.h:59:43: warning: no newline at end of file
gmake[4]: *** [nsXPComInit.o] Error 1
gmake[4]: Leaving directory `/home/leighton/development/firefox/source/sctp/src/obj-ff-dbg/xpcom/build'
gmake[3]: *** [libs] Error 2
gmake[3]: Leaving directory `/home/leighton/development/firefox/source/sctp/src/obj-ff-dbg/xpcom'
gmake[2]: *** [libs_tier_xpcom] Error 2
gmake[2]: Leaving directory `/home/leighton/development/firefox/source/sctp/src/obj-ff-dbg'
gmake[1]: *** [tier_xpcom] Error 2
gmake[1]: Leaving directory `/home/leighton/development/firefox/source/sctp/src/obj-ff-dbg'
gmake: *** [default] Error 2
[leighton@chablis ~/development/firefox/source/sctp/src/obj-ff-dbg]$

Expected Results:  
successful build
Component: Build Config → IPC
Product: Firefox → Core
QA Contact: build.config → ipc
OS: Other → FreeBSD
Ever confirmed: true
Priority: -- → P5
Blocks: 352822
Hardware: x86 → All
Summary: Build fails on FreeBSD 7.2, with unknown platform, in ipc → Build fails on FreeBSD, with unknown platform, in ipc
Version: unspecified → Trunk
Since bug #638755 landed there's no simple workaround for "weird platforms".

This patch is really ugly. It doesn't even implement full OOPP functionality.
But it unbreaks current trunk builds and may serve as a starting point on
which to build. Please note that plugins will most likely crash. In order to
prevent them from doing so you need to manually set "dom.ipc.plugins.enabled"
to "false" in about:config . (Oh, and beware of poossible bit-rot! ;-))
Is there any follow up?
Attached patch patch v2 (obsolete) — Splinter Review
Yes. This should take care of the remaining issues in ipc.
Assignee: nobody → bugmail
Attachment #527621 - Attachment is obsolete: true
Attachment #621190 - Flags: review?(jones.chris.g)
Comment on attachment 621190 [details] [diff] [review]
patch v2

>diff --git a/ipc/chromium/src/base/dir_reader_posix.h b/ipc/chromium/src/base/

>-#if defined(OS_LINUX) && !defined(OS_OPENBSD)
>+#if defined(OS_LINUX) && !defined(OS_OPENBSD) && !defined(OS_FREEBSD)

This doesn't make sense.  Why is OS_LINUX being defined if we're on a *BSD?
Attachment #621190 - Flags: review?(jones.chris.g)
See also bug #753046, corollary bug for NetBSD/DragonFlyBSD. Can we coordinate both ?
Comment on attachment 621190 [details] [diff] [review]
patch v2

Yes, I'm all for consolidating our efforts and streamlining the BSD-specific
parts of the code. The patch in bug 753046 looks interesting. I'll give it a
test run on trunk to see whether it needs some tweaks.

I fear we'll have to fix a bustage in js/src/gc introduced some days ago, too.
At least on FreeBSD it didn't build yesterday.
Attachment #621190 - Attachment is obsolete: true
I think this one can be resolved fixed now, since bug 753046 has been fixed.

Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla18
You need to log in before you can comment on or make changes to this bug.