The Heirloom Project provides traditional implementations of standard

Unix utilities. In many cases, they have been derived from original
Unix material released as Open Source by Caldera and Sun.
This commit is contained in:
cheusov 2011-05-27 22:57:42 +00:00
parent 030ace3214
commit c02ca0f45e
16 changed files with 475 additions and 0 deletions

View file

@ -0,0 +1 @@
This package provides documentation and licence files only

View file

@ -0,0 +1,4 @@
The Heirloom Project provides traditional implementations of standard
Unix utilities. In many cases, they have been derived from original
Unix material released as Open Source by Caldera and Sun.

View file

@ -0,0 +1,33 @@
# $NetBSD: Makefile,v 1.1.1.1 2011/05/27 22:57:42 cheusov Exp $
PKGNAME= heirloom-doc-${HEIRLOOM_VER}
CATEGORIES= sysutils
.include "../../sysutils/heirloom-doc/Makefile.common"
MAINTAINER= cheusov@tut.by
DOC_FILES= COPYING COPYING.LGPL \
LICENSE LUCENT \
OPENSOLARIS.LICENSE README
DOC_DIR= ${PREFIX}/share/doc/${PKGBASE}
MAN1_DIR= ${PREFIX}/${HLROOT}/man/man1
INSTALLATION_DIRS+= ${DOC_DIR} ${DOC_DIR}/LICENSE ${MAN1_DIR}
MAKE_FLAGS+= SUBDIRS=build
do-build:
cd ${WRKSRC}/build && ${MAKE} && cd .. && ${MAKE} -f Makefile intro.1
do-install:
set -e; \
${INSTALL_DATA} ${WRKSRC}/README ${DESTDIR}${DOC_DIR}; \
for i in ${DOC_FILES}; do \
${INSTALL_DATA} ${WRKSRC}/LICENSE/"$${i}" \
${DESTDIR}${DOC_DIR}/LICENSE; \
done; \
${INSTALL_MAN} ${WRKSRC}/intro.1 ${DESTDIR}${MAN1_DIR}
.include "../../mk/bsd.pkg.mk"

View file

@ -0,0 +1,231 @@
# $NetBSD: Makefile.common,v 1.1.1.1 2011/05/27 22:57:42 cheusov Exp $
# used by archivers/heirloom-tar/Makefile
# used by devel/heirloom-common/Makefile
# used by devel/heirloom-getopt/Makefile
# used by devel/heirloom-libcommon/Makefile
# used by devel/heirloom-what/Makefile
# used by devel/libuxre/Makefile
# used by lang/heirloom-awk/Makefile
# used by math/heirloom-factor/Makefile
# used by math/heirloom-units/Makefile
# used by misc/heirloom-banner/Makefile
# used by misc/heirloom-cal/Makefile
# used by misc/heirloom-calendar/Makefile
# used by misc/heirloom-more/Makefile
# used by misc/heirloom-od/Makefile
# used by misc/heirloom-printf/Makefile
# used by misc/heirloom-sleep/Makefile
# used by misc/heirloom-sum/Makefile
# used by misc/heirloom-tcopy/Makefile
# used by misc/heirloom-time/Makefile
# used by news/heirloom-news/Makefile
# used by security/heirloom-su/Makefile
# used by sysutils/heirloom-basename/Makefile
# used by sysutils/heirloom-cat/Makefile
# used by sysutils/heirloom-chmod/Makefile
# used by sysutils/heirloom-chown/Makefile
# used by sysutils/heirloom-cksum/Makefile
# used by sysutils/heirloom-cmp/Makefile
# used by sysutils/heirloom-copy/Makefile
# used by sysutils/heirloom-cp/Makefile
# used by sysutils/heirloom-csplit/Makefile
# used by sysutils/heirloom-dd/Makefile
# used by sysutils/heirloom-dirname/Makefile
# used by sysutils/heirloom-doc/Makefile
# used by sysutils/heirloom-du/Makefile
# used by sysutils/heirloom-env/Makefile
# used by sysutils/heirloom-file/Makefile
# used by sysutils/heirloom-find/Makefile
# used by sysutils/heirloom-getconf/Makefile
# used by sysutils/heirloom-groups/Makefile
# used by sysutils/heirloom-hostname/Makefile
# used by sysutils/heirloom-id/Makefile
# used by sysutils/heirloom-listusers/Makefile
# used by sysutils/heirloom-ln/Makefile
# used by sysutils/heirloom-logins/Makefile
# used by sysutils/heirloom-logname/Makefile
# used by sysutils/heirloom-ls/Makefile
# used by sysutils/heirloom-mesg/Makefile
# used by sysutils/heirloom-mkdir/Makefile
# used by sysutils/heirloom-mkfifo/Makefile
# used by sysutils/heirloom-mknod/Makefile
# used by sysutils/heirloom-nice/Makefile
# used by sysutils/heirloom-nohup/Makefile
# used by sysutils/heirloom-pathchk/Makefile
# used by sysutils/heirloom-pgrep/Makefile
# used by sysutils/heirloom-priocntl/Makefile
# used by sysutils/heirloom-ps/Makefile
# used by sysutils/heirloom-psrinfo/Makefile
# used by sysutils/heirloom-pwd/Makefile
# used by sysutils/heirloom-renice/Makefile
# used by sysutils/heirloom-rm/Makefile
# used by sysutils/heirloom-rmdir/Makefile
# used by sysutils/heirloom-setpgrp/Makefile
# used by sysutils/heirloom-sleep/Makefile
# used by sysutils/heirloom-sort/Makefile
# used by sysutils/heirloom-split/Makefile
# used by sysutils/heirloom-stty/Makefile
# used by sysutils/heirloom-sync/Makefile
# used by sysutils/heirloom-tapecntl/Makefile
# used by sysutils/heirloom-tee/Makefile
# used by sysutils/heirloom-touch/Makefile
# used by sysutils/heirloom-tsort/Makefile
# used by sysutils/heirloom-tty/Makefile
# used by sysutils/heirloom-uname/Makefile
# used by sysutils/heirloom-uniq/Makefile
# used by sysutils/heirloom-users/Makefile
# used by sysutils/heirloom-wc/Makefile
# used by sysutils/heirloom-who/Makefile
# used by sysutils/heirloom-whoami/Makefile
# used by sysutils/heirloom-whodo/Makefile
# used by sysutils/heirloom-xargs/Makefile
# used by sysutils/heirloom-yes/Makefile
# used by textproc/heirloom-bdiff/Makefile
# used by textproc/heirloom-bfs/Makefile
# used by textproc/heirloom-col/Makefile
# used by textproc/heirloom-comm/Makefile
# used by textproc/heirloom-cut/Makefile
# used by textproc/heirloom-diff3/Makefile
# used by textproc/heirloom-ed/Makefile
# used by textproc/heirloom-fmt/Makefile
# used by textproc/heirloom-fold/Makefile
# used by textproc/heirloom-grep/Makefile
# used by textproc/heirloom-head/Makefile
# used by textproc/heirloom-join/Makefile
# used by textproc/heirloom-line/Makefile
# used by textproc/heirloom-nl/Makefile
# used by textproc/heirloom-paste/Makefile
# used by textproc/heirloom-pg/Makefile
# used by textproc/heirloom-pr/Makefile
# used by textproc/heirloom-sdiff/Makefile
# used by textproc/heirloom-sed/Makefile
# used by textproc/heirloom-tail/Makefile
# used by textproc/heirloom-tr/Makefile
# used by textproc/heirloom-ul/Makefile
# used by textproc/heirloom-uniq/Makefile
# used by textproc/heirloom-wc/Makefile
# used by time/heirloom-date/Makefile
DISTNAME= heirloom-${HEIRLOOM_VER}
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=heirloom/}
EXTRACT_SUFX= .tar.bz2
HOMEPAGE= http://heirloom.sourceforge.net/
MAINTAINER= cheusov@tut.by
COMMENT?= Collection of standard Unix utilities (${PKGBASE:S/heirloom-//})
HEIRLOOM_VER= 070715
PKG_DESTDIR_SUPPORT= user-destdir
PATCHDIR= ${.CURDIR}/../../sysutils/heirloom-doc/patches
DISTINFO_FILE= ${.CURDIR}/../../sysutils/heirloom-doc/distinfo
CONFLICTS+= heirloom-toolchest-[0-9]*
DESCR_SRC= ${.CURDIR}/../../sysutils/heirloom-doc/DESCR.common
MAKE_FILE= makefile.hl
HLROOT= heirloom
PLIST_SUBST+= HLROOT=${HLROOT}
.include "../../mk/bsd.prefs.mk"
CFLAGS.Linux+= -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64L
CFLAGS.Interix+= -Dstrtoll=strtol -Dstrtoull=strtoul
CFLAGS.Interix+= -Dintptr_t=int -Datoll=atol -Dinitgroups="(0)"
.if ${NEED_LIBKVM:U0}
LDFLAGS.NetBSD+= -lkvm
LDFLAGS.FreeBSD+= -lkvm
LDFLAGS.OpenBSD+= -lkvm
LDFLAGS.DragonFly+= -lkvm
.endif
.if ${NEED_LIBSOCKET:U0}
LDFLAGS.SunOS+= -lsocket
.endif
.if ${NEED_LIBCRYPT:U0}
LCRYPT= -lcrypt
. if ${OPSYS} == "OpenBSD"
LCRYPT=
. endif
.endif
.if ${NEED_LIBCURSES:U0}
LCURS=-lcurses
. if ${OPSYS} == "NetBSD"
CFLAGS+= -DUSE_TERMCAP
LCURS= -ltermcap
. endif
.endif
.if ${NEED_ZLIB:U0}
LDFLAGS+= -lz
.endif
.if ${NEED_BZLIB:U0}
LDFLAGS+= -lbz2
.endif
HLPREFIX= ${PREFIX:Q}/${HLROOT}
MAKE_FLAGS+= UCBINST=${INSTALL:Q}
MAKE_FLAGS+= ROOT=${DESTDIR}
MAKE_FLAGS+= DEFBIN=${HLPREFIX:Q}/bin
MAKE_FLAGS+= SV3BIN=${HLPREFIX:Q}/bin
MAKE_FLAGS+= S42BIN=${HLPREFIX:Q}/bin/s42
MAKE_FLAGS+= SUSBIN=${HLPREFIX:Q}/bin/posix
MAKE_FLAGS+= SU3BIN=${HLPREFIX:Q}/bin/posix2001
MAKE_FLAGS+= UCBBIN=${HLPREFIX:Q}/ucb
MAKE_FLAGS+= CCSBIN=${HLPREFIX:Q}/bin/ccs
MAKE_FLAGS+= DEFLIB=${HLPREFIX:Q}/lib
MAKE_FLAGS+= DEFSBIN=${HLPREFIX:Q}/sbin
MAKE_FLAGS+= MANDIR=${HLPREFIX:Q}/man
MAKE_FLAGS+= DFLDIR=${HLPREFIX:Q}/etc/default
MAKE_FLAGS+= SPELLHIST=${HLPREFIX:Q}/var/adm/spellhist
MAKE_FLAGS+= SULOG=${HLPREFIX:Q}/var/log/sulog
MAKE_FLAGS+= MANINST=${INSTALL_MAN:Q}
MAKE_FLAGS+= LCURS=${LCURS}
MAKE_FLAGS+= LIBZ=-lz
MAKE_FLAGS+= USE_ZLIB=${USE_ZLIB}
MAKE_FLAGS+= LIBBZ2=-lbz2
MAKE_FLAGS+= USE_BZLIB=${USE_BZLIB}
MAKE_FLAGS+= LD=${CC:Q}
MAKE_FLAGS+= LDFLAGS=${LDFLAGS:Q}
MAKE_FLAGS+= CPPFLAGS=${CPPFLAGS:Q}
MAKE_FLAGS+= CFLAGS=${CFLAGS:Q}
MAKE_FLAGS+= CFLAGSS=${CFLAGS:Q}
MAKE_FLAGS+= CFLAGS2=${CFLAGS:Q}
MAKE_FLAGS+= CFLAGS=${CFLAGS:Q}
MAKE_FLAGS+= STRIP=true
MAKE_FLAGS+= LCRYPT=${LCRYPT}
MAKE_FLAGS+= UCBINST=${INSTALL:Q}
MAKE_FLAGS+= ICOMMON=
MAKE_FLAGS+= LCOMMON=
MAKE_FLAGS+= IUXRE=
.if ${NEED_LIBUXRE:U0}
MAKE_FLAGS+= LUXRE=-luxre
.endif
.if empty(PKGNAME:Mheirloom-doc-*)
MAKE_FLAGS+= NO_INSTALL_INTRO=1
.endif
.if empty(PKGNAME:Mheirloom-doc-*) && empty(PKGNAME:Mheirloom-libcommon-*)
LDFLAGS+= -lheirloomcommon
.endif
.if empty(PKGNAME:Mheirloom-doc-*)
DEPENDS+= heirloom-doc-${HEIRLOOM_VER}:../../sysutils/heirloom-doc
.endif
# makefile.hl is for case insensitive HFS+ (Darwin)
.if ${NEED_PRE_BUILD:U1}
pre-build:
set -e; cd ${WRKSRC}; \
${TEST} -f makefile.hl || mv makefile makefile.hl; \
${SETENV} ${MAKE_ENV} ${MAKE} ${MAKE_FLAGS} -f makefile.hl makefiles
.endif

View file

@ -0,0 +1,9 @@
@comment $NetBSD: PLIST,v 1.1.1.1 2011/05/27 22:57:42 cheusov Exp $
${HLROOT}/man/man1/intro.1
share/doc/heirloom-doc/LICENSE/COPYING
share/doc/heirloom-doc/LICENSE/COPYING.LGPL
share/doc/heirloom-doc/LICENSE/LICENSE
share/doc/heirloom-doc/LICENSE/LUCENT
share/doc/heirloom-doc/LICENSE/OPENSOLARIS.LICENSE
share/doc/heirloom-doc/LICENSE/README
share/doc/heirloom-doc/README

View file

@ -0,0 +1,15 @@
$NetBSD: distinfo,v 1.1.1.1 2011/05/27 22:57:42 cheusov Exp $
SHA1 (heirloom-070715.tar.bz2) = cc1aa6977b445ba622159b443283ccb0571be9a5
RMD160 (heirloom-070715.tar.bz2) = 546b68b1e6c603301084d47973ca9ec47ae8ea8c
Size (heirloom-070715.tar.bz2) = 1000080 bytes
SHA1 (patch-ac) = 6cc31ed5b5a3a38eae9f3bad58dcbea3b516aab1
SHA1 (patch-af) = 16845125ec0224c24c998e25ce8de776d879ce83
SHA1 (patch-an) = 59ea0b44627039774c9d8054120a9069c86e35bb
SHA1 (patch-ao) = 0d5651b0cea34ed9d5eca903e24c78e403085976
SHA1 (patch-ap) = b51ab7b738538e7fb7491a649b0457db0d330160
SHA1 (patch-aq) = b517260d460f8fdd58806ca65277df827e1ecd34
SHA1 (patch-at) = 64d59486ff878252e953c934d350fc166734b145
SHA1 (patch-au) = 63da5409f7537e0fc3bc9d2473b87439ef38d328
SHA1 (patch-av) = 897e8a4a8115e5d556c4dc4892fc0b17f73cee6e
SHA1 (patch-aw) = 39e762f6c4b3def3e317217b6bae4d599b7173d8

View file

@ -0,0 +1,18 @@
$NetBSD: patch-ac,v 1.1.1.1 2011/05/27 22:57:42 cheusov Exp $
Fix for SunOS
--- ls/ls.c.orig 2005-05-29 15:55:42.000000000 +0300
+++ ls/ls.c
@@ -81,12 +81,6 @@ static char ifmt_c[] = "-pc-d-b--nl-SD--
#define ifmt(mode) ifmt_c[((mode) >> 12) & 0xF]
-#ifndef USE_TERMCAP
-#ifdef sun
-#include <curses.h>
-#include <term.h>
-#endif
-#endif
#define nil 0
#include <sys/types.h>
#include <sys/stat.h>

View file

@ -0,0 +1,20 @@
$NetBSD: patch-af,v 1.1.1.1 2011/05/27 22:57:42 cheusov Exp $
Fix for Interix
--- libcommon/getdir.c.orig Sun Jan 22 21:06:14 2006
+++ libcommon/getdir.c
@@ -59,7 +59,14 @@ extern int getdents(int, struct dirent *
#ifdef __hpux
#define _KERNEL
#endif /* __hpux */
+
+#ifdef __INTERIX
+#include <dirent.h>
+#define d_reclen d_namlen
+#else
#include <sys/dirent.h>
+#endif
+
#ifdef __hpux
#ifndef _INO64_T
typedef unsigned long long uint64_t;

View file

@ -0,0 +1,18 @@
$NetBSD: patch-an,v 1.1.1.1 2011/05/27 22:57:42 cheusov Exp $
Improvement for build system
--- build/crossln.sh.orig 2005-03-10 18:33:13.000000000 +0200
+++ build/crossln.sh
@@ -10,6 +10,12 @@ usage() {
}
doit() {
+ if echo "$1" | grep '^[^/]' > /dev/null; then
+ src="`dirname $2`/$1"
+ else
+ src="$1"
+ fi
+ test -f "$src" -o -h "$src" || return 0
rm -f -- "$2" || exit
exec @LNS@ -- "$1" "$2" || exit
}

View file

@ -0,0 +1,13 @@
$NetBSD: patch-ao,v 1.1.1.1 2011/05/27 22:57:42 cheusov Exp $
Improvement for build system
--- Makefile.mk.orig 2007-01-27 18:43:39.000000000 +0200
+++ Makefile.mk
@@ -94,4 +94,6 @@ links:
else \
sh build/crossln $(ROOT)$(MANDIR)/man1/oawk.1 $(ROOT)$(MANDIR)/man1/awk.1 $(ROOT); \
fi
- $(SHELL) build/maninst -c -m 644 intro.1 $(ROOT)$(MANDIR)/man1/intro.1
+ if test -z "${NO_INSTALL_INTRO}"; then \
+ $(SHELL) build/maninst -c -m 644 intro.1 $(ROOT)$(MANDIR)/man1/intro.1; \
+ fi

View file

@ -0,0 +1,31 @@
$NetBSD: patch-ap,v 1.1.1.1 2011/05/27 22:57:42 cheusov Exp $
Fix for Interix 3.5
--- libcommon/memalign.c.orig Sun Jan 22 21:06:14 2006
+++ libcommon/memalign.c
@@ -21,9 +21,6 @@
*/
/* Sccsid @(#)memalign.c 1.7 (gritter) 1/22/06 */
-#if defined (__FreeBSD__) || defined (__dietlibc__) || defined (_AIX) || \
- defined (__NetBSD__) || defined (__OpenBSD__) || \
- defined (__DragonFly__) || defined (__APPLE__)
/*
* FreeBSD malloc(3) promises to page-align the return of malloc() calls
* if size is at least a page. This serves for a poor man's memalign()
@@ -34,6 +31,7 @@
#include "memalign.h"
+#if defined (HAVE_NO_MEMALIGN)
void *
memalign(size_t alignment, size_t size)
{
@@ -47,5 +45,5 @@ memalign(size_t alignment, size_t size)
size = pagesize;
return malloc(size);
}
-#endif /* __FreeBSD__ || __dietlibc__ || _AIX || __NetBSD__ || __OpenBSD__ ||
- __DragonFly__ || __APPLE__ */
+#endif /* HAVE_NO_MEMALIGN */
+

View file

@ -0,0 +1,20 @@
$NetBSD: patch-aq,v 1.1.1.1 2011/05/27 22:57:42 cheusov Exp $
Fix for Interix 3.5
--- libcommon/memalign.h.orig Sun Jan 22 21:06:14 2006
+++ libcommon/memalign.h
@@ -26,10 +26,10 @@
#if defined (__FreeBSD__) || defined (__dietlibc__) || defined (_AIX) || \
defined (__NetBSD__) || defined (__OpenBSD__) || \
- defined (__DragonFly__) || defined (__APPLE__)
+ defined (__DragonFly__) || defined (__APPLE__) || defined (__INTERIX)
#include <stdlib.h>
-
+#define HAVE_NO_MEMALIGN 1
extern void *memalign(size_t, size_t);
-#endif /* __FreeBSD__ || __dietlibc__ || _AIX || __NetBSD__ || __OpenBSD__ ||
- __DragonFly__ || __APPLE__ */
+#endif
+
#endif /* !LIBCOMMON_MEMALIGN_H */

View file

@ -0,0 +1,17 @@
$NetBSD: patch-at,v 1.1.1.1 2011/05/27 22:57:42 cheusov Exp $
Fix for systems having no btowc(3) (Interix-3.5)
--- libuxre/btowc.c.orig Mon Dec 18 15:22:23 2006
+++ libuxre/btowc.c
@@ -0,0 +1,11 @@
+#include "btowc.h"
+
+#if defined (HAVE_NO_BTOWC)
+wint_t btowc (int c)
+{
+ if (c == EOF || c > 0xFF)
+ return WEOF;
+
+ return (wint_t)c;
+}
+#endif

View file

@ -0,0 +1,17 @@
$NetBSD: patch-au,v 1.1.1.1 2011/05/27 22:57:42 cheusov Exp $
Fix for Interix-3.5
--- libuxre/btowc.h.orig Mon Dec 18 15:22:23 2006
+++ libuxre/btowc.h
@@ -0,0 +1,11 @@
+#ifndef _BTOWC_H
+#define _BTOWC_H
+
+#if defined(__INTERIX)
+#define HAVE_NO_BTOWC 1
+#include <wchar.h>
+wint_t btowc (int c);
+#endif
+
+#endif
+

View file

@ -0,0 +1,14 @@
$NetBSD: patch-av,v 1.1.1.1 2011/05/27 22:57:42 cheusov Exp $
Fix for systems having no btowc(3)
--- libuxre/bracket.c.orig Sat Oct 18 22:16:46 2003
+++ libuxre/bracket.c
@@ -31,6 +31,8 @@
#include <string.h>
#include "re.h"
+#include "btowc.h"
+
/*
* Build and match the [...] part of REs.
*

View file

@ -0,0 +1,14 @@
$NetBSD: patch-aw,v 1.1.1.1 2011/05/27 22:57:42 cheusov Exp $
Fix for systems having btowc(3)
--- libuxre/regnfa.c.orig Sun Feb 6 16:16:14 2005
+++ libuxre/regnfa.c
@@ -35,6 +35,8 @@
typedef unsigned char Uchar;
typedef unsigned short Ushort;
+#include "btowc.h"
+
/*
* Nondeterministic Finite Automata.
*/