diff --git a/release/scripts/X11/XF86.patch b/release/scripts/X11/XF86.patch new file mode 100644 index 00000000000..ff8c8754aec --- /dev/null +++ b/release/scripts/X11/XF86.patch @@ -0,0 +1,587 @@ +Index: Makefile +=================================================================== +RCS file: /host/ares/usr/home/ncvs/ports/x11/XFree86/Makefile,v +retrieving revision 1.80 +diff -u -r1.80 Makefile +--- Makefile 2000/06/16 21:52:08 1.80 ++++ Makefile 2000/07/25 01:59:28 +@@ -13,7 +13,7 @@ + ftp://ftp.lip6.fr/pub/X11/XFree86/XFree86-3.3.6/source/ \ + ftp://ftp.cs.tu-berlin.de/pub/X/XFree86/3.3.6/source/ \ + ftp://sunsite.doc.ic.ac.uk/packages/XFree86/3.3.6/source/ +-DISTFILES= X336src-1.tgz X336src-2.tgz ++DISTFILES= X336src-1.tgz X336src-2.tgz X336src-3.tgz + + PATCH_SITES= ftp://ftp.xfree.org/pub/XFree86/3.3.6/fixes/ \ + ftp://ftp.freesoftware.com/pub/XFree86/3.3.6/fixes/ \ +@@ -31,19 +31,18 @@ + #NO_PACKAGE= package available from XFree86 + .endif + ALL_TARGET= World +-INSTALL_TARGET= install install.man ++INSTALL_TARGET= install install.man install.linkkit + DIST_SUBDIR= xc + PATCH_DIST_ARGS=-p0 -E -d ${WRKDIR} --quiet +-SCRIPTS_ENV= OSVERSION=${OSVERSION} ++SCRIPTS_ENV= OSVERSION=${OSVERSION} MACHINE=${MACHINE} \ ++ MACHINE_ARCH=${MACHINE_ARCH} + # can't use USE_X_PREFIX here -- it will cause a circular dependency + PREFIX= ${X11BASE} + MTREE_FILE= /etc/mtree/BSD.x11.dist + .if (${MACHINE} == "pc98") +-SCRIPTS_ENV+= MACHINE=pc98 + PLIST= ${PKGDIR}/PLIST.pc98 + .endif + .if (${MACHINE} == "alpha") +-SCRIPTS_ENV+= MACHINE=alpha + PLIST= ${PKGDIR}/PLIST.alpha + .endif + +@@ -71,6 +70,8 @@ + + post-extract: + @${MV} ${WRKSRC}/programs/Xserver/hw/xfree86/vga256/drivers/i810/os-support/linux/agpgart.h ${WRKSRC}/programs/Xserver/hw/xfree86/vga256/drivers/i810/ ++ @${CP} ${WRKSRC}/programs/Xserver/hw/xfree86/LinkKit/README \ ++ ${WRKSRC}/programs/Xserver/hw/xfree86/doc/sgml + + .include + +Index: files/md5 +=================================================================== +RCS file: /host/ares/usr/home/ncvs/ports/x11/XFree86/files/md5,v +retrieving revision 1.23 +diff -u -r1.23 md5 +--- files/md5 2000/02/10 15:51:04 1.23 ++++ files/md5 2000/07/25 01:59:28 +@@ -1,4 +1,5 @@ + MD5 (xc/X336src-1.tgz) = bbfa360d10ce91ab37f24f197a31b485 + MD5 (xc/X336src-2.tgz) = 897daa223b5b67b8314ed8835cc17539 ++MD5 (xc/X336src-3.tgz) = 4b1d9d353f8b4cba678f7c156b872330 + MD5 (xc/fix-01-r128) = a62387e13b970c5a83e9a0822c30344f + MD5 (xc/Wraphelp.c) = IGNORE +Index: patches/patch-h +=================================================================== +RCS file: patch-h +diff -N patch-h +--- /dev/null Mon Jul 24 18:59:32 2000 ++++ patch-h Mon Jul 24 18:59:28 2000 +@@ -0,0 +1,10 @@ ++--- programs/Xserver/hw/xfree86/vga256/drivers/i810/Imakefile.orig Tue Jul 18 13:30:51 2000 +++++ programs/Xserver/hw/xfree86/vga256/drivers/i810/Imakefile Tue Jul 18 13:31:01 2000 ++@@ -33,7 +33,6 @@ ++ InstallLinkKitNonExecFile(i810_cursor.c,$(LINKKITDIR)/drivers/vga256/i810) ++ InstallLinkKitNonExecFile(i810_accel.c,$(LINKKITDIR)/drivers/vga256/i810) ++ InstallLinkKitNonExecFile(i810_cmap.c,$(LINKKITDIR)/drivers/vga256/i810) ++-InstallLinkKitNonExecFile(i810_macros.h,$(LINKKITDIR)/drivers/vga256/i810) ++ InstallLinkKitNonExecFile(i810_reg.h,$(LINKKITDIR)/drivers/vga256/i810) ++ ++ DependTarget() +Index: patches/patch-i +=================================================================== +RCS file: patch-i +diff -N patch-i +--- /dev/null Mon Jul 24 18:59:32 2000 ++++ patch-i Mon Jul 24 18:59:28 2000 +@@ -0,0 +1,11 @@ ++--- programs/Xserver/hw/xfree86/doc/Imakefile.orig Tue Jul 18 15:31:36 2000 +++++ programs/Xserver/hw/xfree86/doc/Imakefile Tue Jul 18 15:31:52 2000 ++@@ -90,7 +90,7 @@ ++ README.I128 README.Mach32 \ ++ README.Mach64 README.ark README.MGA README.NVIDIA README.mouse \ ++ README.neo README.rendition README.3DLabs README.cyrix \ ++- README.i740 README.r128 +++ README.i740 README.i810 README.r128 ++ ++ MAINDOCS = COPYRIGHT README README.Config BUILD RELNOTES ++ +Index: patches/patch-j +=================================================================== +RCS file: patch-j +diff -N patch-j +--- /dev/null Mon Jul 24 18:59:32 2000 ++++ patch-j Mon Jul 24 18:59:28 2000 +@@ -0,0 +1,11 @@ ++--- config/cf/lnxdoc.rules.orig Tue Jul 18 18:16:01 2000 +++++ config/cf/lnxdoc.rules Tue Jul 18 18:19:05 2000 ++@@ -122,7 +122,7 @@ ++ @(BASE=`basename sgmlfile .sgml`;\ @@\ ++ set -x;\ @@\ ++ RemoveFile($$BASE.latin1);\ @@\ ++- $(SGMLFMTCMD) -f latin1 -b -n sgmlfile && \ @@\ +++ $(SGMLFMTCMD) -f latin1 sgmlfile && \ @@\ ++ $(XFREE86IDENTFIX) < $$BASE.latin1 > _$@ && $(MV) _$@ $@ && \ @@\ ++ RemoveFile($$BASE.latin1)) @@\ ++ @@\ +Index: patches/patch-k +=================================================================== +RCS file: patch-k +diff -N patch-k +--- /dev/null Mon Jul 24 18:59:32 2000 ++++ patch-k Mon Jul 24 19:16:15 2000 +@@ -0,0 +1,34 @@ ++--- programs/Xserver/hw/xfree86/doc/Japanese/Imakefile.orig Fri Dec 3 01:42:36 1999 +++++ programs/Xserver/hw/xfree86/doc/Japanese/Imakefile Mon Jul 24 19:15:08 2000 ++@@ -3,7 +3,6 @@ ++ XCOMM $XFree86: xc/programs/Xserver/hw/xfree86/doc/Japanese/Imakefile,v 3.8.2.4 1999/11/26 15:22:58 hohndel Exp $ ++ #include ++ ++-#if !BuildLinuxDocText ++ /* FreeBSD's README is handled separately because of name length limits */ ++ #ifdef BSD386Architecture ++ OSREADME = /* README.Bsdi */ ++@@ -56,7 +55,6 @@ ++ #ifdef OS2Architecture ++ OSREADME = README.OS2 ++ #endif ++-#endif /* !BuildLinuxDocText */ ++ ++ #if XFree86Version % 10 ++ REPORTFORM = BetaReport ++@@ -64,7 +62,6 @@ ++ ++ all:: ++ ++-#if !BuildLinuxDocText ++ HWREADME = README.ati README.trident README.tseng README.WstDig \ ++ README.DECtga README.apm README.rendition README.epson \ ++ README.chips README.cirrus README.Video7 README.P9000 README.agx \ ++@@ -77,7 +74,6 @@ ++ MAINDOCS = COPYRIGHT README README.Config BUILD RELNOTES ++ ++ OTHERDOCS = VideoModes.doc QuickStart.doc README.clkprog xinput ++-#endif ++ ++ ## MISCDOCS = ServersOnly /*LbxproxyOnly*/ $(REPORTFORM) README.DGA ++ MISCDOCS = VGADriver.doc modelines.txt +Index: scripts/configure +=================================================================== +RCS file: /host/ares/usr/home/ncvs/ports/x11/XFree86/scripts/configure,v +retrieving revision 1.59 +diff -u -r1.59 configure +--- scripts/configure 2000/06/09 06:25:17 1.59 ++++ scripts/configure 2000/07/25 01:59:28 +@@ -1,42 +1,12 @@ + #!/bin/sh + +-yesno () { +- answ=X; +- while [ $answ = X ]; do +- echo -n "$1 [YES] " +- read answ +- if [ X$answ = X ]; then answ="YES"; fi +- case $answ in +- y|yes|Y|YES) answ=YES;; +- n|no|N|NO) answ=NO;; +- *) echo invalid answer +- answ=X +- ;; +- esac +- done +-} +-noyes() { +- answ=X; +- while [ $answ = X ]; do +- echo -n "$1 [NO] " +- read answ +- if [ X$answ = X ]; then answ="NO"; fi +- case $answ in +- y|yes|Y|YES) answ=YES;; +- n|no|N|NO) answ=NO;; +- *) echo invalid answer +- answ=X +- ;; +- esac +- done +-} + F=$WRKDIR/.config + configure () { + rm -f $F + + # Tk detection + tkversion= +-for v in 42 80 81 82 83 42jp 80jp; do ++for v in 42 80 81 82 83; do + if [ -f /usr/local/lib/libtk$v.a ]; then + tkversion=$v + case $tkversion in +@@ -50,16 +20,6 @@ + tclLversion=8.0 + tkLversion=8.0 + ;; +- 42jp) +- tclversion=76jp +- tclLversion=7.6jp +- tkLversion=4.2jp +- ;; +- 80jp) +- tclversion=80jp +- tclLversion=8.0jp +- tkLversion=8.0jp +- ;; + 81) + tclversion=81 + tclLversion=8.1 +@@ -78,31 +38,39 @@ + esac + fi + done +-if [ X$tkversion != X ]; then +- case $tkversion in +- *jp) ++ ++# Japanese Tk detection ++jptkversion= ++for v in 42jp 80jp; do ++ if [ -f /usr/local/lib/libtk$v.a ]; then ++ jptkversion=$v ++ case $jptkversion in ++ 42jp) ++ jptclversion=76jp ++ jptclLversion=7.6jp ++ jptkLversion=4.2jp ++ ;; ++ 80jp) ++ jptclversion=80jp ++ jptclLversion=8.0jp ++ jptkLversion=8.0jp ++ ;; ++ esac ++ fi ++done ++if [ X$jptkversion != X ]; then + echo "Using Japanized tk-$jptkLversion" +- if [ X"${MACHINE}" = X"pc98" ]; then + echo "#define HasJpTk YES" >>$F + echo "#define JpTkLibDir /usr/local/lib" >>$F +- echo "#define JpTkIncDir /usr/local/include/tk$tkLversion" >>$F +- echo "#define JpTkLibName tk$tkversion" >>$F ++ echo "#define JpTkIncDir /usr/local/include/tk$jptkLversion" >>$F ++ echo "#define JpTkLibName tk$jptkversion" >>$F + echo "#define HasJpTcl YES" >>$F + echo "#define JpTclLibDir /usr/local/lib" >>$F +- echo "#define JpTclIncDir /usr/local/include/tcl$tclLversion" >>$F +- echo "#define JpTclLibName tcl$tclversion" >>$F +- else +- echo "#define HasTk YES" >>$F +- echo "#define TkLibDir /usr/local/lib" >>$F +- echo "#define TkIncDir /usr/local/include/tk$tkLversion" >>$F +- echo "#define TkLibName tk$tkversion" >>$F +- echo "#define HasTcl YES" >>$F +- echo "#define TclLibDir /usr/local/lib" >>$F +- echo "#define TclIncDir /usr/local/include/tcl$tclLversion" >>$F +- echo "#define TclLibName tcl$tclversion" >>$F +- fi +- ;; +- *) ++ echo "#define JpTclIncDir /usr/local/include/tcl$jptclLversion" >>$F ++ echo "#define JpTclLibName tcl$jptclversion" >>$F ++fi ++ ++if [ X$tkversion != X ]; then + echo "Using tk-$tkLversion" + echo "#define HasTk YES" >>$F + echo "#define TkLibDir /usr/local/lib" >>$F +@@ -112,9 +80,12 @@ + echo "#define TclLibDir /usr/local/lib" >>$F + echo "#define TclIncDir /usr/local/include/tcl$tclLversion" >>$F + echo "#define TclLibName tcl$tclversion" >>$F +- ;; +- esac ++fi ++ ++if [ X$tkversion != X -a X$jptkversion != X ]; then + echo "#define BuildXF86Setup YES" >>$F ++ echo "#define XF86SetupUsesStaticTk YES" >>$F ++ echo "#define XF86SetupUsesStaticTcl YES" >>$F + else + cat <>$F +- echo "#undef XF98EGCServer" >>$F +- echo "#define XF98EGCServer YES" >>$F +- servers="GA968 GANBWAP NEC480 NKVNEC WABS WABEP WSNA TGUI MGA SVGA NECS3 PWSKB PWLB" +- selected=EGC +- for i in $servers; do +- yesno "Do you want to build the $i server?" +- if [ $answ = YES ]; then selected="$selected $i"; fi +- echo "#undef XF98${i}Server" >>$F +- echo "#define XF98${i}Server $answ" >>$F +- done ++ ++ if [ X"${MACHINE}" = X"pc98" ]; then ++ # Don't build normal i386 servers on PC98 + echo "#undef XF86SVGAServer" >>$F + echo "#define XF86SVGAServer NO" >>$F + servers="VGA16 VGA16Dual Mono MonoDual S3 S3V I8514 Mach8 Mach32 Mach64 P9000 AGX W32 I128 GLINT" + for i in $servers; do + echo "#undef XF86${i}Server" >>$F +- echo "#define XF86${i}Server NO" >>$F ++ echo "#define XF86${i}Server NO" >>$F + done +-elif [ X"${MACHINE}" = X"alpha" ]; then +-# force the compilation of the SVGA server. +- echo "#undef XF86SVGAServer" >>$F +- echo "#define XF86SVGAServer YES" >>$F +- servers="Mono S3 S3V Mach64 P9000 I128 GLINT TGA" +- selected=SVGA +- for i in $servers; do +- yesno "Do you want to build the $i server?" +- if [ $answ = YES ]; then selected="$selected $i"; fi +- echo "#undef XF86${i}Server" >>$F +- echo "#define XF86${i}Server $answ" >>$F +- done +-else +-# force the compilation of the SVGA server. +- echo "#undef XF86SVGAServer" >>$F +- echo "#define XF86SVGAServer YES" >>$F +- servers="VGA16 VGA16Dual Mono MonoDual S3 S3V I8514 Mach8 Mach32 Mach64 P9000 AGX W32 I128 GLINT" +- selected=SVGA +- for i in $servers; do +- yesno "Do you want to build the $i server?" +- if [ $answ = YES ]; then selected="$selected $i"; fi +- echo "#undef XF86${i}Server" >>$F +- echo "#define XF86${i}Server $answ" >>$F +- done ++ fi ++elif [ X"${MACHINE}" == X"alpha" ]; then ++ # force the VGA16 driver on the Alpha ++ echo "#define XF86VGA16Server YES" >>$F + fi + +-echo +-ok=0 +-while [ $ok != 1 ]; do +- echo -n "default server to install. [none] " +- read answ +- if [ X$answ = X ]; then answ=none; ok=1; fi +- if [ $answ != none ]; then +- for i in $selected; do if [ $i = $answ ]; then +- ok=1 +- if [ X"${MACHINE}" = X"pc98" ]; then +- echo "#define ServerToInstall XF98_$answ" >>$F +- else +- echo "#define ServerToInstall XF86_$answ" >>$F +- fi +- fi +- done +- fi +- if [ $ok = 0 ]; then echo you must choose a server among $selected; fi +-done +-echo +-yesno "Do you want to build Xvfb?" +-echo "#define XVirtualFramebufferServer $answ" >>$F ++echo "#define XVirtualFramebufferServer YES" >>$F + + if [ X"${MACHINE}" != X"pc98" ]; then + if [ X"${MACHINE}" = X"alpha" ]; then + cat >> $F <> $F <> $F ++echo "#define InstallXinitConfig YES" >> $F ++echo "#define InstallFSConfig YES" >> $F + +- Do you want to install the default system config files, this will overwrite +- and files that you may be currently using. This would only be required +- on a first time build. +-END +-yesno "Install xdm config?" +-if [ $answ = YES ]; then +- echo "#define InstallXdmConfig $answ" >> $F +-fi +-yesno "Install xinit config?" +-if [ $answ = YES ]; then +- echo "#define InstallXinitConfig $answ" >> $F +-fi +-yesno "Install xfs config?" +-if [ $answ = YES ]; then +- echo "#define InstallFSConfig $answ" >> $F +-fi +- +-yesno "Do you want to include support for the FontServer?" + echo "#undef BuildFontServer" >>$F +-echo "#define BuildFontServer $answ" >>$F ++echo "#define BuildFontServer YES" >>$F + echo "#undef InstallFSConfig" >>$F +-echo "#define InstallFSConfig $answ" >>$F ++echo "#define InstallFSConfig YES" >>$F + +-cat <<'END' +- Do you want to Build Fonts (Usually you only want to build and install +- fonts once, if this is a first time install you will want to build the +- fonts) +-END +-yesno "Build fonts?" +-if [ $answ = NO ]; then +- echo "#define BuildFonts NO" >> $F +-fi +-yesno "Build the servers with Extended input devices?" +-if [ $answ = NO ]; then +- echo "#undef BuildXInputExt" >> $F +- echo "#define BuildXInputExt NO" >> $F +-else +- if [ X${MACHINE} != X"alpha" ]; then +- echo "#define JoystickSupport YES" >> $F +- fi ++if [ X${MACHINE} != X"alpha" ]; then ++ echo "#define JoystickSupport YES" >> $F + fi + +-yesno "Build PEX?" +-if [ $answ = NO ]; then +- echo "#define BuildPexExt NO" >> $F +-fi +-yesno "Build XIE?" +-if [ $answ = NO ]; then +- echo "#define BuildXIE NO" >> $F +-fi +-echo +- +-yesno "Build static libraries in addition to shared libraries?" +-if [ $answ = YES ]; then +- echo "#define ForceNormalLib YES" >> $F +-fi ++echo "#define ForceNormalLib YES" >> $F ++ + # ELF detection + if [ `sysctl -n kern.osreldate` -ge 300004 -a X`objformat` = Xelf ]; then + ELF=yes +-cat <<'END' +- +- Some programs still require a.out X libraries. Most noteable amongst +- these is Nestcape, but it is reported to work best with older X libraries. +- You can build a.out libraries here, using the lastest sources and +- compiler, or you can use the XFree86-aoutlibs port, which installs older +- a.out compatibility libraries. +- +- If you decide to build the libraries here they will not be uninstalled by +- this port, and they will be overwritten by the XFree86-aoutlibs port, if +- for some reason you install it. +- +-END +- noyes "Do you want to build and install a.out compatibility libraries?" +- if [ $answ = YES ]; then +- echo "#define BuildAoutLibraries YES" >> $F +- fi + else + ELF=no + fi + + if [ ${OSVERSION} -ge 300000 ]; then +-cat <<'END' +- +- FreeBSD-3.x has support for Secure RPC. +- +- While this scheme is not used for general purpose encryption, +- some countries restrict the use of strong cryptography. +- +-END +-yesno "Build with Secure RPC?" +-if [ $answ = YES ]; then + echo "#define HasSecureRPC YES" >> $F + fi +-fi +-cat <<'END' +- +- MIT supplies an authentication mechanism that relies upon DES, this is +- called XDM-AUTHORIZATION-1. +- +- Source code for this authentication mechanism may not be exported from +- the United States, however, there are compatible replacements for this +- mechanism available elsewhere. Also, while this scheme is not used for +- general purpose encryption, some countries restrict the use of strong +- cryptography. +- +- If you have aquired a copy of "Wraphelp.c" and it currently resides in +- the same location as the XFree86 source or in the ports "files" +- subdirectory, it will be copied into the right place in the X11 source +- distribution and support for this feature will be enabled if you answer +- YES to the following question. +- +- If you do not have a copy of this file, even if you answer YES to this +- question, support will not be enabled. If you wish to change this later, +- the option controling this is contained the file xc/config/cf/xf86site.def. + +-END +-yesno "Do you want to enable XDM-AUTHORIZATION-1 support?" + cpwh=NO +-if [ $answ = YES ]; then + WH=$WRKDIR/xc/lib/Xdmcp/Wraphelp.c + + if [ -f $WH ] ; then +@@ -368,23 +175,16 @@ + echo "==> Wraphelp.c not found, DES support NOT enabled." + cpwh=NO + fi +-fi + if [ $cpwh != NO ]; then +- echo "#define HasXdmAuth $answ" >> $F ++ echo "#define HasXdmAuth YES" >> $F + fi + +-echo +-yesno "Do you want to compile with PAM support?" +-if [ $answ = YES ]; then +- echo "#define HasPam YES" >> $F +-else +- echo "#define HasPam NO" >> $F ++echo "#define HasPam YES" >> $F ++if [ X${MACHINE} != X"alpha" ]; then ++echo "#define InstallJapaneseDocs YES" >> $F ++echo "#define HasSgmlFmt YES" >> $F ++echo "#define BuildAllDocs YES" >> $F + fi +- +-echo +-echo +-echo "End of configuration questions. No more user input required" +-echo + } + + configure diff --git a/release/scripts/X11/build_x.sh b/release/scripts/X11/build_x.sh new file mode 100755 index 00000000000..a3930603b35 --- /dev/null +++ b/release/scripts/X11/build_x.sh @@ -0,0 +1,66 @@ +#!/bin/sh +# +# Builds X from the port and stores it under the specified directory. + +# usage information +# +usage() { + echo "$0 " + echo + echo "Where is the base directory to install X into. This" + echo "script also assumes that it can checkout XFree86 into " + echo `dirname $0`"/XFree86, that it can get the distfiles from" + echo "/usr/ports/distfiles (or fetch them into that directory), and" + echo "that the file "`dirname $0`"/configure exists and replaces the" + echo "scripts/configure script used in the XFree86 port." + echo + echo "Also, this should really be run as root." + exit 1 +} + +# check the command line +if [ $# -ne 1 ]; then + usage +fi + +# setup the output dir +output_dir=$1 +case $output_dir in + /*) + ;; + *) + output_dir=`pwd`/${output_dir} + ;; +esac +if ! mkdir -p $1; then + echo "Could not create ${output_dir}!" + echo + usage +fi + +# extract the directory this script lives in +home_dir=`dirname $0` + +# check out the XFree86 and XFree86-contrib ports and set them up +if ! ( cd $home_dir && cvs -R -d ${CVSROOT} co -P XFree86 XFree86-contrib && \ + cd XFree86 && patch < ../XF86.patch ); then + echo "Could not checkout the XFree86 port!" + echo + usage +fi + +# actually build X +if ! ( cd $home_dir/XFree86 && \ + make DISTDIR=/usr/ports/distfiles DESTDIR=${output_dir} \ + NO_PKG_REGISTER=yes all install ); then + echo "Could not build XFree86!" + echo + usage +fi +if ! ( cd $home_dir/XFree86-contrib && \ + make DISTDIR=/usr/ports/distfiles DESTDIR=${output_dir} \ + NO_PKG_REGISTER=yes all install ); then + echo "Could not build XFree86-contrib!" + echo + usage +fi