Add patch to fix segfault in XDMCP (#109528). Add patch to compile without imake...
authorGregorio Guidi <greg_g@gentoo.org>
Wed, 19 Oct 2005 13:52:14 +0000 (13:52 +0000)
committerGregorio Guidi <greg_g@gentoo.org>
Wed, 19 Oct 2005 13:52:14 +0000 (13:52 +0000)
Package-Manager: portage-2.0.51.22-r3

14 files changed:
kde-base/kdebase/ChangeLog
kde-base/kdebase/files/digest-kdebase-3.4.3-r1 [new file with mode: 0644]
kde-base/kdebase/files/kdebase-3.4.3-noimake.patch [new file with mode: 0644]
kde-base/kdebase/files/kdebase-3.4.3-xdmcp.patch [new file with mode: 0644]
kde-base/kdebase/files/kdebase-3.5.0_beta2-noimake.patch [new file with mode: 0644]
kde-base/kdebase/kdebase-3.4.3-r1.ebuild [new file with mode: 0644]
kde-base/kdebase/kdebase-3.5.0_beta2.ebuild
kde-base/kdm/ChangeLog
kde-base/kdm/files/digest-kdm-3.4.3-r1 [new file with mode: 0644]
kde-base/kdm/files/kdebase-3.4.3-noimake.patch [new file with mode: 0644]
kde-base/kdm/files/kdebase-3.4.3-xdmcp.patch [new file with mode: 0644]
kde-base/kdm/files/kdebase-3.5.0_beta2-noimake.patch [new file with mode: 0644]
kde-base/kdm/kdm-3.4.3-r1.ebuild [new file with mode: 0644]
kde-base/kdm/kdm-3.5.0_beta2.ebuild

index 7ef049cc32954c1128108468eef61f494b040e97..c26339a7e616aa828d78efa88f20d425942ef182 100644 (file)
@@ -1,6 +1,15 @@
 # ChangeLog for kde-base/kdebase
 # Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/kde-base/kdebase/ChangeLog,v 1.224 2005/10/15 11:08:40 greg_g Exp $
+# $Header: /var/cvsroot/gentoo-x86/kde-base/kdebase/ChangeLog,v 1.225 2005/10/19 13:48:05 greg_g Exp $
+
+*kdebase-3.4.3-r1 (19 Oct 2005)
+
+  19 Oct 2005; Gregorio Guidi <greg_g@gentoo.org>
+  +files/kdebase-3.4.3-noimake.patch, +files/kdebase-3.4.3-xdmcp.patch,
+  +files/kdebase-3.5.0_beta2-noimake.patch, +kdebase-3.4.3-r1.ebuild,
+  kdebase-3.5.0_beta2.ebuild:
+  Add patch to fix segfault in XDMCP (#109528). Add patch to compile without
+  imake (#102780).
 
 *kdebase-3.5.0_beta2 (15 Oct 2005)
 
diff --git a/kde-base/kdebase/files/digest-kdebase-3.4.3-r1 b/kde-base/kdebase/files/digest-kdebase-3.4.3-r1
new file mode 100644 (file)
index 0000000..bb8792f
--- /dev/null
@@ -0,0 +1,2 @@
+MD5 7b25feba2774c077601d472dae5352c8 kdebase-3.4.3.tar.bz2 22425835
+MD5 0437cf2231a850d7a1b47d07daca603f kdebase-3.4.3-kubuntu-hal.patch.gz 8441
diff --git a/kde-base/kdebase/files/kdebase-3.4.3-noimake.patch b/kde-base/kdebase/files/kdebase-3.4.3-noimake.patch
new file mode 100644 (file)
index 0000000..4718f15
--- /dev/null
@@ -0,0 +1,61 @@
+diff -Nur kdebase-3.4.3.orig/kdm/configure.in.in kdebase-3.4.3/kdm/configure.in.in
+--- kdebase-3.4.3.orig/kdm/configure.in.in     2005-10-05 15:39:13.000000000 +0200
++++ kdebase-3.4.3/kdm/configure.in.in  2005-10-19 11:26:29.000000000 +0200
+@@ -1,42 +1,22 @@
+ 
+ dnl this is for kdm:
+ 
+-KDE_FIND_PATH(xmkmf, XMKMF, [], [AC_MSG_ERROR([xmkmf/imake not found. Please make sure it's in PATH!])])
++AC_MSG_CHECKING([X paths for KDM])
+ 
+-dnl ask imake about various X settings
+-AC_MSG_CHECKING([X paths])
+-imkv=8
+-test "$kde_cv_defines_imake_version" = $imkv || unset kde_cv_defines_imake
+-AC_CACHE_VAL(kde_cv_defines_imake, [
+-  rm -fr conftestdir
+-  if mkdir conftestdir; then
+-    cd conftestdir
+-    cat > Imakefile <<'EOF'[
+-
+-acimake:
+-      @echo "XBINDIR=\"$(BINDIR)\" XLIBDIR=\"$(LIBDIR)\""
+-
+-]EOF
+-    if $XMKMF >&5 2>&1 && test -f Makefile; then
+-      kde_cv_defines_imake=`${MAKE-make} acimake 2> /dev/null | grep -v "^make"`
+-      kde_cv_defines_imake_version=$imkv
+-    else
+-        AC_MSG_RESULT([failed])
+-      AC_MSG_ERROR([$XMKMF (imake) failed.
+-Make sure you have all necessary X development packages installed.
+-On some systems a missing /lib/cpp symlink is at fault.])
+-    fi
+-    cd ..
+-    rm -fr conftestdir
+-  else
+-    AC_MSG_RESULT([failed])
+-    AC_MSG_ERROR([cannot create temporary directory])
+-  fi
+-])
+-AC_MSG_RESULT([done])
+-eval "$kde_cv_defines_imake"
+-AC_DEFINE_UNQUOTED(XBINDIR, "$XBINDIR", [X binaries directory])
+-AC_DEFINE_UNQUOTED(XLIBDIR, "$XLIBDIR", [X libraries directory])
++AC_ARG_WITH(x-binaries-dir,
++      [AS_HELP_STRING(--with-x-binaries-dir=DIR,
++              [set the location of X binaries for KDM])],
++      [], [with_x_binaries_dir=`echo $kde_x_libraries | sed -e 's,/lib.*,/bin,'`])
++
++AC_ARG_WITH(x-libraries-dir,
++      [AS_HELP_STRING(--with-x-libraries-dir=DIR,
++              [set the location of X libraries for KDM])],
++      [], [with_x_libraries_dir=$kde_x_libraries])
++
++AC_MSG_RESULT([binaries in $with_x_binaries_dir, libraries in $with_x_libraries_dir])
++
++AC_DEFINE_UNQUOTED(XBINDIR, "$with_x_binaries_dir", [X binaries directory])
++AC_DEFINE_UNQUOTED(XLIBDIR, "$with_x_libraries_dir", [X libraries directory])
+ 
+ if test -f /etc/ttys; then
+   AC_DEFINE(BSD_INIT, 1, [Define if the system uses a BSD-style init])
diff --git a/kde-base/kdebase/files/kdebase-3.4.3-xdmcp.patch b/kde-base/kdebase/files/kdebase-3.4.3-xdmcp.patch
new file mode 100644 (file)
index 0000000..96b6669
--- /dev/null
@@ -0,0 +1,17 @@
+diff -Nur kdebase-3.4.3.orig/kdm/backend/xdmcp.c kdebase-3.4.3/kdm/backend/xdmcp.c
+--- kdebase-3.4.3.orig/kdm/backend/xdmcp.c     2005-10-05 15:39:11.000000000 +0200
++++ kdebase-3.4.3/kdm/backend/xdmcp.c  2005-10-18 15:30:05.000000000 +0200
+@@ -940,7 +940,12 @@
+                       }
+                       DisposeProtoDisplay( pdpy );
+                       Debug( "starting display %s,%s\n", d->name, d->class2 );
+-                      StartDisplay( d );
++                      if (LoadDisplayResources( d ) < 0) {
++                              LogError( "Unable to read configuration for display %s; "
++                                        "stopping it.\n", d->name );
++                              StopDisplay( d );
++                      } else
++                              StartDisplay( d );
+                       CloseGetter();
+               }
+       }
diff --git a/kde-base/kdebase/files/kdebase-3.5.0_beta2-noimake.patch b/kde-base/kdebase/files/kdebase-3.5.0_beta2-noimake.patch
new file mode 100644 (file)
index 0000000..1f84c2f
--- /dev/null
@@ -0,0 +1,58 @@
+diff -Nur kdebase-3.4.92.orig/kdm/configure.in.in kdebase-3.4.92/kdm/configure.in.in
+--- kdebase-3.4.92.orig/kdm/configure.in.in    2005-10-10 17:04:31.000000000 +0200
++++ kdebase-3.4.92/kdm/configure.in.in 2005-10-19 15:30:11.000000000 +0200
+@@ -1,39 +1,19 @@
+-KDE_FIND_PATH(xmkmf, XMKMF, [], [AC_MSG_ERROR([xmkmf/imake not found. Please make sure it's in PATH!])])
++AC_MSG_CHECKING([X paths for KDM])
+ 
+-dnl ask imake about various X settings
+-AC_MSG_CHECKING([X paths])
+-imkv=8
+-test "$kde_cv_defines_imake_version" = $imkv || unset kde_cv_defines_imake
+-AC_CACHE_VAL(kde_cv_defines_imake, [
+-  rm -fr conftestdir
+-  if mkdir conftestdir; then
+-    cd conftestdir
+-    cat > Imakefile <<'EOF'[
+-
+-acimake:
+-      @echo "XBINDIR=\"$(BINDIR)\" XLIBDIR=\"$(LIBDIR)\""
+-
+-]EOF
+-    if $XMKMF >&5 2>&1 && test -f Makefile; then
+-      kde_cv_defines_imake=`${MAKE-make} acimake 2> /dev/null | grep -v "^make"`
+-      kde_cv_defines_imake_version=$imkv
+-    else
+-        AC_MSG_RESULT([failed])
+-      AC_MSG_ERROR([$XMKMF (imake) failed.
+-Make sure you have all necessary X development packages installed.
+-On some systems a missing /lib/cpp symlink is at fault.])
+-    fi
+-    cd ..
+-    rm -fr conftestdir
+-  else
+-    AC_MSG_RESULT([failed])
+-    AC_MSG_ERROR([cannot create temporary directory])
+-  fi
+-])
+-AC_MSG_RESULT([done])
+-eval "$kde_cv_defines_imake"
+-AC_DEFINE_UNQUOTED(XBINDIR, "$XBINDIR", [X binaries directory])
+-AC_DEFINE_UNQUOTED(XLIBDIR, "$XLIBDIR", [X libraries directory])
++AC_ARG_WITH(x-binaries-dir,
++        [AS_HELP_STRING(--with-x-binaries-dir=DIR,
++                [set the location of X binaries for KDM])],
++        [], [with_x_binaries_dir=`echo $kde_x_libraries | sed -e 's,/lib.*,/bin,'`])
++
++AC_ARG_WITH(x-libraries-dir,
++        [AS_HELP_STRING(--with-x-libraries-dir=DIR,
++                [set the location of X libraries for KDM])],
++        [], [with_x_libraries_dir=$kde_x_libraries])
++
++AC_MSG_RESULT([binaries in $with_x_binaries_dir, libraries in $with_x_libraries_dir])
++
++AC_DEFINE_UNQUOTED(XBINDIR, "$with_x_binaries_dir", [X binaries directory])
++AC_DEFINE_UNQUOTED(XLIBDIR, "$with_x_libraries_dir", [X libraries directory])
+ 
+ if test -f /etc/ttys; then
+   AC_DEFINE(BSD_INIT, 1, [Define if the system uses a BSD-style init])
diff --git a/kde-base/kdebase/kdebase-3.4.3-r1.ebuild b/kde-base/kdebase/kdebase-3.4.3-r1.ebuild
new file mode 100644 (file)
index 0000000..622075c
--- /dev/null
@@ -0,0 +1,141 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/kde-base/kdebase/kdebase-3.4.3-r1.ebuild,v 1.1 2005/10/19 13:48:05 greg_g Exp $
+
+inherit kde-dist eutils
+
+DESCRIPTION="KDE base packages: the desktop, panel, window manager, konqueror..."
+
+SRC_URI="${SRC_URI} mirror://gentoo/kdebase-3.4.3-kubuntu-hal.patch.gz"
+
+KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~mips ~ppc ~sparc ~x86"
+IUSE="arts cups java ldap ieee1394 hal lm_sensors logitech-mouse openexr opengl pam samba ssl"
+# hal: enables hal backend for 'media:' ioslave
+
+DEPEND="arts? ( ~kde-base/arts-${PV} )
+       >=media-libs/freetype-2
+       media-libs/fontconfig
+       pam? ( kde-base/kdebase-pam )
+       >=dev-libs/cyrus-sasl-2
+       ldap? ( >=net-nds/openldap-2 )
+       cups? ( net-print/cups )
+       ssl? ( dev-libs/openssl )
+       opengl? ( virtual/opengl )
+       openexr? ( >=media-libs/openexr-1.2 )
+       samba? ( >=net-fs/samba-3.0.4 )
+       lm_sensors? ( sys-apps/lm_sensors )
+       logitech-mouse? ( >=dev-libs/libusb-0.1.10a )
+       ieee1394? ( sys-libs/libraw1394 )
+       hal? ( sys-apps/dbus
+              sys-apps/hal )"
+
+RDEPEND="${DEPEND}
+       java? ( >=virtual/jre-1.4 )
+       virtual/eject"
+
+DEPEND="${DEPEND}
+       dev-util/pkgconfig"
+
+src_unpack() {
+       kde_src_unpack
+
+       epatch "${FILESDIR}/kdebase-3.4.1-startkde-gentoo.patch"
+
+       # Configure patch. Applied for 3.5.
+       epatch "${FILESDIR}/kdebase-3.4-configure.patch"
+
+       # Support for hal-0.5, backported from 3.5 branch.
+       epatch "${WORKDIR}/kdebase-3.4.3-kubuntu-hal.patch"
+
+       # Fix XDMCP (kde bug 114385). Applied for 3.4.4.
+       epatch "${FILESDIR}/kdebase-3.4.3-xdmcp.patch"
+
+       # Avoid using imake (kde bug 114466).
+       epatch "${FILESDIR}/kdebase-3.4.3-noimake.patch"
+
+       # For the configure and noimake patch.
+       make -f admin/Makefile.common || die
+}
+
+src_compile() {
+       local myconf="--with-dpms --with-x-binaries-dir=/usr/bin
+                     $(use_with arts) $(use_with ldap)
+                     $(use_with cups) $(use_with opengl gl)
+                     $(use_with ssl) $(use_with samba) $(use_with openexr)
+                     $(use_with lm_sensors sensors) $(use_with logitech-mouse libusb)
+                     $(use_with ieee1394 libraw1394) $(use_with hal)"
+
+       if use pam; then
+               myconf="${myconf} --with-pam=yes"
+       else
+               myconf="${myconf} --with-pam=no --with-shadow"
+       fi
+
+       # the java test is problematic (see kde bug 100729) and
+       # useless. All that's needed for java applets to work is
+       # to have the 'java' executable in PATH.
+       myconf="${myconf} --without-java"
+
+       kde_src_compile
+}
+
+src_install() {
+       kde_src_install
+       cd ${S}/kdm && make DESTDIR=${D} GENKDMCONF_FLAGS="--no-old --no-backup --no-in-notice" install
+
+       # startup and shutdown scripts
+       insinto ${KDEDIR}/env
+       doins ${FILESDIR}/agent-startup.sh
+
+       exeinto ${KDEDIR}/shutdown
+       doexe ${FILESDIR}/agent-shutdown.sh
+
+       # freedesktop environment variables
+       cat <<EOF > ${T}/xdg.sh
+export XDG_DATA_DIRS="${KDEDIR}/share:/usr/share"
+export XDG_CONFIG_DIRS="${KDEDIR}/etc/xdg"
+EOF
+       insinto ${KDEDIR}/env
+       doins ${T}/xdg.sh
+
+       # x11 session script
+       cat <<EOF > ${T}/kde-${SLOT}
+#!/bin/sh
+exec ${KDEDIR}/bin/startkde
+EOF
+       exeinto /etc/X11/Sessions
+       doexe ${T}/kde-${SLOT}
+
+       # freedesktop compliant session script
+       sed -e "s:@KDE_BINDIR@:${KDEDIR}/bin:g;s:Name=KDE:Name=KDE ${SLOT}:" \
+               ${S}/kdm/kfrontend/sessions/kde.desktop.in > ${T}/kde-${SLOT}.desktop
+       insinto /usr/share/xsessions
+       doins ${T}/kde-${SLOT}.desktop
+
+       # Customize the kdmrc configuration
+       sed -i -e "s:#SessionsDirs=:SessionsDirs=/usr/share/xsessions\n#SessionsDirs=:" \
+              -e "s:#GreetFont=:GreetFont=Sans Serif,24,-1,5,50,0,0,0,0,0\n#GreetFont=:" \
+              -e "s:#StdFont=:StdFont=Sans Serif,12,-1,5,50,0,0,0,0,0\n#StdFont=:" \
+              -e "s:#FailFont=:FailFont=Sans Serif,12,-1,5,75,0,0,0,0,0\n#FailFont=:" \
+              -e "s:#AntiAliasing=:AntiAliasing=true\n#AntiAliasing=:" \
+               ${D}/${KDEDIR}/share/config/kdm/kdmrc || die
+
+       rmdir ${D}/${KDEDIR}/share/templates/.source/emptydir
+}
+
+pkg_postinst() {
+       # set the default kdm face icon if it's not already set by the system admin
+       if [ ! -e "${ROOT}${KDEDIR}/share/apps/kdm/faces/.default.face.icon" ]; then
+               mkdir -p "${ROOT}${KDEDIR}/share/apps/kdm/faces"
+               cp "${ROOT}${KDEDIR}/share/apps/kdm/pics/users/default1.png" \
+                       "${ROOT}${KDEDIR}/share/apps/kdm/faces/.default.face.icon"
+       fi
+
+       mkdir -p ${ROOT}${KDEDIR}/share/templates/.source/emptydir
+
+       echo
+       einfo "To enable gpg-agent and/or ssh-agent in KDE sessions,"
+       einfo "edit ${KDEDIR}/env/agent-startup.sh and"
+       einfo "${KDEDIR}/shutdown/agent-shutdown.sh"
+       echo
+}
index bc202bdc3ea4b009bcc40db61bb693564c2c835c..bd9eac8a1d571abeeeb70075c0edaaf3aeba606d 100644 (file)
@@ -1,6 +1,6 @@
 # Copyright 1999-2005 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/kde-base/kdebase/kdebase-3.5.0_beta2.ebuild,v 1.1 2005/10/15 11:08:41 greg_g Exp $
+# $Header: /var/cvsroot/gentoo-x86/kde-base/kdebase/kdebase-3.5.0_beta2.ebuild,v 1.2 2005/10/19 13:48:05 greg_g Exp $
 
 inherit kde-dist eutils
 
@@ -39,6 +39,12 @@ src_unpack() {
        kde_src_unpack
 
        epatch "${FILESDIR}/kdebase-3.5-startkde-gentoo.patch"
+
+       # Avoid using imake (kde bug 114466).
+       epatch "${FILESDIR}/kdebase-3.5.0_beta2-noimake.patch"
+
+       # For the noimake patch.
+       make -f admin/Makefile.common || die
 }
 
 src_compile() {
index 2d8be1be8127f188dcdba863a51a0b1d7f80c986..9c528f8c7a1e00ebeb240edea730fa612f21fecf 100644 (file)
@@ -1,6 +1,15 @@
 # ChangeLog for kde-base/kdm
 # Copyright 1999-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/kde-base/kdm/ChangeLog,v 1.22 2005/10/15 11:08:42 greg_g Exp $
+# $Header: /var/cvsroot/gentoo-x86/kde-base/kdm/ChangeLog,v 1.23 2005/10/19 13:52:14 greg_g Exp $
+
+*kdm-3.4.3-r1 (19 Oct 2005)
+
+  19 Oct 2005; Gregorio Guidi <greg_g@gentoo.org>
+  +files/kdebase-3.4.3-noimake.patch, +files/kdebase-3.4.3-xdmcp.patch,
+  +files/kdebase-3.5.0_beta2-noimake.patch, +kdm-3.4.3-r1.ebuild,
+  kdm-3.5.0_beta2.ebuild:
+  Add patch to fix segfault in XDMCP (#109528). Add patch to compile without
+  imake (#102780).
 
 *kdm-3.5.0_beta2 (14 Oct 2005)
 
diff --git a/kde-base/kdm/files/digest-kdm-3.4.3-r1 b/kde-base/kdm/files/digest-kdm-3.4.3-r1
new file mode 100644 (file)
index 0000000..6a8e77e
--- /dev/null
@@ -0,0 +1 @@
+MD5 7b25feba2774c077601d472dae5352c8 kdebase-3.4.3.tar.bz2 22425835
diff --git a/kde-base/kdm/files/kdebase-3.4.3-noimake.patch b/kde-base/kdm/files/kdebase-3.4.3-noimake.patch
new file mode 100644 (file)
index 0000000..4718f15
--- /dev/null
@@ -0,0 +1,61 @@
+diff -Nur kdebase-3.4.3.orig/kdm/configure.in.in kdebase-3.4.3/kdm/configure.in.in
+--- kdebase-3.4.3.orig/kdm/configure.in.in     2005-10-05 15:39:13.000000000 +0200
++++ kdebase-3.4.3/kdm/configure.in.in  2005-10-19 11:26:29.000000000 +0200
+@@ -1,42 +1,22 @@
+ 
+ dnl this is for kdm:
+ 
+-KDE_FIND_PATH(xmkmf, XMKMF, [], [AC_MSG_ERROR([xmkmf/imake not found. Please make sure it's in PATH!])])
++AC_MSG_CHECKING([X paths for KDM])
+ 
+-dnl ask imake about various X settings
+-AC_MSG_CHECKING([X paths])
+-imkv=8
+-test "$kde_cv_defines_imake_version" = $imkv || unset kde_cv_defines_imake
+-AC_CACHE_VAL(kde_cv_defines_imake, [
+-  rm -fr conftestdir
+-  if mkdir conftestdir; then
+-    cd conftestdir
+-    cat > Imakefile <<'EOF'[
+-
+-acimake:
+-      @echo "XBINDIR=\"$(BINDIR)\" XLIBDIR=\"$(LIBDIR)\""
+-
+-]EOF
+-    if $XMKMF >&5 2>&1 && test -f Makefile; then
+-      kde_cv_defines_imake=`${MAKE-make} acimake 2> /dev/null | grep -v "^make"`
+-      kde_cv_defines_imake_version=$imkv
+-    else
+-        AC_MSG_RESULT([failed])
+-      AC_MSG_ERROR([$XMKMF (imake) failed.
+-Make sure you have all necessary X development packages installed.
+-On some systems a missing /lib/cpp symlink is at fault.])
+-    fi
+-    cd ..
+-    rm -fr conftestdir
+-  else
+-    AC_MSG_RESULT([failed])
+-    AC_MSG_ERROR([cannot create temporary directory])
+-  fi
+-])
+-AC_MSG_RESULT([done])
+-eval "$kde_cv_defines_imake"
+-AC_DEFINE_UNQUOTED(XBINDIR, "$XBINDIR", [X binaries directory])
+-AC_DEFINE_UNQUOTED(XLIBDIR, "$XLIBDIR", [X libraries directory])
++AC_ARG_WITH(x-binaries-dir,
++      [AS_HELP_STRING(--with-x-binaries-dir=DIR,
++              [set the location of X binaries for KDM])],
++      [], [with_x_binaries_dir=`echo $kde_x_libraries | sed -e 's,/lib.*,/bin,'`])
++
++AC_ARG_WITH(x-libraries-dir,
++      [AS_HELP_STRING(--with-x-libraries-dir=DIR,
++              [set the location of X libraries for KDM])],
++      [], [with_x_libraries_dir=$kde_x_libraries])
++
++AC_MSG_RESULT([binaries in $with_x_binaries_dir, libraries in $with_x_libraries_dir])
++
++AC_DEFINE_UNQUOTED(XBINDIR, "$with_x_binaries_dir", [X binaries directory])
++AC_DEFINE_UNQUOTED(XLIBDIR, "$with_x_libraries_dir", [X libraries directory])
+ 
+ if test -f /etc/ttys; then
+   AC_DEFINE(BSD_INIT, 1, [Define if the system uses a BSD-style init])
diff --git a/kde-base/kdm/files/kdebase-3.4.3-xdmcp.patch b/kde-base/kdm/files/kdebase-3.4.3-xdmcp.patch
new file mode 100644 (file)
index 0000000..96b6669
--- /dev/null
@@ -0,0 +1,17 @@
+diff -Nur kdebase-3.4.3.orig/kdm/backend/xdmcp.c kdebase-3.4.3/kdm/backend/xdmcp.c
+--- kdebase-3.4.3.orig/kdm/backend/xdmcp.c     2005-10-05 15:39:11.000000000 +0200
++++ kdebase-3.4.3/kdm/backend/xdmcp.c  2005-10-18 15:30:05.000000000 +0200
+@@ -940,7 +940,12 @@
+                       }
+                       DisposeProtoDisplay( pdpy );
+                       Debug( "starting display %s,%s\n", d->name, d->class2 );
+-                      StartDisplay( d );
++                      if (LoadDisplayResources( d ) < 0) {
++                              LogError( "Unable to read configuration for display %s; "
++                                        "stopping it.\n", d->name );
++                              StopDisplay( d );
++                      } else
++                              StartDisplay( d );
+                       CloseGetter();
+               }
+       }
diff --git a/kde-base/kdm/files/kdebase-3.5.0_beta2-noimake.patch b/kde-base/kdm/files/kdebase-3.5.0_beta2-noimake.patch
new file mode 100644 (file)
index 0000000..1f84c2f
--- /dev/null
@@ -0,0 +1,58 @@
+diff -Nur kdebase-3.4.92.orig/kdm/configure.in.in kdebase-3.4.92/kdm/configure.in.in
+--- kdebase-3.4.92.orig/kdm/configure.in.in    2005-10-10 17:04:31.000000000 +0200
++++ kdebase-3.4.92/kdm/configure.in.in 2005-10-19 15:30:11.000000000 +0200
+@@ -1,39 +1,19 @@
+-KDE_FIND_PATH(xmkmf, XMKMF, [], [AC_MSG_ERROR([xmkmf/imake not found. Please make sure it's in PATH!])])
++AC_MSG_CHECKING([X paths for KDM])
+ 
+-dnl ask imake about various X settings
+-AC_MSG_CHECKING([X paths])
+-imkv=8
+-test "$kde_cv_defines_imake_version" = $imkv || unset kde_cv_defines_imake
+-AC_CACHE_VAL(kde_cv_defines_imake, [
+-  rm -fr conftestdir
+-  if mkdir conftestdir; then
+-    cd conftestdir
+-    cat > Imakefile <<'EOF'[
+-
+-acimake:
+-      @echo "XBINDIR=\"$(BINDIR)\" XLIBDIR=\"$(LIBDIR)\""
+-
+-]EOF
+-    if $XMKMF >&5 2>&1 && test -f Makefile; then
+-      kde_cv_defines_imake=`${MAKE-make} acimake 2> /dev/null | grep -v "^make"`
+-      kde_cv_defines_imake_version=$imkv
+-    else
+-        AC_MSG_RESULT([failed])
+-      AC_MSG_ERROR([$XMKMF (imake) failed.
+-Make sure you have all necessary X development packages installed.
+-On some systems a missing /lib/cpp symlink is at fault.])
+-    fi
+-    cd ..
+-    rm -fr conftestdir
+-  else
+-    AC_MSG_RESULT([failed])
+-    AC_MSG_ERROR([cannot create temporary directory])
+-  fi
+-])
+-AC_MSG_RESULT([done])
+-eval "$kde_cv_defines_imake"
+-AC_DEFINE_UNQUOTED(XBINDIR, "$XBINDIR", [X binaries directory])
+-AC_DEFINE_UNQUOTED(XLIBDIR, "$XLIBDIR", [X libraries directory])
++AC_ARG_WITH(x-binaries-dir,
++        [AS_HELP_STRING(--with-x-binaries-dir=DIR,
++                [set the location of X binaries for KDM])],
++        [], [with_x_binaries_dir=`echo $kde_x_libraries | sed -e 's,/lib.*,/bin,'`])
++
++AC_ARG_WITH(x-libraries-dir,
++        [AS_HELP_STRING(--with-x-libraries-dir=DIR,
++                [set the location of X libraries for KDM])],
++        [], [with_x_libraries_dir=$kde_x_libraries])
++
++AC_MSG_RESULT([binaries in $with_x_binaries_dir, libraries in $with_x_libraries_dir])
++
++AC_DEFINE_UNQUOTED(XBINDIR, "$with_x_binaries_dir", [X binaries directory])
++AC_DEFINE_UNQUOTED(XLIBDIR, "$with_x_libraries_dir", [X libraries directory])
+ 
+ if test -f /etc/ttys; then
+   AC_DEFINE(BSD_INIT, 1, [Define if the system uses a BSD-style init])
diff --git a/kde-base/kdm/kdm-3.4.3-r1.ebuild b/kde-base/kdm/kdm-3.4.3-r1.ebuild
new file mode 100644 (file)
index 0000000..530cd95
--- /dev/null
@@ -0,0 +1,71 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/kde-base/kdm/kdm-3.4.3-r1.ebuild,v 1.1 2005/10/19 13:52:14 greg_g Exp $
+
+KMNAME=kdebase
+MAXKDEVER=$PV
+KM_DEPRANGE="$PV $MAXKDEVER"
+inherit kde-meta eutils
+
+DESCRIPTION="KDE login manager, similar to xdm and gdm"
+KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="pam"
+
+KMEXTRA="kdmlib/"
+KMEXTRACTONLY="libkonq/konq_defaults.h
+           kioslave/thumbnail/configure.in.in" # for the HAVE_LIBART test
+KMCOMPILEONLY="kcontrol/background"
+DEPEND="pam? ( kde-base/kdebase-pam )
+       $(deprange $PV $MAXKDEVER kde-base/kcontrol)"
+       # Requires the desktop background settings and kdm modules,
+       # so until we separate the kcontrol modules into separate ebuilds :-),
+       # there's a dep here
+
+# Fix XDMCP (kde bug 114385). Applied for 3.4.4.
+PATCHES="${FILESDIR}/kdebase-3.4.3-xdmcp.patch"
+
+# Avoid using imake (kde bug 114466).
+PATCHES="${PATCHES} ${FILESDIR}/kdebase-3.4.3-noimake.patch"
+
+src_compile() {
+       local myconf="--with-x-binaries-dir=/usr/bin"
+
+       if use pam; then
+               myconf="${myconf} --with-pam=yes"
+       else
+               myconf="${myconf} --with-pam=no --with-shadow"
+       fi
+
+       kde-meta_src_compile myconf configure
+       kde_remove_flag kdm/kfrontend -fomit-frame-pointer
+       kde-meta_src_compile make
+}
+
+src_install() {
+       kde-meta_src_install
+       cd ${S}/kdm && make DESTDIR=${D} GENKDMCONF_FLAGS="--no-old --no-backup --no-in-notice" install
+
+       # We tell kdm to /use session files from /usr/share/xsessions.
+       # I've removed some other kdmrc mods from here, since it's not clear why
+       # the default aren't ok (and I'm not sure about the benefits of using
+       # the xdm configfiles under /etc/X11 instead of our own ones),
+       # and it's the Gentoo Way to avoid modifying upstream behaviour.
+       # Tell me if you don't like this. --danarmak
+       cd ${D}/${KDEDIR}/share/config/kdm || die
+       sed -i -e "s:#SessionsDirs=:SessionsDirs=/usr/share/xsessions\n#SessionsDirs=:" \
+               -e "s:#GreetFont=:GreetFont=Sans Serif,24,-1,5,50,0,0,0,0,0\n#GreetFont=:" \
+               -e "s:#StdFont=:StdFont=Sans Serif,12,-1,5,50,0,0,0,0,0\n#StdFont=:" \
+               -e "s:#FailFont=:FailFont=Sans Serif,12,-1,5,75,0,0,0,0,0\n#FailFont=:" \
+               -e "s:#AntiAliasing=:AntiAliasing=true\n#AntiAliasing=:" \
+               kdmrc
+}
+
+pkg_postinst() {
+       # set the default kdm face icon if it's not already set by the system admin
+       # because this is user-overrideable in that way, it's not in src_install
+       if [ ! -e "${ROOT}${KDEDIR}/share/apps/kdm/faces/.default.face.icon" ]; then
+               mkdir -p "${ROOT}${KDEDIR}/share/apps/kdm/faces"
+               cp "${ROOT}${KDEDIR}/share/apps/kdm/pics/users/default1.png" \
+                   "${ROOT}${KDEDIR}/share/apps/kdm/faces/.default.face.icon"
+       fi
+}
index 3988aa37537274ee5a119e948a174fc660bff287..60a1d29edfd9321eeb45cd1910b44b561ed15ff7 100644 (file)
@@ -1,6 +1,6 @@
 # Copyright 1999-2005 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/kde-base/kdm/kdm-3.5.0_beta2.ebuild,v 1.1 2005/10/14 18:41:53 danarmak Exp $
+# $Header: /var/cvsroot/gentoo-x86/kde-base/kdm/kdm-3.5.0_beta2.ebuild,v 1.2 2005/10/19 13:52:14 greg_g Exp $
 
 KMNAME=kdebase
 MAXKDEVER=$PV
@@ -24,11 +24,17 @@ DEPEND="$DEPEND
        # so until we separate the kcontrol modules into separate ebuilds :-),
        # there's a dep here
 
+# Avoid using imake (kde bug 114466).
+PATCHES="${FILESDIR}/kdebase-3.5.0_beta2-noimake.patch"
 
 src_compile() {
-       use pam \
-               && myconf="$myconf --with-pam=yes" \
-               || myconf="$myconf --with-pam=no --with-shadow"
+       local myconf="--with-x-binaries-dir=/usr/bin"
+
+       if use pam; then
+               myconf="${myconf} --with-pam=yes"
+       else
+               myconf="${myconf} --with-pam=no --with-shadow"
+       fi
 
        kde-meta_src_compile myconf configure
        kde_remove_flag kdm/kfrontend -fomit-frame-pointer