--- xc/config/cf/linux.cf.orig	Sun Feb 12 14:14:12 1995
+++ xc/config/cf/linux.cf	Mon May  8 19:03:46 1995
@@ -4,11 +4,11 @@
 #define OSName			Linux
 #define OSVendor		/**/
 #define OSMajorVersion		1
-#define OSMinorVersion		0
-#define OSTeenyVersion		0
+#define OSMinorVersion		2
+#define OSTeenyVersion		8
 
 #ifndef UseElfFormat
-#define UseElfFormat		NO
+#define UseElfFormat		YES
 #endif
 #define HasGcc			YES
 #define HasGcc2			YES
@@ -37,25 +37,36 @@
 #define NeedWidePrototypes	NO
 
 #if UseElfFormat
-#define CcCmd			gcc -b i486-linuxelf
-#define AsCmd			/usr/i486-linuxelf/bin/as
-#define LdCmd			ld -m elf_i386
-#define AsmDefines		-D__ELF__
-#define CplusplusCmd		g++ -b i486-linuxelf
-#else
-#define CcCmd			gcc
+
+#ifndef USE_ANSI
+/* Don't use any. */
+#define DefaultCCOptions
+#endif
+
+#define CcCmd			gcc 
 #define AsCmd			as
 #define LdCmd			ld
+#define AsmDefines		-D__ELF__
+#define CplusplusCmd		g++
+#define LdCombineFlags		-r -x
+#else
+#define CcCmd			gcc -b i486-linuxaout
+#define AsCmd			/usr/i486-linuxaout/bin/as
+#define LdCmd			/usr/i486-linuxaout/bin/ld -m i386linux
 #define AsmDefines		-DUSE_GAS
+#define LdCombineFlags		-r
 #endif
 #define CppCmd			/lib/cpp
+#ifdef USE_BYACC
+#define YaccCmd			byacc
+#else
 #define YaccCmd			bison -y
+#endif
 #define LexCmd			flex -l
 #define LexLib			-lfl
 #define PreProcessCmd		CcCmd -E
 #define PostIncDir		`CcCmd --print-libgcc-file-name | sed 's/libgcc.a/include/'`
-#define LdCombineFlags		-r
-#define OptimizedCDebugFlags	-O2 -m486
+#define OptimizedCDebugFlags	-pipe -O6 -m486 -fomit-frame-pointer
 #define StandardDefines		-Dlinux -D__i386__ -D_POSIX_SOURCE \
 				-D_BSD_SOURCE -D_GNU_SOURCE -DX_LOCALE
 #define XawI18nDefines		-DUSE_XWCHAR_STRING -DUSE_XMBTOWC
--- xc/config/cf/lnxLib.rules.orig	Sun Feb 12 14:14:12 1995
+++ xc/config/cf/lnxLib.rules	Mon May  8 19:01:16 1995
@@ -15,6 +15,24 @@
 
 #if UseElfFormat
 
+/*
+ *	#define BaseShLibReqs	-lc
+ *
+ * I don't want to use this since the normal ELF executables should
+ * be linked with libc.so. If it is not, i.e., static, the variables in
+ * libc.so which is loaded in because of the other shared libraries
+ * may have different values than the ones in the static ELF
+ * executables. That happens if the binaries are linked with libg.a
+ * or libc_p.a.
+ *
+ * If an ELF executable linked with libg.a or libc_p.a loads a shared
+ * object which needs libc.so via dlopen (), I think it should fail.
+ * It is a very bad idea. The moral story is DON'T USE dlopen () IN
+ * ELF EXECUTABLES LINKED WITH libg.a OR libc_p.a. H.J.
+ *
+ */
+#define BaseShLibReqs
+
 #ifndef SharedDataSeparation
 #define SharedDataSeparation NO
 #endif
@@ -28,7 +46,7 @@
 #define ShLibIncludeFile <lnxLib.tmpl>
 #endif
 #ifndef SharedLibraryLoadFlags
-#define SharedLibraryLoadFlags --shared
+#define SharedLibraryLoadFlags -shared
 #endif
 #ifndef PositionIndependentCFlags
 #define PositionIndependentCFlags -fPIC
@@ -36,6 +54,9 @@
 #ifndef PositionIndependentCplusplusFlags
 #define PositionIndependentCplusplusFlags -fPIC
 #endif
+#ifndef ExtraLoadFlags
+#define ExtraLoadFlags -Wl,-rpath,/usr/X11R6/lib
+#endif
 
 /*
  * InstallSharedLibrary - generate rules to install the shared library.
@@ -72,7 +93,7 @@
 Concat(lib,libname.so.rev):  solist					@@\
 	$(RM) $@~							@@\
 	(cd down; T=`echo $@ | sed 's/\.[^\.]*$$//'`; \
-		$(LD) -o up/$@~ $(SHLIBLDFLAGS) --soname $$T solist $(REQUIREDLIBS))	@@\
+		$(CC) -o up/$@~ $(SHLIBLDFLAGS) -Wl,-soname,$$T solist $(REQUIREDLIBS) BaseShLibReqs) @@\
 	$(RM) $@ 							@@\
 	$(MV) $@~ $@							@@\
 	$(RM) Concat(lib,libname.so)					@@\
--- xc/config/cf/lnxLib.tmpl.orig	Sun Feb 12 14:14:12 1995
+++ xc/config/cf/lnxLib.tmpl	Mon May  8 19:01:16 1995
@@ -7,17 +7,39 @@
 
 /* Linux ELF shared libraries are deficient in link semantics */
 #if UseElfFormat
+
 #ifndef FixupLibReferences
 #define FixupLibReferences()						@@\
 XMULIBONLY = -lXmu							@@\
 XMULIB = $(XMULIBONLY) $(XTOOLLIB) $(XLIB)
 #endif
+
 #ifndef XawClientLibs
 #define XawClientLibs $(XAWLIB) $(XMULIBONLY) $(XTOOLLIB) $(XLIB)
 #endif
-#else
+
+#define CplusplusLibC
+#define FrescoSysLibs	CplusplusLibC MathLibrary
+
+#define SharedX11Reqs
+#define SharedOldXReqs	$(LDPRELIB) $(XLIBONLY)
+#define SharedXtReqs	$(LDPRELIB) $(XLIBONLY) $(SMLIB) $(ICELIB)
+#define SharedXawReqs	$(LDPRELIB) $(XMULIB) $(XTOOLLIB) $(XLIB)
+#define SharedXmuReqs	$(LDPRELIB) $(XTOOLLIB) $(XLIB)
+#define SharedXextReqs	$(LDPRELIB) $(XLIBONLY)
+#define SharedXiReqs	$(LDPRELIB) $(XLIB)
+#define SharedPexReqs	$(LDPRELIB) $(XLIBONLY) MathLibrary
+#define SharedXtstReqs	$(LDPRELIB) $(XLIB)
+#define SharedXieReqs	$(LDPRELIB) $(XLIBONLY)
+#define SharedSMReqs	$(LDPRELIB) $(ICELIB)
+#define SharedFrescoReqs	$(LDPRELIB) $(XLIBONLY) FrescoSysLibs
+#define SharedXtfReqs	$(LDPRELIB) $(FRESCOLIB) $(XTOOLLIB) $(XLIB) FrescoSysLibs
+
+#else	/* UseElfFormat */
+
 #ifndef FixupLibReferences
 #define FixupLibReferences()						@@\
 XMULIB = -lXmu $(XLIB)
 #endif
-#endif
+
+#endif	/* UseElfFormat */
--- xc/config/cf/xf86site.def.orig	Sun Feb 12 14:14:13 1995
+++ xc/config/cf/xf86site.def	Mon May  8 19:09:35 1995
@@ -57,8 +57,8 @@
 /*
  * To build Xvfb, uncomment this.
  *
-#define XVirtualFramebufferServer	YES
 */
+#define XVirtualFramebufferServer	YES
 
 
 /*
@@ -133,8 +133,8 @@
  *
  * For information about using LBX, refer to the README in workInProgress/lbx/.
  *
-#define BuildLBX YES
  */
+#define BuildLBX YES
 
 /*
  * To build the required bits to make LBX selectable via the LinkKit
@@ -224,8 +224,8 @@
  * required.  Make sure HasGcc2ForCplusplus is set to YES when using
  * GCC to build Fresco (see above).
  *
-#define BuildFresco		YES
  */
+#define BuildFresco		YES
 
 /*
  * If you are running Solaris x86, and have the aperture driver installed,
diff -c X11/R6/xc/workInProgress/Fresco/src/os.cxx:1.1.1.1 X11/R6/xc/workInProgress/Fresco/src/os.cxx:1.2
*** X11/R6/xc/workInProgress/Fresco/src/os.cxx:1.1.1.1	Fri Mar 31 01:11:15 1995
--- X11/R6/xc/workInProgress/Fresco/src/os.cxx	Fri Mar 31 01:11:15 1995
***************
*** 82,88 ****
  #include <sys/utsname.h>
  #endif
  
! #if !defined(NEED_UTSNAME) 
  #if defined(AIXV3) || defined(__osf__) || defined(__GNUC__)
  extern "C" {
      int gethostname(char *, int);
--- 82,88 ----
  #include <sys/utsname.h>
  #endif
  
! #if !defined(NEED_UTSNAME) && !defined (__linux__)
  #if defined(AIXV3) || defined(__osf__) || defined(__GNUC__)
  extern "C" {
      int gethostname(char *, int);
