Permalink
Browse files

FL-574: icewm, add missing libgnomeui dep

  • Loading branch information...
1 parent f56b6d0 commit 13eb7ee5c30ce6b4c98db74068ab4c35a3f96fd1 @angryvincent angryvincent committed Jun 9, 2013
View
2 x11-wm/icewm/Manifest
@@ -0,0 +1,2 @@
+DIST icewm-1.2.37.tar.gz 841879 SHA256 bfb60165cddafb458cbfd4b4b9203aa351e37cb75e0ad0c64e818b6fd2140595
+DIST icewm-1.3.7.tar.gz 898197 SHA256 ca1a78046ae340c324c441ce24a9675c24a8bafd3eb6ed8205345785da08887b SHA512 b0c09b19d1a6df3acf03eda364716b5a8516011c760806087fd6315ccf2a5c926471db56079b46d8fab01db87ea42a809a66fe3088b6ad8575e41a000914e895 WHIRLPOOL 8ea9ade64b2d6eadedb35ec146096fd6c3986142ff14d718c789315aaf3bfb1ef9afcb5206ee2286bc01f3775373428d5b969e3e632e87eb2bf1e49a3d03b9ef
View
9 x11-wm/icewm/files/IceWM.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Encoding=UTF-8
+Name=IceWM
+Comment=This session logs you into IceWM
+Exec=icewm-session
+TryExec=icewm-session
+# no icon yet, only the top three are currently used
+Icon=
+Type=Application
View
26 x11-wm/icewm/files/icewm-1.2.37-gnome2.patch
@@ -0,0 +1,26 @@
+diff -NrU5 icewm-1.2.37.original/configure.in icewm-1.2.37/configure.in
+--- icewm-1.2.37.original/configure.in 2009-11-16 15:16:24.000000000 -0600
++++ icewm-1.2.37/configure.in 2009-11-16 16:15:13.000000000 -0600
+@@ -818,19 +818,19 @@
+ [ if test "${enable_menus_gnome2}" = "yes"; then
+ AC_PATH_PROG(PKG_CONFIG, pkg-config)
+
+ if test "${PKG_CONFIG}" != ""; then
+ GNOME_VER=2
+- GNOME2_CFLAGS=`pkg-config --cflags gnome-desktop-2.0`
+- GNOME2_LIBS=`pkg-config --libs gnome-desktop-2.0`
++ GNOME2_CFLAGS=`pkg-config --cflags gnome-desktop-2.0 libgnomeui-2.0`
++ GNOME2_LIBS=`pkg-config --libs gnome-desktop-2.0 libgnomeui-2.0`
+
+ AC_DEFINE(CONFIG_GNOME_MENUS, 1, [Define to make IceWM more GNOME-friendly])
+
+ APPLICATIONS="${APPLICATIONS} icewm-menu-gnome2"
+ GNOME2_PREFIX=`pkg-config --variable=prefix gnome-desktop-2.0`
+ GWMDIR="${GNOME2_PREFIX}/share/gnome/wm-properties/"
+- CONFIG_GNOME2_MENU_DIR="${GNOME2_PREFIX}/share/gnome/vfolders/"
++ CONFIG_GNOME2_MENU_DIR="${GNOME2_PREFIX}/share/desktop-directories/"
+ fi
+
+ if test "${GNOME2_CFLAGS}" = ""; then
+ AC_MSG_ERROR([gnome 2 can not be found via pkg-config.
+ *** Install the GNOME´s development packages.])
View
21 x11-wm/icewm/files/icewm-1.2.37-libX11-1.5.0-deprecated.patch
@@ -0,0 +1,21 @@
+Description: Don't use "deprecated" as identifier, will FTBFS if another
+ library defines functions as deprecated.
+Author: Andreas Moog <amoog@ubuntu.com>
+Bug: https://sourceforge.net/tracker/?func=detail&aid=3494034&group_id=31&atid=100031
+Bug-Ubuntu: https://bugs.launchpad.net/bugs/935179
+Forwarded: Yes
+
+--- icewm-1.3.7.orig/src/base.h
++++ icewm-1.3.7/src/base.h
+@@ -2,9 +2,9 @@
+ #define __BASE_H
+
+ #if ( __GNUC__ == 3 && __GNUC_MINOR__ > 0 ) || __GNUC__ > 3
+-#define deprecated __attribute__((deprecated))
++#define ICEWM_deprecated __attribute__((deprecated))
+ #else
+-#define deprecated
++#define ICEWM_deprecated
+ #endif
+
+ /*** Atomar Data Types ********************************************************/
View
13 x11-wm/icewm/files/icewm-1.3.7-gcc44.patch
@@ -0,0 +1,13 @@
+https://bugs.gentoo.org/show_bug.cgi?id=376451
+
+--- a/src/wmapp.cc
++++ b/src/wmapp.cc
+@@ -337,7 +337,7 @@
+ char ** fontPath(XGetFontPath(xapp->display(), &ndirs));
+
+ char ** newFontPath = new char *[ndirs + 1];
+- newFontPath[ndirs] = fontsdir;
++ newFontPath[ndirs] = (char *)fontsdir;
+
+ if (fontPath)
+ memcpy(newFontPath, fontPath, ndirs * sizeof (char *));
View
14 x11-wm/icewm/files/icewm-1.3.7-gcc47.patch
@@ -0,0 +1,14 @@
+https://bugs.gentoo.org/show_bug.cgi?id=424888
+http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=672089#24
+
+--- a/src/yarray.h
++++ b/src/yarray.h
+@@ -152,7 +152,7 @@ public:
+ }
+
+ virtual void remove(const typename YArray<DataType *>::SizeType index) {
+- if (index < YArray<DataType *>::getCount()) delete getItem(index);
++ if (index < YArray<DataType *>::getCount()) delete this->getItem(index);
+ YArray<DataType *>::remove(index);
+ }
+
View
31 x11-wm/icewm/files/icewm-uclibc.patch
@@ -0,0 +1,31 @@
+--- orig/icewm-1.2.21/src/acpustatus.cc 2005-05-31 14:23:48 -0500
++++ work/icewm-1.2.21/src/acpustatus.cc 2005-08-03 18:29:29 -0500
+@@ -25,17 +25,12 @@
+ #include "sysdep.h"
+ #include "default.h"
+
+-#if defined(linux)
+-//#include <linux/kernel.h>
+-#include <sys/sysinfo.h>
+-#endif
+ #if defined(sun) && defined(SVR4)
+ #include <sys/loadavg.h>
+ #endif
+ #ifdef HAVE_KSTAT_H
+ #include <sys/resource.h>
+ #include <kstat.h>
+-#include <sys/sysinfo.h>
+ #endif
+
+ #ifdef HAVE_SYS_PARAM_H
+@@ -54,6 +49,10 @@
+ #include <sched.h>
+ #endif
+
++#if defined(linux) || defined(HAVE_KSTAT_H)
++#include <sys/sysinfo.h>
++#endif
++
+ #include "intl.h"
+
+ #if (defined(linux) || defined(HAVE_KSTAT_H)) || defined(HAVE_SYSCTL_CP_TIME)
View
121 x11-wm/icewm/icewm-1.2.37.ebuild
@@ -0,0 +1,121 @@
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=1
+
+inherit eutils autotools
+
+DESCRIPTION="Ice Window Manager with Themes"
+
+HOMEPAGE="http://www.icewm.org/"
+
+#fix for icewm preversion package names
+S=${WORKDIR}/${P/_}
+
+SRC_URI="mirror://sourceforge/${PN}/${P/_}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+
+KEYWORDS="*"
+
+IUSE="gnome imlib nls truetype xinerama minimal debug uclibc"
+
+RDEPEND="x11-libs/libX11
+ x11-libs/libXrandr
+ x11-libs/libXext
+ x11-libs/libXpm
+ x11-libs/libXrender
+ x11-libs/libXft
+ x11-libs/libSM
+ x11-libs/libICE
+ xinerama? ( x11-libs/libXinerama )
+ gnome? ( gnome-base/gnome-desktop:2
+ gnome-base/libgnomeui )
+ imlib? ( >=media-libs/imlib-1.9.10-r1 )
+ nls? ( sys-devel/gettext )
+ truetype? ( >=media-libs/freetype-2.0.9 )
+ media-libs/giflib"
+
+DEPEND="${RDEPEND}
+ x11-proto/xproto
+ x11-proto/xextproto
+ xinerama? ( x11-proto/xineramaproto )
+ >=sys-apps/sed-4"
+
+pkg_setup() {
+ if use truetype && use minimal; then
+ ewarn "You have both 'truetype' and 'minimal' use flags enabled."
+ ewarn "If you really want a minimal install, you will have to turn off"
+ ewarn "the truetype flag for this package."
+ fi
+}
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}/src"
+
+ use uclibc && epatch "${FILESDIR}/icewm-uclibc.patch"
+
+ echo "#!/bin/sh" > "$T/icewm"
+ echo "/usr/bin/icewm-session" >> "$T/icewm"
+
+ cd "${S}"
+ #Fixing gnome2 support
+ epatch "${FILESDIR}/${P}-gnome2.patch"
+ # build fix for libX11-1.5.0, bug 420773
+ epatch "${FILESDIR}"/${PN}-1.2.37-libX11-1.5.0-deprecated.patch
+
+ eautoreconf
+}
+
+src_compile() {
+
+ if use truetype
+ then
+ myconf="${myconf} --enable-gradients --enable-shape --enable-shaped-decorations"
+ else
+ myconf="${myconf} --disable-xfreetype --enable-corefonts
+ $(use_enable minimal lite)"
+ fi
+
+ myconf="${myconf}
+ --with-libdir=/usr/share/icewm
+ --with-cfgdir=/etc/icewm
+ --with-docdir=/usr/share/doc/${PF}/html
+ --without-esd-config
+ $(use_enable gnome menus-gnome2)
+ $(use_enable nls)
+ $(use_enable nls i18n)
+ $(use_with imlib)
+ $(use_enable x86 x86-asm)
+ $(use_enable xinerama)
+ $(use_enable debug)"
+
+ CXXFLAGS="${CXXFLAGS}" econf ${myconf} || die "configure failed"
+
+ sed -i "s:/icewm-\$(VERSION)::" src/Makefile || die "patch failed"
+ sed -i "s:ungif:gif:" src/Makefile || die "libungif fix failed"
+
+ emake || die "emake failed"
+}
+
+src_install(){
+ emake DESTDIR="${D}" install || die "make install failed"
+
+ dodoc AUTHORS BUGS CHANGES PLATFORMS README* TODO VERSION
+ dohtml -a html,sgml doc/*
+
+ exeinto /etc/X11/Sessions
+ doexe "$T/icewm"
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}/IceWM.desktop"
+}
+
+pkg_postinst() {
+ if use gnome; then
+ elog "You have enabled gnome USE flag which provides icewm-menu-gnome2 ."
+ elog "It is used internally and generates IceWM program menus from"
+ elog "FreeDesktop .desktop files"
+ fi
+}
View
104 x11-wm/icewm/icewm-1.3.7.ebuild
@@ -0,0 +1,104 @@
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="4"
+
+inherit eutils
+
+DESCRIPTION="Ice Window Manager with Themes"
+HOMEPAGE="http://www.icewm.org/"
+LICENSE="GPL-2"
+SRC_URI="mirror://sourceforge/${PN}/${P/_}.tar.gz"
+SLOT="0"
+KEYWORDS="~*"
+IUSE="debug gnome minimal nls truetype uclibc xinerama"
+
+#fix for icewm preversion package names
+S=${WORKDIR}/${P/_}
+
+RDEPEND="x11-libs/libX11
+ x11-libs/libXrandr
+ x11-libs/libXext
+ x11-libs/libXpm
+ x11-libs/libXrender
+ x11-libs/libXft
+ x11-libs/libSM
+ x11-libs/libICE
+ xinerama? ( x11-libs/libXinerama )
+ gnome? ( gnome-base/gnome-desktop:2 gnome-base/libgnomeui )
+ nls? ( sys-devel/gettext )
+ truetype? ( >=media-libs/freetype-2.0.9 )
+ media-libs/giflib"
+
+DEPEND="${RDEPEND}
+ x11-proto/xproto
+ x11-proto/xextproto
+ xinerama? ( x11-proto/xineramaproto )
+ >=sys-apps/sed-4"
+
+pkg_setup() {
+ if use truetype && use minimal; then
+ ewarn "You have both 'truetype' and 'minimal' use flags enabled."
+ ewarn "If you really want a minimal install, you will have to turn off"
+ ewarn "the truetype flag for this package."
+ fi
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-gcc44.patch \
+ "${FILESDIR}"/${P}-gcc47.patch
+ cd "${S}/src"
+ use uclibc && epatch "${FILESDIR}/${PN}-uclibc.patch"
+ # build fix for libX11-1.5.0, bug 420773
+ epatch "${FILESDIR}"/${PN}-1.2.37-libX11-1.5.0-deprecated.patch
+
+ echo "#!/bin/sh" > "$T/${PN}"
+ echo "/usr/bin/icewm-session" >> "$T/${PN}"
+}
+
+src_configure() {
+ if use truetype
+ then
+ myconf="${myconf} --enable-gradients --enable-shape --enable-shaped-decorations"
+ else
+ myconf="${myconf} --disable-xfreetype --enable-corefonts
+ $(use_enable minimal lite)"
+ fi
+
+ myconf="${myconf}
+ --with-libdir=/usr/share/icewm
+ --with-cfgdir=/etc/icewm
+ --with-docdir=/usr/share/doc/${PF}/html
+ $(use_enable debug)
+ $(use_enable gnome menus-gnome2)
+ $(use_enable nls i18n)
+ $(use_enable nls)
+ $(use_enable x86 x86-asm)
+ $(use_enable xinerama)
+ --without-esd-config"
+
+ CXXFLAGS="${CXXFLAGS}" econf ${myconf}
+
+ sed -i "s:/icewm-\$(VERSION)::" src/Makefile || die "patch failed"
+ sed -i "s:ungif:gif:" src/Makefile || die "libungif fix failed"
+}
+
+src_install(){
+ default
+
+ dodoc AUTHORS BUGS CHANGES PLATFORMS README* TODO VERSION
+ dohtml -a html,sgml doc/*
+
+ exeinto /etc/X11/Sessions
+ doexe "$T/icewm"
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}/IceWM.desktop"
+}
+
+pkg_postinst() {
+ if use gnome; then
+ elog "You have enabled gnome USE flag which provides icewm-menu-gnome2 ."
+ elog "It is used internally and generates IceWM program menus from"
+ elog "FreeDesktop .desktop files"
+ fi
+}

0 comments on commit 13eb7ee

Please sign in to comment.