diff options
author | 2002-12-07 08:45:10 +0000 | |
---|---|---|
committer | 2002-12-07 08:45:10 +0000 | |
commit | 99667dcbc06d010b3486b62067bee68130e81f83 (patch) | |
tree | 61b25077ef17594c828936f3fc74142eacf334d6 | |
parent | new snapshot (diff) | |
download | gentoo-2-99667dcbc06d010b3486b62067bee68130e81f83.tar.gz gentoo-2-99667dcbc06d010b3486b62067bee68130e81f83.tar.bz2 gentoo-2-99667dcbc06d010b3486b62067bee68130e81f83.zip |
small fix0rs
-rw-r--r-- | x11-base/xfree/ChangeLog | 6 | ||||
-rw-r--r-- | x11-base/xfree/files/4.2.99.3/10xfree | 1 | ||||
-rw-r--r-- | x11-base/xfree/files/4.2.99.3/Xsession | 63 | ||||
-rw-r--r-- | x11-base/xfree/files/4.2.99.3/Xsetup_0 | 6 | ||||
-rw-r--r-- | x11-base/xfree/files/4.2.99.3/chooser.sh | 27 | ||||
-rw-r--r-- | x11-base/xfree/files/4.2.99.3/site.def | 143 | ||||
-rw-r--r-- | x11-base/xfree/files/4.2.99.3/startDM.sh | 23 | ||||
-rw-r--r-- | x11-base/xfree/files/4.2.99.3/xdm.start | 10 | ||||
-rw-r--r-- | x11-base/xfree/files/4.2.99.3/xfs.conf.d | 11 | ||||
-rw-r--r-- | x11-base/xfree/files/4.2.99.3/xfs.config | 2 | ||||
-rw-r--r-- | x11-base/xfree/files/4.2.99.3/xfs.start | 196 | ||||
-rw-r--r-- | x11-base/xfree/files/4.2.99.3/xinitrc | 5 | ||||
-rw-r--r-- | x11-base/xfree/xfree-4.2.99.3.ebuild | 22 |
13 files changed, 396 insertions, 119 deletions
diff --git a/x11-base/xfree/ChangeLog b/x11-base/xfree/ChangeLog index d21c62ac062f..9ea7b24d25f1 100644 --- a/x11-base/xfree/ChangeLog +++ b/x11-base/xfree/ChangeLog @@ -1,6 +1,6 @@ # ChangeLog for x11-base/xfree # Copyright 2002 Gentoo Technologies, Inc.; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/x11-base/xfree/ChangeLog,v 1.65 2002/12/05 22:35:11 azarah Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-base/xfree/ChangeLog,v 1.66 2002/12/07 08:45:10 seemant Exp $ *xfree-4.2.1-r2 (05 Dec 2002) @@ -24,6 +24,10 @@ *xfree-4.2.99.3 (13 Nov 2002) + -7 Dec 2002; Seemant Kulleen <seemant@gentoo.org> : + + Updated snapshot and newer ft2 + 15 Nov 2002; Seemant Kulleen <seemant@gentoo.org> files/4.2.99.3-patches/XFree86-4.2.99.3-no-optimize.patch.bz2 : diff --git a/x11-base/xfree/files/4.2.99.3/10xfree b/x11-base/xfree/files/4.2.99.3/10xfree index 77854eada7ba..a302f743012c 100644 --- a/x11-base/xfree/files/4.2.99.3/10xfree +++ b/x11-base/xfree/files/4.2.99.3/10xfree @@ -4,4 +4,3 @@ LDPATH=/usr/X11R6/lib MANPATH=/usr/X11R6/man INFODIR=/usr/X11R6/info XINITRC=/etc/X11/xinit/xinitrc -PKG_CONFIG_PATH=/usr/X11R6/lib/pkgconfig/ diff --git a/x11-base/xfree/files/4.2.99.3/Xsession b/x11-base/xfree/files/4.2.99.3/Xsession index 961becdb1963..3368bd4de214 100644 --- a/x11-base/xfree/files/4.2.99.3/Xsession +++ b/x11-base/xfree/files/4.2.99.3/Xsession @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/sh --login # # $Xorg: Xsession,v 1.4 2000/08/17 19:54:17 cpqbld Exp $ # @@ -23,40 +23,51 @@ if [ -n "$1" ]; then export XSESSION="$1" fi -# This next bit should be in the users ~/.xsession, -# but we have it here as reference -# -#userdefaults=$HOME/.Xdefaults -#userresources=$HOME/.Xresources -#usermodmap=$HOME/.Xmodmap -# -##Xdefaults -#if [ -f "$userdefaults" ]; then -# xrdb -merge "$userdefaults" -#fi -#Xresorces -#if [ -f "$userresources" ]; then -# xrdb -merge "$userresources" -#fi -##Xmodmap -#if [ -f "$usermodmap" ]; then -# xmodmap "$usermodmap" -#fi - +xinitdir=/usr/X11R6/lib/X11/xinit startup=$HOME/.xsession +userresources=$HOME/.Xresources +usermodmap=$HOME/.Xmodmap +sysresources=$xinitdir/.Xresources +sysmodmap=$xinitdir/.Xmodmap + +# First run the system default. Because KDE uses this +# to switch sessions, we MUST first check the system +# default, and then ~/.xsession. If the user Do not +# want this, he should override XSESSION, or at least +# clear it. +if [ -n "`/etc/X11/chooser.sh`" ]; then + exec "`/etc/X11/chooser.sh`" +# If not defined, try the user's ~/.xsession +elif [ -s "$startup" ]; then + + # merge in defaults and keymaps + + if [ -f $sysresources ]; then + xrdb -merge $sysresources + fi + + if [ -f $sysmodmap ]; then + xmodmap $sysmodmap + fi + + if [ -f $userresources ]; then + xrdb -merge $userresources + fi + + if [ -f $usermodmap ]; then + xmodmap $usermodmap + fi -# First run ~/.xsession if it exists -if [ -s "$startup" ]; then if [ -x "$startup" ]; then exec "$startup" else exec /bin/sh "$startup" fi -# If not, try the system default -elif [ -n "`/etc/X11/chooser.sh`" ]; then - exec "`/etc/X11/chooser.sh`" # Lastly, xsm as failsafe else + if [ -r "$resources" ]; then + xrdb -load "$userresources" + fi exec xsm fi diff --git a/x11-base/xfree/files/4.2.99.3/Xsetup_0 b/x11-base/xfree/files/4.2.99.3/Xsetup_0 index 7cbdfc32d07e..2022592bb146 100644 --- a/x11-base/xfree/files/4.2.99.3/Xsetup_0 +++ b/x11-base/xfree/files/4.2.99.3/Xsetup_0 @@ -15,11 +15,13 @@ do done echo sessions: $sessions -# update all kdmrcs located +# update all kdmrcs located; tries some pretty much impossible locations +# to make sure we get 'em all source /etc/make.conf -for dir in $KDE2DIR $KDE3DIR $KDE2LIBSDIR $KDE3LIBSDIR $KDEDIR ~/.kde /usr/kde/2 /usr/kde/3 /usr +for dir in /usr/kde/* /usr $KDEDIR $KDE2DIR $KDE3DIR $KDE2LIBSDIR $KDE3LIBSDIR do + echo "Changing kdmrc in $dir" cd ${dir}/share/config/kdm || continue cp kdmrc kdmrc.orig diff --git a/x11-base/xfree/files/4.2.99.3/chooser.sh b/x11-base/xfree/files/4.2.99.3/chooser.sh index 2971071087b4..83f2f14386b9 100644 --- a/x11-base/xfree/files/4.2.99.3/chooser.sh +++ b/x11-base/xfree/files/4.2.99.3/chooser.sh @@ -2,16 +2,16 @@ # Copyright 1999-2002 Gentoo Technologies, Inc. # Distributed under the terms of the GNU General Public License, v2 or later # Author: Martin Schlemmer <azarah@gentoo.org> -# $Header: /var/cvsroot/gentoo-x86/x11-base/xfree/files/4.2.99.3/chooser.sh,v 1.1 2002/11/14 04:23:05 seemant Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-base/xfree/files/4.2.99.3/chooser.sh,v 1.2 2002/12/07 08:45:10 seemant Exp $ -#if $XSESSION is "", source first /etc/conf.d/basic, and then /etc/rc.conf +# If $XSESSION is "", source first /etc/conf.d/basic, and then /etc/rc.conf if [ -z "${XSESSION}" ] then [ -f /etc/conf.d/basic ] && source /etc/conf.d/basic [ -f /etc/rc.conf ] && source /etc/rc.conf fi -#find a match for $XSESSION in /etc/X11/Sessions +# Find a match for $XSESSION in /etc/X11/Sessions GENTOO_SESSION="" for x in /etc/X11/Sessions/* do @@ -39,25 +39,22 @@ if [ -n "${XSESSION}" ]; then GENTOO_EXEC="/bin/sh ${GENTOO_SESSION}" fi else + x="" + y="" + for x in "${XSESSION}" \ "`echo ${XSESSION} | awk '{ print toupper($1) }'`" \ "`echo ${XSESSION} | awk '{ print tolower($1) }'`" do - #fall through ... - if [ -x /bin/${x} ]; then - GENTOO_EXEC="/bin/${x}" - break - elif [ -x /usr/bin/${x} ]; then - GENTOO_EXEC="/usr/bin/${x}" - break - elif [ -x /usr/X11R6/bin/${x} ]; then - GENTOO_EXEC="/usr/X11R6/bin/${x}" - break - elif [ -x /usr/local/bin/${x} ]; then - GENTOO_EXEC="/usr/local/bin/${x}" + # Fall through ... + if [ -x "`which ${x} 2>/dev/null`" ]; then + GENTOO_EXEC="`which ${x} 2>/dev/null`" break fi done + + # If all else fail, run twm + GENTOO_EXEC="/usr/X11R6/bin/twm" fi fi diff --git a/x11-base/xfree/files/4.2.99.3/site.def b/x11-base/xfree/files/4.2.99.3/site.def index f8412dfdca28..0ff2342e1053 100644 --- a/x11-base/xfree/files/4.2.99.3/site.def +++ b/x11-base/xfree/files/4.2.99.3/site.def @@ -1,47 +1,99 @@ -#define HasZlib YES -#define HasPam YES -#define HasNCurses YES -#define HasLibCrypt YES -#define HasGcc2ForCplusplus YES -#define LocalThreads YES -#define ThreadedX YES -#define HasPosixThreads YES -#define HasThreadSafeAPI YES -#define ForceNormalLib YES -#define BuildXinerama YES -#define XprtServer YES -#define XnestServer YES -#define SharedLibXau YES -#define UseFreetype2 YES -#define BuildFreetype2Library YES -#define Freetype2Version 9.0.2 -#define BuildFonts YES -/* #define BuildCyrillicFonts YES */ -#define BuildXF86MiscExt YES -#define BuildXInputExt YES -#define BuildXKB YES -#define BuildDBE YES -#define BuildScreenSaverExt YES -#define BuildRman YES -#define BuildHtmlManPages NO -#define BuildAllSpecsDocs NO -#define BuildSpecsDocs NO -#define BuildXF86DRI YES -#define HasAgpGart YES -#define BuildGLXLibrary YES -#define BuildGlxExt YES -#define BuildGLULibrary YES -#define SharedLibGLU YES -#define NormalLibGLU YES -#define DoLoadableServer YES -#define BuildXvExt YES -#define BuildXF86DGA YES -#define BuildRender YES -#define BuildXftLibrary YES -#define BuildXft1Library NO -#define BuildRECORD YES -#define BuildPexExt YES -#define BuildXIE YES +/* Use buildin zlib to try and fix segfaults. Bug #4777 */ +#define HasZlib NO +#define HasPam YES +#define HasPamMisc YES +#define HasNCurses YES +#define HasLibCrypt YES +#define HasTk NO +#define HasTcl NO +#define FSUseSyslog YES + +#define LocalThreads YES +#define ThreadedX YES +#define HasPosixThreads YES +#define HasThreadSafeAPI YES + +#define HasGcc2ForCplusplus YES + +#define BuildXinerama YES +#define BuildXineramaLibrary YES + +/* Do not change, as it can break things like gdm */ +#define SharedLibXau YES +/* Needed for 104_all_4.2.1-fix-shared-libXau-link.v2.patch.bz2 */ + +#define HasFreetype2 YES +#define UseFreetype2 YES +#define Freetype2LibDir /usr/lib +/* #define BuildFreetype2Library YES */ +/* #define UseFontconfig YES */ +/* #define HasFontconfig YES */ +/* #define SharedLibXft1 YES */ + +#define BuildFonts YES +/* #define BuildCyrillicFonts YES */ + +#define BuildXF86MiscExt YES +#define BuildXInputExt YES +#define BuildXKB YES +#define BuildDBE YES +#define BuildScreenSaverExt YES +#define BuildRman YES +#define BuildHtmlManPages NO +#define BuildAllSpecsDocs NO +#define BuildSpecsDocs NO + +#define BuildXF86DRI YES +/* #define BuildXF86DRM YES */ +#define HasAgpGart YES +#define BuildGLXLibrary YES +#define BuildGlxExt YES +/* #define GlxUseSGISI YES */ +#define BuildGLULibrary YES +#define SharedLibGLU YES +#define NormalLibGLU YES +#define BuildXvExt YES +#define BuildXF86DGA YES +#define BuildRender YES + +/* Need this to build libs with -fPIC */ +#undef StaticNeedsPicForShared +#undef BuildLibGlxWithoutPIC +#define StaticNeedsPicForShared YES +#define BuildLibGlxWithoutPIC NO + +/* Broken in 4.x */ +#define JoystickSupport NO + +#define DoLoadableServer YES + +#define BuildRECORD YES + +#define UseXserverWrapper YES +#define UseMatroxHal NO + +#define UseConfDirForXkb NO +/* #define UseConfDirForAppDefaults NO */ + +#undef DefaultUserPath +#define DefaultUserPath /usr/local/bin:/bin:/usr/bin +#undef DefaultSystemPath +#define DefaultSystemPath /usr/local/sbin:/sbin:/usr/sbin:/bin:/usr/bin + +#define AdmDir /var/log +#define LbxproxyDir /etc/X11/lbxproxy +#define ProxyManagerDir /etc/X11/proxymngr +#define ServerConfigDir /etc/X11/xserver +#define XdmDir /etc/X11/xdm +#define XConfigDir /etc/X11 +#define XinitDir /etc/X11/xinit + +/* BOTH XIE and PEX were deprecated in XFree86 4.1.0 and are now obsolete */ +#define BuildPhigs NO +#define BuildPexExt NO +#define BuildPexLib NO +#define BuildXIE NO +#define BuildXIElib NO /* required for Lokis Erics Ultimate Solitaire */ #define UseInternalMalloc NO @@ -56,7 +108,4 @@ /* glibc-2.2 (6.2 because glibc is considered libc-6) */ #define LinuxCLibMajorVersion 6 #define LinuxClibMinorVersion 2 -#define HasTk NO -#define HasTcl NO -#define FSUseSyslog YES diff --git a/x11-base/xfree/files/4.2.99.3/startDM.sh b/x11-base/xfree/files/4.2.99.3/startDM.sh index 6afebf09a2d8..f72be3a30b60 100644 --- a/x11-base/xfree/files/4.2.99.3/startDM.sh +++ b/x11-base/xfree/files/4.2.99.3/startDM.sh @@ -1,19 +1,30 @@ -#!/bin/bash +#!/bin/bash --login # Copyright 1999-2002 Gentoo Technologies, Inc. # Distributed under the terms of the GNU General Public License, v2 or later # Author: Martin Schlemmer <azarah@gentoo.org> -# $Header: /var/cvsroot/gentoo-x86/x11-base/xfree/files/4.2.99.3/startDM.sh,v 1.1 2002/11/14 04:23:05 seemant Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-base/xfree/files/4.2.99.3/startDM.sh,v 1.2 2002/12/07 08:45:10 seemant Exp $ source /etc/init.d/functions.sh +# We need to source /etc/profile for stuff like $LANG to work +# bug #10190. +source /etc/profile + if [ -e ${svcdir}/options/xdm/service ] then - /sbin/start-stop-daemon --start --quiet \ - --exec "`cat ${svcdir}/options/xdm/service`" - if [ $? -ne 0 ] + retval=0 + EXE="`cat ${svcdir}/options/xdm/service`" + + /sbin/start-stop-daemon --start --quiet --exec ${EXE} + retval=$? + sleep 5 + + if [ "${retval}" -ne 0 ] then - #there was a error running the DM + # there was a error running the DM einfo "ERROR: could not start the Display Manager..." + # make sure we do not have a misbehaving DM + killall -9 ${EXE##*/} fi fi diff --git a/x11-base/xfree/files/4.2.99.3/xdm.start b/x11-base/xfree/files/4.2.99.3/xdm.start index b7b7ff83cc23..7bbc7632e17b 100644 --- a/x11-base/xfree/files/4.2.99.3/xdm.start +++ b/x11-base/xfree/files/4.2.99.3/xdm.start @@ -1,7 +1,7 @@ #!/sbin/runscript # Copyright 1999-2002 Gentoo Technologies, Inc. # Distributed under the terms of the GNU General Public License, v2 or later -# $Header: /var/cvsroot/gentoo-x86/x11-base/xfree/files/4.2.99.3/xdm.start,v 1.1 2002/11/14 04:23:05 seemant Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-base/xfree/files/4.2.99.3/xdm.start,v 1.2 2002/12/07 08:45:10 seemant Exp $ # This is here to serve as a note to myself, and future developers. # @@ -39,7 +39,7 @@ # Start X Font Server before X depend() { - use xfs + use xfs hotplug } setup_dm() { @@ -65,6 +65,7 @@ setup_dm() { start() { setup_dm + ebegin "Setting up ${SERVICE}" #save the prefered DM save_options "service" "${EXE}" @@ -80,19 +81,24 @@ stop() { local curvt="$(fgconsole)" local myexe="$(get_options "service")" local myservice="${myexe##*/}" + ebegin "Stopping ${myservice}" rm -f ${svcdir}/options/xdm/service + if [ "$(ps -A | grep -e "${myservice}")" ] then start-stop-daemon --stop --quiet \ --exe ${myexe} &>/dev/null + retval=$? else retval=1 fi + #switch back to original vt chvt "${curvt}" &>/dev/null eend ${retval} "Error stopping ${myservice}." + return ${retval} } diff --git a/x11-base/xfree/files/4.2.99.3/xfs.conf.d b/x11-base/xfree/files/4.2.99.3/xfs.conf.d index 7715dd96c8d5..8b933a14ea7d 100644 --- a/x11-base/xfree/files/4.2.99.3/xfs.conf.d +++ b/x11-base/xfree/files/4.2.99.3/xfs.conf.d @@ -1,6 +1,6 @@ # Copyright 1999-2002 Gentoo Technologies, Inc. # Distributed under the terms of the GNU General Public License, v2 or later -# $Header: /var/cvsroot/gentoo-x86/x11-base/xfree/files/4.2.99.3/xfs.conf.d,v 1.1 2002/11/14 04:23:05 seemant Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-base/xfree/files/4.2.99.3/xfs.conf.d,v 1.2 2002/12/07 08:45:10 seemant Exp $ # Config file for /etc/init.d/xfs @@ -12,3 +12,12 @@ XFS_PORT="-1" + +# If this is set to "yes", then the xfs rc-script will +# scan all the font directories in /etc/X11/fs/config for +# changes, and if any, will add the required files. This +# may take a while on very old boxes, so set it to "no" +# if it takes too long for you. + +SETUP_FONTDIRS="yes" + diff --git a/x11-base/xfree/files/4.2.99.3/xfs.config b/x11-base/xfree/files/4.2.99.3/xfs.config index d8bc52b30d68..feed6319bd88 100644 --- a/x11-base/xfree/files/4.2.99.3/xfs.config +++ b/x11-base/xfree/files/4.2.99.3/xfs.config @@ -25,14 +25,12 @@ catalogue = /usr/X11R6/lib/X11/fonts/75dpi, /usr/X11R6/lib/X11/fonts/Type1, /usr/X11R6/lib/X11/fonts/Speedo, /usr/X11R6/lib/X11/fonts/CID, - /usr/X11R6/lib/X11/fonts/PEX, /usr/X11R6/lib/X11/fonts/util, /usr/X11R6/lib/X11/fonts/Type1, /usr/X11R6/lib/X11/fonts/local, /usr/X11R6/lib/X11/fonts/Speedo, /usr/X11R6/lib/X11/fonts/truetype, /usr/X11R6/lib/X11/fonts/TTF, - /usr/X11R6/lib/X11/fonts/encodings, /usr/X11R6/lib/X11/fonts/cyrillic, /usr/X11R6/lib/X11/fonts/freefont, /usr/X11R6/lib/X11/fonts/sharefont, diff --git a/x11-base/xfree/files/4.2.99.3/xfs.start b/x11-base/xfree/files/4.2.99.3/xfs.start index 0a7e190a6c65..65574c57bbcb 100644 --- a/x11-base/xfree/files/4.2.99.3/xfs.start +++ b/x11-base/xfree/files/4.2.99.3/xfs.start @@ -1,7 +1,8 @@ #!/sbin/runscript # Copyright 1999-2002 Gentoo Technologies, Inc. # Distributed under the terms of the GNU General Public License, v2 or later -# $Header: /var/cvsroot/gentoo-x86/x11-base/xfree/files/4.2.99.3/xfs.start,v 1.1 2002/11/14 04:23:05 seemant Exp $ +# Author: Martin Schlemmer <azarah@gentoo.org> +# $Header: /var/cvsroot/gentoo-x86/x11-base/xfree/files/4.2.99.3/xfs.start,v 1.2 2002/12/07 08:45:10 seemant Exp $ #NB: Config is in /etc/conf.d/xfs @@ -19,8 +20,198 @@ check_config() { return 0 } +# Return 0 on change, or 1 on no change, or if dir do not exist +check_changed() { + local x="" + local fontlist="" + + # If the dir do not exist, e + if [ ! -d $1 ] + then + return 1 + fi + + # Create a list of all non known config files in the font dir + fontlist="$(find $1/ -type f -maxdepth 1)" + fontlist="$(echo "${fontlist}" | egrep -v 'fonts\..*')" + fontlist="$(echo "${fontlist}" | egrep -v '*.\.dir')" + fontlist="$(echo "${fontlist}" | egrep -v 'XftCache')" + + if [ ! -f $1/fonts.list ] + then + if [ -n "${fontlist}" ] + then + # No list file exist, so create it and return 0 to add + # this font dir as a candidate for updating... + echo "${fontlist}" > $1/fonts.list + + return 0 + fi + else + local retval=1 + + # All the fonts was removed, so cleanup + if [ -z "${fontlist}" ] + then + for x in $1/fonts.* $1/encodings.dir $1/XftCache + do + if [ -f ${x} ] + then + rm -f ${x} + fi + done + + return 1 + fi + + # Check that no files was added or removed.... + if [ "$(cat $1/fonts.list | md5sum)" != "$(echo "${fontlist}" | md5sum)" ] + then + retval=0 + fi + + # Check that no files was updated.... + if [ "${retval}" -ne 0 ] + then + local changed_list="" + + changed_list="$(find $1 -type f -cnewer $1/fonts.dir)" + changed_list="$(echo "${changed_list}" | egrep -v 'fonts\..*')" + changed_list="$(echo "${changed_list}" | egrep -v '*.\.dir')" + changed_list="$(echo "${changed_list}" | egrep -v 'XftCache')" + + if [ -n "${changed_list}" ] + then + retval=0 + fi + fi + + # OK, something changed, so recreate fonts.list and add as candidate + # for updating... + if [ "${retval}" -eq 0 ] + then + echo "${fontlist}" > $1/fonts.list + + return 0 + fi + fi + + return 1 +} + +# This is a brain dead function to extract font dirs from +# the xfs config file (/etc/X11/fs/config). +get_fontdir_list() { + local dowrite=1 + + set -f + + (awk '!/^#|^\t+#/ { print $0 }' /etc/X11/fs/config) | while read line + do + if [ "${line/catalogue}" != "${line}" ] + then + dowrite=0; + fi + + if [ "${dowrite}" -eq 0 ] + then + # Do not print the 'catalogue = ' bit, or any ',' + echo "${line/catalogue*=}" | sed -e 's:,::g' + + if [ "$(echo ${line} | sed -e 's:,::g')" = "${line}" ] + then + dowrite=1 + fi + fi + done + + set +f +} + +# This is the main beast for setting up the font dirs +setup_font_dirs() { + local x="" + local pending_fontdirs="" + + umask 022 + + # While we at it, update fontconfig's cache as well + if [ -x /usr/bin/fc-cache ] + then + ebegin "Updating FC cache" + /usr/bin/fc-cache + eend 0 + fi + + if [ ! -x /usr/X11R6/bin/mkfontdir -o ! -x /usr/X11R6/bin/ttmkfdir ] + then + ewarn "Could not find mkfontdir or ttmkfdir binary!" + return 0 + fi + + /usr/X11R6/bin/mkfontdir -n \ + -e /usr/X11R6/lib/X11/fonts/encodings \ + -e /usr/X11R6/lib/X11/fonts/encodings/large \ + -- /usr/X11R6/lib/X11/fonts/encodings + + ebegin "Scanning font dirs" + for x in $(get_fontdir_list) + do + if test -d ${x} && check_changed ${x} + then + if [ -z "${pending_fontdirs}" ] + then + pending_fontdirs="${x}" + else + pending_fontdirs="${pending_fontdirs} ${x}" + fi + fi + done + eend 0 + + if [ -n "${pending_fontdirs}" ] + then + ebegin "Indexing font dirs" + for x in ${pending_fontdirs} + do + ebegin " ${x}" + # Only generate .scale files if there are + # truetype fonts present ... + if [ "${x/encodings}" = "${x}" -a \ + -n "$(find ${x} -iname '*.tt[cf]' -print)" ] + then + /usr/X11R6/bin/ttmkfdir \ + -e /usr/X11R6/lib/X11/fonts/encodings/encodings.dir \ + -o ${x}/fonts.scale -d ${x} &> /dev/null + fi + + if [ "${x/encodings}" = "${x}" ] + then + /usr/X11R6/bin/mkfontdir \ + -e /usr/X11R6/lib/X11/fonts/encodings \ + -e /usr/X11R6/lib/X11/fonts/encodings/large \ + -- ${x} &> /dev/null + fi + + if [ "${x/encodings}" = "${x}" -a -x /usr/X11R6/bin/xftcache ] && \ + [ -n "$(find ${x} -iname '*.tt[cf]' -print)" -o \ + -n "$(find ${x} -iname '*.pf[ab]' -print)" ] + then + /usr/X11R6/bin/xftcache ${x} &> /dev/null + fi + eend 0 + done + fi +} + start() { check_config || return 1 + + if [ "${SETUP_FONTDIRS}" = "yes" ] + then + setup_font_dirs + fi + ebegin "Starting X Font Server" if [ "`grep -e "^xfs:" /etc/passwd`" ] ; then start-stop-daemon --start --quiet --exec /usr/X11R6/bin/xfs \ @@ -40,3 +231,6 @@ stop() { rm -rf /tmp/.font-unix eend $? } + + +# vim:ts=4 diff --git a/x11-base/xfree/files/4.2.99.3/xinitrc b/x11-base/xfree/files/4.2.99.3/xinitrc index 9a669469a542..53cde32559d2 100644 --- a/x11-base/xfree/files/4.2.99.3/xinitrc +++ b/x11-base/xfree/files/4.2.99.3/xinitrc @@ -3,8 +3,9 @@ userresources=$HOME/.Xresources usermodmap=$HOME/.Xmodmap -sysresources=XINITDIR/.Xresources -sysmodmap=XINITDIR/.Xmodmap +xinitdir=/usr/X11R6/lib/X11/xinit +sysresources=$xinitdir/.Xresources +sysmodmap=$xinitdir/.Xmodmap # merge in defaults and keymaps diff --git a/x11-base/xfree/xfree-4.2.99.3.ebuild b/x11-base/xfree/xfree-4.2.99.3.ebuild index 0376f0235f8d..086b4fa10b29 100644 --- a/x11-base/xfree/xfree-4.2.99.3.ebuild +++ b/x11-base/xfree/xfree-4.2.99.3.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2002 Gentoo Technologies, Inc. # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/x11-base/xfree/xfree-4.2.99.3.ebuild,v 1.4 2002/12/07 08:25:59 seemant Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-base/xfree/xfree-4.2.99.3.ebuild,v 1.5 2002/12/07 08:45:10 seemant Exp $ IUSE="3dfx" @@ -87,24 +87,24 @@ src_unpack () { echo "#define OptimizedCDebugFlags ${CFLAGS}" >> config/cf/host.def echo "#define GccWarningOptions -pipe" >> config/cf/host.def - if [ "${ARCH}" = "x86" ] + if use x86 then # optimize Mesa for architecture - if [ -n "`use mmx`" ] + if use mmx then echo "#define HasMMXSupport YES" >> config/cf/host.def fi - if [ -n "`use 3dnow`" ] + if use 3dnow then echo "#define MesaUse3DNow YES" >> config/cf/host.def - elif [ -n "`use sse`" ] + elif use sse then echo "#define MesaUseKatmai YES" >> config/cf/host.def fi fi # build with glide3 support? (build the tdfx_dri.o module) - if [ -n "`use 3dfx`" ] + if use 3dfx then echo "#define HasGlide3 YES" >> config/cf/host.def fi @@ -117,10 +117,6 @@ src_unpack () { ${S}/programs/Xserver/Imakefile.orig \ > ${S}/programs/Xserver/Imakefile - # Apply Xft quality patch from http://www.cs.mcgill.ca/~dchest/xfthack/ - cd ${S}/lib/Xft - cat ${FILESDIR}/${PVR}/xft-quality.diff | patch -p1 || die - # LibPNG fixes cd ${S} cp xmakefile xmakefile.orig @@ -139,7 +135,7 @@ src_unpack () { src_compile() { # fix build build problems for tdfx driver - if [ -n "`use 3dfx`" ] + if use 3dfx then cd ${S}/lib/GL/mesa/src/drv/tdfx ln -s /usr/include/glide3/glide.h glide.h @@ -151,7 +147,7 @@ src_compile() { emake World || die - if [ "`use nls`" ] + if use nls then cd ${S}/nls make || die @@ -180,7 +176,7 @@ src_install() { cd ${S} fi - # we zap the our CFLAGS in the host.def file, as hardcoded CFLAGS can + # we zap our CFLAGS in the host.def file, as hardcoded CFLAGS can # mess up other things that use xmkmf cp ${D}/usr/X11R6/lib/X11/config/host.def \ ${D}/usr/X11R6/lib/X11/config/host.def.orig |