--- src/libs/xpcom18a4/nsprpub/configure.orig 2020-07-10 02:59:20.000000000 +1000 +++ src/libs/xpcom18a4/nsprpub/configure 2020-08-21 01:44:24.895103000 +1000 @@ -2657,6 +2657,10 @@ OS_RELEASE=`uname -v`.`uname -r` fi +if test "$OS_ARCH" = "BSDSUniX"; then + OS_RELEASE=`echo $OS_RELEASE | sed 's/-.*//'` +fi + if test "$OS_ARCH" = "FreeBSD"; then OS_RELEASE=`echo $OS_RELEASE | sed 's/-.*//'` fi @@ -3288,6 +3292,40 @@ PR_MD_CSRCS=dgux.c ;; +*-bsdsunix*) + if test -z "$USE_NSPR_THREADS"; then + USE_PTHREADS=1 + fi + cat >> confdefs.h <<\EOF +#define XP_UNIX 1 +EOF + + cat >> confdefs.h <<\EOF +#define BSDSUNIX 1 +EOF + + cat >> confdefs.h <<\EOF +#define HAVE_BSD_FLOCK 1 +EOF + + cat >> confdefs.h <<\EOF +#define HAVE_SOCKLEN_T 1 +EOF + + CFLAGS="$CFLAGS $(DSO_CFLAGS) -ansi -Wall" + MOZ_OBJFORMAT=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` + if test "$MOZ_OBJFORMAT" = "elf"; then + DLL_SUFFIX=so + else + DLL_SUFFIX=so.1.0 + fi + MKSHLIB='$(CC) $(DSO_LDOPTS) -o $@' + DSO_CFLAGS=-fPIC + DSO_LDOPTS='-shared -Wl,-soname -Wl,$(notdir $@)' + MDCPUCFG_H=_bsdsunix.cfg + PR_MD_CSRCS=bsdsunix.c + ;; + *-freebsd*) if test -z "$USE_NSPR_THREADS"; then USE_PTHREADS=1 @@ -5216,6 +5254,7 @@ if test -z "`egrep -i '(unrecognize|unknown)' conftest.out | grep pthread`" && test -z "`egrep -i '(error|incorrect)' conftest.out`" ; then ac_cv_have_dash_pthread=yes case "$target_os" in + bsdsunix*) freebsd*) # Freebsd doesn't use -pthread for compiles, it uses them for linking ;; @@ -5252,6 +5291,21 @@ _PTHREAD_LDFLAGS= fi ;; + *-bsdsunix*) + cat >> confdefs.h <<\EOF +#define _REENTRANT 1 +EOF + + cat >> confdefs.h <<\EOF +#define _THREAD_SAFE 1 +EOF + + if test "$ac_cv_have_dash_pthread" = "yes"; then + _PTHREAD_LDFLAGS="-pthread" + else + _PTHREAD_LDFLAGS="-lc_r" + fi + ;; *-freebsd*) cat >> confdefs.h <<\EOF #define _REENTRANT 1 @@ -5366,6 +5420,14 @@ fi ;; +*-bsdsunix*) + if test -n "$USE_NSPR_THREADS"; then + cat >> confdefs.h <<\EOF +#define _PR_LOCAL_THREADS_ONLY 1 +EOF + + fi + ;; *-freebsd*) if test -n "$USE_NSPR_THREADS"; then cat >> confdefs.h <<\EOF