summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexis Ballier <aballier@gentoo.org>2010-03-11 12:01:15 +0000
committerAlexis Ballier <aballier@gentoo.org>2010-03-11 12:01:15 +0000
commit43b5a69dbbb02bf5296e51c39295d6e8731c3404 (patch)
tree6a75ac0777e188ad2a81ff6628898ab128bbc15b /sys-freebsd/freebsd-lib
parentremove old (diff)
downloadgentoo-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')
-rw-r--r--sys-freebsd/freebsd-lib/ChangeLog13
-rw-r--r--sys-freebsd/freebsd-lib/files/freebsd-lib-6.0-binutils-asm.patch36
-rw-r--r--sys-freebsd/freebsd-lib/files/freebsd-lib-6.0-ssp.patch135
-rw-r--r--sys-freebsd/freebsd-lib/files/freebsd-lib-6.2-as-needed.patch40
-rw-r--r--sys-freebsd/freebsd-lib/files/freebsd-lib-6.2-dl_iterate_phdr.patch29
-rw-r--r--sys-freebsd/freebsd-lib/files/freebsd-lib-6.2-gcc41.patch26
-rw-r--r--sys-freebsd/freebsd-lib/files/freebsd-lib-6.2-libc.patch21
-rw-r--r--sys-freebsd/freebsd-lib/files/freebsd-lib-6.2-libthr.patch12
-rw-r--r--sys-freebsd/freebsd-lib/files/freebsd-lib-6.2-pty6.patch95
-rw-r--r--sys-freebsd/freebsd-lib/files/freebsd-lib-7.1-db.patch69
-rw-r--r--sys-freebsd/freebsd-lib/files/freebsd-lib-7.1-strndup_bport.patch151
-rw-r--r--sys-freebsd/freebsd-lib/freebsd-lib-6.2-r4.ebuild303
-rw-r--r--sys-freebsd/freebsd-lib/freebsd-lib-7.1-r4.ebuild370
-rw-r--r--sys-freebsd/freebsd-lib/metadata.xml1
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