--- src/libs/xpcom18a4/Makefile.kmk.orig 2020-07-10 02:59:16.000000000 +1000 +++ src/libs/xpcom18a4/Makefile.kmk 2020-08-21 01:27:11.923653000 +1000 @@ -202,6 +202,7 @@ NSPRPUB-MD-HEADERS_SOURCES = \ nsprpub/pr/include/md/_iprt_atomic.h \ nsprpub/pr/include/md/_darwin.h \ + nsprpub/pr/include/md/_bsdsunix.h \ nsprpub/pr/include/md/_freebsd.h \ nsprpub/pr/include/md/_linux.h \ nsprpub/pr/include/md/_macos.h \ @@ -216,6 +217,7 @@ nsprpub/pr/include/md/_pth.h \ nsprpub/pr/include/md/prosdep.h \ \ + nsprpub/pr/include/md/_bsdsunix.cfg \ nsprpub/pr/include/md/_freebsd.cfg \ nsprpub/pr/include/md/_linux.cfg \ nsprpub/pr/include/md/_darwin.cfg \ @@ -513,6 +515,10 @@ HAVE_BSD_FLOCK=1 \ HAVE_SOCKLEN_T=1 \ _PR_PTHREADS +VBox-xpcom-nspr_DEFS.bsdsunix = \ + BSDSUNIX=1 \ + HAVE_CVAR_BUILT_ON_SEM \ + _PR_PTHREADS VBox-xpcom-nspr_DEFS.freebsd = \ FREEBSD=1 \ HAVE_CVAR_BUILT_ON_SEM \ @@ -606,7 +612,7 @@ nsprpub/lib/libc/src/plerror.c \ nsprpub/lib/libc/src/plgetopt.c -ifeq ($(filter-out darwin freebsd linux netbsd openbsd solaris,$(KBUILD_TARGET)),) # unixish +ifeq ($(filter-out darwin bsdsunix freebsd linux netbsd openbsd solaris,$(KBUILD_TARGET)),) # unixish VBox-xpcom-nspr_SOURCES += \ nsprpub/pr/src/md/unix/unix.c \ nsprpub/pr/src/md/unix/unix_errors.c \ @@ -623,6 +629,7 @@ VBox-xpcom-nspr_SOURCES.darwin = nsprpub/pr/src/md/unix/darwin.c VBox-xpcom-nspr_SOURCES.darwin.x86 = nsprpub/pr/src/md/unix/os_Darwin_x86.s +VBox-xpcom-nspr_SOURCES.bsdsunix= nsprpub/pr/src/md/unix/bsdsunix.c VBox-xpcom-nspr_SOURCES.freebsd = nsprpub/pr/src/md/unix/freebsd.c VBox-xpcom-nspr_SOURCES.linux = nsprpub/pr/src/md/unix/linux.c @@ -798,7 +805,7 @@ xpcom/io/nsLocalFileOSX.cpp \ xpcom/MoreFiles/FSCopyObject.c \ xpcom/MoreFiles/MoreFilesX.c -if1of ($(KBUILD_TARGET) $(KBUILD_TARGET).$(KBUILD_TARGET_ARCH), freebsd linux netbsd openbsd solaris darwin.amd64) +if1of ($(KBUILD_TARGET) $(KBUILD_TARGET).$(KBUILD_TARGET_ARCH), bsdsunix freebsd linux netbsd openbsd solaris darwin.amd64) VBox-xpcom-io_SOURCES += \ xpcom/io/nsLocalFileUnix.cpp endif @@ -861,6 +868,10 @@ xpcom/reflect/xptcall/src/md/unix/xptcstubs_unixish_x86.cpp VBox-xpcom-xptcall_SOURCES.darwin.amd64= xpcom/reflect/xptcall/src/md/unix/xptcinvoke_amd64_darwin.cpp \ xpcom/reflect/xptcall/src/md/unix/xptcstubs_amd64_darwin.cpp +VBox-xpcom-xptcall_SOURCES.bsdsunix.x86= xpcom/reflect/xptcall/src/md/unix/xptcinvoke_gcc_x86_unix.cpp \ + xpcom/reflect/xptcall/src/md/unix/xptcstubs_gcc_x86_unix.cpp +VBox-xpcom-xptcall_SOURCES.bsdsunix.amd64=xpcom/reflect/xptcall/src/md/unix/xptcinvoke_x86_64_linux.cpp \ + xpcom/reflect/xptcall/src/md/unix/xptcstubs_x86_64_linux.cpp VBox-xpcom-xptcall_SOURCES.freebsd.x86 = xpcom/reflect/xptcall/src/md/unix/xptcinvoke_gcc_x86_unix.cpp \ xpcom/reflect/xptcall/src/md/unix/xptcstubs_gcc_x86_unix.cpp VBox-xpcom-xptcall_SOURCES.freebsd.amd64=xpcom/reflect/xptcall/src/md/unix/xptcinvoke_x86_64_linux.cpp \ @@ -980,10 +991,14 @@ $(VBox-xpcom-proxy_1_TARGET) \ $(VBox-xpcom-nspr_1_TARGET) \ $(VBoxXPCOMGlue_s_1_TARGET) +VBoxXPCOM_LIBS.freebsd = \ + pthread +VBoxXPCOM_LIBS.bsdsunix = \ + pthread VBoxXPCOM_LIBS.linux = \ pthread dl -ifeq ($(filter-out freebsd linux netbsd openbsd,$(KBUILD_TARGET)),) # gnu ld. +ifeq ($(filter-out bsdsunix freebsd linux netbsd openbsd,$(KBUILD_TARGET)),) # gnu ld. VBoxXPCOM_LDFLAGS = -Wl,--whole-archive \ $(VBox-xpcom-typelib_1_TARGET) \ $(VBox-xpcom-string_1_TARGET) \ @@ -1040,7 +1055,7 @@ $(VBox-xpcom-nspr-x86_1_TARGET) \ $(VBoxXPCOMGlue_s-x86_1_TARGET) -ifeq ($(filter-out freebsd linux netbsd openbsd,$(KBUILD_TARGET)),) # gnu ld. +ifeq ($(filter-out bsdsunix freebsd linux netbsd openbsd,$(KBUILD_TARGET)),) # gnu ld. VBoxXPCOM-x86_LDFLAGS = -Wl,--whole-archive \ $(VBox-xpcom-typelib-x86_1_TARGET) \ $(VBox-xpcom-string-x86_1_TARGET) \