aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--x11/XFree86-4/Makefile2
-rw-r--r--x11/XFree86-4/files/patch-xthreads113
-rw-r--r--x11/XFree86-4/pkg-plist2
-rw-r--r--x11/XFree86-4/pkg-plist.alpha2
-rw-r--r--x11/XFree86-4/pkg-plist.pc982
5 files changed, 120 insertions, 1 deletions
diff --git a/x11/XFree86-4/Makefile b/x11/XFree86-4/Makefile
index 00c7368fe8a7..0b20ee28c311 100644
--- a/x11/XFree86-4/Makefile
+++ b/x11/XFree86-4/Makefile
@@ -7,7 +7,7 @@
PORTNAME= XFree86
PORTVERSION= 4.0.2
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= x11
MASTER_SITES= ${MASTER_SITE_XFREE}
MASTER_SITE_SUBDIR= ${PORTVERSION}
diff --git a/x11/XFree86-4/files/patch-xthreads b/x11/XFree86-4/files/patch-xthreads
new file mode 100644
index 000000000000..08307456518e
--- /dev/null
+++ b/x11/XFree86-4/files/patch-xthreads
@@ -0,0 +1,113 @@
+--- include/Xos_r.h.orig Mon Aug 28 20:45:38 2000
++++ include/Xos_r.h Wed Dec 20 02:54:24 2000
+@@ -243,9 +243,12 @@
+ size_t len;
+ } _Xgetpwparams;
+
+-/* NetBSD, at least, is missing several of the unixware passwd fields. */
++/*
++ * NetBSD and FreeBSD, at least, are missing several of the unixware passwd
++ * fields.
++ */
+
+-#if defined(__NetBSD__)
++#if defined(__NetBSD__) || defined(__FreeBSD__)
+ __inline__ void _Xpw_copyPasswd(_Xgetpwparams p)
+ {
+ memcpy(&(p).pws, (p).pwp, sizeof(struct passwd));
+@@ -412,7 +415,7 @@
+ /* UnixWare 2.0, or other systems with thread support but no _r API. */
+ /* WARNING: The h_addr_list and s_aliases values are *not* copied! */
+
+-#if defined(__NetBSD__)
++#if defined(__NetBSD__) || defined(__FreeBSD__)
+ #include <sys/param.h>
+ #endif
+
+--- config/cf/FreeBSD.cf.old Wed Dec 20 02:56:11 2000
++++ config/cf/FreeBSD.cf Wed Dec 20 02:56:24 2000
+@@ -60,6 +60,38 @@
+ #define HasVarRun YES
+ #define HasVarDb YES
+
++/*
++ * Multi-thread safe libs
++ */
++/* 2.2.7 and later has libc_r (POSIX threads) */
++#if OSMajorVersion == 2 && OSMinorVersion == 2 && OSTeenyVersion >= 7 || \
++ OSMajorVersion >= 3
++# ifndef HasLibPthread
++# define HasLibPthread NO
++# endif
++# define HasPosixThreads YES
++# define ThreadedX YES
++/*
++ * math.h uses _REENTRANT and stdio.h uses _THREAD_SAFE, so define both.
++ */
++# define SystemMTDefines -D_REENTRANT -D_THREAD_SAFE
++/*
++ * FreeBSD has tread-safe api but no getpwnam_r yet.
++ */
++# define HasThreadSafeAPI YES
++# define MTSafeAPIDefines -DXUSE_MTSAFE_API -DXNO_MTSAFE_PWDAPI
++# if HasLibPthread
++# define ThreadsLibraries -lpthread
++# else
++# define BuildThreadStubLibrary YES
++# define NeedUIThrStubs YES
++# define ThreadsCompileFlags -pthread
++# define ThreadsLibraries -pthread
++# define SharedX11Reqs $(LDPRELIB) $(XTHRSTUBLIB)
++# define SharedXtReqs $(LDPRELIB) $(XLIBONLY) $(SMLIB) $(ICELIB) $(XTHRSTUBLIB)
++# endif
++#endif
++
+ #define AvoidNullMakeCommand YES
+ #define StripInstalledPrograms YES
+ #define CompressAllFonts YES
+@@ -82,7 +114,23 @@
+ #define HasFlex YES
+ #endif
+
+-#define CcCmd cc
++/*
++ * Add an LD_LIBRARY_PATH environment variable, defined by $(CLIENTENVSETUP),
++ * when building X to avoid that for each client ld give the message
++ *
++ * ld: warning: libXThrStub.so.6, needed by libX11.so, not found
++ */
++#if BuildThreadStubLibrary && !UseInstalled
++# define CcCmd $(CLIENTENVSETUP) cc
++# define CplusplusCmd $(CLIENTENVSETUP) c++
++#else
++# define CcCmd cc
++# define CplusplusCmd c++
++#endif
++
++#define CppCmd /usr/bin/cpp
++#define PreProcessCmd CppCmd
++#define StandardCppOptions -traditional
+ #define CppCmd /usr/bin/cpp
+ #define PreProcessCmd CppCmd
+ #define StandardCppOptions -traditional
+--- config/cf/bsdLib.tmpl~ Mon Aug 28 20:43:49 2000
++++ config/cf/bsdLib.tmpl Wed Dec 20 04:31:46 2000
+@@ -47,7 +47,9 @@
+ #define SharedX11Reqs
+ #endif
+ #define SharedOldXReqs $(LDPRELIB) $(XLIBONLY)
++#ifndef SharedXtReqs
+ #define SharedXtReqs $(LDPRELIB) $(XLIBONLY) $(SMLIB) $(ICELIB)
++#endif
+ #define SharedXawReqs $(LDPRELIB) $(XMULIB) $(XTOOLLIB) $(XPMLIB) $(XLIB)
+ #define SharedXaw6Reqs $(LDPRELIB) $(XMULIB) $(XTOOLLIB) $(XLIB)
+ #define SharedXmuReqs $(LDPRELIB) $(XTOOLLIB) $(XLIB)
+--- programs/glxinfo/Imakefile.orig Fri Sep 22 13:35:46 2000
++++ programs/glxinfo/Imakefile Thu Dec 21 02:11:55 2000
+@@ -1,5 +1,6 @@
+ XCOMM $XConsortium: Imakefile /main/7 1995/12/04 15:10:00 dpw $
+ XCOMM $XFree86: xc/programs/glxinfo/Imakefile,v 1.1 2000/09/22 11:35:46 alanh Exp $
++#include <Threads.tmpl>
+ DEPLIBS = $(DEPXTESTLIB) $(DEPXIELIB) $(DEPXLIB) $(DEPXKBFILELIB) $(DEPXF86LIBS) $(DEPXILIB)
+ #ifndef OS2Architecture
+ LOCAL_LIBRARIES = $(GLXLIB) $(XLIB)
diff --git a/x11/XFree86-4/pkg-plist b/x11/XFree86-4/pkg-plist
index 8197f4f69caa..986ef54b1a1a 100644
--- a/x11/XFree86-4/pkg-plist
+++ b/x11/XFree86-4/pkg-plist
@@ -3199,6 +3199,8 @@ lib/libX11.so.6
lib/libXIE.a
lib/libXIE.so
lib/libXIE.so.6
+lib/libXThrStub.so
+lib/libXThrStub.so.6
lib/libXau.a
lib/libXaw.a
lib/libXaw.so
diff --git a/x11/XFree86-4/pkg-plist.alpha b/x11/XFree86-4/pkg-plist.alpha
index 751301486e6f..fd8b0fd570df 100644
--- a/x11/XFree86-4/pkg-plist.alpha
+++ b/x11/XFree86-4/pkg-plist.alpha
@@ -3196,6 +3196,8 @@ lib/libX11.so.6
lib/libXIE.a
lib/libXIE.so
lib/libXIE.so.6
+lib/libXThrStub.so
+lib/libXThrStub.so.6
lib/libXau.a
lib/libXaw.a
lib/libXaw.so
diff --git a/x11/XFree86-4/pkg-plist.pc98 b/x11/XFree86-4/pkg-plist.pc98
index 8197f4f69caa..986ef54b1a1a 100644
--- a/x11/XFree86-4/pkg-plist.pc98
+++ b/x11/XFree86-4/pkg-plist.pc98
@@ -3199,6 +3199,8 @@ lib/libX11.so.6
lib/libXIE.a
lib/libXIE.so
lib/libXIE.so.6
+lib/libXThrStub.so
+lib/libXThrStub.so.6
lib/libXau.a
lib/libXaw.a
lib/libXaw.so