Changeset - 3ca68997d667
[Not reviewed]
default
0 0 6
Nathan Brink (binki) - 15 years ago 2009-12-23 01:00:05
ohnobinki@ohnopublishing.net
dev-libs/liblist: Initial import from Gentoo's Portage
6 files changed with 214 insertions and 0 deletions:
0 comments (0 inline, 0 general)
dev-libs/liblist/ChangeLog
Show inline comments
 
new file 100644
 
# ChangeLog for dev-libs/liblist
 
# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
 
# $Header: /var/cvsroot/gentoo-x86/dev-libs/liblist/ChangeLog,v 1.2 2009/12/05 22:32:30 nerdboy Exp $
 

	
 
*liblist-2.1-r1 (05 Dec 2009)
 

	
 
  05 Dec 2009; Steve Arnold <nerdboy@gentoo.org> +liblist-2.1-r1.ebuild,
 
  +files/liblist-2.1-sharedlib.patch:
 
  Lemony-fresh rev-bump, now with shared library support. Closes bug #294788.
 
  Manifest issue also fixed (closes bug #294785).
 

	
 
*liblist-2.1 (20 Apr 2009)
 

	
 
  20 Apr 2009; Steve Arnold <nerdboy@gentoo.org> +metadata.xml,
 
  +liblist-2.1.ebuild:
 
  New ebuild for a generic list library, a required dependency for ferret.
 
  Updated source code hosted by me (no upstream URL anymore).  Comes with
 
  a nice technical paper and example routines.
 

	
dev-libs/liblist/Manifest
Show inline comments
 
new file 100644
 
AUX liblist-2.1-sharedlib.patch 1613 RMD160 7bd885e7e25b8d2decd0d0d16a08bca104f972dc SHA1 3646e24ba78767aa4ea4fe9360b543e1f9abcaf3 SHA256 3378630ab0470550b8124f36d66b8d294125b1bfd6ab58c371e491aced71cae6
 
DIST liblist-2.1.tar.gz 107284 RMD160 174b777d4479af9459e5d47a21d7eee7083bd795 SHA1 eead30d6c5f9b3522ac7b168bc43f6c7f20a2ef2 SHA256 0835c5b58bad54ca7ad684fb9d51fd1ce8c80a7875698a4bd8367dc3375e623f
 
EBUILD liblist-2.1-r1.ebuild 1700 RMD160 9ac98e673f6286b4ab6cbbdf7afaf71d3f9b78dc SHA1 71ab3f4c82de350bbb08c5d106547cb58c114f51 SHA256 26c85f9f57953356ea173f90a01acff2cc130d3f79a0b5d6f4530f971546f0ab
 
EBUILD liblist-2.1.ebuild 1612 RMD160 9e3f94f56b138531910ff6e3cd659dcacf8a8374 SHA1 af80a7602a9d750074c117b5d562cda3af18ddc2 SHA256 fa64c66669c0e2e843977cbfc404f7afda0faa53b85e0086988b4f0d5a22e12c
 
MISC ChangeLog 789 RMD160 658d737581a0c6ae39fb85f1cfd529aa16c9f721 SHA1 cd6186d9dffd602388b6b089d2f85680c792a68f SHA256 6bf5b78fcf68dea222ec0fc0b4fae9fd1e09211bc6c46df6a766007039e56b4a
 
MISC metadata.xml 473 RMD160 97667dfa400a624c3ba66fbaefa5bb5bf592c485 SHA1 8ab2e330cbc7993d95c0492ae14540ab5e0177ac SHA256 197f1543dd37a80c8de5ee4083d4eb659c8be038483895e11225c68e93da11f1
dev-libs/liblist/files/liblist-2.1-sharedlib.patch
Show inline comments
 
new file 100644
 
--- Makefile.orig	2009-11-27 12:04:33.000000000 -0800
 
+++ Makefile	2009-11-27 12:11:47.786739617 -0800
 
@@ -25,12 +25,22 @@
 
 LIBS	= -L. -llist
 
 #LIBS	= -L . -llist   # Use this for HP-UX; great loader guys!
 
 CPP	= cpp -E -P -C
 
+CC	= cc
 
+LD	= cc
 
 MANDIR	= /usr/share/man
 
 LIBDIR	= /usr/lib64
 
 INCDIR	= /usr/include
 
 
 
 #add macro for ranlib 4/96 *kob* - ranlib doesn't exist on solaris
 
 RANLIB = ls
 
+LN = ln -s
 
+
 
+# try making shared lib (SLA 11/2009)
 
+SHARED = liblist.so
 
+LDFLAGS += -L$(LIBDIR)
 
+MKOBJ = $(CC) -fPIC -c list.c -I$(INCDIR)
 
+MKSO = -shared -Wl,-soname,$(SHARED)
 
+SOVER = 0.0
 
 
 
 # We specify some goofy dependencies between the man pages and the source,
 
 # because the man page reflects whether USE_MACROS was specified.  Thus,
 
@@ -42,8 +52,16 @@
 
 		(cd examples; make)
 
 
 
 liblist.a:	list.o
 
+		@echo "Making static lib ..." 
 
 		ar rc liblist.a list.o
 
 		$(RANLIB) liblist.a
 
+		@echo "done"
 
+		@echo "Making shared lib $(SHARED) ..."
 
+		$(MKOBJ) -I.
 
+		$(LD) -I. $(MKSO) list.o -o $(SHARED).$(SOVER) $(LDFLAGS)
 
+		$(LN) $(SHARED).$(SOVER) $(SHARED).0
 
+		$(LN) $(SHARED).$(SOVER) $(SHARED)
 
+		@echo "done"
 
 
 
 list.o:		list.h list.3 Makefile
 
 
 
@@ -62,6 +80,7 @@
 
 install:
 
 		install -c liblist.a $(DESTDIR)$(LIBDIR)
 
 		$(RANLIB) $(DESTDIR)$(LIBDIR)/liblist.a
 
+		install -c liblist.so $(DESTDIR)$(LIBDIR)
 
 		install -c list.h $(DESTDIR)$(INCDIR)
 
 		install -c queue.h $(DESTDIR)$(INCDIR)
 
 		install -c stack.h $(DESTDIR)$(INCDIR)
 
@@ -73,5 +92,5 @@
 
 		install -c stack.3 $(DESTDIR)$(MANDIR)/man3
 
 
 
 clean:
 
-		rm -f *.o *.a list.h *.3 core
 
+		rm -f *.o *.a *.so list.h *.3 core
 
 		(cd examples; make clean)
dev-libs/liblist/liblist-2.1-r1.ebuild
Show inline comments
 
new file 100644
 
# Copyright 1999-2009 Gentoo Foundation
 
# Distributed under the terms of the GNU General Public License v2
 
# $Header: /var/cvsroot/gentoo-x86/dev-libs/liblist/liblist-2.1-r1.ebuild,v 1.1 2009/12/05 22:32:30 nerdboy Exp $
 

	
 
inherit eutils toolchain-funcs
 

	
 
DESCRIPTION="This package provides generic linked-list manipulation routines, plus queues and stacks."
 
HOMEPAGE="http://www.gentoogeek.org/viewvc/C/liblist/"
 
SRC_URI="http://www.gentoogeek.org/files/${P}.tar.gz"
 

	
 
LICENSE="GPL-2"
 
SLOT="0"
 
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
 
IUSE="doc examples"
 

	
 
src_unpack() {
 
	unpack ${A}
 
	cd "${S}"
 
	sed -i -e "s:/usr/lib:/usr/$(get_libdir):g" Makefile \
 
	    examples/cache/Makefile || die "sed 1 failed"
 
	epatch "${FILESDIR}"/${P}-sharedlib.patch
 
}
 

	
 
src_compile() {
 
	make CC="$(tc-getCC)" LD="$(tc-getCC)" \
 
	    || die "make failed"
 
}
 

	
 
src_install() {
 
	newman list.3 llist.3
 
	newman stack.man lstack.3
 
	newman queue.man lqueue.3
 
	dolib.a ${PN}.a
 
	dolib.so ${PN}.so*
 
	insinto /usr/include
 
	doins list.h queue.h stack.h
 
	dodoc README
 

	
 
	if use examples; then
 
	    dolib.a examples/cache/libcache.a
 
	    dobin examples/cache/cachetest
 
	    newman cache.3 lcache.3
 
	    insinto /usr/share/doc/${P}/examples
 
	    doins examples/{*.c,Makefile,README}
 
	    insinto /usr/share/doc/${P}/examples/cache
 
	    doins examples/cache/{*.c,Makefile,README}
 
	    doins
 
	fi
 

	
 
	if use doc; then
 
	    insinto /usr/share/doc/${P}
 
	    doins paper/paper.ps
 
	fi
 
}
 

	
 
pkg_postinst() {
 
	elog "Note the man pages for this package have been renamed to avoid"
 
	elog "name collisions with some system functions, however, the libs"
 
	elog "and header files have not been changed."
 
	elog "The new names are llist, lcache, lqueue, and lstack."
 
}
dev-libs/liblist/liblist-2.1.ebuild
Show inline comments
 
new file 100644
 
# Copyright 1999-2009 Gentoo Foundation
 
# Distributed under the terms of the GNU General Public License v2
 
# $Header: /var/cvsroot/gentoo-x86/dev-libs/liblist/liblist-2.1.ebuild,v 1.1 2009/04/20 05:44:09 nerdboy Exp $
 

	
 
inherit eutils toolchain-funcs
 

	
 
DESCRIPTION="This package provides generic linked-list manipulation routines, plus queues and stacks."
 
HOMEPAGE="http://www.gentoogeek.org/viewvc/C/liblist/"
 
SRC_URI="http://www.gentoogeek.org/files/${P}.tar.gz"
 

	
 
LICENSE="GPL-2"
 
SLOT="0"
 
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
 
IUSE="doc examples"
 

	
 
src_unpack() {
 
	unpack ${A}
 
	cd "${S}"
 
	sed -i -e "s:/usr/lib:/usr/$(get_libdir):g" Makefile \
 
	    examples/cache/Makefile || die "sed 1 failed"
 
}
 

	
 
src_compile() {
 
	make CC="$(tc-getCC)" || die "make failed"
 
}
 

	
 
src_install() {
 
	newman list.3 llist.3
 
	newman stack.man lstack.3
 
	newman queue.man lqueue.3
 
	dolib.a liblist.a
 
	insinto /usr/include
 
	doins list.h queue.h stack.h
 
	dodoc README
 

	
 
	if use examples; then
 
	    dolib.a examples/cache/libcache.a
 
	    dobin examples/cache/cachetest
 
	    newman cache.3 lcache.3
 
	    insinto /usr/share/doc/${P}/examples
 
	    doins examples/{*.c,Makefile,README}
 
	    insinto /usr/share/doc/${P}/examples/cache
 
	    doins examples/cache/{*.c,Makefile,README}
 
	    doins
 
	fi
 

	
 
	if use doc; then
 
	    insinto /usr/share/doc/${P}
 
	    doins paper/paper.ps
 
	fi
 
}
 

	
 
pkg_postinst() {
 
	elog "Note the man pages for this package have been renamed to avoid"
 
	elog "name collisions with some system functions, however, the libs"
 
	elog "and header files have not been changed."
 
	elog "The new names are llist, lcache, lqueue, and lstack."
 
}
dev-libs/liblist/metadata.xml
Show inline comments
 
new file 100644
 
<?xml version="1.0" encoding="UTF-8"?>
 
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
 
<pkgmetadata>
 
  <herd>dev-tools</herd>
 
  <maintainer>
 
    <email>nerdboy@gentoo.org</email>
 
    <description>Primary maintainer</description>
 
  </maintainer>
 
  <longdescription>
 
  This package provides generic linked-list manipulation routines.  In addition,
 
  queue and stack abstractions are provided by single header files.
 
  </longdescription>
 
</pkgmetadata>
0 comments (0 inline, 0 general)