summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHannes Mehnert <hannes@gentoo.org>2003-04-08 19:58:09 +0000
committerHannes Mehnert <hannes@gentoo.org>2003-04-08 19:58:09 +0000
commitf6b363c852f5fea9f295379ac0c0b914ed3f5b1e (patch)
tree01ee4a7474922e6e7a1e4ad9fb355c4d59a299be /kde-base/kdebase
parentadding a new server to sf (diff)
downloadgentoo-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/ChangeLog10
-rw-r--r--kde-base/kdebase/files/3.0.5b/kdebase-3.0.5b-xft2.0-fix.diff148
-rw-r--r--kde-base/kdebase/files/3.0.5b/kdebase-3.0.5b-xft_h-fix.diff11
-rw-r--r--kde-base/kdebase/files/3.0.5b/startkde-3.0.5b-gentoo.diff55
-rw-r--r--kde-base/kdebase/kdebase-3.0.5b.ebuild237
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
+}
+