Changeset - ff1b41239f0d
[Not reviewed]
default
3 2 2
Nathan Brink (binki) - 15 years ago 2009-12-23 01:29:20
ohnobinki@ohnopublishing.net
dev-libs/liblist: added live ebuild (remove others), fix dynamic lib patch
5 files changed with 47 insertions and 97 deletions:
0 comments (0 inline, 0 general)
dev-libs/liblist/ChangeLog
Show inline comments
 
# 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 $
 

	
 
  23 Dec 2009; Nathan Phillip Brink (ohnobinki)
 
  <ohnobinki@ohnopublishing.net> -liblist-2.1.ebuild,
 
  -liblist-2.1-r1.ebuild, -files/liblist-2.1-sharedlib.patch,
 
  +liblist-9999.ebuild, +files/liblist-9999-sharedlib.patch:
 
  Added live ebuild -- removed in-portage ebuilds. Fixed dynamic lib patch
 
  to work with the mercurial version.
 

	
 
*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.
dev-libs/liblist/Manifest
Show inline comments
 
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
 
AUX liblist-9999-sharedlib.patch 1470 RMD160 c875b98f2262219521fffedd5e4874fcfca5152d SHA1 d1fbf99578d86cb3f4f35c1271421fb961607273 SHA256 968d9f115409cbde81b6fd90a8f3cf3821627a4a5a81f38d890e4cde87b6a9b9
 
EBUILD liblist-9999.ebuild 1777 RMD160 1c13942ca911935e113ec325242a7df76ef8c53b SHA1 2ae7bc395d0f936298f31d1a4aba2e83ae31cd58 SHA256 bc5e0ab9616ffe463fa0ca1ab52e449c3f06fef09a7a6e5c2b67a3925e952cd0
 
MISC ChangeLog 789 RMD160 658d737581a0c6ae39fb85f1cfd529aa16c9f721 SHA1 cd6186d9dffd602388b6b089d2f85680c792a68f SHA256 6bf5b78fcf68dea222ec0fc0b4fae9fd1e09211bc6c46df6a766007039e56b4a
 
MISC metadata.xml 473 RMD160 97667dfa400a624c3ba66fbaefa5bb5bf592c485 SHA1 8ab2e330cbc7993d95c0492ae14540ab5e0177ac SHA256 197f1543dd37a80c8de5ee4083d4eb659c8be038483895e11225c68e93da11f1
dev-libs/liblist/files/liblist-9999-sharedlib.patch
Show inline comments
 
file renamed from dev-libs/liblist/files/liblist-2.1-sharedlib.patch to dev-libs/liblist/files/liblist-9999-sharedlib.patch
 
--- Makefile.orig	2009-11-27 12:04:33.000000000 -0800
 
+++ Makefile	2009-11-27 12:11:47.786739617 -0800
 
@@ -25,12 +25,22 @@
 
@@ -25,19 +25,39 @@
 
 
 
 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
 
 LIBDIR	= /usr/lib
 
 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 @@
 
-all:		liblist.a 
 
+all:		liblist.a liblist.so
 
 		(cd examples; make)
 
 
 
 liblist.a:	list.o
 
+		@echo "Making static lib ..." 
 
 		ar rc liblist.a list.o
 
 		$(RANLIB) liblist.a
 
+		@echo "done"
 
+
 
+liblist.so:	list.o
 
+		@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
 
-		rm -f *.o *.a core
 
+		rm -f *.o *.a *.so core
 
 		(cd examples; make clean)
dev-libs/liblist/liblist-2.1.ebuild
Show inline comments
 
deleted file
dev-libs/liblist/liblist-9999.ebuild
Show inline comments
 
file renamed from dev-libs/liblist/liblist-2.1-r1.ebuild to dev-libs/liblist/liblist-9999.ebuild
 
# 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
 
EAPI="2"
 

	
 
inherit eutils mercurial 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"
 
HOMEPAGE="http://ohnopub.net/hg/liblist/-unbased"
 
SRC_URI=""
 
EHG_REPO_URI="http://ohnopub.net/hg/liblist-unbased"
 

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

	
 
src_unpack() {
 
	unpack ${A}
 
	cd "${S}"
 
S=${WORKDIR}/${PN}-unbased
 

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

	
 
src_compile() {
 
	make CC="$(tc-getCC)" LD="$(tc-getCC)" \
 
	    || die "make failed"
 
		|| 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*
 
	newman list.3 llist.3 || die
 
	newman stack.3 lstack.3 || die
 
	newman queue.3 lqueue.3 || die
 
	dolib.a ${PN}.a || die
 
	dolib.so ${PN}.so* || die
 
	insinto /usr/include
 
	doins list.h queue.h stack.h
 
	dodoc README
 
	doins list.h queue.h stack.h || die
 
	dodoc README || die
 

	
 
	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
 
		dolib.a examples/cache/libcache.a || die
 
		dobin examples/cache/cachetest || die
 
		newman cache.3 lcache.3 || die
 
		insinto /usr/share/doc/${P}/examples
 
		doins examples/{*.c,Makefile,README} || die
 
		insinto /usr/share/doc/${P}/examples/cache
 
		doins examples/cache/{*.c,Makefile,README} || die
 
	fi
 

	
 
	if use doc; then
 
	    insinto /usr/share/doc/${P}
 
	    doins paper/paper.ps
 
		insinto /usr/share/doc/${P}
 
		doins paper/paper.ps || die
 
	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."
 
}
0 comments (0 inline, 0 general)