summary refs log tree commit diff
path: root/linuxthreads/README.Xfree3.2
diff options
context:
space:
mode:
Diffstat (limited to 'linuxthreads/README.Xfree3.2')
-rw-r--r--linuxthreads/README.Xfree3.2352
1 files changed, 0 insertions, 352 deletions
diff --git a/linuxthreads/README.Xfree3.2 b/linuxthreads/README.Xfree3.2
deleted file mode 100644
index ac08e15832..0000000000
--- a/linuxthreads/README.Xfree3.2
+++ /dev/null
@@ -1,352 +0,0 @@
-This file describes how to make a threaded X11R6.
-
-You need the source-code of XFree-3.2. I used the sources of X11R6.1
-(files: xc-1.tar.gz xc-2.tar.gz xc-3.tar.gz) and the patches to
-XFree-3.2 (files: README.X11.patch R6.1pl1-3.2.diff.gz cfont32.tgz).
-
-Untar the xc-?.tar.gz files in a directory called XF3.2 and apply
-the XFree-3.2 patches as described in README.X11.patch or use the
-whole XFree86 source.
-
-Now apply the thread patch with
-
-patch -p0 < XF3.2.xc.diff
-
-Go to the XF3.2/xc directory and make the whole thing:
-nice make World >& world.log &
-tail -f world.log
-
-Wait a few hours or interrupt the process after the shared libs
-are made. The shared libs are:
-
-XF3.2/xc/lib/ICE/libICE.so.6.0*
-XF3.2/xc/lib/PEX5/libPEX5.so.6.0*
-XF3.2/xc/lib/SM/libSM.so.6.0*
-XF3.2/xc/lib/X11/libX11.so.6.1*
-XF3.2/xc/lib/XIE/libXIE.so.6.0*
-XF3.2/xc/lib/XThrStub/libXThrStub.so.6.0*
-XF3.2/xc/lib/Xaw/libXaw.so.6.1*
-XF3.2/xc/lib/Xext/libXext.so.6.1*
-XF3.2/xc/lib/Xi/libXi.so.6.0*
-XF3.2/xc/lib/Xmu/libXmu.so.6.0*
-XF3.2/xc/lib/Xt/libXt.so.6.0*
-XF3.2/xc/lib/Xtst/libXtst.so.6.1*
-
-(The Program dga didn't compile, but I have not check out why.)
-
-Now you can copy the resulting libs   
-
-cp XF3.2/xc/lib/*/*.so.?.? /usr/X11R6/lib/
-
-and create some links
-
-cd /usr/X11R6/lib/
-ln -s libXThrStub.so.6.0 libXThrStub.so.6
-ln -s libXThrStub.so.6 libXThrStub.so
-
-or use make install (not tested, and needs new configuration).
-
-It is possible with the libXThrSub to compile X11 programs without linking
-libpthread to them and not necessary to recompile already installed
-unthreaded X11 programs, because libXThrSub keeps the dynamic linker quit.
-On the other hand you can link libpthread to a X11 program to use threads.
-
-I used linux 2.0.23 and libc 5.4.7 .
-
-Hans-Helmut Bühmann     hans@expmech.ing.tu-bs.de
-
-----------------------------------------------------------------------------
-
-XF3.2.xc.diff:
------------------------------------------------------------------------------
-diff -u --recursive XF3.2.orig/xc/config/cf/linux.cf XF3.2/xc/config/cf/linux.cf
---- XF3.2.orig/xc/config/cf/linux.cf	Sun Nov 10 17:05:30 1996
-+++ XF3.2/xc/config/cf/linux.cf	Sun Nov 10 16:30:55 1996
-@@ -61,6 +61,14 @@
- #define HasSnprintf		YES
- #endif
- 
-+#define HasPosixThreads         YES
-+#define ThreadedX               YES
-+#define BuildThreadStubLibrary	YES
-+#define NeedUIThrStubs		YES
-+#define HasThreadSafeAPI        NO
-+#define SystemMTDefines         -D_REENTRANT
-+#define ThreadsLibraries        -lpthread
-+
- #define AvoidNullMakeCommand	YES
- #define StripInstalledPrograms	YES
- #define CompressAllFonts	YES
-@@ -158,7 +166,7 @@
- #define LdPostLib		/* Never needed */
- 
- #ifdef i386Architecture
--#define OptimizedCDebugFlags	DefaultGcc2i386Opt -m486
-+#define OptimizedCDebugFlags	DefaultGcc2i386Opt -m486 -pipe
- #define StandardDefines		-Dlinux -D__i386__ -D_POSIX_SOURCE \
- 				-D_BSD_SOURCE -D_SVID_SOURCE -DX_LOCALE
- #define XawI18nDefines		-DUSE_XWCHAR_STRING -DUSE_XMBTOWC
-diff -u --recursive XF3.2.orig/xc/config/cf/lnxLib.tmpl XF3.2/xc/config/cf/lnxLib.tmpl
---- XF3.2.orig/xc/config/cf/lnxLib.tmpl	Sun Nov 10 17:05:30 1996
-+++ XF3.2/xc/config/cf/lnxLib.tmpl	Sat Nov  9 14:52:39 1996
-@@ -19,7 +19,7 @@
- 
- #define CplusplusLibC
- 
--#define SharedX11Reqs
-+#define SharedX11Reqs  	-L$(BUILDLIBDIR) -lXThrStub 
- #define SharedOldXReqs	$(LDPRELIB) $(XLIBONLY)
- #define SharedXtReqs	$(LDPRELIB) $(XLIBONLY) $(SMLIB) $(ICELIB)
- #define SharedXawReqs	$(LDPRELIB) $(XMULIB) $(XTOOLLIB) $(XLIB)
-diff -u --recursive XF3.2.orig/xc/include/Xthreads.h XF3.2/xc/include/Xthreads.h
---- XF3.2.orig/xc/include/Xthreads.h	Thu Dec  7 02:19:09 1995
-+++ XF3.2/xc/include/Xthreads.h	Sat Nov  9 01:04:55 1996
-@@ -229,12 +229,12 @@
- #define xcondition_wait(c,m) pthread_cond_wait(c,m)
- #define xcondition_signal(c) pthread_cond_signal(c)
- #define xcondition_broadcast(c) pthread_cond_broadcast(c)
--#ifdef _DECTHREADS_
-+#if defined(_DECTHREADS_) || defined(linux)
- static xthread_t _X_no_thread_id;
- #define xthread_have_id(id) !pthread_equal(id, _X_no_thread_id)
- #define xthread_clear_id(id) id = _X_no_thread_id
- #define xthread_equal(id1,id2) pthread_equal(id1, id2)
--#endif /* _DECTHREADS_ */
-+#endif /* _DECTHREADS_ || linux */
- #if _CMA_VENDOR_ == _CMA__IBM
- #ifdef DEBUG			/* too much of a hack to enable normally */
- /* see also cma__obj_set_name() */
-diff -u --recursive XF3.2.orig/xc/lib/X11/util/makekeys.c XF3.2/xc/lib/X11/util/makekeys.c
---- XF3.2.orig/xc/lib/X11/util/makekeys.c	Mon Apr 18 02:22:22 1994
-+++ XF3.2/xc/lib/X11/util/makekeys.c	Sat Nov  9 00:44:14 1996
-@@ -73,7 +73,7 @@
-     register char c;
-     int first;
-     int best_max_rehash;
--    int best_z;
-+    int best_z = 0;
-     int num_found;
-     KeySym val;
- 
-diff -u --recursive XF3.2.orig/xc/lib/XThrStub/Imakefile XF3.2/xc/lib/XThrStub/Imakefile
---- XF3.2.orig/xc/lib/XThrStub/Imakefile	Sun Nov 10 17:08:12 1996
-+++ XF3.2/xc/lib/XThrStub/Imakefile	Sat Nov  9 19:04:51 1996
-@@ -25,7 +25,7 @@
-       DEFINES = $(ALLOC_DEFINES)
-      INCLUDES = 
-          SRCS = $(STUBSRCS)
--         OBJS = $(STUBOBJS
-+         OBJS = $(STUBOBJS)
-      LINTLIBS = $(LINTXLIB)
- 
- #include <Library.tmpl>
-diff -u --recursive XF3.2.orig/xc/lib/XThrStub/UIThrStubs.c XF3.2/xc/lib/XThrStub/UIThrStubs.c
---- XF3.2.orig/xc/lib/XThrStub/UIThrStubs.c	Sun Nov 10 17:08:12 1996
-+++ XF3.2/xc/lib/XThrStub/UIThrStubs.c	Sun Nov 10 15:14:55 1996
-@@ -37,16 +37,43 @@
-  * specificies the thread library on the link line.
-  */
- 
-+#if defined(linux)
-+#include <pthread.h>
-+#else
- #include <thread.h>
- #include <synch.h>
-+#endif
- 
-+#if defined(linux)
-+static pthread_t no_thread_id;
-+#endif /* defined(linux) */
-+
-+#if defined(linux)
-+#pragma weak pthread_self = _Xthr_self_stub_
-+pthread_t 
-+_Xthr_self_stub_()
-+{
-+    return(no_thread_id);
-+}
-+#else /* defined(linux) */
- #pragma weak thr_self = _Xthr_self_stub_
- thread_t 
- _Xthr_self_stub_()
- {
-     return((thread_t)0);
- }
-+#endif /* defined(linux) */
- 
-+#if defined(linux)
-+#pragma weak pthread_mutex_init = _Xmutex_init_stub_
-+int 
-+_Xmutex_init_stub_(m, a)
-+    pthread_mutex_t *m;
-+    __const pthread_mutexattr_t *a;
-+{
-+    return(0);
-+}
-+#else /* defined(linux) */
- #pragma weak mutex_init = _Xmutex_init_stub_
- int 
- _Xmutex_init_stub_(m, t, a)
-@@ -56,7 +83,17 @@
- {
-     return(0);
- }
-+#endif /* defined(linux) */
- 
-+#if defined(linux)
-+#pragma weak pthread_mutex_destroy = _Xmutex_destroy_stub_
-+int
-+_Xmutex_destroy_stub_(m)
-+    pthread_mutex_t *m;
-+{
-+    return(0);
-+}
-+#else /* defined(linux) */
- #pragma weak mutex_destroy = _Xmutex_destroy_stub_
- int
- _Xmutex_destroy_stub_(m)
-@@ -64,7 +101,17 @@
- {
-     return(0);
- }
-+#endif /* defined(linux) */
- 
-+#if defined(linux)
-+#pragma weak pthread_mutex_lock = _Xmutex_lock_stub_
-+int
-+_Xmutex_lock_stub_(m)
-+    pthread_mutex_t *m;
-+{
-+    return(0);
-+}
-+#else /* defined(linux) */
- #pragma weak mutex_lock = _Xmutex_lock_stub_
- int
- _Xmutex_lock_stub_(m)
-@@ -72,7 +119,17 @@
- {
-     return(0);
- }
-+#endif /* defined(linux) */
- 
-+#if defined(linux)
-+#pragma weak pthread_mutex_unlock = _Xmutex_unlock_stub_
-+int
-+_Xmutex_unlock_stub_(m)
-+    pthread_mutex_t *m;
-+{
-+    return(0);
-+}
-+#else /* defined(linux) */
- #pragma weak mutex_unlock = _Xmutex_unlock_stub_
- int
- _Xmutex_unlock_stub_(m)
-@@ -80,7 +137,18 @@
- {
-     return(0);
- }
-+#endif /* defined(linux) */
- 
-+#if defined(linux)
-+#pragma weak  pthread_cond_init = _Xcond_init_stub_
-+int 
-+_Xcond_init_stub_(c, a)
-+    pthread_cond_t *c;
-+    __const pthread_condattr_t *a;
-+{
-+    return(0);
-+}
-+#else /* defined(linux) */
- #pragma weak cond_init = _Xcond_init_stub_
- int 
- _Xcond_init_stub_(c, t, a)
-@@ -90,7 +158,17 @@
- {
-     return(0);
- }
-+#endif /* defined(linux) */
- 
-+#if defined(linux)
-+#pragma weak pthread_cond_destroy = _Xcond_destroy_stub_
-+int
-+_Xcond_destroy_stub_(c)
-+    pthread_cond_t *c;
-+{
-+    return(0);
-+}
-+#else /* defined(linux) */
- #pragma weak cond_destroy = _Xcond_destroy_stub_
- int
- _Xcond_destroy_stub_(c)
-@@ -98,7 +176,18 @@
- {
-     return(0);
- }
-+#endif /* defined(linux) */
- 
-+#if defined(linux)
-+#pragma weak pthread_cond_wait = _Xcond_wait_stub_
-+int
-+_Xcond_wait_stub_(c,m)
-+    pthread_cond_t *c;
-+    pthread_mutex_t *m;
-+{
-+    return(0);
-+}
-+#else /* defined(linux) */
- #pragma weak cond_wait = _Xcond_wait_stub_
- int
- _Xcond_wait_stub_(c,m)
-@@ -107,7 +196,17 @@
- {
-     return(0);
- }
-+#endif /* defined(linux) */
- 
-+#if defined(linux)
-+#pragma weak pthread_cond_signal = _Xcond_signal_stub_
-+int
-+_Xcond_signal_stub_(c)
-+    pthread_cond_t *c;
-+{
-+    return(0);
-+}
-+#else /* defined(linux) */
- #pragma weak cond_signal = _Xcond_signal_stub_
- int
- _Xcond_signal_stub_(c)
-@@ -115,7 +214,17 @@
- {
-     return(0);
- }
-+#endif /* defined(linux) */
- 
-+#if defined(linux)
-+#pragma weak pthread_cond_broadcast = _Xcond_broadcast_stub_
-+int
-+_Xcond_broadcast_stub_(c)
-+    pthread_cond_t *c;
-+{
-+    return(0);
-+}
-+#else /* defined(linux) */
- #pragma weak cond_broadcast = _Xcond_broadcast_stub_
- int
- _Xcond_broadcast_stub_(c)
-@@ -123,3 +232,15 @@
- {
-     return(0);
- }
-+#endif /* defined(linux) */
-+
-+#if defined(linux)
-+#pragma weak pthread_equal = _Xthr_equal_stub_
-+int
-+_Xthr_equal_stub_(t1, t2)
-+    pthread_t t1;
-+    pthread_t t2;
-+{
-+    return(1);
-+}
-+#endif /* defined(linux) */
--------------------------------------------------------------------------