diff options
author | Hannes Mehnert <hannes@gentoo.org> | 2003-04-08 19:58:09 +0000 |
---|---|---|
committer | Hannes Mehnert <hannes@gentoo.org> | 2003-04-08 19:58:09 +0000 |
commit | f6b363c852f5fea9f295379ac0c0b914ed3f5b1e (patch) | |
tree | 01ee4a7474922e6e7a1e4ad9fb355c4d59a299be /kde-base/kdebase | |
parent | adding a new server to sf (diff) | |
download | gentoo-2-f6b363c852f5fea9f295379ac0c0b914ed3f5b1e.tar.gz gentoo-2-f6b363c852f5fea9f295379ac0c0b914ed3f5b1e.tar.bz2 gentoo-2-f6b363c852f5fea9f295379ac0c0b914ed3f5b1e.zip |
kde-3.0.5b (masked via package.mask)
Diffstat (limited to 'kde-base/kdebase')
-rw-r--r-- | kde-base/kdebase/ChangeLog | 10 | ||||
-rw-r--r-- | kde-base/kdebase/files/3.0.5b/kdebase-3.0.5b-xft2.0-fix.diff | 148 | ||||
-rw-r--r-- | kde-base/kdebase/files/3.0.5b/kdebase-3.0.5b-xft_h-fix.diff | 11 | ||||
-rw-r--r-- | kde-base/kdebase/files/3.0.5b/startkde-3.0.5b-gentoo.diff | 55 | ||||
-rw-r--r-- | kde-base/kdebase/kdebase-3.0.5b.ebuild | 237 |
5 files changed, 460 insertions, 1 deletions
diff --git a/kde-base/kdebase/ChangeLog b/kde-base/kdebase/ChangeLog index dfc926823ae4..ff7663f44e2d 100644 --- a/kde-base/kdebase/ChangeLog +++ b/kde-base/kdebase/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for kde-base/kdebase # Copyright 2002-2003 Gentoo Technologies, Inc.; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/kde-base/kdebase/ChangeLog,v 1.69 2003/04/01 20:28:16 danarmak Exp $ +# $Header: /var/cvsroot/gentoo-x86/kde-base/kdebase/ChangeLog,v 1.70 2003/04/08 19:58:08 hannes Exp $ + +*kdebase-3.0.5b (08 Apr 2003) + + 08 Apr 2003; Hannes Mehnert <hannes@gentoo.org> kdebase-3.0.5b.ebuild, + files/3.0.5b/kdebase-3.0.5b-xft2.0-fix.diff, + files/3.0.5b/kdebase-3.0.5b-xft_h-fix.diff, + files/3.0.5b/startkde-3.0.5b-gentoo.diff: + version bump 01 Apr 2003; danrmaak <danarmak@gentoo.org> kdebase-3.1.1-r1.ebuild: Added stable x86 keyword. diff --git a/kde-base/kdebase/files/3.0.5b/kdebase-3.0.5b-xft2.0-fix.diff b/kde-base/kdebase/files/3.0.5b/kdebase-3.0.5b-xft2.0-fix.diff new file mode 100644 index 000000000000..940b20968a0f --- /dev/null +++ b/kde-base/kdebase/files/3.0.5b/kdebase-3.0.5b-xft2.0-fix.diff @@ -0,0 +1,148 @@ + We have two problems when we start to use Xft1.2 or Xft2.0 + + 1) With Xft1.2 or Xft2.0 we now use fontconfig, and thus have + to cast the variables for use with fontconfig struct's and + variables. + + 2) With Xft2.0, some functions in xftint.h are already defined + in the Xft.h from Xft2.0. + + Fix: If we have Xft1.2 or Xft2.0, either change configure to + to define XFT_WITH_FONTCONFIG, or add -DXFT_WITH_FONTCONFIG + to our CXXFLAGS. + + If we have Xft2.0, define HAVE_XFT2 somehow. + + + Martin Schlemmer <azarah@gentoo.org> (25 Dec 2002) + + +--- kdebase-3.0.5a/kcontrol/kfontinst/kfontinst/XftConfig.cpp.orig 2002-12-25 04:06:47.000000000 +0200 ++++ kdebase-3.0.5a/kcontrol/kfontinst/kfontinst/XftConfig.cpp 2002-12-25 04:07:27.000000000 +0200 +@@ -276,7 +276,11 @@ + } + case XftTypeString: + str+="\""; ++#ifndef XFT_WITH_FONTCONFIG + str+=test->value.u.s; ++#else ++ str+=(const char *)test->value.u.s; ++#endif + str+="\""; + break; + case XftTypeBool: +@@ -554,7 +558,11 @@ + XftValue value; + CXftConfig::TEntry *entry=new CXftConfig::TEntry; + ++#ifndef XFT_WITH_FONTCONFIG + value.u.s=sval; ++#else ++ value.u.s=(FcChar8 *)sval; ++#endif + value.type=XftTypeString; + entry->test=XftTestCreate(XftQualAny, "family", XftOpEqual, value); + +@@ -780,7 +788,11 @@ + + for(entry=itsList.first(); entry; entry=itsList.next()) + if(entry->test && 0==CMisc::stricmp(entry->test->field, "family") && XftTypeString==entry->test->value.type && ++#ifndef XFT_WITH_FONTCONFIG + 0==CMisc::stricmp(entry->test->value.u.s, family.latin1()) && entry->edit && ++#else ++ 0==CMisc::stricmp((const char *)entry->test->value.u.s, family.latin1()) && entry->edit && ++#endif + 0==CMisc::stricmp(entry->edit->field, field) && XftOpAssign==entry->edit->op && entry->edit->expr) + break; + +@@ -798,7 +810,11 @@ + free(test->field); + + if(XftTypeString==test->value.type) ++#ifndef XFT_WITH_FONTCONFIG + free(test->value.u.s); ++#else ++ free((FcChar8 *)test->value.u.s); ++#endif + } + } + +--- kdebase-3.0.5a/kcontrol/kfontinst/kfontinst/XftConfigEditor.cpp.orig 2002-12-25 04:07:06.000000000 +0200 ++++ kdebase-3.0.5a/kcontrol/kfontinst/kfontinst/XftConfigEditor.cpp 2002-12-25 04:07:27.000000000 +0200 +@@ -469,7 +469,11 @@ + break; + case XftTypeString: + expr->op=XftOpString; ++#ifndef XFT_WITH_FONTCONFIG + expr->u.sval=val.u.s; ++#else ++ expr->u.sval=(char *)val.u.s; ++#endif + break; + case XftTypeBool: + default: +@@ -655,12 +659,24 @@ + if("foundry"==field || "family"==field || "encoding"==field || "style"==field) + { + val.type=XftTypeString; ++#ifndef XFT_WITH_FONTCONFIG + val.u.s=(char *)malloc(edit ? strVal.length()+1 : strVal.length()-1); ++#else ++ val.u.s=(FcChar8 *)malloc(edit ? strVal.length()+1 : strVal.length()-1); ++#endif + + if(edit) ++#ifndef XFT_WITH_FONTCONFIG + strcpy(val.u.s, strVal.local8Bit()); ++#else ++ strcpy((char *)val.u.s, strVal.local8Bit()); ++#endif + else ++#ifndef XFT_WITH_FONTCONFIG + strcpy(val.u.s, strVal.mid(1, strVal.length()-2).local8Bit()); // Need to remove quotes from each end of the string... ++#else ++ strcpy((char *)val.u.s, strVal.mid(1, strVal.length()-2).local8Bit()); // Need to remove quotes from each end of the string... ++#endif + } + else if("spacing"==field) + { +@@ -747,8 +763,13 @@ + { + // Not sure about this... + val.type=XftTypeString; ++#ifndef XFT_WITH_FONTCONFIG + val.u.s=(char *)malloc(strVal.length()+1); + strcpy(val.u.s, strVal.local8Bit()); ++#else ++ val.u.s=(FcChar8 *)malloc(strVal.length()+1); ++ strcpy((char *)val.u.s, strVal.local8Bit()); ++#endif + } + else if("rgba"==field) + { +--- kdebase-3.0.5a/kcontrol/kfontinst/kfontinst/xftint.h.orig 2002-12-25 04:07:17.000000000 +0200 ++++ kdebase-3.0.5a/kcontrol/kfontinst/kfontinst/xftint.h 2002-12-25 04:07:27.000000000 +0200 +@@ -276,8 +276,10 @@ + XftSubstPrint (XftSubst *subst); + + /* xftdir.c */ ++#ifndef HAVE_XFT2 + Bool + XftDirScan (XftFontSet *set, const char *dir); ++#endif + + /* xftdpy.c */ + int +@@ -388,10 +390,12 @@ + XftListValueCompare (XftValue v1, + XftValue v2); + ++#ifndef HAVE_XFT2 + Bool + XftListValueListCompare (XftValueList *v1orig, + XftValueList *v2orig, + XftQual qual); ++#endif + + Bool + XftListMatch (XftPattern *p, diff --git a/kde-base/kdebase/files/3.0.5b/kdebase-3.0.5b-xft_h-fix.diff b/kde-base/kdebase/files/3.0.5b/kdebase-3.0.5b-xft_h-fix.diff new file mode 100644 index 000000000000..0971b0d039c3 --- /dev/null +++ b/kde-base/kdebase/files/3.0.5b/kdebase-3.0.5b-xft_h-fix.diff @@ -0,0 +1,11 @@ +--- Xft.h.orig 2002-10-30 00:48:12.000000000 +0200 ++++ Xft.h 2002-10-30 00:47:28.000000000 +0200 +@@ -150,6 +150,8 @@ + int ref; + }; + ++typedef FcValueList XftValueList; ++ + /* + * End of Gentoo hack + */ diff --git a/kde-base/kdebase/files/3.0.5b/startkde-3.0.5b-gentoo.diff b/kde-base/kdebase/files/3.0.5b/startkde-3.0.5b-gentoo.diff new file mode 100644 index 000000000000..8a4ba044dae5 --- /dev/null +++ b/kde-base/kdebase/files/3.0.5b/startkde-3.0.5b-gentoo.diff @@ -0,0 +1,55 @@ +--- startkde.orig 2002-12-16 04:05:14.000000000 +0200 ++++ startkde 2003-01-28 09:56:45.000000000 +0200 +@@ -1,8 +1,21 @@ +-#!/bin/sh ++#!/bin/sh --login + # +-# DEFAULT KDE STARTUP SCRIPT ( KDE-3.0.5a ) ++# GENTOO CUSTOMIZED KDE STARTUP SCRIPT ( KDE-3.0.5a ) + # + ++# Gentoo part: ++export PATH="_KDEDIR_/bin:${PATH}" ++export KDEDIR="_KDEDIR_" ++# only use env.d's KDEDIRS, which should only include locations like /usr - NOT KDE locations ++ ++cd ~ ++[ -d .kde ] && mv .kde .kde.backup ++[ -e .kde3 ] || mkdir .kde3 ++ln -sf .kde3 .kde ++export KDEHOME="${HOME}/.kde3" ++ ++# Gentoo part ends ++ + # Boot sequence: + # + # kdeinit is used to fork off processes which improves memory usage +@@ -25,12 +38,12 @@ + # especially necessary on slow machines, where starting KDE takes one or two + # minutes until anything appears on the screen. + # +-# Set the background to plain grey. ++# Set the background to cyan (Gentoo version change). + # The standard X background is nasty, causing moire effects and exploding + # people's heads. We use colours from the standard KDE palette for those with + # palettised displays. + +-test "$XDM_MANAGED" || bkg="-solid #C0C0C0" ++test "$XDM_MANAGED" || bkg="-solid #5477A0" + xsetroot -cursor_name left_ptr $bkg + + # The user's personal KDE directory is usually ~/.kde, but this setting +@@ -131,7 +144,12 @@ + fi + + # the splashscreen and progress indicator +-ksplash ++# Gentoo addition: run $KSPLASH if set, otherwise just the default 'ksplash' ++if [ -n "$KSPLASH" ]; then ++ $KSPLASH ++else ++ ksplash ++fi + + # We set LD_BIND_NOW to increase the efficiency of kdeinit. + # kdeinit unsets this variable before loading applications. diff --git a/kde-base/kdebase/kdebase-3.0.5b.ebuild b/kde-base/kdebase/kdebase-3.0.5b.ebuild new file mode 100644 index 000000000000..34351eccb125 --- /dev/null +++ b/kde-base/kdebase/kdebase-3.0.5b.ebuild @@ -0,0 +1,237 @@ +# Copyright 1999-2003 Gentoo Technologies, Inc. +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/kde-base/kdebase/kdebase-3.0.5b.ebuild,v 1.1 2003/04/08 19:58:08 hannes Exp $ +inherit eutils flag-o-matic kde-dist + +IUSE="ldap pam motif encode oggvorbis cups ssl opengl samba" + +DESCRIPTION="KDE ${PV} - base packages: the desktop, panel, window manager, konqueror..." + +KEYWORDS="x86 ~ppc ~alpha ~sparc" + +newdepend ">=media-sound/cdparanoia-3.9.8 + ldap? ( >=net-nds/openldap-1.2 ) + pam? ( >=sys-libs/pam-0.73 ) + motif? ( >=x11-libs/openmotif-2.1.30 ) + encode? ( >=media-sound/lame-3.89b ) + oggvorbis? ( >=media-libs/libvorbis-1.0_beta1 ) + cups? ( net-print/cups ) + ssl? ( >=dev-libs/openssl-0.9.6b ) + opengl? ( virtual/opengl ) + samba? ( net-fs/samba ) + sys-apps/gzip" +# lm_sensors? ( ?/lm_sensors ) # ebuild doesn't exist yet + +RDEPEND="${RDEPEND} + sys-apps/eject" + +myconf="${myconf} --with-dpms --with-cdparanoia" + +use ldap && myconf="${myconf} --with-ldap" || myconf="${myconf} --without-ldap" +use pam && myconf="${myconf} --with-pam" || myconf="${myconf} --with-shadow" +use motif && myconf="${myconf} --with-motif" || myconf="${myconf} --without-motif" +use encode && myconf="${myconf} --with-lame" || myconf="${myconf} --without-lame" +use cups && myconf="${myconf} --with-cups" || myconf="${myconf} --disable-cups" +use oggvorbis && myconf="${myconf} --with-vorbis" || myconf="${myconf} --without-vorbis" +use opengl && myconf="${myconf} --with-gl" || myconf="${myconf} --without-gl" +use ssl && myconf="${myconf} --with-ssl" || myconf="${myconf} --without-ssl" +use pam && myconf="${myconf} --with-pam=yes" || myconf="${myconf} --with-pam=no --with-shadow" + +get_xft_setup() { + # This function tries to figure out if we have QT compiled against Xft1 + # or Xft2.0, and also if we have Xft1, Xft2.0 or a broken Xft setup + # <azarah@gentoo.org> (24 Dec 2002) + + # Check if QT was compiled agaist Xft1 or Xft2 ... the idea is to only get + # the major version of the linked lib if its Xft2, else it should be "" .. + # we then set it to "1" with the next check. + export QT_XFT_VER="`ldd ${QTDIR}/lib/libqt.so 2> /dev/null | grep "libXft" | awk '{split($1, ver, "."); print ver[3]}'`" + [ -z "${QT_XFT_VER}" ] && QT_XFT_VER="1" + + # Check if the Xft headers are Xft1 or Xft2 ... the idea is to only get the + # major version of the Xft version if its Xft2, else it should be "" .. + # we then set it to "1" with the next check. + local XFT_HDR_VER="`grep "XFT_MAJOR" /usr/X11R6/include/X11/Xft/Xft.h | awk '($2 == "XFT_MAJOR") {print $3}'`" + [ -z "${XFT_HDR_VER}" ] && XFT_HDR_VER="1" + + # Check if the libs installed are Xft1 or Xft2 ... We only check + # what the /usr/X11R6/lib/libXft.so symlink poinst to, as that should + # be 99% what apps will link to (except if we have Xft2 in /usr/lib, + # but that should not matter) ... + local XFT_LIB_VER="`readlink /usr/X11R6/lib/libXft.so 2> /dev/null | \ + awk '{split($0, file, "/"); for (x in file) if (file[x] ~ /libXft\.so\.2/) print file[x]}'`" + [ "${XFT_LIB_VER/libXft}" != "${XFT_LIB_VER}" ] \ + && XFT_LIB_VER="2" \ + || XFT_LIB_VER="1" + + if [ "${XFT_HDR_VER}" -eq "2" -a "${XFT_LIB_VER}" -eq "2" ] + then + # Yep, we have Xft2 support ... + export HAVE_XFT_2="yes" + + [ -n "${BUILDDEBUG}" ] && einfo "We have Xft2.0 support" + + elif [ "${XFT_HDR_VER}" != "${XFT_LIB_VER}" ] + then + # Xft support are broken (mixed header and lib versions) ... + export HAVE_XFT_2="broken" + + [ -n "${BUILDDEBUG}" ] && einfo "We have broken Xft support" + + elif [ "${XFT_HDR_VER}" -eq "1" -a "${XFT_LIB_VER}" -eq "1" ] + then + # Nope, we only have Xft1 installed ... + export HAVE_XFT_2="no" + + [ -n "${BUILDDEBUG}" ] && einfo "We have Xft1 support" + fi +} + +pkg_setup() { + + # It should generally be considered bad form to touch files in the + # live filesystem, but we had a broken Xft.h out there, and to expect + # all users to update X because of it is harsh. Also, there is no + # official fix to xfree for this issue as of writing. See bug #9423 + # for more info. + cd /usr/X11R6/include/X11/Xft + if patch --dry-run -p0 < ${FILESDIR}/${PVR}/${P}-xft_h-fix.diff > /dev/null + then + EPATCH_SINGLE_MSG="Patching Xft.h to fix missing defines..." \ + epatch ${FILESDIR}/${PVR}/${P}-xft_h-fix.diff + fi + + get_xft_setup + + # Check what the setup are, and if things do not seem OK, die + # with a hopefully helpful message ... + if [ "${HAVE_XFT_2}" = "yes" -a "${QT_XFT_VER}" -eq "1" ] + then + eerror "You have Xft2.0 installed, but QT is linked against Xft1!" + eerror + eerror "Please fix this by remerging >=x11-libs/qt-3.1 and doing:" + eerror + eerror " # emerge \">=x11-libs/qt-3.1\"" + die "You have Xft2.0 installed, but QT is linked against Xft1!" + + elif [ "${HAVE_XFT_2}" = "broken" ] + then + eerror "You have a broken Xft setup! This could mean that you" + eerror "have Xft2.0 headers with Xft1 libs, or reversed. Please" + eerror "fix this before you try to merge kdebase again." + die "You have a broken Xft setup!" + + elif [ "${HAVE_XFT_2}" = "no" -a "${QT_XFT_VER}" -eq "2" ] + then + eerror "You have QT compiled against Xft2.0, but Xft2.0 is no" + eerror "longer installed. Please remerge QT, and then try" + eerror "again to merge kdebase." + die "You have QT compiled against Xft2.0, but Xft2.0 is no longer installed." + fi +} + +src_unpack() { + + kde_src_unpack + + get_xft_setup + + # Apply this only if we have a Xft1.2 Xft.h or have Xft2.0 installed ... + if [ -n "`grep "fontconfig" /usr/X11R6/include/X11/Xft/Xft.h`" ] || \ + [ "${HAVE_XFT_2}" = "yes" ] + then + cd ${S}; epatch ${FILESDIR}/${PVR}/${P}-xft2.0-fix.diff + fi +} + +src_compile() { + + get_xft_setup + + # Add '-DXFT_WITH_FONTCONFIG' to our C[XX]FLAGS if we have a Xft.h that + # uses fontconfig ... this will enable the fix in the '${P}-xft2.0-fix.diff' + # patch. + if [ -n "`grep "fontconfig" /usr/X11R6/include/X11/Xft/Xft.h`" ] + then + append-flags "-DXFT_WITH_FONTCONFIG" + fi + + # Add '-DHAVE_XFT2' to our C[XX]FLAGS if we have Xft2.0 installed ... + # this will enable the fix in the '${P}-xft2.0-fix.diff' patch. + if [ "${HAVE_XFT_2}" = "yes" ] + then + append-flags "-DHAVE_XFT2" + fi + + kde_src_compile myconf configure + kde_remove_flag kdm/kfrontend -fomit-frame-pointer + kde_src_compile make +} + +src_install() { + + kde_src_install + + # cf bug #5953 + if [ "`use pam`" ] + then + insinto /etc/pam.d + newins ${FILESDIR}/kscreensaver.pam kscreensaver + newins ${FILESDIR}/kde.pam kde + fi + + # startkde script + cd ${D}/${KDEDIR}/bin + epatch ${FILESDIR}/${PVR}/startkde-${PVR}-gentoo.diff + dosed "s:_KDEDIR_:${KDEDIR}:" ${KDEDIR}/bin/startkde + chmod a+x startkde + + # x11 session script + cd ${T} + echo "#!/bin/sh +${KDEDIR}/bin/startkde" > kde-${PV} + chmod a+x kde-${PV} + # old scheme - compatibility + exeinto /usr/X11R6/bin/wm + doexe kde-${PV} + # new scheme - for now >=xfree-4.2-r3 only + exeinto /etc/X11/Sessions + doexe kde-${PV} + + cd ${D}/${PREFIX}/share/config/kdm || die + dosed "s:SessionTypes=:SessionTypes=kde-${PV},:" \ + ${PREFIX}/share/config/kdm/kdmrc + dosed "s:Session=${PREFIX}/share/config/kdm/Xsession:Session=/etc/X11/xdm/Xsession:" \ + ${PREFIX}/share/config/kdm/kdmrc + + #backup splashscreen images, so they can be put back when unmerging + #mosfet or so. + if [ ! -d ${KDEDIR}/share/apps/ksplash.default ] + then + cd ${D}/${KDEDIR}/share/apps + cp -rf ksplash/ ksplash.default + fi + + # Show gnome icons when choosing new icon for desktop shortcut + dodir /usr/share/pixmaps + mv ${D}/${KDEDIR}/share/apps/kdesktop/pics/* ${D}/usr/share/pixmaps/ + rm -rf ${D}/${KDEDIR}/share/apps/kdesktop/pics/ + cd ${D}/${KDEDIR}/share/apps/kdesktop/ + ln -sf /usr/share/pixmaps/ pics + + # fix bug #12705: make sure default Xreset, Xsetup, Xwilling files are installed + # into the kdm config dir + cd ${S}/kdm/kfrontend + ./genkdmconf --in . --no-old + insinto ${PREFIX}/share/config/kdm + doins Xreset Xsetup Xstartup + + # portage has a problem working with empty directories + rmdir ${D}/${KDEDIR}/share/templates/.source/emptydir + +} + +pkg_postinst() { + mkdir -p ${KDEDIR}/share/templates/.source/emptydir +} + |