Synchronize on NetBSD-CVS (2013/12/1 12:00:00 UTC)

- Fix for possible unset uid/gid in toproto
 - Fix for default mtree style
 - Update libelf
 - Importing libexecinfo
 - Resynchronize GCC, mpc, gmp, mpfr
 - build.sh: Replace params with show-params.
     This has been done as the make target has been renamed in the same
     way, while a new target named params has been added. This new
     target generates a file containing all the parameters, instead of
     printing it on the console.
 - Update test48 with new etc/services (Fix by Ben Gras <ben@minix3.org)
     get getservbyport() out of the inner loop

Change-Id: Ie6ad5226fa2621ff9f0dee8782ea48f9443d2091
This commit is contained in:
2013-12-06 12:04:52 +01:00
parent ff10274392
commit 84d9c625bf
4655 changed files with 379317 additions and 151059 deletions

View File

@@ -5,52 +5,56 @@ HERE=${.CURDIR}/arch/${MACHINE_ARCH}
.PATH: ${HERE}
# objects we want unpaged from -lminlib
MINLIB_OBJS_UNPAGED=get_bp.o
MINLIB_OBJS_UNPAGED= get_bp.o
get_bp.o: ${NETBSDSRCDIR}/lib/libminlib/${MACHINE_ARCH}/get_bp.S
# objects we want unpaged from -lsys
SYS_OBJS_UNPAGED=assert.o kprintf.o stacktrace.o vprintf.o
SYS_OBJS_UNPAGED=assert.o stacktrace.o
assert.o: ${NETBSDSRCDIR}/lib/libsys/assert.c
kprintf.o: ${NETBSDSRCDIR}/lib/libsys/kprintf.c
stacktrace.o: ${NETBSDSRCDIR}/lib/libsys/stacktrace.c
vprintf.o: ${NETBSDSRCDIR}/lib/libsys/vprintf.c
# objects we want unpaged from -lminc
MINC_OBJS_UNPAGED=findfp.o strcat.o strlen.o memcpy.o strcpy.o strncmp.o \
memset.o memmove.o strcmp.o atoi.o ctype_.o strtol.o \
_errno.o errno.o udivdi3.o umoddi3.o qdivrem.o
MINC_OBJS_UNPAGED+= divsi3.o __aeabi_uldivmod.o
#_udivsi3.o _divdi3.o _udivdi3.o _umoddi3.o _dvmd_tls.o _clzsi2.o bpabi.o
memcpy.o: ${NETBSDSRCDIR}/common/lib/libc/string/memcpy.c
memmove.o: ${NETBSDSRCDIR}/common/lib/libc/string/memmove.c
memset.o: ${NETBSDSRCDIR}/common/lib/libc/string/memset.c
strcat.o: ${NETBSDSRCDIR}/common/lib/libc/string/strcat.c
strlen.o: ${NETBSDSRCDIR}/common/lib/libc/string/strlen.c
strcpy.o: ${NETBSDSRCDIR}/common/lib/libc/string/strcpy.c
strcmp.o: ${NETBSDSRCDIR}/common/lib/libc/string/strcmp.c
MINC_OBJS_UNPAGED= atoi.o \
printf.o subr_prf.o \
strcmp.o strcpy.o strlen.o strncmp.o \
memcpy.o memmove.o memset.o \
udivdi3.o umoddi3.o qdivrem.o
MINC_OBJS_UNPAGED+= __aeabi_ldiv0.o __aeabi_idiv0.o __aeabi_uldivmod.o divide.o divsi3.o udivsi3.o
atoi.o: ${NETBSDSRCDIR}/lib/libminc/atoi.c
printf.o: ${NETBSDSRCDIR}/sys/lib/libsa/printf.c
subr_prf.o: ${NETBSDSRCDIR}/sys/lib/libsa/subr_prf.c
memcpy.o: ${NETBSDSRCDIR}/common/lib/libc/arch/arm/string/memcpy.S
memmove.o: ${NETBSDSRCDIR}/common/lib/libc/arch/arm/string/memmove.S
memset.o: ${NETBSDSRCDIR}/common/lib/libc/arch/arm/string/memset.S
strlen.o: ${NETBSDSRCDIR}/common/lib/libc/arch/arm/string/strlen.S
strcpy.o: ${NETBSDSRCDIR}/common/lib/libc/arch/arm/string/strcpy.S
strcmp.o: ${NETBSDSRCDIR}/common/lib/libc/arch/arm/string/strcmp.S
#strcat.o: ${NETBSDSRCDIR}/common/lib/libc/string/strcat.c
__aeabi_idiv0.o: ${NETBSDSRCDIR}/common/lib/libc/arch/arm/gen/__aeabi_idiv0.c
__aeabi_ldiv0.o: ${NETBSDSRCDIR}/common/lib/libc/arch/arm/gen/__aeabi_ldiv0.c
__aeabi_uldivmod.o: ${NETBSDSRCDIR}/common/lib/libc/arch/arm/quad/__aeabi_uldivmod.S
divide.o: ${NETBSDSRCDIR}/common/lib/libc/arch/arm/gen/divide.S
divsi3.o: ${NETBSDSRCDIR}/common/lib/libc/arch/arm/gen/divsi3.S
udivsi3.o: ${NETBSDSRCDIR}/common/lib/libc/arch/arm/gen/udivsi3.S
# the following is required by pre_init.c
strncmp.o: ${NETBSDSRCDIR}/common/lib/libc/string/strncmp.c
# these are required by kprintn.o:
udivdi3.o: ${NETBSDSRCDIR}/common/lib/libc/quad/udivdi3.c
umoddi3.o: ${NETBSDSRCDIR}/common/lib/libc/quad/umoddi3.c
qdivrem.o: ${NETBSDSRCDIR}/common/lib/libc/quad/qdivrem.c
atoi.o: ${NETBSDSRCDIR}/lib/libc/stdlib/atoi.c
strtol.o: ${NETBSDSRCDIR}/lib/libc/stdlib/strtol.c
findfp.o: ${NETBSDSRCDIR}/lib/libc/stdio/findfp.c
ctype_.o: ${NETBSDSRCDIR}/lib/libc/gen/ctype_.c
_errno.o: ${NETBSDSRCDIR}/lib/libc/gen/_errno.c
errno.o: ${NETBSDSRCDIR}/lib/libc/gen/errno.c
divsi3.o: ${NETBSDSRCDIR}/common/lib/libc/arch/${MACHINE_GNU_ARCH}/gen/divsi3.S
__aeabi_uldivmod.o: ${NETBSDSRCDIR}/common/lib/libc/arch/${MACHINE_GNU_ARCH}/quad/__aeabi_uldivmod.S
# Specific flags needed to compile a few of the object files.
CPPFLAGS.strtol.c+= -I ${NETBSDSRCDIR}/common/lib/libc/stdlib
CPPFLAGS.ctype_.c+= -I ${NETBSDSRCDIR}/lib/libc/locale
CPPFLAGS._errno.c+= -I ${NETBSDSRCDIR}/lib/libc/include
CPPFLAGS.assert.c+= -I ${NETBSDSRCDIR}/lib/libc/include
CPPFLAGS.findfp.c+= -I ${NETBSDSRCDIR}/lib/libc/include
CPPFLAGS.__aeabi_idiv0.c+= -D_STANDALONE
CPPFLAGS.__aeabi_ldiv0.c+= -D_STANDALONE
# LSC: putchar and kputc have the same signature. A bit hackish.
CPPFLAGS.subr_prf.c+= -Dputchar=kputc
# Activate optional support, may be deactivated.
CPPFLAGS.subr_prf.c+= -DLIBSA_PRINTF_LONGLONG_SUPPORT -DLIBSA_PRINTF_WIDTH_SUPPORT
.PATH: ${NETBSDSRCDIR}/include/arch/${MACHINE_ARCH}/bsp/include
.include "bsp/ti/Makefile.inc"
# some object files we give a symbol prefix (or namespace) of __k_unpaged_
@@ -72,6 +76,7 @@ SRCS+= mpx.S arch_clock.c arch_do_vmctl.c arch_system.c do_padconf.c \
exception.c hw_intr.c klib.S memory.c \
protect.c direct_tty_utils.c arch_reset.c \
pg_utils.c phys_copy.S phys_memset.S exc.S
OBJS.kernel+= ${UNPAGED_OBJS}
klib.o mpx.o head.o: procoffsets.h

View File

@@ -1,17 +1,13 @@
#
# BSP for TI hardware
#
HERE=${.CURDIR}/arch/${MACHINE_ARCH}/bsp/ti
.PATH: ${HERE}
.PATH: ${.CURDIR}/arch/${MACHINE_ARCH}/bsp/ti
.for unpaged_obj in omap_serial.o omap_rtc.o omap_reset.o
#BSP_OBJS_UNPAGED += unpaged_${unpaged_obj}
BSP_OBJS_UNPAGED += ${unpaged_obj}
.endfor
SRCS+= omap_init.c omap_serial.c omap_timer.c omap_padconf.c omap_intr.c omap_rtc.c \
omap_reset.c
HERE=${.CURDIR}/arch/${MACHINE_ARCH}
.PATH: ${HERE}

View File

@@ -1,4 +1,4 @@
/* $NetBSD: memcpy_arm.S,v 1.2 2008/04/28 20:22:52 martin Exp $ */
/* $NetBSD: memcpy_arm.S,v 1.4 2013/08/11 04:56:32 matt Exp $ */
/*-
* Copyright (c) 1997 The NetBSD Foundation, Inc.
@@ -31,6 +31,12 @@
#include <machine/asm.h>
#if !defined(__minix)
#if defined(__ARM_EABI__)
STRONG_ALIAS(__aeabi_memcpy, memcpy)
#endif
#endif /* !defined(__minix) */
/*
* This is one fun bit of code ...
* Some easy listening music is suggested while trying to understand this
@@ -78,9 +84,9 @@ ENTRY(memcpy)
#endif
/* save leaf functions having to store this away */
#if defined(__minix)
stmdb sp!, {r0, r4, r5, lr} /* memcpy() returns dest addr */
push {r0, r4, r5, lr} /* memcpy() returns dest addr */
#else
stmdb sp!, {r0, lr} /* memcpy() returns dest addr */
push {r0, lr} /* memcpy() returns dest addr */
#endif
subs r2, r2, #4
@@ -97,7 +103,7 @@ ENTRY(memcpy)
subs r2, r2, #0x14
blt .Lmemcpy_l32 /* less than 32 bytes (12 from above) */
#if !defined(__minix)
stmdb sp!, {r4} /* borrow r4 */
push {r4} /* borrow r4 */
#endif
/* blat 32 bytes at a time */
@@ -111,11 +117,11 @@ ENTRY(memcpy)
bge .Lmemcpy_loop32
cmn r2, #0x10
ldmgeia r1!, {r3, r4, r12, lr} /* blat a remaining 16 bytes */
stmgeia r0!, {r3, r4, r12, lr}
ldmiage r1!, {r3, r4, r12, lr} /* blat a remaining 16 bytes */
stmiage r0!, {r3, r4, r12, lr}
subge r2, r2, #0x10
#if !defined(__minix)
ldmia sp!, {r4} /* return r4 */
pop {r4} /* return r4 */
#endif
.Lmemcpy_l32:
@@ -123,9 +129,9 @@ ENTRY(memcpy)
/* blat 12 bytes at a time */
.Lmemcpy_loop12:
ldmgeia r1!, {r3, r12, lr}
stmgeia r0!, {r3, r12, lr}
subges r2, r2, #0x0c
ldmiage r1!, {r3, r12, lr}
stmiage r0!, {r3, r12, lr}
subsge r2, r2, #0x0c
bge .Lmemcpy_loop12
.Lmemcpy_l12:
@@ -135,38 +141,38 @@ ENTRY(memcpy)
subs r2, r2, #4
ldrlt r3, [r1], #4
strlt r3, [r0], #4
ldmgeia r1!, {r3, r12}
stmgeia r0!, {r3, r12}
ldmiage r1!, {r3, r12}
stmiage r0!, {r3, r12}
subge r2, r2, #4
.Lmemcpy_l4:
/* less than 4 bytes to go */
adds r2, r2, #4
#if defined(__minix)
ldmeqia sp!, {r0, r4, r5}
popeq {r0, r4, r5}
moveq r0, #0
ldmeqia sp!, {pc}
popeq {pc}
#else
#ifdef __APCS_26_
ldmeqia sp!, {r0, pc}^ /* done */
ldmiaeq sp!, {r0, pc}^ /* done */
#else
ldmeqia sp!, {r0, pc} /* done */
popeq {r0, pc} /* done */
#endif
#endif
/* copy the crud byte at a time */
cmp r2, #2
ldrb r3, [r1], #1
strb r3, [r0], #1
ldrgeb r3, [r1], #1
strgeb r3, [r0], #1
ldrgtb r3, [r1], #1
strgtb r3, [r0], #1
ldrbge r3, [r1], #1
strbge r3, [r0], #1
ldrbgt r3, [r1], #1
strbgt r3, [r0], #1
#if defined(__minix)
ldmia sp!, {r0, r4, r5}
pop {r0, r4, r5}
mov r0, #0
ldmia sp!, {pc}
pop {pc}
#else
ldmia sp!, {r0, pc}
pop {r0, pc}
#endif
/* erg - unaligned destination */
@@ -177,10 +183,10 @@ ENTRY(memcpy)
/* align destination with byte copies */
ldrb r3, [r1], #1
strb r3, [r0], #1
ldrgeb r3, [r1], #1
strgeb r3, [r0], #1
ldrgtb r3, [r1], #1
strgtb r3, [r0], #1
ldrbge r3, [r1], #1
strbge r3, [r0], #1
ldrbgt r3, [r1], #1
strbgt r3, [r0], #1
subs r2, r2, r12
blt .Lmemcpy_l4 /* less the 4 bytes */
@@ -199,7 +205,7 @@ ENTRY(memcpy)
blt .Lmemcpy_srcul1loop4
sub r2, r2, #0x0c
#if !defined(__minix)
stmdb sp!, {r4, r5}
push {r4, r5}
#endif
.Lmemcpy_srcul1loop16:
@@ -230,7 +236,7 @@ ENTRY(memcpy)
subs r2, r2, #0x10
bge .Lmemcpy_srcul1loop16
#if !defined(__minix)
ldmia sp!, {r4, r5}
pop {r4, r5}
#endif
adds r2, r2, #0x0c
blt .Lmemcpy_srcul1l4
@@ -260,7 +266,7 @@ ENTRY(memcpy)
blt .Lmemcpy_srcul2loop4
sub r2, r2, #0x0c
#if !defined(__minix)
stmdb sp!, {r4, r5}
push {r4, r5}
#endif
.Lmemcpy_srcul2loop16:
@@ -291,7 +297,7 @@ ENTRY(memcpy)
subs r2, r2, #0x10
bge .Lmemcpy_srcul2loop16
#if !defined(__minix)
ldmia sp!, {r4, r5}
pop {r4, r5}
#endif
adds r2, r2, #0x0c
blt .Lmemcpy_srcul2l4
@@ -321,7 +327,7 @@ ENTRY(memcpy)
blt .Lmemcpy_srcul3loop4
sub r2, r2, #0x0c
#if !defined(__minix)
stmdb sp!, {r4, r5}
push {r4, r5}
#endif
.Lmemcpy_srcul3loop16:
@@ -352,7 +358,7 @@ ENTRY(memcpy)
subs r2, r2, #0x10
bge .Lmemcpy_srcul3loop16
#if !defined(__minix)
ldmia sp!, {r4, r5}
pop {r4, r5}
#endif
adds r2, r2, #0x0c
blt .Lmemcpy_srcul3l4
@@ -379,11 +385,13 @@ ENTRY(memcpy)
#if defined(__minix)
LABEL(phys_copy_fault) /* kernel can send us here */
ldmia sp!, {r0, r4, r5}
ldmia sp!, {pc}
pop {r0, r4, r5}
pop {pc}
LABEL(phys_copy_fault_in_kernel) /* kernel can send us here */
ldmia sp!, {r0, r4, r5}
pop {r0, r4, r5}
mrc p15, 0, r0, c6, c0, 0 /* Read DFAR */
ldmia sp!, {pc}
pop {pc}
#else
END(memcpy)
#endif

View File

@@ -5,52 +5,52 @@ HERE=${.CURDIR}/arch/${MACHINE_ARCH}
.PATH: ${HERE}
# objects we want unpaged from -lminlib
MINLIB_OBJS_UNPAGED=_cpufeature.o _cpuid.o get_bp.o
MINLIB_OBJS_UNPAGED= _cpufeature.o _cpuid.o get_bp.o
_cpufeature.o: ${NETBSDSRCDIR}/lib/libminlib/${MACHINE_ARCH}/_cpufeature.c
_cpuid.o: ${NETBSDSRCDIR}/lib/libminlib/${MACHINE_ARCH}/_cpuid.S
get_bp.o: ${NETBSDSRCDIR}/lib/libminlib/${MACHINE_ARCH}/get_bp.S
# objects we want unpaged from -lsys
SYS_OBJS_UNPAGED=assert.o kprintf.o stacktrace.o vprintf.o
SYS_OBJS_UNPAGED=assert.o stacktrace.o
assert.o: ${NETBSDSRCDIR}/lib/libsys/assert.c
kprintf.o: ${NETBSDSRCDIR}/lib/libsys/kprintf.c
stacktrace.o: ${NETBSDSRCDIR}/lib/libsys/stacktrace.c
vprintf.o: ${NETBSDSRCDIR}/lib/libsys/vprintf.c
# objects we want unpaged from -lminc
MINC_OBJS_UNPAGED=findfp.o strcat.o strlen.o memcpy.o strcpy.o strncmp.o \
memset.o memmove.o strcmp.o atoi.o ctype_.o strtol.o \
_errno.o errno.o udivdi3.o umoddi3.o qdivrem.o
memcpy.o: ${NETBSDSRCDIR}/common/lib/libc/string/memcpy.c
memmove.o: ${NETBSDSRCDIR}/common/lib/libc/string/memmove.c
memset.o: ${NETBSDSRCDIR}/common/lib/libc/string/memset.c
strcat.o: ${NETBSDSRCDIR}/common/lib/libc/string/strcat.c
strlen.o: ${NETBSDSRCDIR}/common/lib/libc/string/strlen.c
strcpy.o: ${NETBSDSRCDIR}/common/lib/libc/string/strcpy.c
strcmp.o: ${NETBSDSRCDIR}/common/lib/libc/string/strcmp.c
MINC_OBJS_UNPAGED= atoi.o \
printf.o subr_prf.o \
strcmp.o strcpy.o strlen.o strncmp.o \
memcpy.o memmove.o memset.o \
udivdi3.o umoddi3.o qdivrem.o
atoi.o: ${NETBSDSRCDIR}/lib/libminc/atoi.c
printf.o: ${NETBSDSRCDIR}/sys/lib/libsa/printf.c
subr_prf.o: ${NETBSDSRCDIR}/sys/lib/libsa/subr_prf.c
memcpy.o: ${NETBSDSRCDIR}/common/lib/libc/arch/i386/string/memcpy.S
memmove.o: ${NETBSDSRCDIR}/common/lib/libc/arch/i386/string/memmove.S
memset.o: ${NETBSDSRCDIR}/common/lib/libc/arch/i386/string/memset.S
strlen.o: ${NETBSDSRCDIR}/common/lib/libc/arch/i386/string/strlen.S
strcpy.o: ${NETBSDSRCDIR}/common/lib/libc/arch/i386/string/strcpy.S
strcmp.o: ${NETBSDSRCDIR}/common/lib/libc/arch/i386/string/strcmp.S
# the following is required by pre_init.c
strncmp.o: ${NETBSDSRCDIR}/common/lib/libc/string/strncmp.c
# these are required by kprintn.o:
udivdi3.o: ${NETBSDSRCDIR}/common/lib/libc/quad/udivdi3.c
umoddi3.o: ${NETBSDSRCDIR}/common/lib/libc/quad/umoddi3.c
qdivrem.o: ${NETBSDSRCDIR}/common/lib/libc/quad/qdivrem.c
atoi.o: ${NETBSDSRCDIR}/lib/libc/stdlib/atoi.c
strtol.o: ${NETBSDSRCDIR}/lib/libc/stdlib/strtol.c
findfp.o: ${NETBSDSRCDIR}/lib/libc/stdio/findfp.c
ctype_.o: ${NETBSDSRCDIR}/lib/libc/gen/ctype_.c
_errno.o: ${NETBSDSRCDIR}/lib/libc/gen/_errno.c
errno.o: ${NETBSDSRCDIR}/lib/libc/gen/errno.c
# Specific flags needed to compile a few of the object files.
CPPFLAGS.strtol.c+= -I ${NETBSDSRCDIR}/common/lib/libc/stdlib
CPPFLAGS.ctype_.c+= -I ${NETBSDSRCDIR}/lib/libc/locale
CPPFLAGS._errno.c+= -I ${NETBSDSRCDIR}/lib/libc/include
CPPFLAGS.assert.c+= -I ${NETBSDSRCDIR}/lib/libc/include
CPPFLAGS.findfp.c+= -I ${NETBSDSRCDIR}/lib/libc/include
# LSC: putchar and kputc have the same signature. A bit hackish.
CPPFLAGS.subr_prf.c+= -Dputchar=kputc
# Activate optional support, may be deactivated.
CPPFLAGS.subr_prf.c+= -DLIBSA_PRINTF_LONGLONG_SUPPORT -DLIBSA_PRINTF_WIDTH_SUPPORT
# some object files we give a symbol prefix (or namespace) of __k_unpaged_
# that must live in their own unique namespace.
#
.for unpaged_obj in head.o pre_init.o direct_tty_utils.o io_outb.o \
io_inb.o pg_utils.o klib.o utility.o arch_reset.o \
.for unpaged_obj in head.o pre_init.o direct_tty_utils.o \
pg_utils.o klib.o utility.o arch_reset.o \
io_inb.o io_outb.o \
${MINLIB_OBJS_UNPAGED} ${MINC_OBJS_UNPAGED} ${SYS_OBJS_UNPAGED}
unpaged_${unpaged_obj}: ${unpaged_obj}
${OBJCOPY} --prefix-symbols=__k_unpaged_ ${.OBJDIR}/${unpaged_obj} $@
@@ -61,10 +61,12 @@ ORIG_UNPAGED_OBJS += ${unpaged_obj}
CLEANFILES+= ${ORIG_UNPAGED_OBJS}
SRCS+= mpx.S arch_clock.c arch_do_vmctl.c arch_system.c \
do_iopenable.c do_readbios.c do_sdevio.c exception.c i8259.c io_inb.S \
io_inl.S io_intr.S io_inw.S io_outb.S io_outl.S io_outw.S klib.S memory.c \
oxpcie.c protect.c direct_tty_utils.c arch_reset.c \
pg_utils.c usermapped_glo_ipc.S usermapped_data_arch.c
klib.S memory.c protect.c direct_tty_utils.c arch_reset.c pg_utils.c
SRCS+= do_iopenable.c do_readbios.c do_sdevio.c exception.c i8259.c oxpcie.c \
usermapped_data_arch.c \
io_inb.S io_inl.S io_intr.S io_inw.S io_outb.S io_outl.S io_outw.S \
usermapped_glo_ipc.S
OBJS.kernel+= ${UNPAGED_OBJS}
@@ -91,6 +93,8 @@ SRCS+= arch_watchdog.c
CPPFLAGS+= -DUSE_WATCHDOG
.endif
klib.o mpx.o head.o: procoffsets.h
SRCS+= procoffsets.h
PROCOFFSETSCF=procoffsets.cf