summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-admin/xstow')
-rw-r--r--app-admin/xstow/Manifest1
-rw-r--r--app-admin/xstow/files/99xstow3
-rw-r--r--app-admin/xstow/files/xstow-0.5.1-gcc43.patch67
-rw-r--r--app-admin/xstow/files/xstow-1.0.1-ncurses.patch56
-rw-r--r--app-admin/xstow/metadata.xml17
-rw-r--r--app-admin/xstow/xstow-1.0.1.ebuild49
6 files changed, 193 insertions, 0 deletions
diff --git a/app-admin/xstow/Manifest b/app-admin/xstow/Manifest
new file mode 100644
index 000000000000..824aa2238976
--- /dev/null
+++ b/app-admin/xstow/Manifest
@@ -0,0 +1 @@
+DIST xstow-1.0.1.tar.bz2 153530 SHA256 b25279134689519c15fa5caea3d437c0e8c49d9cfa0c91cc45fb842025b1bf35 SHA512 bb4bb0e9d8fbfe3933c2137cd2258e3246ebfba549aec669a7f324e82af0eea4ab7ca38e68d7102c1417c1566029318749139fa91efd7a904b8f742d426a3d4b WHIRLPOOL 052f3ed2ddf3b6612d898a596aec4547578253aca1e1fa2dc7b3209646c029d59b589ede80ad40586b5c926e6e7826591f98d0137feddfcd4aa5fea66218a23a
diff --git a/app-admin/xstow/files/99xstow b/app-admin/xstow/files/99xstow
new file mode 100644
index 000000000000..07625f392537
--- /dev/null
+++ b/app-admin/xstow/files/99xstow
@@ -0,0 +1,3 @@
+LDPATH=/var/lib/lib
+PATH=/var/lib/bin
+MANPATH=/var/lib/share/man
diff --git a/app-admin/xstow/files/xstow-0.5.1-gcc43.patch b/app-admin/xstow/files/xstow-0.5.1-gcc43.patch
new file mode 100644
index 000000000000..ded9e32cc577
--- /dev/null
+++ b/app-admin/xstow/files/xstow-0.5.1-gcc43.patch
@@ -0,0 +1,67 @@
+--- xstow-0.5.1.orig/src/format.h
++++ xstow-0.5.1/src/format.h
+@@ -648,17 +648,17 @@
+
+ switch( num_of_args )
+ {
+- case 1: n = std::snprintf( buffer, buffer_size, format.c_str(),
++ case 1: n = snprintf( buffer, buffer_size, format.c_str(),
+ D( a ) ); break;
+- case 2: n = std::snprintf( buffer, buffer_size, format.c_str(),
++ case 2: n = snprintf( buffer, buffer_size, format.c_str(),
+ D( a ), D( b ) ); break;
+- case 3: n = std::snprintf( buffer, buffer_size, format.c_str(),
++ case 3: n = snprintf( buffer, buffer_size, format.c_str(),
+ D( a ), D( b ), D( c ) ); break;
+- case 4: n = std::snprintf( buffer, buffer_size, format.c_str(),
++ case 4: n = snprintf( buffer, buffer_size, format.c_str(),
+ D( a ), D( b ), D( c ), D( d ) ); break;
+- case 5: n = std::snprintf( buffer, buffer_size, format.c_str(),
++ case 5: n = snprintf( buffer, buffer_size, format.c_str(),
+ D( a ), D( b ), D( c ), D( d ), D( e ) ); break;
+- case 6: n = std::snprintf( buffer, buffer_size, format.c_str(),
++ case 6: n = snprintf( buffer, buffer_size, format.c_str(),
+ D( a ), D( b ), D( c ), D( d ), D( e ), D( f ) ); break;
+ }
+
+--- xstow-0.5.1.orig/src/main.cpp
++++ xstow-0.5.1/src/main.cpp
+@@ -1,3 +1,4 @@
++#include <cstdlib>
+ #include <iostream>
+
+ #include "local_config.h"
+--- xstow-0.5.1.orig/src/cppdir.cpp
++++ xstow-0.5.1/src/cppdir.cpp
+@@ -1,6 +1,8 @@
+ #include "cppdir.h"
+ #include "debug.h"
+
++#include <cstdlib>
++
+ #define OUT(level) DEBUG_OUT( level, MODULE_CPPDIR)
+
+ extern "C" {
+--- xstow-0.5.1.orig/src/setup.cpp
++++ xstow-0.5.1/src/setup.cpp
+@@ -5,6 +5,8 @@
+ #include "debug.h"
+ #include "nignore.h"
+
++#include <cstdlib>
++
+ #undef OUT
+
+ #define OUT( level ) DEBUG_OUT( level, MODULE_SETUP )
+--- xstow-0.5.1.orig/src/tree.cpp
++++ xstow-0.5.1/src/tree.cpp
+@@ -26,6 +26,7 @@
+
+
+ #include <algorithm>
++#include <cstring>
+
+ #define OUT(level) DEBUG_OUT(level, MODULE_TREE)
+
+
+
diff --git a/app-admin/xstow/files/xstow-1.0.1-ncurses.patch b/app-admin/xstow/files/xstow-1.0.1-ncurses.patch
new file mode 100644
index 000000000000..b7d29f287e7f
--- /dev/null
+++ b/app-admin/xstow/files/xstow-1.0.1-ncurses.patch
@@ -0,0 +1,56 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -91,11 +91,12 @@
+ AC_MSG_RESULT(disabled)
+ support_curses=0
+ else
++ AC_MSG_RESULT(enabled)
+ support_curses=1
+ fi
+ ],
+- [
+- AC_MSG_RESULT(enabled)
++ [])
++if test $support_curses -eq 1; then
+ AC_CHECK_HEADER([curses.h],
+ [
+ # test which libraray to use
+@@ -146,7 +147,7 @@
+ fi
+
+ if test $support_curses -eq 1; then
+- AC_SUBST(LDFLAGS_DYNAMIC, "$LDFLAGS -l$curseslib $tinfolib")
++ AC_SUBST(LDFLAGS_DYNAMIC, "-l$curseslib $tinfolib")
+ AC_DEFINE(HAVE_CURSES_H, 1, [curses library can be used])
+ fi
+
+@@ -154,8 +155,7 @@
+ [
+ support_curses=0
+ ])
+- ])
+-
++fi
+
+ NO_STL_SSTREAM=0
+ NO_STL_STRSTREAM=0
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -46,7 +46,7 @@
+ backtrace.h \
+ backtrace.cpp
+
+-xstow_LDFLAGS= $(LDFLAGS) $(LDFLAGS_DYNAMIC)
++xstow_LDADD= $(LDFLAGS_DYNAMIC)
+
+ if ENABLE_MERGE
+
+@@ -63,7 +63,7 @@
+ backtrace.h \
+ backtrace.cpp
+
+-merge_info_LDFLAGS= $(LDFLAGS) $(LDFLAGS_DYNAMIC)
++merge_info_LDADD= $(LDFLAGS_DYNAMIC)
+
+ endif
+
diff --git a/app-admin/xstow/metadata.xml b/app-admin/xstow/metadata.xml
new file mode 100644
index 000000000000..fd48bdee4f61
--- /dev/null
+++ b/app-admin/xstow/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>proxy-maintainers</herd>
+ <maintainer>
+ <email>ewfalor@gmail.com</email>
+ <name>Erik Falor</name>
+ </maintainer>
+ <maintainer>
+ <email>maksbotan@gentoo.org</email>
+ <name>Maxim Koltsov</name>
+ </maintainer>
+ <longdescription>A program that manages the installation of software packages.</longdescription>
+ <upstream>
+ <remote-id type="sourceforge">xstow</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-admin/xstow/xstow-1.0.1.ebuild b/app-admin/xstow/xstow-1.0.1.ebuild
new file mode 100644
index 000000000000..99427b597b03
--- /dev/null
+++ b/app-admin/xstow/xstow-1.0.1.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools eutils
+
+DESCRIPTION="replacement for GNU stow with extensions"
+HOMEPAGE="http://xstow.sourceforge.net/"
+SRC_URI="mirror://sourceforge/xstow/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE="ncurses"
+
+DEPEND="ncurses? ( sys-libs/ncurses )"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-ncurses.patch
+ eautoreconf
+}
+
+src_configure() {
+ econf $(use_with ncurses curses)
+}
+
+src_install() {
+ emake DESTDIR="${D}" docdir="/usr/share/doc/${PF}/html" install
+ dodoc AUTHORS ChangeLog NEWS README TODO
+
+ # create new STOWDIR
+ dodir /var/lib/xstow
+
+ # install env.d file to add STOWDIR to PATH and LDPATH
+ doenvd "${FILESDIR}/99xstow" || die "doenvd failed"
+}
+
+pkg_postinst() {
+ elog "We now recommend that you use /var/lib/xstow as your STOWDIR"
+ elog "instead of /usr/local in order to avoid conflicts with the"
+ elog "symlink from /usr/lib64 -> /usr/lib. See Bug 246264"
+ elog "(regarding app-admin/stow, equally applicable to XStow) for"
+ elog "more details on this change."
+ elog "For your convenience, PATH has been updated to include"
+ elog "/var/lib/bin."
+}