diff options
Diffstat (limited to 'sys-apps/more')
-rw-r--r-- | sys-apps/more/Manifest | 1 | ||||
-rw-r--r-- | sys-apps/more/files/more-2.12r-freebsd.patch | 65 | ||||
-rw-r--r-- | sys-apps/more/metadata.xml | 7 | ||||
-rw-r--r-- | sys-apps/more/more-2.12r.ebuild | 62 |
4 files changed, 135 insertions, 0 deletions
diff --git a/sys-apps/more/Manifest b/sys-apps/more/Manifest new file mode 100644 index 000000000000..569b7a1eb5bb --- /dev/null +++ b/sys-apps/more/Manifest @@ -0,0 +1 @@ +DIST util-linux-2.12r.tar.bz2 1370907 SHA256 b8e499b338ce9fbd1fb315194b26540ec823c0afc46c9e145ac7a3e38ad57e6b diff --git a/sys-apps/more/files/more-2.12r-freebsd.patch b/sys-apps/more/files/more-2.12r-freebsd.patch new file mode 100644 index 000000000000..09a1ac60f717 --- /dev/null +++ b/sys-apps/more/files/more-2.12r-freebsd.patch @@ -0,0 +1,65 @@ +diff -Nur util-linux-2.12r.orig/text-utils/Makefile util-linux-2.12r/text-utils/Makefile +--- util-linux-2.12r.orig/text-utils/Makefile 2007-06-14 13:37:07 -0600 ++++ util-linux-2.12r/text-utils/Makefile 2007-06-14 15:11:01 -0600 +@@ -30,13 +30,19 @@ + CFLAGS:=$(CFLAGS) -DPGNOBELL + endif + ++# On FreeBSD, we need to include libcompat (more uses re_comp & re_exec) ++OS=$(shell uname) ++ifeq "$(OS)" "FreeBSD" ++ LIBCOMPAT=-lcompat ++endif ++ + all: $(BIN) $(USRBIN) + + # more and pg and ul use curses - maybe we can't compile them + ifeq "$(HAVE_NCURSES)" "yes" + # Have ncurses - make more and pg and ul + more pg ul: +- $(CC) $(CFLAGS) $(LDFLAGS) $^ -o $@ $(LIBCURSES) ++ $(CC) $(CFLAGS) $(LDFLAGS) $^ -o $@ $(LIBCURSES) $(LIBCOMPAT) + more: more.o $(LIB)/xstrncpy.o + pg: pg.o + ul: ul.o +diff -Nur util-linux-2.12r.orig/text-utils/more.c util-linux-2.12r/text-utils/more.c +--- util-linux-2.12r.orig/text-utils/more.c 2007-06-14 13:37:07 -0600 ++++ util-linux-2.12r/text-utils/more.c 2007-06-14 13:28:34 -0600 +@@ -63,6 +63,16 @@ + #include <regex.h> + #undef _REGEX_RE_COMP + ++/* Include limits.h on FreeBSD */ ++#ifdef __FreeBSD__ ++#include <limits.h> ++#endif ++ ++/* Define CBAUD for FreeBSD */ ++#ifndef CBAUD ++#define CBAUD 0010017 ++#endif ++ + #define VI "vi" /* found on the user's path */ + + #define Fopen(s,m) (Currline = 0,file_pos=0,fopen(s,m)) +@@ -1560,7 +1570,7 @@ + } + if (feof (file)) { + if (!no_intty) { +-#ifndef __linux__ ++#if !defined(__linux__) && !defined(__FreeBSD__) + /* No longer in libc 4.5.8. . . */ + file->_flags &= ~STDIO_S_EOF_SEEN; /* why doesn't fseek do this ??!!??! */ + #endif +@@ -1805,7 +1815,11 @@ + tcgetattr(fileno(stderr), &otty); + savetty0 = otty; + slow_tty = (otty.c_cflag & CBAUD) < B1200; ++#ifdef __FreeBSD__ ++ hardtabs = 1; ++#else + hardtabs = (otty.c_oflag & TABDLY) != XTABS; ++#endif + if (!no_tty) { + otty.c_lflag &= ~(ICANON|ECHO); + otty.c_cc[VMIN] = 1; diff --git a/sys-apps/more/metadata.xml b/sys-apps/more/metadata.xml new file mode 100644 index 000000000000..d9cd2cad66c2 --- /dev/null +++ b/sys-apps/more/metadata.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<maintainer> +<email>maintainer-needed@gentoo.org</email> +</maintainer> +</pkgmetadata> diff --git a/sys-apps/more/more-2.12r.ebuild b/sys-apps/more/more-2.12r.ebuild new file mode 100644 index 000000000000..fb2699e53c73 --- /dev/null +++ b/sys-apps/more/more-2.12r.ebuild @@ -0,0 +1,62 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=2 + +inherit eutils flag-o-matic + +DESCRIPTION="Primitive text file viewer" +HOMEPAGE="http://www.kernel.org/pub/linux/utils/util-linux/" +SRC_URI="mirror://kernel/linux/utils/util-linux/util-linux-${PV}.tar.bz2" +S=${WORKDIR}/util-linux-${PV} + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64-fbsd ~x86-fbsd" +IUSE="static nls selinux" + +RDEPEND="!static? ( >=sys-libs/ncurses-5.2-r2 ) + selinux? ( sys-libs/libselinux ) + !sys-apps/util-linux" +DEPEND="${RDEPEND} + static? ( >=sys-libs/ncurses-5.2-r2[static-libs] ) + nls? ( sys-devel/gettext )" + +yesno() { use $1 && echo yes || echo no; } + +src_prepare() { + epatch "${FILESDIR}"/${P}-freebsd.patch + + # Enable random features + local mconfigs="MCONFIG" + sed -i \ + -e "/^HAVE_SELINUX=/s:no:$(yesno selinux):" \ + -e "/^DISABLE_NLS=/s:no:$(yesno !nls):" \ + -e "/^HAVE_KILL=/s:no:yes:" \ + -e "/^HAVE_SLN=/s:no:yes:" \ + -e "/^HAVE_TSORT/s:no:yes:" \ + -e "s:-pipe -O2 \$(CPUOPT) -fomit-frame-pointer:${CFLAGS}:" \ + -e "s:CPU=.*:CPU=${CHOST%%-*}:" \ + -e "s:SUIDMODE=.*4755:SUIDMODE=4711:" \ + ${mconfigs} || die "MCONFIG sed" +} + +src_configure() { + use static && append-ldflags -static + export CC="$(tc-getCC)" + + econf || die "configure failed" +} + +src_compile() { + emake -C lib xstrncpy.o || die "emake xstrncpy.o failed" + emake -C text-utils more || die "emake more failed" +} + +src_install() { + exeinto /bin + doexe text-utils/more || die + doman text-utils/more.1 || die + dodoc HISTORY MAINTAINER README VERSION +} |