diff options
author | Alexis Ballier <aballier@gentoo.org> | 2010-03-11 12:01:15 +0000 |
---|---|---|
committer | Alexis Ballier <aballier@gentoo.org> | 2010-03-11 12:01:15 +0000 |
commit | 43b5a69dbbb02bf5296e51c39295d6e8731c3404 (patch) | |
tree | 6a75ac0777e188ad2a81ff6628898ab128bbc15b /sys-freebsd/freebsd-lib | |
parent | remove old (diff) | |
download | gentoo-2-43b5a69dbbb02bf5296e51c39295d6e8731c3404.tar.gz gentoo-2-43b5a69dbbb02bf5296e51c39295d6e8731c3404.tar.bz2 gentoo-2-43b5a69dbbb02bf5296e51c39295d6e8731c3404.zip |
remove old
(Portage version: 2.2_rc67/cvs/Linux x86_64)
Diffstat (limited to 'sys-freebsd/freebsd-lib')
14 files changed, 12 insertions, 1289 deletions
diff --git a/sys-freebsd/freebsd-lib/ChangeLog b/sys-freebsd/freebsd-lib/ChangeLog index 26c69db75b85..474fe0f9c2d8 100644 --- a/sys-freebsd/freebsd-lib/ChangeLog +++ b/sys-freebsd/freebsd-lib/ChangeLog @@ -1,6 +1,17 @@ # ChangeLog for sys-freebsd/freebsd-lib # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-freebsd/freebsd-lib/ChangeLog,v 1.81 2010/03/11 11:49:03 aballier Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-freebsd/freebsd-lib/ChangeLog,v 1.82 2010/03/11 12:01:14 aballier Exp $ + + 11 Mar 2010; Alexis Ballier <aballier@gentoo.org> + -files/freebsd-lib-6.0-binutils-asm.patch, + -files/freebsd-lib-6.0-ssp.patch, -freebsd-lib-6.2-r4.ebuild, + -files/freebsd-lib-6.2-as-needed.patch, + -files/freebsd-lib-6.2-dl_iterate_phdr.patch, + -files/freebsd-lib-6.2-gcc41.patch, -files/freebsd-lib-6.2-libc.patch, + -files/freebsd-lib-6.2-libthr.patch, -files/freebsd-lib-6.2-pty6.patch, + -freebsd-lib-7.1-r4.ebuild, -files/freebsd-lib-7.1-db.patch, + -files/freebsd-lib-7.1-strndup_bport.patch, metadata.xml: + remove old 11 Mar 2010; Alexis Ballier <aballier@gentoo.org> -freebsd-lib-7.2.ebuild: remove old diff --git a/sys-freebsd/freebsd-lib/files/freebsd-lib-6.0-binutils-asm.patch b/sys-freebsd/freebsd-lib/files/freebsd-lib-6.0-binutils-asm.patch deleted file mode 100644 index f6fdd8350b95..000000000000 --- a/sys-freebsd/freebsd-lib/files/freebsd-lib-6.0-binutils-asm.patch +++ /dev/null @@ -1,36 +0,0 @@ -Update ASM code to build with newer binutils (2.16.91.0.x). Thanks to Emanuele -Giaquinta <exg@gentoo.org> -Index: fbsd-6/lib/libpthread/arch/i386/i386/thr_getcontext.S -=================================================================== ---- fbsd-6.orig/lib/libpthread/arch/i386/i386/thr_getcontext.S -+++ fbsd-6/lib/libpthread/arch/i386/i386/thr_getcontext.S -@@ -63,10 +63,10 @@ ENTRY(__thr_setcontext) - movl $-1, %eax /* bzzzt, invalid context */ - jmp 8f - 2: /*movl 4(%edx), %gs*/ /* we don't touch %gs */ -- movl 8(%edx), %fs -- movl 12(%edx), %es -- movl 16(%edx), %ds -- movl 76(%edx), %ss -+ movw 8(%edx), %fs -+ movw 12(%edx), %es -+ movw 16(%edx), %ds -+ movw 76(%edx), %ss - movl 20(%edx), %edi - movl 24(%edx), %esi - movl 28(%edx), %ebp -@@ -127,10 +127,10 @@ ENTRY(__thr_getcontext) - movl $-1, %eax - jmp 2f - 1: /*movl %gs, 4(%edx)*/ /* we don't touch %gs */ -- movl %fs, 8(%edx) -- movl %es, 12(%edx) -- movl %ds, 16(%edx) -- movl %ss, 76(%edx) -+ movw %fs, 8(%edx) -+ movw %es, 12(%edx) -+ movw %ds, 16(%edx) -+ movw %ss, 76(%edx) - movl %edi, 20(%edx) - movl %esi, 24(%edx) - movl %ebp, 28(%edx) diff --git a/sys-freebsd/freebsd-lib/files/freebsd-lib-6.0-ssp.patch b/sys-freebsd/freebsd-lib/files/freebsd-lib-6.0-ssp.patch deleted file mode 100644 index e94e5573c3f0..000000000000 --- a/sys-freebsd/freebsd-lib/files/freebsd-lib-6.0-ssp.patch +++ /dev/null @@ -1,135 +0,0 @@ -Index: fbsd-6/lib/libc/sys/Makefile.inc -=================================================================== ---- fbsd-6.orig/lib/libc/sys/Makefile.inc -+++ fbsd-6/lib/libc/sys/Makefile.inc -@@ -18,7 +18,7 @@ - .endif - - # Sources common to both syscall interfaces: --SRCS+= ftruncate.c lseek.c mmap.c pread.c pwrite.c truncate.c __error.c -+SRCS+= ftruncate.c lseek.c mmap.c pread.c pwrite.c truncate.c __error.c ssp.c - - # Add machine dependent asm sources: - SRCS+=${MDASM} -Index: fbsd-6/lib/libc/sys/ssp.c -=================================================================== ---- /dev/null -+++ fbsd-6/lib/libc/sys/ssp.c -@@ -0,0 +1,83 @@ -+/* -+ * Copyright (c) 2002 Hiroaki Etoh, Federico G. Schwindt, and Miodrag Vallat. -+ * Copyright (c) 2006 Ned Ludd <solar@gentoo.org> -+ * Diego Pettenò <flameeyes@gentoo.org> -+ * All rights reserved. -+ * -+ * Redistribution and use in source and binary forms, with or without -+ * modification, are permitted provided that the following conditions -+ * are met: -+ * 1. Redistributions of source code must retain the above copyright -+ * notice, this list of conditions and the following disclaimer. -+ * 2. Redistributions in binary form must reproduce the above copyright -+ * notice, this list of conditions and the following disclaimer in the -+ * documentation and/or other materials provided with the distribution. -+ * -+ * THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY EXPRESS OR -+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -+ * DISCLAIMED. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY DIRECT, -+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -+ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN -+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -+ * POSSIBILITY OF SUCH DAMAGE. -+ * -+ */ -+ -+#include <sys/param.h> -+#include <sys/sysctl.h> -+#include <signal.h> -+#include <string.h> -+#include <syslog.h> -+#include <unistd.h> -+#include <stdlib.h> -+ -+extern int __sysctl(int *, u_int, void *, size_t *, void *, size_t); -+ -+unsigned long __guard = 0UL; -+void __guard_setup(void) __attribute__ ((constructor)); -+void __stack_smash_handler(char func[], int damaged __attribute__((unused))); -+ -+void -+__guard_setup(void) -+{ -+ int i, mib[2]; -+ size_t len = 4; -+ -+ __guard = 0xFF0A0D00UL; -+ if (__guard != 0) return; -+ -+ srandomdev(); -+ -+ __guard = random(); -+} -+ -+void -+__stack_smash_handler(char func[], int damaged) -+{ -+ static const char message[] = "stack overflow in function "; -+ struct sigaction sa; -+ sigset_t mask; -+ -+ /* Immediately block all signal handlers from running code */ -+ sigfillset(&mask); -+ sigdelset(&mask, SIGABRT); -+ sigprocmask(SIG_BLOCK, &mask, NULL); -+ -+ write(2, message, sizeof(message)); -+ write(2, func, strlen(func)); -+ write(2, "\n", 1); -+ -+ bzero(&sa, sizeof(struct sigaction)); -+ sigemptyset(&sa.sa_mask); -+ sa.sa_flags = 0; -+ sa.sa_handler = SIG_DFL; -+ sigaction(SIGABRT, &sa, NULL); -+ -+ kill(getpid(), SIGABRT); -+ -+ _exit(127); -+} -Index: fbsd-6/lib/csu/i386-elf/crt1.c -=================================================================== ---- fbsd-6.orig/lib/csu/i386-elf/crt1.c -+++ fbsd-6/lib/csu/i386-elf/crt1.c -@@ -44,6 +44,7 @@ extern void _fini(void); - extern void _init(void); - extern int main(int, char **, char **); - extern void _start(char *, ...); -+extern void __guard_setup(void); - - #ifdef GCRT - extern void _mcleanup(void); -@@ -106,6 +107,7 @@ _start(char *ap, ...) - monstartup(&eprol, &etext); - #endif - _init(); -+ __guard_setup(); - exit( main(argc, argv, env) ); - } - -Index: fbsd-6/lib/libc/Makefile -=================================================================== ---- fbsd-6.orig/lib/libc/Makefile -+++ fbsd-6/lib/libc/Makefile -@@ -15,6 +15,9 @@ SHLIBDIR?= /lib - WARNS?= 2 - CFLAGS+=-I${.CURDIR}/include -I${.CURDIR}/../../include - CFLAGS+=-I${.CURDIR}/${MACHINE_ARCH} -+# Disable stack protection for the only libc, and leave it for the rest of -+# the libraries. -+CFLAGS+= -fno-stack-protector - CLEANFILES+=tags - INSTALL_PIC_ARCHIVE= - PRECIOUSLIB= diff --git a/sys-freebsd/freebsd-lib/files/freebsd-lib-6.2-as-needed.patch b/sys-freebsd/freebsd-lib/files/freebsd-lib-6.2-as-needed.patch deleted file mode 100644 index c46b990d1d68..000000000000 --- a/sys-freebsd/freebsd-lib/files/freebsd-lib-6.2-as-needed.patch +++ /dev/null @@ -1,40 +0,0 @@ -This enables --as-needed to work fully on FreeBSD. -This can be pulled for FreeBSD-7. - -diff -ur lib.orig/libmp/Makefile lib/libmp/Makefile ---- lib.orig/libmp/Makefile 2007-09-14 07:40:20 +0100 -+++ lib/libmp/Makefile 2007-09-14 07:44:49 +0100 -@@ -2,6 +2,8 @@ - - LIB= mp - SHLIB_MAJOR= 5 -+DPADD= ${LIBCRYPTO} -+LDADD= -lcrypto - MAN= libmp.3 - INCS= mp.h - SRCS= mpasbn.c -diff -ur lib.orig/libncp/Makefile lib/libncp/Makefile ---- lib.orig/libncp/Makefile 2007-09-14 07:40:20 +0100 -+++ lib/libncp/Makefile 2007-09-14 07:44:49 +0100 -@@ -5,6 +5,8 @@ - LIB= ncp - - SHLIB_MAJOR= 2 -+DPADD= ${LIBIPX} -+LDADD= -lipx - - NO_MAN= - -diff -ur lib.orig/libsmb/Makefile lib/libsmb/Makefile ---- lib.orig/libsmb/Makefile 2007-09-14 07:40:20 +0100 -+++ lib/libsmb/Makefile 2007-09-14 07:44:49 +0100 -@@ -5,6 +5,8 @@ - - LIB= smb - SHLIB_MAJOR= 2 -+DPADD= ${LIBKICONV} -+LDADD= -lkiconv - NO_MAN= - - SRCS= rcfile.c ctx.c cfopt.c subr.c nls.c rap.c mbuf.c rq.c file.c \ - diff --git a/sys-freebsd/freebsd-lib/files/freebsd-lib-6.2-dl_iterate_phdr.patch b/sys-freebsd/freebsd-lib/files/freebsd-lib-6.2-dl_iterate_phdr.patch deleted file mode 100644 index 43abb5f2641b..000000000000 --- a/sys-freebsd/freebsd-lib/files/freebsd-lib-6.2-dl_iterate_phdr.patch +++ /dev/null @@ -1,29 +0,0 @@ -Backport dl_iterate_phdr from FreeBSD-7 so that we can use gcc-4 -and not pull in libgcc_s.so.1 into every binary we build. - -diff -ur lib/libc/gen/dlfcn.c lib/libc/gen/dlfcn.c ---- lib/libc/gen/dlfcn.c 2004-03-05 08:10:17 +0000 -+++ lib/libc/gen/dlfcn.c 2007-09-10 14:11:12 +0100 -@@ -31,6 +31,7 @@ - * Linkage to services provided by the dynamic linker. - */ - #include <dlfcn.h> -+#include <link.h> - #include <stddef.h> - - static const char sorry[] = "Service unavailable"; -@@ -118,3 +119,14 @@ - { - _rtld_error(sorry); - } -+ -+#ifdef _GENTOO_DL_ITERATE_PHDR -+#pragma weak dl_iterate_phdr -+int -+dl_iterate_phdr(int (*callback)(struct dl_phdr_info *, size_t, void *), -+ void *data) -+{ -+ _rtld_error(sorry); -+ return 0; -+} -+#endif diff --git a/sys-freebsd/freebsd-lib/files/freebsd-lib-6.2-gcc41.patch b/sys-freebsd/freebsd-lib/files/freebsd-lib-6.2-gcc41.patch deleted file mode 100644 index e7addfaba401..000000000000 --- a/sys-freebsd/freebsd-lib/files/freebsd-lib-6.2-gcc41.patch +++ /dev/null @@ -1,26 +0,0 @@ -Index: fbsd-6.2/lib/libc/isc/eventlib_p.h -=================================================================== ---- fbsd-6.2.orig/lib/libc/isc/eventlib_p.h -+++ fbsd-6.2/lib/libc/isc/eventlib_p.h -@@ -280,6 +280,8 @@ evWait *evFreeWait(evContext_p *ctx, evW - #endif - - /* Global options */ -+#ifndef _LIBC - extern int __evOptMonoTime; -+#endif - - #endif /*_EVENTLIB_P_H*/ -Index: fbsd-6.2/lib/libc/resolv/res_debug.c -=================================================================== ---- fbsd-6.2.orig/lib/libc/resolv/res_debug.c -+++ fbsd-6.2/lib/libc/resolv/res_debug.c -@@ -472,7 +472,7 @@ const struct res_sym __p_type_syms[] = { - /* - * Names of DNS rcodes. - */ --static const struct res_sym __p_rcode_syms[] = { -+const struct res_sym __p_rcode_syms[] = { - {ns_r_noerror, "NOERROR", "no error"}, - {ns_r_formerr, "FORMERR", "format error"}, - {ns_r_servfail, "SERVFAIL", "server failed"}, diff --git a/sys-freebsd/freebsd-lib/files/freebsd-lib-6.2-libc.patch b/sys-freebsd/freebsd-lib/files/freebsd-lib-6.2-libc.patch deleted file mode 100644 index fc94cb7ae7d7..000000000000 --- a/sys-freebsd/freebsd-lib/files/freebsd-lib-6.2-libc.patch +++ /dev/null @@ -1,21 +0,0 @@ -http://security.freebsd.org/advisories/FreeBSD-SA-08:02.libc.asc - -Index: lib/libc/inet/inet_network.c -=================================================================== -RCS file: /home/ncvs/src/lib/libc/inet/inet_network.c,v -retrieving revision 1.4 -diff -u -u -r1.4 inet_network.c ---- lib/libc/inet/inet_network.c 3 Jun 2007 17:20:26 -0000 1.4 -+++ lib/libc/inet/inet_network.c 6 Jan 2008 15:38:28 -0000 -@@ -82,9 +82,9 @@ - } - if (!digit) - return (INADDR_NONE); -+ if (pp >= parts + 4 || val > 0xffU) -+ return (INADDR_NONE); - if (*cp == '.') { -- if (pp >= parts + 4 || val > 0xffU) -- return (INADDR_NONE); - *pp++ = val, cp++; - goto again; - } diff --git a/sys-freebsd/freebsd-lib/files/freebsd-lib-6.2-libthr.patch b/sys-freebsd/freebsd-lib/files/freebsd-lib-6.2-libthr.patch deleted file mode 100644 index a31985eac35c..000000000000 --- a/sys-freebsd/freebsd-lib/files/freebsd-lib-6.2-libthr.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -ur lib.orig/libthr/Makefile lib/libthr/Makefile ---- lib.orig/libthr/Makefile 2007-09-25 10:27:07 +0100 -+++ lib/libthr/Makefile 2007-09-25 10:35:20 +0100 -@@ -7,6 +7,8 @@ - # To included legacy CSRG sccsid strings, add -DLIBC_SCCS and -DSYSLIBC_SCCS - # (for system call stubs) to CFLAGS below. -DSYSLIBC_SCCS affects just the - # system call stubs. -+ -+SHLIBDIR= /lib - LIB=thr - SHLIB_MAJOR= 2 - CFLAGS+=-DPTHREAD_KERNEL diff --git a/sys-freebsd/freebsd-lib/files/freebsd-lib-6.2-pty6.patch b/sys-freebsd/freebsd-lib/files/freebsd-lib-6.2-pty6.patch deleted file mode 100644 index 8b4bb780d541..000000000000 --- a/sys-freebsd/freebsd-lib/files/freebsd-lib-6.2-pty6.patch +++ /dev/null @@ -1,95 +0,0 @@ -http://security.freebsd.org/advisories/FreeBSD-SA-08:01.pty.asc - -Index: lib/libc/stdlib/grantpt.c -=================================================================== -RCS file: /home/ncvs/src/lib/libc/stdlib/grantpt.c,v -retrieving revision 1.4.10.1 -diff -u -I__FBSDID -I$FreeBSD -r1.4.10.1 grantpt.c ---- lib/libc/stdlib/grantpt.c 18 Dec 2007 00:36:21 -0000 1.4.10.1 -+++ lib/libc/stdlib/grantpt.c 10 Jan 2008 20:54:30 -0000 -@@ -214,24 +214,30 @@ - ptsname(int fildes) - { - static char slave[] = _PATH_DEV PTS_PREFIX "XY"; -- char *retval; -+ const char *master; - struct stat sbuf; - -- retval = NULL; -- -- if (_fstat(fildes, &sbuf) == 0) { -- if (!ISPTM(sbuf)) -- errno = EINVAL; -- else { -- (void)snprintf(slave, sizeof(slave), -- _PATH_DEV PTS_PREFIX "%s", -- devname(sbuf.st_rdev, S_IFCHR) + -- strlen(PTM_PREFIX)); -- retval = slave; -- } -- } -- -- return (retval); -+ /* All master pty's must be char devices. */ -+ if (_fstat(fildes, &sbuf) == -1) -+ goto invalid; -+ if (!S_ISCHR(sbuf.st_mode)) -+ goto invalid; -+ -+ /* Check to see if this device is a pty(4) master. */ -+ master = devname(sbuf.st_rdev, S_IFCHR); -+ if (strlen(master) != strlen(PTM_PREFIX "XY")) -+ goto invalid; -+ if (strncmp(master, PTM_PREFIX, strlen(PTM_PREFIX)) != 0) -+ goto invalid; -+ -+ /* It is, so generate the corresponding pty(4) slave name. */ -+ (void)snprintf(slave, sizeof(slave), _PATH_DEV PTS_PREFIX "%s", -+ master + strlen(PTM_PREFIX)); -+ return (slave); -+ -+invalid: -+ errno = EINVAL; -+ return (NULL); - } - - /* -@@ -240,18 +246,14 @@ - int - unlockpt(int fildes) - { -- int retval; -- struct stat sbuf; - - /* - * Unlocking a master/slave pseudo-terminal pair has no meaning in a - * non-streams PTY environment. However, we do ensure fildes is a - * valid master pseudo-terminal device. - */ -- if ((retval = _fstat(fildes, &sbuf)) == 0 && !ISPTM(sbuf)) { -- errno = EINVAL; -- retval = -1; -- } -+ if (ptsname(fildes) == NULL) -+ return (-1); - -- return (retval); -+ return (0); - } -Index: lib/libutil/pty.c -=================================================================== -RCS file: /home/ncvs/src/lib/libutil/pty.c,v -retrieving revision 1.15.20.1 -diff -u -I__FBSDID -I$FreeBSD -r1.15.20.1 pty.c ---- lib/libutil/pty.c 27 Nov 2007 18:43:09 -0000 1.15.20.1 -+++ lib/libutil/pty.c 10 Jan 2008 20:54:30 -0000 -@@ -76,8 +76,7 @@ - break; /* try the next pty group */ - } else { - line[5] = 't'; -- (void) chown(line, getuid(), ttygid); -- (void) chmod(line, S_IRUSR|S_IWUSR|S_IWGRP); -+ (void) grantpt(master); - (void) revoke(line); - if ((slave = open(line, O_RDWR, 0)) != -1) { - *amaster = master; diff --git a/sys-freebsd/freebsd-lib/files/freebsd-lib-7.1-db.patch b/sys-freebsd/freebsd-lib/files/freebsd-lib-7.1-db.patch deleted file mode 100644 index 42b14e8c1475..000000000000 --- a/sys-freebsd/freebsd-lib/files/freebsd-lib-7.1-db.patch +++ /dev/null @@ -1,69 +0,0 @@ -http://security.freebsd.org/advisories/FreeBSD-SA-09:07.libc.asc - - - -Index: lib/libc/db/btree/bt_split.c -=================================================================== ---- lib/libc/db/btree/bt_split.c -+++ lib/libc/db/btree/bt_split.c -@@ -372,7 +372,7 @@ - } - - /* Put the new left page for the split into place. */ -- if ((l = (PAGE *)malloc(t->bt_psize)) == NULL) { -+ if ((l = (PAGE *)calloc(1, t->bt_psize)) == NULL) { - mpool_put(t->bt_mp, r, 0); - return (NULL); - } -Index: lib/libc/db/hash/hash_buf.c -=================================================================== ---- lib/libc/db/hash/hash_buf.c -+++ lib/libc/db/hash/hash_buf.c -@@ -57,6 +57,7 @@ - #include <stddef.h> - #include <stdio.h> - #include <stdlib.h> -+#include <string.h> - - #ifdef DEBUG - #include <assert.h> -@@ -169,12 +170,12 @@ - */ - if (hashp->nbufs || (bp->flags & BUF_PIN)) { - /* Allocate a new one */ -- if ((bp = (BUFHEAD *)malloc(sizeof(BUFHEAD))) == NULL) -+ if ((bp = (BUFHEAD *)calloc(1, sizeof(BUFHEAD))) == NULL) - return (NULL); - #ifdef PURIFY - memset(bp, 0xff, sizeof(BUFHEAD)); - #endif -- if ((bp->page = (char *)malloc(hashp->BSIZE)) == NULL) { -+ if ((bp->page = (char *)calloc(1, hashp->BSIZE)) == NULL) { - free(bp); - return (NULL); - } -@@ -319,8 +314,10 @@ - } - /* Check if we are freeing stuff */ - if (do_free) { -- if (bp->page) -+ if (bp->page) { -+ (void)memset(bp->page, 0, hashp->BSIZE); - free(bp->page); -+ } - BUF_REMOVE(bp); - free(bp); - bp = LRU; -Index: lib/libc/db/mpool/mpool.c -=================================================================== ---- lib/libc/db/mpool/mpool.c -+++ lib/libc/db/mpool/mpool.c -@@ -332,7 +332,7 @@ - return (bp); - } - --new: if ((bp = (BKT *)malloc(sizeof(BKT) + mp->pagesize)) == NULL) -+new: if ((bp = (BKT *)calloc(1, sizeof(BKT) + mp->pagesize)) == NULL) - return (NULL); - #ifdef STATISTICS - ++mp->pagealloc; diff --git a/sys-freebsd/freebsd-lib/files/freebsd-lib-7.1-strndup_bport.patch b/sys-freebsd/freebsd-lib/files/freebsd-lib-7.1-strndup_bport.patch deleted file mode 100644 index b4eab1e7ff49..000000000000 --- a/sys-freebsd/freebsd-lib/files/freebsd-lib-7.1-strndup_bport.patch +++ /dev/null @@ -1,151 +0,0 @@ -Backport of strndup from -CURRENT. - -Fixes bugs 249731 and 256741. - -According to the manpage this will appear on 8.0, -so try to keep it around. ---- lib.orig/libc/string/Makefile.inc -+++ lib/libc/string/Makefile.inc -@@ -9,9 +9,9 @@ - MISRCS+=bcmp.c bcopy.c bzero.c ffs.c ffsl.c ffsll.c fls.c flsl.c flsll.c \ - index.c memccpy.c memchr.c memrchr.c memcmp.c \ - memcpy.c memmem.c memmove.c memset.c rindex.c stpcpy.c strcasecmp.c \ -- strcat.c strchr.c strcmp.c strcoll.c strcpy.c strcspn.c strdup.c \ -- strerror.c strlcat.c strlcpy.c strlen.c strmode.c strncat.c strncmp.c \ -- strncpy.c strcasestr.c strnstr.c \ -+ strcat.c strcasestr.c strchr.c strcmp.c strcoll.c strcpy.c strcspn.c \ -+ strdup.c strerror.c strlcat.c strlcpy.c strlen.c strmode.c strncat.c \ -+ strncmp.c strncpy.c strndup.c strnstr.c \ - strpbrk.c strrchr.c strsep.c strsignal.c strspn.c strstr.c strtok.c \ - strxfrm.c swab.c wcscat.c wcschr.c wcscmp.c wcscoll.c wcscpy.c \ - wcscspn.c wcsdup.c \ -@@ -47,6 +47,7 @@ - MLINKS+=strchr.3 strrchr.3 - MLINKS+=strcmp.3 strncmp.3 - MLINKS+=strcpy.3 stpcpy.3 -+MLINKS+=strdup.3 strndup.3 - MLINKS+=strcpy.3 strncpy.3 - MLINKS+=strerror.3 perror.3 strerror.3 sys_errlist.3 strerror.3 sys_nerr.3 - MLINKS+=strerror.3 strerror_r.3 ---- lib.orig/libc/string/Symbol.map -+++ lib/libc/string/Symbol.map -@@ -81,6 +81,7 @@ - ffsll; - flsll; - memrchr; -+ strndup; - }; - - FBSDprivate_1.0 { ---- lib.orig/libc/string/strdup.3 -+++ lib/libc/string/strdup.3 -@@ -32,7 +32,8 @@ - .Dt STRDUP 3 - .Os - .Sh NAME --.Nm strdup -+.Nm strdup , -+.Nm strndup - .Nd save a copy of a string - .Sh LIBRARY - .Lb libc -@@ -40,6 +41,8 @@ - .In string.h - .Ft char * - .Fn strdup "const char *str" -+.Ft char * -+.Fn strndup "const char *str" "size_t len" - .Sh DESCRIPTION - The - .Fn strdup -@@ -56,6 +59,16 @@ - .Va errno - is set to - .Er ENOMEM . -+.Pp -+The -+.Fn strndup -+function copies at most -+.Fa len -+characters from the string -+.Fa str -+always -+.Dv NUL -+terminating the copied string. - .Sh SEE ALSO - .Xr free 3 , - .Xr malloc 3 -@@ -64,3 +77,7 @@ - .Fn strdup - function first appeared in - .Bx 4.4 . -+The -+.Fn strndup -+function was added in -+.Fx 8.0 . ---- lib.orig/libc/string/strndup.c -+++ lib/libc/string/strndup.c -@@ -0,0 +1,53 @@ -+/* $NetBSD: strndup.c,v 1.3 2007/01/14 23:41:24 cbiere Exp $ */ -+ -+/* -+ * Copyright (c) 1988, 1993 -+ * The Regents of the University of California. All rights reserved. -+ * -+ * Redistribution and use in source and binary forms, with or without -+ * modification, are permitted provided that the following conditions -+ * are met: -+ * 1. Redistributions of source code must retain the above copyright -+ * notice, this list of conditions and the following disclaimer. -+ * 2. Redistributions in binary form must reproduce the above copyright -+ * notice, this list of conditions and the following disclaimer in the -+ * documentation and/or other materials provided with the distribution. -+ * 4. Neither the name of the University nor the names of its contributors -+ * may be used to endorse or promote products derived from this software -+ * without specific prior written permission. -+ * -+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND -+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE -+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -+ * SUCH DAMAGE. -+ */ -+ -+#include <sys/cdefs.h> -+__FBSDID("$FreeBSD: src/lib/libc/string/strndup.c,v 1.1.2.1 2009/01/08 09:50:20 kib Exp $"); -+ -+#include <stddef.h> -+#include <stdlib.h> -+#include <string.h> -+ -+char * -+strndup(const char *str, size_t n) -+{ -+ size_t len; -+ char *copy; -+ -+ for (len = 0; len < n && str[len]; len++) -+ continue; -+ -+ if ((copy = malloc(len + 1)) == NULL) -+ return (NULL); -+ memcpy(copy, str, len); -+ copy[len] = '\0'; -+ return (copy); -+} ---- include.orig/string.h -+++ include/string.h -@@ -96,6 +96,7 @@ - int strncmp(const char *, const char *, size_t) __pure; - char *strncpy(char * __restrict, const char * __restrict, size_t); - #if __BSD_VISIBLE -+char *strndup(const char *, size_t); - char *strnstr(const char *, const char *, size_t) __pure; - #endif - char *strpbrk(const char *, const char *) __pure; diff --git a/sys-freebsd/freebsd-lib/freebsd-lib-6.2-r4.ebuild b/sys-freebsd/freebsd-lib/freebsd-lib-6.2-r4.ebuild deleted file mode 100644 index eb96881575b7..000000000000 --- a/sys-freebsd/freebsd-lib/freebsd-lib-6.2-r4.ebuild +++ /dev/null @@ -1,303 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-freebsd/freebsd-lib/freebsd-lib-6.2-r4.ebuild,v 1.6 2009/09/23 22:09:56 patrick Exp $ - -inherit bsdmk freebsd flag-o-matic toolchain-funcs - -DESCRIPTION="FreeBSD's base system libraries" -SLOT="6.0" -KEYWORDS="~sparc-fbsd ~x86-fbsd" - -IUSE="atm bluetooth ssl hesiod ipv6 kerberos gpib build bootstrap" - -# Crypto is needed to have an internal OpenSSL header -# sys is needed for libalias, probably we can just extract that instead of -# extracting the whole tarball -SRC_URI="mirror://gentoo/${LIB}.tar.bz2 - mirror://gentoo/${CONTRIB}.tar.bz2 - mirror://gentoo/${CRYPTO}.tar.bz2 - mirror://gentoo/${LIBEXEC}.tar.bz2 - mirror://gentoo/${ETC}.tar.bz2 - mirror://gentoo/${INCLUDE}.tar.bz2 - mirror://gentoo/${USBIN}.tar.bz2 - build? ( - mirror://gentoo/${SYS}.tar.bz2 )" - -if [ "${CATEGORY#*cross-}" = "${CATEGORY}" ]; then - RDEPEND="ssl? ( dev-libs/openssl ) - hesiod? ( net-dns/hesiod ) - kerberos? ( virtual/krb5 ) - !sys-freebsd/freebsd-headers" - DEPEND="${RDEPEND} - >=sys-devel/flex-2.5.31-r2 - =sys-freebsd/freebsd-sources-${RV}* - !bootstrap? ( app-arch/bzip2 )" - - PROVIDE="virtual/libc - virtual/os-headers" - -else - SRC_URI="${SRC_URI} - mirror://gentoo/${SYS}.tar.bz2" -fi - -DEPEND="${DEPEND} - =sys-freebsd/freebsd-mk-defs-${RV}*" - -S="${WORKDIR}/lib" - -export CTARGET=${CTARGET:-${CHOST}} -if [ "${CTARGET}" = "${CHOST}" -a "${CATEGORY#*cross-}" != "${CATEGORY}" ]; then - export CTARGET=${CATEGORY/cross-} -fi - -pkg_setup() { - [ -c /dev/zero ] || \ - die "You forgot to mount /dev; the compiled libc would break." - - if ! use ssl && use kerberos; then - eerror "If you want kerberos support you need to enable ssl support, too." - fi - - use atm || mymakeopts="${mymakeopts} NO_ATM= " - use bluetooth || mymakeopts="${mymakeopts} NO_BLUETOOTH= " - use hesiod || mymakeopts="${mymakeopts} NO_HESIOD_LIBC= " - use ssl || mymakeopts="${mymakeopts} NO_OPENSSL= NO_CRYPT= " - use ipv6 || mymakeopts="${mymakeopts} NO_INET6= " - use kerberos || mymakeopts="${mymakeopts} NO_KERBEROS= " - use gpib || mymakeopts="${mymakeopts} NO_GPIB= " - - mymakeopts="${mymakeopts} NO_OPENSSH= NO_BIND= NO_SENDMAIL= NO_LIBC_R= NO_LIBPTHREAD=" - - if [ "${CTARGET}" != "${CHOST}" ]; then - mymakeopts="${mymakeopts} MACHINE=$(tc-arch-kernel ${CTARGET})" - mymakeopts="${mymakeopts} MACHINE_ARCH=$(tc-arch-kernel ${CTARGET})" - fi -} - -PATCHES="${FILESDIR}/${PN}-bsdxml.patch - ${FILESDIR}/${PN}-6.0-pmc.patch - ${FILESDIR}/${PN}-6.0-gccfloat.patch - ${FILESDIR}/${PN}-6.0-flex-2.5.31.patch - ${FILESDIR}/${PN}-6.0-binutils-asm.patch - ${FILESDIR}/${PN}-6.0-ssp.patch - ${FILESDIR}/${PN}-6.1-csu.patch - ${FILESDIR}/${PN}-6.2-bluetooth.patch - ${FILESDIR}/${PN}-6.2-gcc41.patch - ${FILESDIR}/${PN}-6.2-dl_iterate_phdr.patch - ${FILESDIR}/${PN}-6.2-as-needed.patch - ${FILESDIR}/${PN}-6.2-libthr.patch - ${FILESDIR}/${PN}-6.2-libc.patch - ${FILESDIR}/${PN}-6.2-pty6.patch - ${FILESDIR}/${PN}-new_as.patch" - -# Here we disable and remove source which we don't need or want -# In order: -# - ncurses stuff -# - archiving libraries (have their own ebuild) -# - sendmail libraries (they are installed by sendmail) -# - SNMP library and dependency (have their own ebuilds) -# -# The rest are libraries we already have somewhere else because -# they are contribution. -# Note: libtelnet is an internal lib used by telnet and telnetd programs -# as it's not used in freebsd-lib package itself, it's pointless building -# it here. -REMOVE_SUBDIRS="libncurses libform libmenu libpanel libedit \ - libz libbz2 libarchive \ - libsm libsmdb libsmutil \ - libbegemot libbsnmp \ - libpam libpcap bind libwrap libmagic \ - libcom_err libtelnet" - -src_unpack() { - freebsd_src_unpack - - sed -i.bak -e 's:-o/dev/stdout:-t:' "${S}/libc/net/Makefile.inc" - sed -i.bak -e 's:histedit.h::' "${WORKDIR}/include/Makefile" - - # Upstream Display Managers default to using VT7 - # We should make FreeBSD allow this by default - local x= - for x in "${WORKDIR}"/etc/etc.*/ttys ; do - sed -i.bak \ - -e '/ttyv5[[:space:]]/ a\ -# Display Managers default to VT7.\ -# If you use the xdm init script, keep ttyv6 commented out\ -# unless you force a different VT for the DM being used.' \ - -e '/^ttyv[678][[:space:]]/ s/^/# /' "${x}" \ - || die "Failed to sed ${x}" - rm "${x}".bak - done - - # Don't install the hesiod man page or header - rm "${WORKDIR}"/include/hesiod.h || die - sed -i.bak -e 's:hesiod.h::' "${WORKDIR}"/include/Makefile || die - sed -i.bak -e 's:hesiod.c::' -e 's:hesiod.3::' \ - "${WORKDIR}"/lib/libc/net/Makefile.inc || die - - # Apply this patch for Gentoo/FreeBSD/SPARC64 to build correctly - # from catalyst, then don't do anything else - if use build; then - cd "${WORKDIR}" - # We may need this patch again if it uses the linker instructions - # remove this when tested - # epatch "${FILESDIR}/freebsd-sources-6.2-sparc64.patch" - return 0 - fi - - if [ "${CTARGET}" = "${CHOST}" ]; then - ln -s "/usr/src/sys-${RV}" "${WORKDIR}/sys" - else - sed -i.bak -e "s:/usr/include:/usr/${CTARGET}/usr/include:g" \ - "${S}/libc/rpc/Makefile.inc" \ - "${S}/libc/yp/Makefile.inc" - fi - - if install --version 2> /dev/null | grep -q GNU; then - sed -i.bak -e 's:${INSTALL} -C:${INSTALL}:' "${WORKDIR}/include/Makefile" - fi - - # Let arch-specific includes to be found - local machine - machine=$(tc-arch-kernel ${CTARGET}) - ln -s "${WORKDIR}/sys/${machine}/include" "${WORKDIR}/include/machine" - - use bootstrap && dummy_mk libstand -} - -src_compile() { - cd "${WORKDIR}/include" - $(freebsd_get_bmake) CC=$(tc-getCC) || die "make include failed" - - use crosscompile_opts_headers-only && return 0 - - # Don't use ssp until properly fixed - append-flags $(test-flags -fno-stack-protector -fno-stack-protector-all) - - # Bug #270098 - append-flags $(test-flags -fno-strict-aliasing) - - strip-flags - if [ "${CTARGET}" != "${CHOST}" ]; then - export YACC='yacc -by' - CHOST=${CTARGET} tc-export CC LD CXX - - local machine - machine=$(tc-arch-kernel ${CTARGET}) - - local csudir - if [ -d "${S}/csu/${machine}-elf" ]; then - csudir="${S}/csu/${machine}-elf" - else - csudir="${S}/csu/${machine}" - fi - cd "${csudir}" - $(freebsd_get_bmake) ${mymakeopts} || die "make csu failed" - - append-flags "-isystem /usr/${CTARGET}/usr/include" - append-flags "-B ${csudir}" - append-ldflags "-B ${csudir}" - cd "${S}/libc" - $(freebsd_get_bmake) ${mymakeopts} || die "make libc failed" - - append-flags "-isystem ${WORKDIR}/lib/msun/${machine/i386/i387}" - cd "${S}/msun" - $(freebsd_get_bmake) ${mymakeopts} || die "make libc failed" - else - # Forces to use the local copy of headers as they might be outdated in - # the system - append-flags "-isystem '${WORKDIR}/sys' -isystem '${WORKDIR}/include'" - - cd "${S}" - NOFLAGSTRIP=yes freebsd_src_compile - fi -} - -src_install() { - cd "${WORKDIR}/include" - - [ "${CTARGET}" = "${CHOST}" ] \ - && INCLUDEDIR="/usr/include" \ - || INCLUDEDIR="/usr/${CTARGET}/usr/include" - - einfo "Installing for ${CTARGET} in ${CHOST}.." - - dodir "${INCLUDEDIR}" - $(freebsd_get_bmake) installincludes \ - MACHINE=$(tc-arch-kernel) \ - DESTDIR="${D}" INCLUDEDIR="${INCLUDEDIR}" || die "Install failed" - - # Install math.h when crosscompiling, at this point - if [ "${CHOST}" != "${CTARGET}" ]; then - insinto "/usr/${CTARGET}/usr/include" - doins "${S}/msun/src/math.h" - fi - - use crosscompile_opts_headers-only && return 0 - - if [ "${CTARGET}" != "${CHOST}" ]; then - local csudir - if [ -d "${S}/csu/$(tc-arch-kernel ${CTARGET})-elf" ]; then - csudir="${S}/csu/$(tc-arch-kernel ${CTARGET})-elf" - else - csudir="${S}/csu/$(tc-arch-kernel ${CTARGET})" - fi - cd "${csudir}" - $(freebsd_get_bmake) ${mymakeopts} DESTDIR="${D}" install \ - FILESDIR="/usr/${CTARGET}/usr/lib" LIBDIR="/usr/${CTARGET}/usr/lib" || die "Install csu failed" - - cd "${S}/libc" - $(freebsd_get_bmake) ${mymakeopts} DESTDIR="${D}" install NO_MAN= \ - SHLIBDIR="/usr/${CTARGET}/lib" LIBDIR="/usr/${CTARGET}/usr/lib" || die "Install failed" - - cd "${S}/msun" - $(freebsd_get_bmake) ${mymakeopts} DESTDIR="${D}" install NO_MAN= \ - INCLUDEDIR="/usr/${CTARGET}/usr/include" \ - SHLIBDIR="/usr/${CTARGET}/lib" LIBDIR="/usr/${CTARGET}/usr/lib" || die "Install failed" - - dosym "usr/include" "/usr/${CTARGET}/sys-include" - else - cd "${S}" - mkinstall || die "Install failed" - fi - - # Don't install the rest of the configuration files if crosscompiling - [ "${CTARGET}" != "${CHOST}" ] && return 0 - - # Add symlinks (-> libthr) for legacy threading libraries, since these are - # not built by us (they are disabled in FreeBSD-7 anyway). - dosym libthr.a /usr/lib/libpthread.a - dosym libthr.so /usr/lib/libpthread.so - dosym libthr.a /usr/lib/libc_r.a - dosym libthr.so /usr/lib/libc_r.so - - # Add symlink (-> libthr) so previously built binaries still work. - dosym libthr.so.2 /lib/libpthread.so.2 - dosym libthr.so.2 /lib/libc_r.so.6 - - # Compatibility symlinks to run FreeBSD 5.x binaries (ABI is mostly - # identical, remove when problems will actually happen) - dosym /lib/libc.so.6 /usr/lib/libc.so.5 - dosym /lib/libm.so.4 /usr/lib/libm.so.3 - - # install libstand files - dodir /usr/include/libstand - insinto /usr/include/libstand - doins "${S}"/libstand/*.h - - cd "${WORKDIR}/etc/" - insinto /etc - doins auth.conf nls.alias mac.conf netconfig - - # Install ttys file - doins "etc.$(tc-arch-kernel)"/* - - dodir /etc/sandbox.d - cat - > "${D}"/etc/sandbox.d/00freebsd <<EOF -# /dev/crypto is used mostly by OpenSSL on *BSD platforms -# leave it available as packages might use OpenSSL commands -# during compile or install phase. -SANDBOX_PREDICT="/dev/crypto" -EOF -} diff --git a/sys-freebsd/freebsd-lib/freebsd-lib-7.1-r4.ebuild b/sys-freebsd/freebsd-lib/freebsd-lib-7.1-r4.ebuild deleted file mode 100644 index 71b2a024cd70..000000000000 --- a/sys-freebsd/freebsd-lib/freebsd-lib-7.1-r4.ebuild +++ /dev/null @@ -1,370 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-freebsd/freebsd-lib/freebsd-lib-7.1-r4.ebuild,v 1.6 2009/09/23 22:09:56 patrick Exp $ - -EAPI=2 - -inherit bsdmk freebsd flag-o-matic multilib toolchain-funcs - -DESCRIPTION="FreeBSD's base system libraries" -SLOT="7.0" -KEYWORDS="~sparc-fbsd ~x86-fbsd" - -# Crypto is needed to have an internal OpenSSL header -# sys is needed for libalias, probably we can just extract that instead of -# extracting the whole tarball -SRC_URI="mirror://gentoo/${LIB}.tar.bz2 - mirror://gentoo/${CONTRIB}.tar.bz2 - mirror://gentoo/${CRYPTO}.tar.bz2 - mirror://gentoo/${LIBEXEC}.tar.bz2 - mirror://gentoo/${ETC}.tar.bz2 - mirror://gentoo/${INCLUDE}.tar.bz2 - mirror://gentoo/${USBIN}.tar.bz2 - build? ( - mirror://gentoo/${SYS}.tar.bz2 )" - -if [ "${CATEGORY#*cross-}" = "${CATEGORY}" ]; then - RDEPEND="ssl? ( dev-libs/openssl ) - hesiod? ( net-dns/hesiod ) - kerberos? ( virtual/krb5 ) - !sys-freebsd/freebsd-headers - dev-libs/libelf" - DEPEND="${RDEPEND} - >=sys-devel/flex-2.5.31-r2 - =sys-freebsd/freebsd-sources-${RV}* - !bootstrap? ( app-arch/bzip2 )" - - PROVIDE="virtual/libc - virtual/os-headers" - -else - SRC_URI="${SRC_URI} - mirror://gentoo/${SYS}.tar.bz2" -fi - -DEPEND="${DEPEND} - =sys-freebsd/freebsd-mk-defs-${RV}*" - -S="${WORKDIR}/lib" - -export CTARGET=${CTARGET:-${CHOST}} -if [ "${CTARGET}" = "${CHOST}" -a "${CATEGORY#*cross-}" != "${CATEGORY}" ]; then - export CTARGET=${CATEGORY/cross-} -fi - -IUSE="atm bluetooth ssl hesiod ipv6 kerberos usb netware - build bootstrap crosscompile_opts_headers-only" - -pkg_setup() { - [ -c /dev/zero ] || \ - die "You forgot to mount /dev; the compiled libc would break." - - if ! use ssl && use kerberos; then - eerror "If you want kerberos support you need to enable ssl support, too." - fi - - use atm || mymakeopts="${mymakeopts} WITHOUT_ATM= " - use bluetooth || mymakeopts="${mymakeopts} WITHOUT_BLUETOOTH= " - use hesiod || mymakeopts="${mymakeopts} WITHOUT_HESIOD= " - use ipv6 || mymakeopts="${mymakeopts} WITHOUT_INET6_SUPPORT= " - use kerberos || mymakeopts="${mymakeopts} WITHOUT_KERBEROS_SUPPORT= " - use netware || mymakeopts="${mymakeopts} WITHOUT_IPX= WITHOUT_IPX_SUPPORT= WITHOUT_NCP= " - use ssl || mymakeopts="${mymakeopts} WITHOUT_OPENSSL= " - use usb || mymakeopts="${mymakeopts} WITHOUT_USB= " - - mymakeopts="${mymakeopts} WITHOUT_BIND= WITHOUT_BIND_LIBS= WITHOUT_SENDMAIL=" - - if [ "${CTARGET}" != "${CHOST}" ]; then - mymakeopts="${mymakeopts} MACHINE=$(tc-arch-kernel ${CTARGET})" - mymakeopts="${mymakeopts} MACHINE_ARCH=$(tc-arch-kernel ${CTARGET})" - fi -} - -PATCHES="${FILESDIR}/${PN}-bsdxml.patch - ${FILESDIR}/${PN}-6.0-pmc.patch - ${FILESDIR}/${PN}-6.0-gccfloat.patch - ${FILESDIR}/${PN}-6.0-flex-2.5.31.patch - ${FILESDIR}/${PN}-6.1-csu.patch - ${FILESDIR}/${PN}-6.2-bluetooth.patch - ${FILESDIR}/${PN}-new_as.patch - ${FILESDIR}/${PN}-7.0-CVE-2008-1391.patch - ${FILESDIR}/${PN}-7.1-db.patch" - -# Here we disable and remove source which we don't need or want -# In order: -# - ncurses stuff -# - archiving libraries (have their own ebuild) -# - sendmail libraries (they are installed by sendmail) -# - SNMP library and dependency (have their own ebuilds) -# -# The rest are libraries we already have somewhere else because -# they are contribution. -# Note: libtelnet is an internal lib used by telnet and telnetd programs -# as it's not used in freebsd-lib package itself, it's pointless building -# it here. -REMOVE_SUBDIRS="ncurses - libz libbz2 libarchive \ - libsm libsmdb libsmutil \ - libbegemot libbsnmp \ - libpam libpcap bind libwrap libmagic \ - libcom_err libtelnet - libedit libelf" - -src_prepare() { - sed -i.bak -e 's:-o/dev/stdout:-t:' "${S}/libc/net/Makefile.inc" - sed -i.bak -e 's:histedit.h::' "${WORKDIR}/include/Makefile" - - # Upstream Display Managers default to using VT7 - # We should make FreeBSD allow this by default - local x= - for x in "${WORKDIR}"/etc/etc.*/ttys ; do - sed -i.bak \ - -e '/ttyv5[[:space:]]/ a\ -# Display Managers default to VT7.\ -# If you use the xdm init script, keep ttyv6 commented out\ -# unless you force a different VT for the DM being used.' \ - -e '/^ttyv[678][[:space:]]/ s/^/# /' "${x}" \ - || die "Failed to sed ${x}" - rm "${x}".bak - done - - # This one is here because it also - # patches "${WORKDIR}/include" - cd "${WORKDIR}" - epatch "${FILESDIR}/${PN}-7.1-strndup_bport.patch" - epatch "${FILESDIR}/${PN}-includes.patch" - - # Don't install the hesiod man page or header - rm "${WORKDIR}"/include/hesiod.h || die - sed -i.bak -e 's:hesiod.h::' "${WORKDIR}"/include/Makefile || die - sed -i.bak -e 's:hesiod.c::' -e 's:hesiod.3::' \ - "${WORKDIR}"/lib/libc/net/Makefile.inc || die - - # Apply this patch for Gentoo/FreeBSD/SPARC64 to build correctly - # from catalyst, then don't do anything else - if use build; then - cd "${WORKDIR}" - # This patch has to be applied on ${WORKDIR}/sys, so we do it here since it - # shouldn't be a symlink to /usr/src/sys (which should be already patched) - epatch "${FILESDIR}"/${PN}-7.1-types.h-fix.patch - # Preinstall includes so we don't use the system's ones. - mkdir "${WORKDIR}/include_proper" || die "Couldn't create ${WORKDIR}/include_proper" - install_includes "/include_proper" - return 0 - fi - - if [ "${CTARGET}" = "${CHOST}" ]; then - ln -s "/usr/src/sys-${RV}" "${WORKDIR}/sys" || die "Couldn't make sys symlink!" - else - sed -i.bak -e "s:/usr/include:/usr/${CTARGET}/usr/include:g" \ - "${S}/libc/rpc/Makefile.inc" \ - "${S}/libc/yp/Makefile.inc" - fi - - if install --version 2> /dev/null | grep -q GNU; then - sed -i.bak -e 's:${INSTALL} -C:${INSTALL}:' "${WORKDIR}/include/Makefile" - fi - - # Preinstall includes so we don't use the system's ones. - mkdir "${WORKDIR}/include_proper" || die "Couldn't create ${WORKDIR}/include_proper" - install_includes "/include_proper" - - # Let arch-specific includes to be found - local machine - machine=$(tc-arch-kernel ${CTARGET}) - ln -s "${WORKDIR}/sys/${machine}/include" "${WORKDIR}/include/machine" || \ - die "Couldn't make ${machine}/include symlink." - - cd "${S}" - use bootstrap && dummy_mk libstand -} - -src_compile() { - cd "${WORKDIR}/include" - $(freebsd_get_bmake) CC=$(tc-getCC) || die "make include failed" - - use crosscompile_opts_headers-only && return 0 - - # Don't use ssp until properly fixed - append-flags $(test-flags -fno-stack-protector -fno-stack-protector-all) - - # Bug #270098 - append-flags $(test-flags -fno-strict-aliasing) - - strip-flags - if [ "${CTARGET}" != "${CHOST}" ]; then - export YACC='yacc -by' - CHOST=${CTARGET} tc-export CC LD CXX - - local machine - machine=$(tc-arch-kernel ${CTARGET}) - - local csudir - if [ -d "${S}/csu/${machine}-elf" ]; then - csudir="${S}/csu/${machine}-elf" - else - csudir="${S}/csu/${machine}" - fi - cd "${csudir}" - $(freebsd_get_bmake) ${mymakeopts} || die "make csu failed" - - append-flags "-isystem /usr/${CTARGET}/usr/include" - append-flags "-isystem ${WORKDIR}/lib/libutil" - append-flags "-isystem ${WORKDIR}/lib/msun/${machine/i386/i387}" - append-flags "-B ${csudir}" - append-ldflags "-B ${csudir}" - - cd "${S}/libc" - $(freebsd_get_bmake) ${mymakeopts} || die "make libc failed" - cd "${S}/msun" - $(freebsd_get_bmake) ${mymakeopts} || die "make libc failed" - else - # Forces to use the local copy of headers as they might be outdated in - # the system - append-flags "-isystem '${WORKDIR}/include_proper'" - - cd "${S}" - NOFLAGSTRIP=yes freebsd_src_compile - fi -} - -src_install() { - [ "${CTARGET}" = "${CHOST}" ] \ - && INCLUDEDIR="/usr/include" \ - || INCLUDEDIR="/usr/${CTARGET}/usr/include" - dodir ${INCLUDEDIR} - einfo "Installing for ${CTARGET} in ${CHOST}.." - install_includes ${INCLUDEDIR} - - # Install math.h when crosscompiling, at this point - if [ "${CHOST}" != "${CTARGET}" ]; then - insinto "/usr/${CTARGET}/usr/include" - doins "${S}/msun/src/math.h" - fi - - use crosscompile_opts_headers-only && return 0 - - if [ "${CTARGET}" != "${CHOST}" ]; then - local csudir - if [ -d "${S}/csu/$(tc-arch-kernel ${CTARGET})-elf" ]; then - csudir="${S}/csu/$(tc-arch-kernel ${CTARGET})-elf" - else - csudir="${S}/csu/$(tc-arch-kernel ${CTARGET})" - fi - cd "${csudir}" - $(freebsd_get_bmake) ${mymakeopts} DESTDIR="${D}" install \ - FILESDIR="/usr/${CTARGET}/usr/lib" LIBDIR="/usr/${CTARGET}/usr/lib" || die "Install csu failed" - - cd "${S}/libc" - $(freebsd_get_bmake) ${mymakeopts} DESTDIR="${D}" install NO_MAN= \ - SHLIBDIR="/usr/${CTARGET}/lib" LIBDIR="/usr/${CTARGET}/usr/lib" || die "Install failed" - - cd "${S}/msun" - $(freebsd_get_bmake) ${mymakeopts} DESTDIR="${D}" install NO_MAN= \ - INCLUDEDIR="/usr/${CTARGET}/usr/include" \ - SHLIBDIR="/usr/${CTARGET}/lib" LIBDIR="/usr/${CTARGET}/usr/lib" || die "Install failed" - - dosym "usr/include" "/usr/${CTARGET}/sys-include" - else - cd "${S}" - # Set SHLIBDIR and LIBDIR for multilib - SHLIBDIR="/$(get_libdir)" LIBDIR="/usr/$(get_libdir)" mkinstall || die "Install failed" - fi - - # Don't install the rest of the configuration files if crosscompiling - if [ "${CTARGET}" != "${CHOST}" ] ; then - # This is to get it stripped with the correct tools, otherwise it gets - # stripped with the host strip. - export CHOST=${CTARGET} - return 0 - fi - - # Add symlinks (-> libthr) for legacy threading libraries, since these are - # not built by us (they are disabled in FreeBSD-7 anyway). - dosym libthr.a /usr/$(get_libdir)/libpthread.a - dosym libthr.so /usr/$(get_libdir)/libpthread.so - dosym libthr.a /usr/$(get_libdir)/libc_r.a - dosym libthr.so /usr/$(get_libdir)/libc_r.so - - # Add symlink (-> libthr) so previously built binaries still work. - dosym libthr.so.3 /$(get_libdir)/libpthread.so.2 - dosym libthr.so.3 /$(get_libdir)/libc_r.so.6 - - # Compatibility symlinks to run FreeBSD 5.x binaries (ABI is mostly - # identical, remove when problems will actually happen) - dosym /lib/libc.so.7 /usr/$(get_libdir)/libc.so.6 - dosym /lib/libc.so.6 /usr/$(get_libdir)/libc.so.5 - dosym /lib/libm.so.4 /usr/$(get_libdir)/libm.so.3 - dosym /lib/libm.so.5 /usr/$(get_libdir)/libm.so.4 - - # install libstand files - dodir /usr/include/libstand - insinto /usr/include/libstand - doins "${S}"/libstand/*.h - - cd "${WORKDIR}/etc/" - insinto /etc - doins auth.conf nls.alias mac.conf netconfig - - # Install ttys file - if [[ $(tc-arch-kernel) == "x86_64" ]]; then - local MACHINE="amd64" - else - local MACHINE="$(tc-arch-kernel)" - fi - doins "etc.${MACHINE}"/* - - # Generate ldscripts, otherwise bad thigs are supposed to happen - gen_usr_ldscript libalias_cuseeme.so libalias_dummy.so libalias_ftp.so \ - libalias_irc.so libalias_nbt.so libalias_pptp.so libalias_skinny.so \ - libalias_smedia.so - # These show on QA warnings too, however they're pretty much bsd only, - # aka, no autotools for them. - # libbsdxml.so libcam.so libcrypt.so libdevstat.so libgeom.so \ - # libipsec.so libipx.so libkiconv.so libkvm.so libmd.so libsbuf.so libufs.so \ - # libutil.so - - dodir /etc/sandbox.d - cat - > "${D}"/etc/sandbox.d/00freebsd <<EOF -# /dev/crypto is used mostly by OpenSSL on *BSD platforms -# leave it available as packages might use OpenSSL commands -# during compile or install phase. -SANDBOX_PREDICT="/dev/crypto" -EOF -} - -install_includes() -{ - local INCLUDEDIR="$1" - - # The idea is to be called from either install or unpack. - # During unpack it's required to install them as portage's user. - if [[ "${EBUILD_PHASE}" == "install" ]]; then - local DESTDIR="${D}" - BINOWN="root" - BINGRP="wheel" - else - local DESTDIR="${WORKDIR}" - [[ -z "${USER}" ]] && USER="portage" - BINOWN="${USER}" - [[ -z "${GROUPS}" ]] && GROUPS="portage" - BINGRP="${GROUPS}" - fi - - # Must exist before we use it. - [[ -d "${DESTDIR}${INCLUDEDIR}" ]] || die "dodir or mkdir ${INCLUDEDIR} before using install_includes." - cd "${WORKDIR}/include" - - if [[ $(tc-arch-kernel) == "x86_64" ]]; then - local MACHINE="amd64" - else - local MACHINE="$(tc-arch-kernel)" - fi - - einfo "Installing includes into ${INCLUDEDIR} as ${BINOWN}:${BINGRP}..." - $(freebsd_get_bmake) installincludes \ - MACHINE=${MACHINE} DESTDIR="${DESTDIR}" \ - INCLUDEDIR="${INCLUDEDIR}" BINOWN="${BINOWN}" \ - BINGRP="${BINGRP}" || die "install_includes() failed" - einfo "includes installed ok." -} diff --git a/sys-freebsd/freebsd-lib/metadata.xml b/sys-freebsd/freebsd-lib/metadata.xml index 51f0069cd483..adb910c44030 100644 --- a/sys-freebsd/freebsd-lib/metadata.xml +++ b/sys-freebsd/freebsd-lib/metadata.xml @@ -3,7 +3,6 @@ <pkgmetadata> <herd>bsd</herd> <use> - <flag name='gpib'>Enable General Purpose Interface Bus support</flag> <flag name='hesiod'>Enable support for net-dns/hesiod</flag> <flag name='netware'> Build libraries and tools to work with NetWare protocols (IPX |