You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(11) |
Sep
|
Oct
|
Nov
|
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
(1) |
Oct
|
Nov
|
Dec
|
2002 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(12) |
Nov
|
Dec
|
2003 |
Jan
|
Feb
(3) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(8) |
Dec
(1) |
2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(9) |
Jun
(5) |
Jul
(1) |
Aug
|
Sep
(4) |
Oct
|
Nov
|
Dec
|
2005 |
Jan
|
Feb
|
Mar
(1) |
Apr
(35) |
May
(9) |
Jun
(10) |
Jul
|
Aug
(6) |
Sep
(23) |
Oct
(24) |
Nov
(18) |
Dec
(81) |
2006 |
Jan
(37) |
Feb
(2) |
Mar
(10) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(5) |
Nov
|
Dec
|
2007 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(23) |
Aug
(4) |
Sep
|
Oct
|
Nov
|
Dec
|
From: Jan-Benedict G. <jb...@us...> - 2005-10-06 17:17:13
|
Update of /cvsroot/linux-vax/toolchain/scripts In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20719 Modified Files: initial_cvs_checkout.sh Log Message: - No error checking. We now allow that a source fails. Index: initial_cvs_checkout.sh =================================================================== RCS file: /cvsroot/linux-vax/toolchain/scripts/initial_cvs_checkout.sh,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- initial_cvs_checkout.sh 6 Oct 2005 17:16:27 -0000 1.5 +++ initial_cvs_checkout.sh 6 Oct 2005 17:17:02 -0000 1.6 @@ -1,7 +1,5 @@ #!/bin/bash -set -e - if [ -z "${UPSTREAM_SANDBOXES_PATH}" ]; then echo "\$UPSTREAM_SANDBOXES_PATH isn't set--please source vax_toolchain_config" >&2 exit 1 |
From: Jan-Benedict G. <jb...@us...> - 2005-10-06 17:16:43
|
Update of /cvsroot/linux-vax/toolchain/scripts In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20551 Modified Files: initial_cvs_checkout.sh Log Message: - Some first steps to allow checking out from broken CVS/SVN servers. Index: initial_cvs_checkout.sh =================================================================== RCS file: /cvsroot/linux-vax/toolchain/scripts/initial_cvs_checkout.sh,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- initial_cvs_checkout.sh 23 Sep 2005 13:57:41 -0000 1.4 +++ initial_cvs_checkout.sh 6 Oct 2005 17:16:27 -0000 1.5 @@ -10,58 +10,67 @@ mkdir -p "${UPSTREAM_SANDBOXES_PATH}" pushd "${UPSTREAM_SANDBOXES_PATH}" - mkdir binutils - mkdir gcc - mkdir glibc - mkdir uclibc - mkdir linux - - pushd binutils - echo "If you're asked for a password right now, please answer with \"anoncvs\"" - cvs -d :pserver:an...@so...:/cvs/src login + if [ ! -d binutils]; then + mkdir binutils + pushd binutils + echo "If you're asked for a password right now, please answer with \"anoncvs\"" + cvs -d :pserver:an...@so...:/cvs/src login - cvs -z9 -d :pserver:an...@so...:/cvs/src co binutils - mv src binutils-upstream-HEAD - mkdir binutils-upstream-HEAD-last - copy_directory.sh binutils-upstream-HEAD binutils-upstream-HEAD-last - popd + cvs -z9 -d :pserver:an...@so...:/cvs/src co binutils + mv src binutils-upstream-HEAD + mkdir binutils-upstream-HEAD-last + copy_directory.sh binutils-upstream-HEAD binutils-upstream-HEAD-last + popd + fi - pushd gcc - CVS_RSH=ssh cvs -z9 -d :ext:an...@sa...:/cvsroot/gcc co gcc - mv gcc gcc-upstream-HEAD - mkdir gcc-upstream-HEAD-last - copy_directory.sh gcc-upstream-HEAD gcc-upstream-HEAD-last - popd + if [ ! -d gcc ]; then + mkdir gcc + pushd gcc + CVS_RSH=ssh cvs -z9 -d :ext:an...@sa...:/cvsroot/gcc co gcc + mv gcc gcc-upstream-HEAD + mkdir gcc-upstream-HEAD-last + copy_directory.sh gcc-upstream-HEAD gcc-upstream-HEAD-last + popd + fi - pushd glibc - echo "If you're asked for a password right now, please answer with \"anoncvs\"" - cvs -d :pserver:an...@so...:/cvs/glibc login + if [ ! -d glibc ]; then + mkdir glibc + pushd glibc + echo "If you're asked for a password right now, please answer with \"anoncvs\"" + cvs -d :pserver:an...@so...:/cvs/glibc login - cvs -z9 -d :pserver:an...@so...:/cvs/glibc co libc - mv libc libc-upstream-HEAD - mkdir libc-upstream-HEAD-last - copy_directory.sh libc-upstream-HEAD libc-upstream-HEAD-last + cvs -z9 -d :pserver:an...@so...:/cvs/glibc co libc + mv libc libc-upstream-HEAD + mkdir libc-upstream-HEAD-last + copy_directory.sh libc-upstream-HEAD libc-upstream-HEAD-last - cvs -z9 -d :pserver:an...@so...:/cvs/glibc co ports - mv ports ports-upstream-HEAD - mkdir ports-upstream-HEAD-last - copy_directory.sh ports-upstream-HEAD ports-upstream-HEAD-last - popd + cvs -z9 -d :pserver:an...@so...:/cvs/glibc co ports + mv ports ports-upstream-HEAD + mkdir ports-upstream-HEAD-last + copy_directory.sh ports-upstream-HEAD ports-upstream-HEAD-last + popd + fi - pushd linux - echo "If you're asked for a password right now, please just press Enter." - cvs -d :pserver:ano...@cv...:/cvsroot/linux-vax login + if [ ! -d linux ]; then + mkdir linux + pushd linux + echo "If you're asked for a password right now, please just press Enter." + cvs -d :pserver:ano...@cv...:/cvsroot/linux-vax login - cvs -z9 -d :pserver:ano...@cv...:/cvsroot/linux-vax co kernel-2.5 - mv kernel-2.5 linux-upstream-HEAD - mkdir linux-upstream-HEAD-last - copy_directory.sh linux-upstream-HEAD linux-upstream-HEAD-last - popd + cvs -z9 -d :pserver:ano...@cv...:/cvsroot/linux-vax co kernel-2.5 + mv kernel-2.5 linux-upstream-HEAD + mkdir linux-upstream-HEAD-last + copy_directory.sh linux-upstream-HEAD linux-upstream-HEAD-last + popd + fi - pushd uclibc - svn co svn://uclibc.org/trunk/uClibc uclibc-upstream-HEAD - mkdir uclibc-upstream-HEAD-last - copy_directory.sh uclibc-upstream-HEAD uclibc-upstream-HEAD-last - popd + if [ ! -d uclibc ]; then + mkdir uclibc + pushd uclibc + svn co svn://uclibc.org/trunk/uClibc uclibc-upstream-HEAD + mkdir uclibc-upstream-HEAD-last + copy_directory.sh uclibc-upstream-HEAD uclibc-upstream-HEAD-last + popd + fi popd |
From: Jan-Benedict G. <jb...@us...> - 2005-10-02 21:45:38
|
Update of /cvsroot/linux-vax/toolchain/scripts In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3962 Modified Files: prepare_toolchain_hacking.sh Log Message: - Document new feature. Index: prepare_toolchain_hacking.sh =================================================================== RCS file: /cvsroot/linux-vax/toolchain/scripts/prepare_toolchain_hacking.sh,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- prepare_toolchain_hacking.sh 1 Oct 2005 14:20:21 -0000 1.4 +++ prepare_toolchain_hacking.sh 1 Oct 2005 14:24:38 -0000 1.5 @@ -7,7 +7,9 @@ echo "Known components: binutils, gcc, glibc, ports" >&2 echo "" >&2 echo "If a component is written as eg. \"binutils+patches\", then all" >&2 - echo "patches will be applied, too." >&2 + echo "patches will be applied, too. If you use it like" >&2 + echo "\"binutils+patches-4\", only patches with numbers less than" >&2 + echo "four will be considered." >&2 exit 1 fi |
From: Jan-Benedict G. <jb...@us...> - 2005-10-02 20:25:33
|
Update of /cvsroot/linux-vax/toolchain/scripts In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2731 Modified Files: try_patches.sh prepare_toolchain_hacking.sh Log Message: - Allow me to not apply all patches, but only up to a given number. This should ease to refresh patches. Index: prepare_toolchain_hacking.sh =================================================================== RCS file: /cvsroot/linux-vax/toolchain/scripts/prepare_toolchain_hacking.sh,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- prepare_toolchain_hacking.sh 23 Sep 2005 14:05:40 -0000 1.3 +++ prepare_toolchain_hacking.sh 1 Oct 2005 14:20:21 -0000 1.4 @@ -61,7 +61,12 @@ COMPONENT="" ;; esac + MAX_PATCH=999999 case "${1}" in + *+patches-*) + APPLY_PATCHES=yes + MAX_PATCH="`echo "${1}" | sed -e 's/.*patches-\([0-9]*\)$/\1/'`" + ;; *+patches) APPLY_PATCHES=yes ;; @@ -78,8 +83,8 @@ copy_directory.sh "${SRC_DIR}" "${DEST_BASE}-hacked" if [ "${APPLY_PATCHES}" = yes ]; then - try_patches.sh "${COMPONENT}" "${DEST_BASE}-fresh" "${VAX_PATCHES_PATH}" - try_patches.sh "${COMPONENT}" "${DEST_BASE}-hacked" "${VAX_PATCHES_PATH}" + try_patches.sh "${COMPONENT}" "${DEST_BASE}-fresh" "${VAX_PATCHES_PATH}" "${MAX_PATCH}" + try_patches.sh "${COMPONENT}" "${DEST_BASE}-hacked" "${VAX_PATCHES_PATH}" "${MAX_PATCH}" fi fi Index: try_patches.sh =================================================================== RCS file: /cvsroot/linux-vax/toolchain/scripts/try_patches.sh,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- try_patches.sh 15 Apr 2005 10:48:17 -0000 1.2 +++ try_patches.sh 1 Oct 2005 14:20:21 -0000 1.3 @@ -1,11 +1,27 @@ #!/bin/sh +function remove_leading_zero() { + local NUMBER + NUMBER="`echo "${1}" | sed -e 's/^0*//g'`" + [ -z "${NUMBER}" ] && NUMBER=0 + + echo "${NUMBER}" +} + # # $1 - component to patch (gcc, glibc, ports, binutils) # $2 - destination directory; patches are expected to apply with -p1 # $3 - directory containing the patches +# ---- optional argument ---- +# $4 - an (optional) maximum patch number. Only patches with a number +# less than $4 are applied (ie. $4 = 7 ---> apply patches 0..6) # function try_patches() { + MAX_PATCH=999999 + if [ $# -eq 4 ]; then + MAX_PATCH="`remove_leading_zero "${4}"`" + fi + echo -n "Looking for ${1} patches... " if ! ls ${3}/${1}-[0-9][0-9][0-9][0-9][0-9][0-9]-*.patch > /dev/null 2>&1; then echo "none." @@ -15,21 +31,30 @@ fi for patchfile in ${3}/${1}-[0-9][0-9][0-9][0-9][0-9][0-9]-*.patch; do - echo "Applying `basename "${patch}"` ..." - pushd "${2}" - patch -p1 --verbose < "${patchfile}" - popd + THIS_PATCH="`echo "${patchfile}" | sed -e "s/^.*${1}-\\\([0-9][0-9][0-9][0-9][0-9][0-9]\\\)-.*\\.patch$/\\1/"`" + THIS_PATCH="`remove_leading_zero "${THIS_PATCH}"`" + if [ ${THIS_PATCH} -ge ${MAX_PATCH} ]; then + echo "Ignoring `basename "${patchfile}"`" + else + echo "Applying `basename "${patchfile}"` ..." + pushd "${2}" + patch -p1 < "${patchfile}" + popd + fi done } -if [ $# -ne 3 ]; then - echo "$0 <component> <directory-to-patch> <directory-containing-patches>" >&2 +if [ $# -ne 3 -a $# -ne 4 ]; then + echo "$0 <component> <directory-to-patch> <directory-containing-patches> (max_patch_number)" >&2 echo "All patches are expected to apply with -p1 within directory-to-patch." >&2 echo "Their names are expected to be in this form:" >&2 echo "" >&2 echo " COMPONENT-nnnnnn-description.patch" >&2 echo "" >&2 echo "nnnnnn is exactly six decimal digits; description mustn't contain spaces." >&2 + echo "" >&2 + echo "If a max_patch_number is given, only patche files with a number smaller" >&2 + echo "than max_patch_number will be applied." >&2 exit 1 fi @@ -41,6 +66,16 @@ echo "${3} is not a directory, so I don't expect patches here..." >&2 exit 1 fi +if [ $# -eq 4 ]; then + if ! echo "${4}" | grep -q '^[0-9]*$'; then + echo "${4} is not a number..." >&2 + exit 1 + fi +fi -try_patches "${1}" "${2}" "${3}" +if [ $# -eq 3 ]; then + try_patches "${1}" "${2}" "${3}" +elif [ $# -eq 4 ]; then + try_patches "${1}" "${2}" "${3}" "`remove_leading_zero "${4}"`" +fi |
From: Jan-Benedict G. <jb...@us...> - 2005-09-30 20:50:37
|
Update of /cvsroot/linux-vax/toolchain/scripts In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19123 Modified Files: build_toolchain.sh Log Message: - Echo the used timestamp. I'll use this for matching log files with the path where the build took place. - This'll aid in auto-building and reporting. Index: build_toolchain.sh =================================================================== RCS file: /cvsroot/linux-vax/toolchain/scripts/build_toolchain.sh,v retrieving revision 1.17 retrieving revision 1.18 diff -u -d -r1.17 -r1.18 --- build_toolchain.sh 24 Sep 2005 15:55:45 -0000 1.17 +++ build_toolchain.sh 30 Sep 2005 19:45:32 -0000 1.18 @@ -196,6 +196,7 @@ # Echo configuration # [ 1 -eq 1 ] && echo " Target: ${TARGET}" +[ 1 -eq 1 ] && echo " Build timestamp: ${NOW}" [ "${DO_TIMESTAMP_BINUTILS}" -ne 0 ] && echo " Binutils timestamp: ${TIMESTAMP_BINUTILS}" [ "${DO_TIMESTAMP_BINUTILS}" -eq 0 ] && echo " Binutils timestamp: last known" [ "${DO_TIMESTAMP_GCC}" -ne 0 ] && echo " GCC timestamp: ${TIMESTAMP_GCC}" |
From: Jan-Benedict G. <jb...@us...> - 2005-09-30 09:12:29
|
Update of /cvsroot/linux-vax/toolchain/patches In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27098 Added Files: uclibc-000007-nonnegative_floats_config_option.patch uclibc-000008-config-nonnegative-floats.patch Log Message: - uclibc-000007: Don't try to find out if a zero float value is +0 or -1. This is done by dividing 1.0/x , which'll generate a floating point exception being signaled to the application (which crashes then :-) - uclibc-000008: Use the new config option. --- NEW FILE: uclibc-000008-config-nonnegative-floats.patch --- diff -Nurp src-uclibc-fresh/.config src-uclibc-hacked/.config --- src-uclibc-fresh/.config 2005-09-30 10:09:20.000000000 +0200 +++ src-uclibc-hacked/.config 2005-09-30 10:15:16.000000000 +0200 @@ -35,6 +35,7 @@ ARCH_LITTLE_ENDIAN=y # ARCH_HAS_NO_MMU is not set ARCH_HAS_MMU=y UCLIBC_HAS_FLOATS=y +# TARGET_HAS_NEGATIVE_ZERO_FLOATS is not set HAS_FPU=y DO_C99_MATH=y C_SYMBOL_PREFIX="" --- NEW FILE: uclibc-000007-nonnegative_floats_config_option.patch --- diff -Nurp src-uclibc-fresh/extra/Configs/Config.in.arch src-uclibc-hacked/extra/Configs/Config.in.arch --- src-uclibc-fresh/extra/Configs/Config.in.arch 2005-06-05 18:39:50.000000000 +0200 +++ src-uclibc-hacked/extra/Configs/Config.in.arch 2005-09-30 10:14:36.000000000 +0200 @@ -28,8 +28,8 @@ config ARCH_HAS_MMU default y depends !ARCH_HAS_NO_MMU help - If your target CPU does not have a memory management unit (MMU), - then answer N here. Normally, Linux runs on systems with an MMU. + If your target CPU does not have a memory management unit (MMU), + then answer N here. Normally, Linux runs on systems with an MMU. If you are building a uClinux system, answer N. Most people will answer Y. @@ -40,13 +40,24 @@ config UCLIBC_HAS_FLOATS help This option allows you to entirely omit all floating point number support from uClibc. This will cause floating point functions like - strtod() to be omitted from uClibc. Other floating point functions, - such as printf() and scanf() will still be included in the library, + strtod() to be omitted from uClibc. Other floating point functions, + such as printf() and scanf() will still be included in the library, but will not contain support for floating point numbers. Answering N to this option can reduce the size of uClibc. Most people will answer Y. +config TARGET_HAS_NEGATIVE_ZERO_FLOATS + bool " Target CPU differs between +0 and -0" + default y + depends on UCLIBC_HAS_FLOATS + help + If your target CPU can differ +0 and -0 (IEEE floating point + support works that way), then you should enable this option. + + Most people will answer Y, because nearly all CPUs do use IEEE + floating point support. + config HAS_FPU bool "Target CPU has a floating point unit (FPU)" depends on UCLIBC_HAS_FLOATS @@ -77,7 +88,7 @@ config DO_C99_MATH listed as part of the traditional POSIX/IEEE 1003.1b-1993 standard. Leaving this option set to N will save around 35k on an x86 system. - If your applications require the newer C99 math library functions, + If your applications require the newer C99 math library functions, then answer Y. config KERNEL_SOURCE diff -Nurp src-uclibc-fresh/libc/stdio/_fpmaxtostr.c src-uclibc-hacked/libc/stdio/_fpmaxtostr.c --- src-uclibc-fresh/libc/stdio/_fpmaxtostr.c 2005-07-30 22:29:22.000000000 +0200 +++ src-uclibc-hacked/libc/stdio/_fpmaxtostr.c 2005-09-30 10:20:42.000000000 +0200 @@ -17,7 +17,7 @@ typedef size_t (__fp_outfunc_t)(FILE *fp /* Copyright (C) 2000, 2001, 2003 Manuel Novoa III * - * Function: + * Function: * * size_t _fpmaxtostr(FILE * fp, __fpmax_t x, struct printf_info *info, * __fp_outfunc_t fp_outfunc); @@ -183,7 +183,7 @@ static const __fpmax_t exp16_table[] = { #if FPMAX_MAX_EXP >= 16384 0x1.0p16384L #endif -#if FPMAX_MAX_EXP >= 32768 +#if FPMAX_MAX_EXP >= 32768 #error unsupported FPMAX_MAX_EXP. please increase table #endif }; @@ -275,7 +275,7 @@ ssize_t _fpmaxtostr(FILE * fp, __fpmax_t } if (x == 0) { /* Handle 0 now to avoid false positive. */ -#if 1 +#ifdef __TARGET_HAS_NEGATIVE_ZERO_FLOATS__ if (zeroisnegative(x)) { /* Handle 'signed' zero. */ *sign_str = '-'; } @@ -323,14 +323,14 @@ ssize_t _fpmaxtostr(FILE * fp, __fpmax_t base = 16; } else { lower_bnd = 1e8; - /* upper_bnd = 1e9; */ + /* upper_bnd = 1e9; */ power_table = exp10_table; exp = DIGITS_PER_BLOCK - 1; i = EXP10_TABLE_SIZE; j = EXP10_TABLE_MAX; - /* dpb = DIGITS_PER_BLOCK; */ - /* ndb = NUM_DIGIT_BLOCKS; */ - /* base = 10; */ + /* dpb = DIGITS_PER_BLOCK; */ + /* ndb = NUM_DIGIT_BLOCKS; */ + /* base = 10; */ } @@ -406,7 +406,7 @@ ssize_t _fpmaxtostr(FILE * fp, __fpmax_t if (mode < 'a') { *exp_buf -= ('a' - 'A'); /* e->E and p->P */ mode += ('a' - 'A'); - } + } o_mode = mode; if ((mode == 'g') && (preci > 0)){ @@ -446,7 +446,7 @@ ssize_t _fpmaxtostr(FILE * fp, __fpmax_t #ifdef __UCLIBC_HAS_HEXADECIMAL_FLOATS__ if ((mode|0x20) == 'a') { char *q; - + for (q = e ; *q ; --q) { if (*q > '9') { *q += (*exp_buf - ('p' - 'a') - '9' - 1); @@ -694,12 +694,12 @@ ssize_t _fpmaxtostr(FILE * fp, __fpmax_t cnt += num_groups * tslen; /* Adjust count now for sep chars. */ -/* printf("\n"); */ +/* printf("\n"); */ do { if (!blk) { /* Initial group could be 0 digits long! */ blk = nblk2; } else if (len >= blk) { /* Enough digits for a group. */ -/* printf("norm: len=%d blk=%d \"%.*s\"\n", len, blk, blk, gp); */ +/* printf("norm: len=%d blk=%d \"%.*s\"\n", len, blk, blk, gp); */ if (fp_outfunc(fp, *ppc, blk, (intptr_t) gp) != blk) { return -1; } @@ -709,9 +709,9 @@ ssize_t _fpmaxtostr(FILE * fp, __fpmax_t } len -= blk; } else { /* Transition to 0s. */ -/* printf("trans: len=%d blk=%d \"%.*s\"\n", len, blk, len, gp); */ +/* printf("trans: len=%d blk=%d \"%.*s\"\n", len, blk, len, gp); */ if (len) { -/* printf("len\n"); */ +/* printf("len\n"); */ if (fp_outfunc(fp, *ppc, len, (intptr_t) gp) != len) { return -1; } @@ -719,7 +719,7 @@ ssize_t _fpmaxtostr(FILE * fp, __fpmax_t } if (ppc[3] == FPO_ZERO_PAD) { /* Need to group 0s */ -/* printf("zeropad\n"); */ +/* printf("zeropad\n"); */ cnt += ppc[1]; ppc += 3; gp = (const char *) ppc[2]; @@ -742,7 +742,7 @@ ssize_t _fpmaxtostr(FILE * fp, __fpmax_t } blk = nblk2; -/* printf("num_groups=%d blk=%d\n", num_groups, blk); */ +/* printf("num_groups=%d blk=%d\n", num_groups, blk); */ } while (1); } else |
From: Jan-Benedict G. <jb...@us...> - 2005-09-29 17:12:06
|
Update of /cvsroot/linux-vax/toolchain/patches In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24184 Added Files: uclibc-000006-update_brk_function.patch Log Message: - Another drop. The externally visible symbol __brk_addr was renamed to __currbrk. While fixing this, I also made some touch-ups. --- NEW FILE: uclibc-000006-update_brk_function.patch --- diff -Nurp src-uclibc-fresh/libc/sysdeps/linux/vax/brk.c src-uclibc-hacked/libc/sysdeps/linux/vax/brk.c --- src-uclibc-fresh/libc/sysdeps/linux/vax/brk.c 2005-09-29 18:34:41.000000000 +0200 +++ src-uclibc-hacked/libc/sysdeps/linux/vax/brk.c 2005-09-29 18:35:57.000000000 +0200 @@ -1,5 +1,5 @@ /* brk system call for Linux/VAX. - Copyright (C) 2000 Free Software Foundation, Inc. + Copyright (C) 2000, 2005 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -21,34 +21,31 @@ #include <unistd.h> #include <sys/syscall.h> -void *___brk_addr = 0; +/* This must be initialized data because commons can't have aliases. */ +void *__curbrk = NULL; int brk (void *addr) { - void *newbrk; + register unsigned long int result __asm__ ("%%r0"); - { - register long int res __asm__ ("%%r0"); + asm ( + " pushl %%ap \n" /* Start frame */ + " pushl %2 \n" /* New top address we wish to get */ + " pushl $1 \n" /* One argument */ + " movl %%sp, %%ap \n" /* Finish frame */ + " chmk %1 \n" /* Perform the system call */ + " addl2 $8, %%sp \n" + " movl (%%sp)+, %%ap \n" + : "=r" (result) + : "0" (__NR_brk), + "g" (addr)); + + if ((void *) result < addr) { + __set_errno (ENOMEM); + return -1; + } else + __curbrk = (void *) result; - asm ("pushl %%ap\n" - "pushl %2\n" /* Save %ebx in scratch register. */ - "pushl $1\n" /* Put ADDR in %ebx to be syscall arg. */ - "movl %%sp, %%ap\n" - "chmk %1\n" /* Perform the system call. */ - "addl2 $8, %%sp\n" - "movl (%%sp)+, %%ap\n" - : "=r" (res) - : "0" (__NR_brk), "g" (addr)); - - newbrk = (void *) res; - } - ___brk_addr = newbrk; - - if (newbrk < addr) - { - __set_errno (ENOMEM); - return -1; - } - - return 0; + return 0; } + |
From: Jan-Benedict G. <jb...@us...> - 2005-09-28 09:17:04
|
Update of /cvsroot/linux-vax/toolchain/patches In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15238 Modified Files: uclibc-000001-config.patch Log Message: - Only use the new atexit internal implementation. Index: uclibc-000001-config.patch =================================================================== RCS file: /cvsroot/linux-vax/toolchain/patches/uclibc-000001-config.patch,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- uclibc-000001-config.patch 27 Sep 2005 06:33:23 -0000 1.2 +++ uclibc-000001-config.patch 28 Sep 2005 09:16:56 -0000 1.3 @@ -1,6 +1,6 @@ --- /dev/null 2005-08-28 03:49:43.999308688 +0200 +++ uclibc/.config 2005-09-23 12:53:12.000000000 +0200 -@@ -0,0 +1,142 @@ +@@ -0,0 +1,143 @@ +# +# Automatically generated make config: don't edit +# @@ -60,6 +60,7 @@ +MALLOC_STANDARD=y +# MALLOC_GLIBC_COMPAT is not set +UCLIBC_DYNAMIC_ATEXIT=y ++# COMPAT_ATEXIT is not set +HAS_SHADOW=y +UNIX98PTY_ONLY=y +ASSUME_DEVPTS=y |
From: Jan-Benedict G. <jb...@us...> - 2005-09-27 06:33:30
|
Update of /cvsroot/linux-vax/toolchain/patches In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7205 Modified Files: uclibc-000001-config.patch Log Message: - Spend some FPU support. - Please don't use more than one FP-using program at a time. On kernel land, we currently don't care about saving FPU state upon schedule... Index: uclibc-000001-config.patch =================================================================== RCS file: /cvsroot/linux-vax/toolchain/patches/uclibc-000001-config.patch,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- uclibc-000001-config.patch 23 Sep 2005 15:32:35 -0000 1.1 +++ uclibc-000001-config.patch 27 Sep 2005 06:33:23 -0000 1.2 @@ -1,6 +1,6 @@ --- /dev/null 2005-08-28 03:49:43.999308688 +0200 +++ uclibc/.config 2005-09-23 12:53:12.000000000 +0200 -@@ -0,0 +1,139 @@ +@@ -0,0 +1,142 @@ +# +# Automatically generated make config: don't edit +# @@ -37,7 +37,9 @@ +# ARCH_BIG_ENDIAN is not set +# ARCH_HAS_NO_MMU is not set +ARCH_HAS_MMU=y -+# UCLIBC_HAS_FLOATS is not set ++UCLIBC_HAS_FLOATS=y ++HAS_FPU=y ++DO_C99_MATH=y +C_SYMBOL_PREFIX="" +HAVE_DOT_CONFIG=y + @@ -85,6 +87,7 @@ +# UCLIBC_HAS_CTYPE_ENFORCED is not set +# UCLIBC_HAS_WCHAR is not set +# UCLIBC_HAS_LOCALE is not set ++UCLIBC_HAS_HEXADECIMAL_FLOATS=y +# UCLIBC_HAS_GLIBC_CUSTOM_PRINTF is not set +# USE_OLD_VFPRINTF is not set +UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9 |
From: Jan-Benedict G. <jb...@us...> - 2005-09-26 22:37:56
|
Update of /cvsroot/linux-vax/toolchain/patches In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16265 Added Files: gcc-000006-urem-udiv.patch Log Message: - Add __udivsi3 and umodsi3. For now, use slow (but working) C versions, but there's also a start for assembler versions. --- NEW FILE: gcc-000006-urem-udiv.patch --- diff -Nurp src-gcc-fresh/gcc/config/vax/lib1funcs.S src-gcc-hacked/gcc/config/vax/lib1funcs.S --- src-gcc-fresh/gcc/config/vax/lib1funcs.S 1970-01-01 01:00:00.000000000 +0100 +++ src-gcc-hacked/gcc/config/vax/lib1funcs.S 2005-09-26 23:44:43.000000000 +0200 @@ -0,0 +1,86 @@ +/* + * Assembly functions for the VAX version of libgcc1. + * Copyright (C) 2005 Free Software Foundation, Inc. + * Contributed by Jan-Benedict Glaw <jb...@lu...>. + * + * This file is part of GCC. + * + * GCC is free software; you can redistribute it and/or modify it under + * the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2, or (at your option) any later + * version. + * + * In addition to the permissions in the GNU General Public License, the + * Free Software Foundation gives you unlimited permission to link the + * compiled version of this file into combinations with other programs, + * and to distribute those combinations without any restriction coming + * from the use of this file. (The General Public License restrictions + * do apply in other respects; for example, they cover modification of + * the file, and distribution when not linked into a combine + * executable.) + * + * GCC is distributed in the hope that it will be useful, but WITHOUT ANY + * WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License + * along with GCC; see the file COPYING. If not, write to the Free + * Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA + * 02110-1301, USA. + */ + +#ifdef L_udivsi3 +#define DIVISOR 8(%ap) +#define DIVIDENT 4(%ap) + .align 4 + .global __udivsi3 + .type __udivsi3, @function +__udivsi3: + .word 0x0004 + movl DIVISOR, %r2 + jlss JustCompare + movl DIVIDENT, %r0 + jlss RealHardDivide + +SimpleDivide: + divl2 %r2, %r0 + j Return + +RealHardDivide: + clrl %r1 + ediv %r2, %r0, %r0, %r1 + j Return + +JustCompare: + cmpl DIVIDEND, %r2 + jgequ ItIsOne + +ItIsntOne: + clrl %r0 + j Return + +ItIsOne: + movl $1, %r0 + j Return + +Return: + ret + .size __udivsi3, . - __udivsi3 +#undef DIVISOR +#undef DIVIDENT +#endif /* L_udivsi3 */ + + +#ifdef L_umodsi3 +#define DIVISOR 8(%ap) +#define DIVIDENT 4(%ap) + .align 4 + .global __umodsi3 + .type __umodsi3, @function +__umodsi3: + .word 0x0004 + + .size __umodsi3, . - __umodsi3 +#endif /* L_umodsi3 */ + diff -Nurp src-gcc-fresh/gcc/config/vax/linux.h src-gcc-hacked/gcc/config/vax/linux.h --- src-gcc-fresh/gcc/config/vax/linux.h 2005-09-25 14:04:59.000000000 +0200 +++ src-gcc-hacked/gcc/config/vax/linux.h 2005-09-25 14:21:35.000000000 +0200 @@ -28,4 +28,8 @@ * the ELF binary format. */ +#ifdef HAVE___UDIV___UREM_IN_LIBC +#undef HAVE___UDIV___UREM_IN_LIBC +#endif + #endif /* _CONFIG_VAX_LINUX_H */ diff -Nurp src-gcc-fresh/gcc/config/vax/netbsd.h src-gcc-hacked/gcc/config/vax/netbsd.h --- src-gcc-fresh/gcc/config/vax/netbsd.h 2005-06-26 15:39:59.000000000 +0200 +++ src-gcc-hacked/gcc/config/vax/netbsd.h 2005-09-25 14:22:26.000000000 +0200 @@ -46,3 +46,7 @@ Boston, MA 02110-1301, USA. */ /* We use gas, not the UNIX assembler. */ #undef TARGET_DEFAULT #define TARGET_DEFAULT 0 + +/* BSDs do have __udev and __urem in libc. */ +#define HAVE___UDIV___UREM_IN_LIBC + diff -Nurp src-gcc-fresh/gcc/config/vax/openbsd1.h src-gcc-hacked/gcc/config/vax/openbsd1.h --- src-gcc-fresh/gcc/config/vax/openbsd1.h 2005-06-26 15:39:59.000000000 +0200 +++ src-gcc-hacked/gcc/config/vax/openbsd1.h 2005-09-26 22:10:57.000000000 +0200 @@ -19,5 +19,9 @@ the Free Software Foundation, 51 Frankli Boston, MA 02110-1301, USA. */ /* Set up definitions before picking up the common openbsd.h file. */ -#define OBSD_OLD_GAS +#define OBSD_OLD_GAS #define OBSD_NO_DYNAMIC_LIBRARIES + +/* BSDs do have __udiv and __urem in libc. */ +#define HAVE___UDIV___UREM_IN_LIBC + diff -Nurp src-gcc-fresh/gcc/config/vax/openbsd.h src-gcc-hacked/gcc/config/vax/openbsd.h --- src-gcc-fresh/gcc/config/vax/openbsd.h 2005-06-26 15:39:59.000000000 +0200 +++ src-gcc-hacked/gcc/config/vax/openbsd.h 2005-09-25 14:22:52.000000000 +0200 @@ -44,3 +44,7 @@ Boston, MA 02110-1301, USA. */ #undef WCHAR_TYPE_SIZE #define WCHAR_TYPE_SIZE 32 + +/* BSDs do have __udiv and __urem in libc. */ +#define HAVE___UDIV___UREM_IN_LIBC + diff -Nurp src-gcc-fresh/gcc/config/vax/t-vax src-gcc-hacked/gcc/config/vax/t-vax --- src-gcc-fresh/gcc/config/vax/t-vax 1970-01-01 01:00:00.000000000 +0100 +++ src-gcc-hacked/gcc/config/vax/t-vax 2005-09-26 23:54:16.000000000 +0200 @@ -0,0 +1,4 @@ +# LIB1ASMSRC = vax/lib1funcs.S +# LIB1ASMFUNCS = _udivsi3 _uremsi3 +# LIB1ASMSRC = $(srcdir)/config/udivmod.c $(srcdir)/config/udivmodsi4.c +LIB2FUNCS_EXTRA = $(srcdir)/config/udivmod.c $(srcdir)/config/udivmodsi4.c diff -Nurp src-gcc-fresh/gcc/config/vax/vax.c src-gcc-hacked/gcc/config/vax/vax.c --- src-gcc-fresh/gcc/config/vax/vax.c 2005-09-25 14:07:22.000000000 +0200 +++ src-gcc-hacked/gcc/config/vax/vax.c 2005-09-26 20:27:06.000000000 +0200 @@ -46,13 +46,15 @@ Boston, MA 02110-1301, USA. */ static void vax_output_function_prologue (FILE *, HOST_WIDE_INT); static void vax_file_start (void); -static void vax_init_libfuncs (void); static void vax_output_mi_thunk (FILE *, tree, HOST_WIDE_INT, HOST_WIDE_INT, tree); static int vax_address_cost_1 (rtx); static int vax_address_cost (rtx); static bool vax_rtx_costs (rtx, int, int, int *); static rtx vax_struct_value_rtx (tree, int); +#ifdef HAVE___UDIV___UREM_IN_LIBC +static void vax_init_libfuncs (void); +#endif /* Initialize the GCC target structure. */ #undef TARGET_ASM_ALIGNED_HI_OP @@ -66,8 +68,10 @@ static rtx vax_struct_value_rtx (tree, i #undef TARGET_ASM_FILE_START_APP_OFF #define TARGET_ASM_FILE_START_APP_OFF true +#ifdef HAVE___UDIV___UREM_IN_LIBC #undef TARGET_INIT_LIBFUNCS #define TARGET_INIT_LIBFUNCS vax_init_libfuncs +#endif #undef TARGET_ASM_OUTPUT_MI_THUNK #define TARGET_ASM_OUTPUT_MI_THUNK vax_output_mi_thunk @@ -162,6 +166,7 @@ vax_file_start (void) fprintf (asm_out_file, "___vax_%c_doubles:\n", ASM_DOUBLE_CHAR); } +#ifdef HAVE___UDIV___UREM_IN_LIBC /* We can use the BSD C library routines for the libgcc calls that are still generated, since that's what they boil down to anyways. When ELF, avoid the user's namespace. */ @@ -172,6 +177,7 @@ vax_init_libfuncs (void) set_optab_libfunc (udiv_optab, SImode, TARGET_ELF ? "*__udiv" : "*udiv"); set_optab_libfunc (umod_optab, SImode, TARGET_ELF ? "*__urem" : "*urem"); } +#endif /* HAVE___UDIV___UREM_IN_LIBC */ /* This is like nonimmediate_operand with a restriction on the type of MEM. */ diff -Nurp src-gcc-fresh/gcc/config.gcc src-gcc-hacked/gcc/config.gcc --- src-gcc-fresh/gcc/config.gcc 2005-09-25 14:04:59.000000000 +0200 +++ src-gcc-hacked/gcc/config.gcc 2005-09-25 14:27:09.000000000 +0200 @@ -2239,9 +2239,11 @@ vax-*-sysv*) # VAXen running system V ;; vax-*-linux-uclibc*) # VAXen running Linux ELF with uClibc tm_file="${tm_file} elfos.h linux.h vax/elf.h vax/uclinux.h" + tmake_file="vax/t-vax" ;; vax-*-linux*) # VAXen running Linux ELF with GNU libc tm_file="${tm_file} elfos.h linux.h vax/elf.h vax/linux.h" + tmake_file="vax/t-vax" ;; vax-*-netbsdelf*) tm_file="${tm_file} elfos.h netbsd.h netbsd-elf.h vax/elf.h vax/netbsd-elf.h" |
From: Jan-Benedict G. <jb...@us...> - 2005-09-25 12:42:54
|
Update of /cvsroot/linux-vax/toolchain/patches In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6416 Added Files: uclibc-000005-crt0-part3.patch Log Message: - This is an implementation that actually seems to work. atexit() and all the other funny stuff isn't tested yet. Also, more fancy stuff like printf() doesn't work right now because of __udev and __urem missing. - [x] We'll get there. --- NEW FILE: uclibc-000005-crt0-part3.patch --- diff -Nurp src-uclibc-fresh/libc/sysdeps/linux/vax/crt1.S src-uclibc-hacked/libc/sysdeps/linux/vax/crt1.S --- src-uclibc-fresh/libc/sysdeps/linux/vax/crt1.S 2005-09-25 14:37:42.000000000 +0200 +++ src-uclibc-hacked/libc/sysdeps/linux/vax/crt1.S 2005-09-25 14:38:24.000000000 +0200 @@ -30,22 +30,15 @@ _start: movl $0, %fp /* FP = 0, since this is the */ /* top-most stack frame */ - + movl %sp, %r0 /* R0 = %sp */ movl (%sp)+, %r4 /* R4 = argc */ movl %sp, %r3 /* R3 = argv = &argv[0] */ - addl3 %r4, $1, %r0 /* R0 = argc+1 (including the */ - /* trailing NULL) */ - ashl $2, %r0, %r0 /* R0 *= 4 (length of pointer */ - /* array in bytes) */ - addl3 %r3, %r0, %r2 /* R2 = env = &env[0] (= argv + */ - /* length of argv) */ #if (defined L_crt1 || defined L_gcrt1) && defined __UCLIBC_CTOR_DTOR__ + pushl %r0 # stack_end + pushl $2 # rtld_fini, some magic value stolen from the MIPS port pushl $_fini pushl $_init - - /* Push envp, argc, and argc arguments to __uClibc_start_main() on the stack */ - pushl %r2 /* Environment pointer */ pushl %r3 /* Argument pointer */ pushl %r4 /* And the argument count */ pushl $main /* main() */ @@ -59,7 +52,7 @@ _start: * void (*rtld_fini) (void), * void *stack_end); */ - calls $5, __uClibc_main + calls $7, __uClibc_main #else /* start to load the arguments from the stack */ /* arguments are on ap stack */ |
From: Jan-Benedict G. <jb...@us...> - 2005-09-25 12:10:39
|
Update of /cvsroot/linux-vax/toolchain/patches In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv32083 Removed Files: gcc-000004-fix-length-PR23991.patch Log Message: - Bug is fixed upstream, so out local fix isn't needed. --- gcc-000004-fix-length-PR23991.patch DELETED --- |
From: Jan-Benedict G. <jb...@us...> - 2005-09-25 00:17:42
|
Update of /cvsroot/linux-vax/toolchain/patches In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12407 Added Files: uclibc-000004-crt0-part2.patch Log Message: - Add crti.o and crtn.o to the Makefile. --- NEW FILE: uclibc-000004-crt0-part2.patch --- Binary files src-uclibc-fresh/libc/sysdeps/linux/arm/.Makefile.swp and src-uclibc-hacked/libc/sysdeps/linux/arm/.Makefile.swp differ diff -Nurp src-uclibc-fresh/libc/sysdeps/linux/vax/Makefile src-uclibc-hacked/libc/sysdeps/linux/vax/Makefile --- src-uclibc-fresh/libc/sysdeps/linux/vax/Makefile 2005-09-25 01:05:04.000000000 +0200 +++ src-uclibc-hacked/libc/sysdeps/linux/vax/Makefile 2005-09-25 01:12:05.000000000 +0200 @@ -32,6 +32,7 @@ SCRT_OBJ=$(pathsubst %,S%, $(CRT_OBJ)) SSRC=__longjmp.S setjmp.S _setjmp.S clone.S #SSRC=_setjmp.S SOBJS=$(patsubst %.S,%.o, $(SSRC)) +CTOR_TARGETS=$(TOPDIR)lib/crti.o $(TOPDIR)lib/crtn.o #CSRC=vfork.c _mmap.c __longjmp.c setjmp.c longjmp.c CSRC=vfork.c _mmap.c brk.c @@ -61,10 +62,6 @@ ar-target: $(OBJS) $(CRT0_OBJ) $(AR) $(ARFLAGS) $(LIBC) $(OBJS) cp $(CRT0_OBJ) $(TOPDIR)lib -$(CRT0_OBJ): $(CRT0_SRC) - $(CC) $(CFLAGS) -DL_$* -c $< -o $*.o - $(STRIPTOOL) -x -R .note -R .comment $*.o - $(SOBJS): %.o : %.S $(CC) $(CFLAGS) -c $< -o $@ $(STRIPTOOL) -x -R .note -R .comment $*.o @@ -73,6 +70,30 @@ $(COBJS): %.o : %.c $(CC) $(CFLAGS) -c $< -o $@ $(STRIPTOOL) -x -R .note -R .comment $*.o +ifeq ($(strip $(UCLIBC_CTOR_DTOR)),y) +crti.o: crti.S + $(CC) $(ASFLAGS) -c crti.S -o crti.o + +$(TOPDIR)lib/crti.o: crti.o + $(INSTALL) -d $(TOPDIR)/lib/ + cp crti.o $(TOPDIR)/lib/ + +crtn.o: crtn.S + $(CC) $(ASFLAGS) -c crtn.S -o crtn.o + +$(TOPDIR)lib/crtn.o: crtn.o + $(INSTALL) -d $(TOPDIR)/lib/ + cp crtn.o $(TOPDIR)/lib/ +else +$(TOPDIR)lib/crti.o: + $(INSTALL) -d $(TOPDIR)/lib/ + $(AR) $(ARFLAGS) $(TOPDIR)/lib/crti.o + +$(TOPDIR)lib/crtn.o: + $(INSTALL) -d $(TOPDIR)lib/ + $(AR) $(ARFLAGS) $(TOPDIR)lib/crtn.o +endif + headers: clean: |
From: Jan-Benedict G. <jb...@us...> - 2005-09-24 22:39:14
|
Update of /cvsroot/linux-vax/toolchain/patches In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23684 Modified Files: uclibc-000003-crt0-part1.patch Log Message: - Reference correct function. Getting nearer to link it, but crti/crtn is missing (because the Makefile is wrong mostly). Index: uclibc-000003-crt0-part1.patch =================================================================== RCS file: /cvsroot/linux-vax/toolchain/patches/uclibc-000003-crt0-part1.patch,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- uclibc-000003-crt0-part1.patch 24 Sep 2005 22:13:49 -0000 1.1 +++ uclibc-000003-crt0-part1.patch 24 Sep 2005 22:39:06 -0000 1.2 @@ -214,7 +214,7 @@ + * void (*rtld_fini) (void), + * void *stack_end); + */ -+ calls $5, __uClibc_start_main ++ calls $5, __uClibc_main +#else + /* start to load the arguments from the stack */ + /* arguments are on ap stack */ |
From: Jan-Benedict G. <jb...@us...> - 2005-09-24 22:13:57
|
Update of /cvsroot/linux-vax/toolchain/patches In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19128 Added Files: uclibc-000003-crt0-part1.patch Log Message: - First round of crt0.S games. - It's yet wrong (wrong {,number of} argument{s,} pushed onto the stack for the final call into uClibc), but I'll now try to attempt to link a minimal main() function with this. - Does anybody know a correct linker call for this beforehand? --- NEW FILE: uclibc-000003-crt0-part1.patch --- diff -Nurp src-uclibc-fresh/libc/sysdeps/linux/vax/clone.S src-uclibc-hacked/libc/sysdeps/linux/vax/clone.S --- src-uclibc-fresh/libc/sysdeps/linux/vax/clone.S 2005-09-24 11:12:03.000000000 +0200 +++ src-uclibc-hacked/libc/sysdeps/linux/vax/clone.S 2005-09-24 13:18:07.000000000 +0200 @@ -21,28 +21,27 @@ #include <bits/errno.h> #include <sys/syscall.h> -.section .rodata - .align 2 -.LC0: - .long 120 +.section .rodata + .align 2 +.LC0: .long 120 /* SYS_clone */ .text -.align 4 + .align 4 .type __clone,@function .globl __clone; __clone: - .word 0x40 -/* subl2 $8, %sp */ + .word 0x0040 + /* subl2 $8, %sp */ movl 4(%ap), %r1 movl 8(%ap), %r0 - mcoml $21,%r6 + mcoml $21, %r6 - /* sanity check args */ + /* Sanity check args. */ tstl %r1 jeql CLONE_ERROR_LABEL tstl %r0 jeql CLONE_ERROR_LABEL - /* need to setup the child stack the same as the parent */ + /* Need to setup the child stack the same as the parent. */ subl2 $24, %r0 movl 16(%ap), 20(%r0) movl %r1, 16(%r0) @@ -50,36 +49,37 @@ __clone: addl2 $16, %r1 movl %r1, 12(%r0) - /* do the system call */ + /* Do the system call. */ pushl %ap pushl %r0 - pushl 12(%ap) + pushl 12(%ap) pushl $0x2 movl %sp, %ap - chmk .LC0 # %r0 .LC0 -4(%fp) -8(%fp) + chmk .LC0 /* %r0 .LC0 -4(%fp) -8(%fp) */ addl2 $12, %sp movl (%sp)+, %ap - movl %r0,%r6 + movl %r0, %r6 jneq CLONE_ERROR_LABEL movl $0, %fp pushl 4(%ap) movl (%r1), %r0 - calls $1,(%r0) + calls $1, (%r0) pushl %r0 calls $1, _exit + CLONE_ERROR_LABEL: - cmpl %r6, $-126 + cmpl %r6, $-126 /* -ENOKEY?!?! Fuck, this must be wrong! */ jlequ CLONE_RETURN_LABEL calls $0, __errno_location - mnegl %r6,(%r0) - mcoml $0,%r6 - movl %r6,%r0 + mnegl %r6, (%r0) + mcoml $0, %r6 + movl %r6, %r0 ret CLONE_RETURN_LABEL: ret .globl clone; - clone = __clone + clone = __clone diff -Nurp src-uclibc-fresh/libc/sysdeps/linux/vax/crt0.S src-uclibc-hacked/libc/sysdeps/linux/vax/crt0.S --- src-uclibc-fresh/libc/sysdeps/linux/vax/crt0.S 2005-09-24 11:12:03.000000000 +0200 +++ src-uclibc-hacked/libc/sysdeps/linux/vax/crt0.S 1970-01-01 01:00:00.000000000 +0100 @@ -1,58 +0,0 @@ -/* crt0 for VAX */ - -/* program stack looks like - argc argument counter (integer) - argv[0] program name (pointer) - argv[1...N] program args (pointers) - argv[argc-1] end of args (integer) - NULL - env[0...N] environment variables (pointers) - NULL -*/ - -#include <features.h> - -.text -.align 4 - -.global __start -__start: -.global _start -_start: - .word 0x0101 - /* clear the frame pointer */ - movl $0, %fp - - movl (%sp)+, %r4 - movl %sp, %r3 - /* r4 has argc in it .. add one to get over NULL - - move it left shifted 2 into r0 */ - addl3 %r4, $1, %r0 - ashl $2, %r0, %r0 - /* add size of args to r3 to get start of environ into r2 */ - addl3 %r3, %r0, %r2 - - /* */ -#if defined L_crt1 && defined __UCLIBC_CTOR_DTOR__ - /* Push .init and .fini arguments to __uClibc_start_main() on the stack */ - pushl $_fini - pushl $_init - - /* Push envp, argc, and argc arguments to __uClibc_start_main() on the stack */ - pushl %r2 /* Environment pointer */ - pushl %r3 /* Argument pointer */ - pushl %r4 /* And the argument count */ - - /* Ok, now run uClibc's main() -- shouldn't return */ - calls $5, __uClibc_start_main -#else - /* start to load the arguments from the stack */ - /* arguments are on ap stack */ - pushl %r2 - pushl %r3 - pushl %r4 - - calls $3, __uClibc_main -#endif - halt -.align 2 diff -Nurp src-uclibc-fresh/libc/sysdeps/linux/vax/crt1.S src-uclibc-hacked/libc/sysdeps/linux/vax/crt1.S --- src-uclibc-fresh/libc/sysdeps/linux/vax/crt1.S 1970-01-01 01:00:00.000000000 +0100 +++ src-uclibc-hacked/libc/sysdeps/linux/vax/crt1.S 2005-09-24 13:04:12.000000000 +0200 @@ -0,0 +1,77 @@ +/* + * crt0 for VAX + */ + +/* + * Program stack looks like: + * sp-> argc argument counter (integer) + * argv[0] program name (pointer) + * argv[1...N] program args (pointers) + * argv[argc-1] end of args (integer) + * NULL + * env[0...N] environment variables (pointers) + * NULL + */ + +#include <features.h> + +.text +.align 4 + +.global __start +__start: +.global _start +_start: + /* Kernel uses a_interp + 2, so __start isn't exactly CALLSed, */ + /* but we need to have two bytes here, so we use NOPs. This */ + /* won't hurt, though R0 would be invalid to push, but at */ + /* lease this looks like a real function. */ + .word 0x0101 + + movl $0, %fp /* FP = 0, since this is the */ + /* top-most stack frame */ + + movl (%sp)+, %r4 /* R4 = argc */ + movl %sp, %r3 /* R3 = argv = &argv[0] */ + addl3 %r4, $1, %r0 /* R0 = argc+1 (including the */ + /* trailing NULL) */ + ashl $2, %r0, %r0 /* R0 *= 4 (length of pointer */ + /* array in bytes) */ + addl3 %r3, %r0, %r2 /* R2 = env = &env[0] (= argv + */ + /* length of argv) */ + +#if (defined L_crt1 || defined L_gcrt1) && defined __UCLIBC_CTOR_DTOR__ + pushl $_fini + pushl $_init + + /* Push envp, argc, and argc arguments to __uClibc_start_main() on the stack */ + pushl %r2 /* Environment pointer */ + pushl %r3 /* Argument pointer */ + pushl %r4 /* And the argument count */ + pushl $main /* main() */ + + /* We need to call __uClibc_main which should not return. + * __uClibc_main (int (*main) (int, char **, char **), + * int argc, + * char **argv, + * void (*init) (void), + * void (*fini) (void), + * void (*rtld_fini) (void), + * void *stack_end); + */ + calls $5, __uClibc_start_main +#else + /* start to load the arguments from the stack */ + /* arguments are on ap stack */ + pushl %r2 + pushl %r3 + pushl %r4 + + calls $3, __uClibc_main +#endif + + /* The above __uClibc_start_main() shouldn't ever return. If it + does, we just crash. */ + halt +.align 2 + diff -Nurp src-uclibc-fresh/libc/sysdeps/linux/vax/crti.S src-uclibc-hacked/libc/sysdeps/linux/vax/crti.S --- src-uclibc-fresh/libc/sysdeps/linux/vax/crti.S 1970-01-01 01:00:00.000000000 +0100 +++ src-uclibc-hacked/libc/sysdeps/linux/vax/crti.S 2005-09-24 11:13:20.000000000 +0200 @@ -0,0 +1,30 @@ + .file "initfini.c" + .version "01.01" +gcc2_compiled.: +__gnu_compiled_c: +#APP + + .section .init +#NO_APP + .align 1 +.globl _init + .type _init,@function +_init: + .word 0x0 +#APP + + .align 1 + + + .section .fini +#NO_APP + .align 1 +.globl _fini + .type _fini,@function +_fini: + .word 0x0 +#APP + .align 1 + + + .ident "GCC: (GNU) 2.95.2 19991024 (release) (Linux/VAX CVS)" diff -Nurp src-uclibc-fresh/libc/sysdeps/linux/vax/crtn.S src-uclibc-hacked/libc/sysdeps/linux/vax/crtn.S --- src-uclibc-fresh/libc/sysdeps/linux/vax/crtn.S 1970-01-01 01:00:00.000000000 +0100 +++ src-uclibc-hacked/libc/sysdeps/linux/vax/crtn.S 2005-09-24 11:13:20.000000000 +0200 @@ -0,0 +1,29 @@ + .file "initfini.c" + .version "01.01" +gcc2_compiled.: +__gnu_compiled_c: +#APP + + .section .init +#NO_APP + .align 1 +.globl _init + .type _init,@function +#NO_APP + ret +.Lfe2: + .size _init,.Lfe2-_init +#APP + + .section .fini +#NO_APP + .align 1 +.globl _fini + .type _fini,@function +#NO_APP + ret +.Lfe3: + .size _fini,.Lfe3-_fini +#APP + + .ident "GCC: (GNU) 2.95.2 19991024 (release) (Linux/VAX CVS)" diff -Nurp src-uclibc-fresh/libc/sysdeps/linux/vax/Makefile src-uclibc-hacked/libc/sysdeps/linux/vax/Makefile --- src-uclibc-fresh/libc/sysdeps/linux/vax/Makefile 2005-09-24 11:12:03.000000000 +0200 +++ src-uclibc-hacked/libc/sysdeps/linux/vax/Makefile 2005-09-24 11:35:37.000000000 +0200 @@ -24,8 +24,9 @@ TOPDIR=../../../../ include $(TOPDIR)Rules.mak ASFLAGS=$(CFLAGS) -CRT0_SRC=crt0.S -CRT0_OBJ=crt0.o crt1.o +CRT_SRC=crt1.S +CRT_OBJ=crt1.o +SCRT_OBJ=$(pathsubst %,S%, $(CRT_OBJ)) #SSRC=longjmp.S setjmp.S vfork.S SSRC=__longjmp.S setjmp.S _setjmp.S clone.S @@ -36,11 +37,23 @@ SOBJS=$(patsubst %.S,%.o, $(SSRC)) CSRC=vfork.c _mmap.c brk.c COBJS=$(patsubst %.c,%.o, $(CSRC)) -OBJS=$(SOBJS) $(MOBJ) $(COBJS) +OBJS=$(SOBJS) $(COBJS) +OBJ_LIST=../../../obj.sysdeps.$(TARGET_ARCH) +all: $(OBJ_LIST) -#jbglaw all: $(OBJS) $(LIBC) -all: $(OBJS) +$(OBJ_LIST): $(OBJS) $(CRT_OBJ) $(SCRT_OBJ) $(CTOR_TARGETS) + echo $(patsubst %, sysdeps/linux/$(TARGET_ARCH)/%, $(OBJS)) > $(OBJ_LIST) + $(INSTALL) -d $(TOPDIR)lib/ + cp $(CRT_OBJ) $(SCRT_OBJ) $(TOPDIR)lib/ + +$(CRT_OBJ): $(CRT_SRC) + $(CC) $(ASFLAGS) -DL_$* $< -c -o $*.o + $(STRIPTOOL) -x -R .note -R .comment $*.o + +$(SCRT_OBJ): $(CRT_SRC) + $(CC) $(ASFLAGS) $(PIEFLAG) -DL_$* $< -c -o $*.o + $(STRIPTOOL) -x -R .note -R .comment $*.o $(LIBC): ar-target |
From: Jan-Benedict G. <jb...@us...> - 2005-09-24 15:55:53
|
Update of /cvsroot/linux-vax/toolchain/scripts In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5761 Modified Files: build_toolchain.sh Log Message: - We need to have prepared kernel headers, including some generated header files as well as the (in)famous ./include/asm symlink. Index: build_toolchain.sh =================================================================== RCS file: /cvsroot/linux-vax/toolchain/scripts/build_toolchain.sh,v retrieving revision 1.16 retrieving revision 1.17 diff -u -d -r1.16 -r1.17 --- build_toolchain.sh 23 Sep 2005 15:41:40 -0000 1.16 +++ build_toolchain.sh 24 Sep 2005 15:55:45 -0000 1.17 @@ -239,26 +239,35 @@ case "${TARGET}" in vax*ultrix) GCC1_EXTRA_LANGUAGES=",c++" + KERNEL_ARCH=vax ;; vax*linux-uclibc*) BUILD_UCLIBC=1 + KERNEL_ARCH=vax ;; vax*linux-*) GCC1_EXTRA_LANGUAGES=",c++" + KERNEL_ARCH=vax ;; vax*linux|vax*linux-gnu) GCC1_EXTRA_LANGUAGES=",c++" + KERNEL_ARCH=vax ;; vax*netbsd) + KERNEL_ARCH=vax ;; vax*netbsdelf) + KERNEL_ARCH=vax ;; vax*openbsd) + KERNEL_ARCH=vax BUILD_LD=0 ;; i*86-linux) + KERNEL_ARCH=i386 ;; powerpc*linux) + KERNEL_ARCH=ppc ;; *) echo "Configuration \"${TARGET}\" unknown..." >&2 @@ -529,6 +538,14 @@ popd # +# Configure the kernel. We need prepared kernel headers. +# +pushd "${LINUX_SRC}" + make ARCH="${KERNEL_ARCH}" CROSS_COMPILE="${TARGET}-" defconfig + make ARCH="${KERNEL_ARCH}" CROSS_COMPILE="${TARGET}-" prepare +popd + +# # Build uClibc # pushd "${UCLIBC_SRC}" # Yes, we build within the source dir... @@ -537,7 +554,7 @@ build "${BUILD_UCLIBC}" && execute make oldconfig # Build - build "${BUILD_GCC1}" && execute make + build "${BUILD_GCC1}" && execute make ${MAKEFLAGS} popd |
From: Jan-Benedict G. <jb...@lu...> - 2005-09-23 15:44:53
|
On Fri, 2005-09-23 15:41:42 +0000, Jan-Benedict Glaw <jb...@us...urcefo= rge.net> wrote: > Update of /cvsroot/linux-vax/toolchain/scripts > In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11658 >=20 > Modified Files: > build_toolchain.sh=20 With this patch in place, I can compile a libc.a file from uClibc. After taking some food, I'll try to (manually) link it with a hello_world.o to produce an executable file. MfG, JBG --=20 Jan-Benedict Glaw jb...@lu... . +49-172-7608481 = _ O _ "Eine Freie Meinung in einem Freien Kopf | Gegen Zensur | Gegen Krieg = _ _ O f=C3=BCr einen Freien Staat voll Freier B=C3=BCrger" | im Internet! | i= m Irak! O O O ret =3D do_actions((curr | FREE_SPEECH) & ~(NEW_COPYRIGHT_LAW | DRM | TCPA)= ); |
From: Jan-Benedict G. <jb...@us...> - 2005-09-23 15:41:56
|
Update of /cvsroot/linux-vax/toolchain/scripts In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11658 Modified Files: build_toolchain.sh Log Message: - Update the build_toolchain.sh script: - * Also copy the Linux source tree. (Of course, you need one in the right place; initial_cvs_checkout should do it for you.) * Configure and build uClibc. - jbglaw@d2:~/vax-linux/scm/build-20050923-142555-vax-linux-uclibc/src/uclibc$ ls -l libc/libc.a -rw-r--r-- 1 jbglaw jbglaw 645866 2005-09-23 17:10 libc/libc.a - Now I need to figure out how to write appropriate startup code (crt0.S it is, right?) and how to manually link a hello_world.o file with the crt0.o and libc.a stuff. - Then I need to integrate this with GCC. - Fu*k, I haven't had time to really look at GIT :-( - Despite some (think: lots of...) Nutella bread slices, I'm hungry and will soon go out for food. - Doing hacking a complete day is lots of fun. I'd really try to keep one day (say all two weeks) free for hacking. It's satisfying, really! Index: build_toolchain.sh =================================================================== RCS file: /cvsroot/linux-vax/toolchain/scripts/build_toolchain.sh,v retrieving revision 1.15 retrieving revision 1.16 diff -u -d -r1.15 -r1.16 --- build_toolchain.sh 20 Aug 2005 19:21:38 -0000 1.15 +++ build_toolchain.sh 23 Sep 2005 15:41:40 -0000 1.16 @@ -56,11 +56,13 @@ DO_TIMESTAMP_GLIBC=0 DO_TIMESTAMP_PORTS=0 DO_TIMESTAMP_UCLIBC=0 +DO_TIMESTAMP_LINUX=0 DO_PATCHES_BINUTILS=1 DO_PATCHES_GCC=1 DO_PATCHES_GLIBC=1 DO_PATCHES_PORTS=1 DO_PATCHES_UCLIBC=1 +DO_PATCHES_LINUX=1 DO_CHECKS_BINUTILS=1 DO_CHECKS_GCC=1 DO_CHECKS_GLIBC=1 @@ -80,10 +82,12 @@ TIMESTAMP_GLIBC="${1}" TIMESTAMP_PORTS="${1}" TIMESTAMP_UCLIBC="${1}" + TIMESTAMP_LINUX="${1}" DO_TIMESTAMP_BINUTILS=1 DO_TIMESTAMP_GCC=1 DO_TIMESTAMP_GLIBC=1 DO_TIMESTAMP_UCLIBC=1 + DO_TIMESTAMP_LINUX=1 shift ;; --binutils-timestamp) @@ -110,6 +114,12 @@ DO_TIMESTAMP_UCLIBC=1 shift ;; + --linux-timestamp) + shift + TIMESTAMP_LINUX="${1}" + DO_TIMESTAMP_LINUX=1 + shift + ;; --omit-patches) shift DO_PATCHES_BINUTILS=0 @@ -117,6 +127,7 @@ DO_PATCHES_GLIBC=0 DO_PATCHES_PORTS=0 DO_PATCHES_UCLIBC=0 + DO_PATCHES_LINUX=0 ;; --omit-binutils-patches) shift @@ -138,6 +149,10 @@ shift DO_PATCHES_UCLIBC=0 ;; + --omit-linux-patches) + shift + DO_PATCHES_LINUX=0 + ;; --omit-checks) shift DO_CHECKS_BINUTILS=0 @@ -166,7 +181,7 @@ echo "Unrecognized option \"${1}\"" >&2 echo >&2 echo "Hint:" >&2 - echo "$0 [--timestamp | --{binutils,glibc,gcc,uclibc}-timestamp | --omit-patches | --omit-{gcc,glibc,binutils,ports,uclibc}-patches | --omit-checks | --omit-{binutils,gcc,glibc,uclibc}-checks] <target>" >&2 + echo "$0 [--timestamp | --{binutils,glibc,gcc,uclibc,linux}-timestamp | --omit-patches | --omit-{gcc,glibc,binutils,ports,uclibc,linux}-patches | --omit-checks | --omit-{binutils,gcc,glibc,uclibc}-checks] <target>" >&2 echo "Target defaults to: ${TARGET}" >&2 exit 1 ;; @@ -199,6 +214,8 @@ [ "${DO_PATCHES_PORTS}" -eq 0 ] && echo " Patch Glibc-Ports: no" [ "${DO_PATCHES_UCLIBC}" -ne 0 ] && echo " Patch uClibc: yes" [ "${DO_PATCHES_UCLIBC}" -eq 0 ] && echo " Patch uClibc: no" +[ "${DO_PATCHES_LINUX}" -ne 0 ] && echo " Patch Linux: yes" +[ "${DO_PATCHES_LINUX}" -eq 0 ] && echo " Patch Linux: no" [ "${DO_CHECKS_BINUTILS}" -ne 0 ] && echo " Check Binutils: yes" [ "${DO_CHECKS_BINUTILS}" -eq 0 ] && echo " Check Binutils: no" [ "${DO_CHECKS_GCC}" -ne 0 ] && echo " Check GCC: yes" @@ -216,12 +233,16 @@ BUILD_GAS=1 BUILD_LD=1 BUILD_GCC1=1 +BUILD_UCLIBC=0 BUILD_GCC2=1 GCC1_EXTRA_LANGUAGES= case "${TARGET}" in vax*ultrix) GCC1_EXTRA_LANGUAGES=",c++" ;; + vax*linux-uclibc*) + BUILD_UCLIBC=1 + ;; vax*linux-*) GCC1_EXTRA_LANGUAGES=",c++" ;; @@ -317,6 +338,7 @@ GLIBC_CVS="${UPSTREAM_SANDBOXES_PATH}/glibc/libc-upstream-HEAD" GLIBC_PORTS_CVS="${UPSTREAM_SANDBOXES_PATH}/glibc/ports-upstream-HEAD" GCC_CVS="${UPSTREAM_SANDBOXES_PATH}/gcc/gcc-upstream-HEAD" +LINUX_CVS="${UPSTREAM_SANDBOXES_PATH}/linux/linux-upstream-HEAD" UCLIBC_SVN="${UPSTREAM_SANDBOXES_PATH}/uclibc/uclibc-upstream-HEAD" # @@ -336,6 +358,7 @@ BINUTILS_SRC="${SRC_BASE}/binutils" GLIBC_SRC="${SRC_BASE}/glibc" GCC_SRC="${SRC_BASE}/gcc" +LINUX_SRC="${SRC_BASE}/linux" UCLIBC_SRC="${SRC_BASE}/uclibc" BINUTILS_BUILD="${BUILD_BASE}/binutils" @@ -355,6 +378,7 @@ mkdir "${GLIBC_SRC}"; GLIBC_SRC="`check_path "${GLIBC_SRC}"`" mkdir "${GCC_SRC}"; GCC_SRC="`check_path "${GCC_SRC}"`" mkdir "${UCLIBC_SRC}"; UCLIBC_SRC="`check_path "${UCLIBC_SRC}"`" +mkdir "${LINUX_SRC}"; LINUX_SRC="`check_path "${LINUX_SRC}"`" mkdir "${BINUTILS_BUILD}"; BINUTILS_BUILD="`check_path "${BINUTILS_BUILD}"`" mkdir "${GCC1_BUILD}"; GCC1_BUILD="`check_path "${GCC1_BUILD}"`" mkdir "${GLIBC_BUILD}"; GLIBC_BUILD="`check_path "${GLIBC_BUILD}"`" @@ -368,6 +392,7 @@ copy_directory.sh "${GLIBC_CVS}" "${GLIBC_SRC}" copy_directory.sh "${GLIBC_PORTS_CVS}" "${GLIBC_SRC}" copy_directory.sh "${GCC_CVS}" "${GCC_SRC}" +copy_directory.sh "${LINUX_CVS}" "${LINUX_SRC}" copy_directory.sh "${UCLIBC_SVN}" "${UCLIBC_SRC}" # @@ -503,3 +528,16 @@ build "${DO_CHECKS_GCC}" && "${GCC_SRC}/contrib/test_summary" -m gcc...@gc... > "${ALL_BASE}/send_gcc_summary.sh" popd +# +# Build uClibc +# +pushd "${UCLIBC_SRC}" # Yes, we build within the source dir... + # Configure + echo "KERNEL_SOURCE=\"${LINUX_SRC}\"" >> .config + build "${BUILD_UCLIBC}" && execute make oldconfig + + # Build + build "${BUILD_GCC1}" && execute make + +popd + |
From: Jan-Benedict G. <jb...@us...> - 2005-09-23 15:35:50
|
Update of /cvsroot/linux-vax/toolchain/patches In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11232 Added Files: uclibc-000002-add-SHMLBA.patch Log Message: - We need a define for SHMLBA. I don't know what it is actually used for (nor do I have a real intent for figuring it out), but I took Alpha's approach and set it to __get_pagesize(). --- NEW FILE: uclibc-000002-add-SHMLBA.patch --- diff -Nurp src-uclibc-fresh/libc/sysdeps/linux/vax/bits/shm.h src-uclibc-hacked/libc/sysdeps/linux/vax/bits/shm.h --- src-uclibc-fresh/libc/sysdeps/linux/vax/bits/shm.h 2005-09-23 17:05:24.000000000 +0200 +++ src-uclibc-hacked/libc/sysdeps/linux/vax/bits/shm.h 2005-09-23 17:07:10.000000000 +0200 @@ -30,6 +30,7 @@ #define SHM_RDONLY 010000 /* attach read-only else read-write */ #define SHM_RND 020000 /* round attach address to SHMLBA */ #define SHM_REMAP 040000 /* take-over region on attach */ +#define SHMLBA (__getpagesize ()) /* Commands for `shmctl'. */ #define SHM_LOCK 11 /* lock segment (root only) */ |
From: Jan-Benedict G. <jb...@us...> - 2005-09-23 15:32:47
|
Update of /cvsroot/linux-vax/toolchain/patches In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10598 Added Files: uclibc-000001-config.patch Log Message: - We need a config file. This ./.config contains basically everything needed, but with most interesting features disabled for now. Especially, the dynamic linker is switched off. My first goal is to get statically linked binaries up'n'running. --- NEW FILE: uclibc-000001-config.patch --- --- /dev/null 2005-08-28 03:49:43.999308688 +0200 +++ uclibc/.config 2005-09-23 12:53:12.000000000 +0200 @@ -0,0 +1,139 @@ +# +# Automatically generated make config: don't edit +# +# TARGET_alpha is not set +# TARGET_arm is not set +# TARGET_bfin is not set +# TARGET_cris is not set +# TARGET_e1 is not set +# TARGET_frv is not set +# TARGET_h8300 is not set +# TARGET_i386 is not set +# TARGET_i960 is not set +# TARGET_m68k is not set +# TARGET_microblaze is not set +# TARGET_mips is not set +# TARGET_nios is not set +# TARGET_nios2 is not set +# TARGET_powerpc is not set +# TARGET_sh is not set +# TARGET_sh64 is not set +# TARGET_sparc is not set +# TARGET_v850 is not set +TARGET_vax=y +# TARGET_x86_64 is not set + +# +# Target Architecture Features and Options +# +HAVE_ELF=y +ARCH_SUPPORTS_LITTLE_ENDIAN=y +TARGET_ARCH="vax" +CROSS="vax-linux-uclibc-" +ARCH_LITTLE_ENDIAN=y +# ARCH_BIG_ENDIAN is not set +# ARCH_HAS_NO_MMU is not set +ARCH_HAS_MMU=y +# UCLIBC_HAS_FLOATS is not set +C_SYMBOL_PREFIX="" +HAVE_DOT_CONFIG=y + +# +# General Library Settings +# +# HAVE_NO_PIC is not set +# DOPIC is not set +HAVE_NO_SHARED=y +ARCH_HAS_NO_LDSO=y +UCLIBC_CTOR_DTOR=y +# HAS_NO_THREADS is not set +# UCLIBC_HAS_THREADS is not set +UCLIBC_HAS_LFS=y +# UCLIBC_STATIC_LDCONFIG is not set +# MALLOC is not set +# MALLOC_SIMPLE is not set +MALLOC_STANDARD=y +# MALLOC_GLIBC_COMPAT is not set +UCLIBC_DYNAMIC_ATEXIT=y +HAS_SHADOW=y +UNIX98PTY_ONLY=y +ASSUME_DEVPTS=y +UCLIBC_HAS_TM_EXTENSIONS=y +UCLIBC_HAS_TZ_CACHING=y +UCLIBC_HAS_TZ_FILE=y +UCLIBC_HAS_TZ_FILE_READ_MANY=y +UCLIBC_TZ_FILE_PATH="/etc/TZ" + +# +# Networking Support +# +# UCLIBC_HAS_IPV6 is not set +# UCLIBC_HAS_RPC is not set + +# +# String and Stdio Support +# +UCLIBC_HAS_STRING_GENERIC_OPT=y +# UCLIBC_HAS_STRING_ARCH_OPT is not set +UCLIBC_HAS_CTYPE_TABLES=y +UCLIBC_HAS_CTYPE_SIGNED=y +UCLIBC_HAS_CTYPE_UNSAFE=y +# UCLIBC_HAS_CTYPE_CHECKED is not set +# UCLIBC_HAS_CTYPE_ENFORCED is not set +# UCLIBC_HAS_WCHAR is not set +# UCLIBC_HAS_LOCALE is not set +# UCLIBC_HAS_GLIBC_CUSTOM_PRINTF is not set +# USE_OLD_VFPRINTF is not set +UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9 +# UCLIBC_HAS_SCANF_GLIBC_A_FLAG is not set +# UCLIBC_HAS_STDIO_BUFSIZ_NONE is not set +# UCLIBC_HAS_STDIO_BUFSIZ_256 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set +UCLIBC_HAS_STDIO_BUFSIZ_4096=y +# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set +UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set +# UCLIBC_HAS_STDIO_SHUTDOWN_ON_ABORT is not set +UCLIBC_HAS_STDIO_GETC_MACRO=y +UCLIBC_HAS_STDIO_PUTC_MACRO=y +UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y +# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set +# UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE is not set +# UCLIBC_HAS_GLIBC_CUSTOM_STREAMS is not set +# UCLIBC_HAS_PRINTF_M_SPEC is not set +UCLIBC_HAS_ERRNO_MESSAGES=y +# UCLIBC_HAS_SYS_ERRLIST is not set +UCLIBC_HAS_SIGNUM_MESSAGES=y +# UCLIBC_HAS_SYS_SIGLIST is not set +UCLIBC_HAS_GNU_GETOPT=y + +# +# Big and Tall +# +UCLIBC_HAS_REGEX=y +# UCLIBC_HAS_WORDEXP is not set +# UCLIBC_HAS_FTW is not set +UCLIBC_HAS_GLOB=y + +# +# Library Installation Options +# +RUNTIME_PREFIX="/usr/$(TARGET_ARCH)-linux-uclibc/" +DEVEL_PREFIX="/usr/$(TARGET_ARCH)-linux-uclibc/usr/" + +# +# uClibc security related options +# +# UCLIBC_SECURITY is not set + +# +# uClibc development/debugging options +# +CROSS_COMPILER_PREFIX="vax-linux-uclibc-" +# DODEBUG is not set +# DOASSERTS is not set +WARNINGS="-Wall" +# UCLIBC_MJN3_ONLY is not set |
From: Jan-Benedict G. <jb...@us...> - 2005-09-23 15:30:59
|
Update of /cvsroot/linux-vax/toolchain/patches In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10042 Modified Files: uclibc-000000-base.patch Log Message: - Rename used toolchain (prefix) from vax-linux- to vax-linux-uclibc- . Index: uclibc-000000-base.patch =================================================================== RCS file: /cvsroot/linux-vax/toolchain/patches/uclibc-000000-base.patch,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- uclibc-000000-base.patch 23 Sep 2005 08:54:23 -0000 1.1 +++ uclibc-000000-base.patch 23 Sep 2005 15:30:49 -0000 1.2 @@ -54,8 +54,8 @@ + string + +config CROSS -+ string -+ default "vax-linux-" ++ string ++ default "vax-linux-uclibc-" + diff -Nurp -x entries uClibc/include/sys/procfs.h uClibc-hacked-vax/include/sys/procfs.h --- uClibc/include/sys/procfs.h 1970-01-01 01:00:00.000000000 +0100 |
From: Jan-Benedict G. <jb...@us...> - 2005-09-23 15:20:42
|
Update of /cvsroot/linux-vax/toolchain/patches In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8618 Modified Files: binutils-000002-add_vax-uclinux.patch Log Message: - Rename uClibc target. Index: binutils-000002-add_vax-uclinux.patch =================================================================== RCS file: /cvsroot/linux-vax/toolchain/patches/binutils-000002-add_vax-uclinux.patch,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- binutils-000002-add_vax-uclinux.patch 23 Sep 2005 08:54:22 -0000 1.1 +++ binutils-000002-add_vax-uclinux.patch 23 Sep 2005 15:20:17 -0000 1.2 @@ -5,7 +5,7 @@ targ_defvec=bfd_elf32_vax_vec ;; -+ vax-*-uclinux) ++ vax-*-linux-uclibc*) + targ_defvec=bfd_elf32_vax_vec + ;; + @@ -28,7 +28,7 @@ COREFILE=trad-core.lo TRAD_HEADER='"hosts/vaxlinux.h"' ;; -+ vax-*-uclinux*) ++ vax-*-linux-uclibc*) + COREFILE=trad-core.lo + TRAD_HEADER='"hosts/vaxlinux.h"' + ;; |
From: Jan-Benedict G. <jb...@us...> - 2005-09-23 15:12:48
|
Update of /cvsroot/linux-vax/toolchain/patches In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7959 Modified Files: gcc-000003-add-vax-linux-target.patch Log Message: - Rename uClibc target. - Impact: unknown. (Hopefully not servere...) Index: gcc-000003-add-vax-linux-target.patch =================================================================== RCS file: /cvsroot/linux-vax/toolchain/patches/gcc-000003-add-vax-linux-target.patch,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 --- gcc-000003-add-vax-linux-target.patch 23 Sep 2005 08:57:43 -0000 1.7 +++ gcc-000003-add-vax-linux-target.patch 23 Sep 2005 15:12:40 -0000 1.8 @@ -75,7 +75,7 @@ tmake_file=vax/t-memfuncs use_fixproto=yes ;; -+vax-*-uclinux*) # VAXen running Linux ELF with uClibc ++vax-*-linux-uclibc*) # VAXen running Linux ELF with uClibc + tm_file="${tm_file} elfos.h linux.h vax/elf.h vax/uclinux.h" + ;; +vax-*-linux*) # VAXen running Linux ELF with GNU libc |
From: Jan-Benedict G. <jb...@us...> - 2005-09-23 14:05:56
|
Update of /cvsroot/linux-vax/toolchain/scripts In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24006 Modified Files: generate_and_apply_upstream_patches.sh generate_upstream_patches.sh prepare_toolchain_hacking.sh update_upstream_cvs_sandboxes.sh Log Message: - Allow to work with then new Linux source base. Index: prepare_toolchain_hacking.sh =================================================================== RCS file: /cvsroot/linux-vax/toolchain/scripts/prepare_toolchain_hacking.sh,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- prepare_toolchain_hacking.sh 5 Jun 2005 16:15:58 -0000 1.2 +++ prepare_toolchain_hacking.sh 23 Sep 2005 14:05:40 -0000 1.3 @@ -44,6 +44,11 @@ DEST_BASE="`pwd`/src-ports" COMPONENT=ports ;; + linux*) + SRC_DIR="${UPSTREAM_SANDBOXES_PATH}/linux/linux-upstream-HEAD" + DEST_BASE="`pwd`/src-linux" + COMPONENT=linux + ;; uclibc*|uClibc*) SRC_DIR="${UPSTREAM_SANDBOXES_PATH}/uclibc/uclibc-upstream-HEAD" DEST_BASE="`pwd`/src-uclibc" Index: generate_and_apply_upstream_patches.sh =================================================================== RCS file: /cvsroot/linux-vax/toolchain/scripts/generate_and_apply_upstream_patches.sh,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- generate_and_apply_upstream_patches.sh 5 Jun 2005 16:13:23 -0000 1.4 +++ generate_and_apply_upstream_patches.sh 23 Sep 2005 14:05:40 -0000 1.5 @@ -16,6 +16,8 @@ for COMPONENT in binutils/binutils-upstream-HEAD \ glibc/libc-upstream-HEAD \ glibc/ports-upstream-HEAD \ + linux/linux-upstream-HEAD \ + uclibc/uclibc-upstream-HEAD \ gcc/gcc-upstream-HEAD; do pushd "${UPSTREAM_SANDBOXES_PATH}/`dirname "${COMPONENT}"`" diff -Nurp "`basename "${COMPONENT}"`-last" \ Index: update_upstream_cvs_sandboxes.sh =================================================================== RCS file: /cvsroot/linux-vax/toolchain/scripts/update_upstream_cvs_sandboxes.sh,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- update_upstream_cvs_sandboxes.sh 3 Aug 2005 20:15:36 -0000 1.3 +++ update_upstream_cvs_sandboxes.sh 23 Sep 2005 14:05:40 -0000 1.4 @@ -7,9 +7,13 @@ exit 1 fi +# +# CVS managed archives +# for COMPONENT in binutils/binutils-upstream-HEAD \ glibc/libc-upstream-HEAD \ glibc/ports-upstream-HEAD \ + linux/linux-upstream-HEAD \ gcc/gcc-upstream-HEAD; do pushd "${UPSTREAM_SANDBOXES_PATH}/${COMPONENT}" if ! cvs -z9 update -d -P; then @@ -19,6 +23,9 @@ popd done +# +# SVN managed archives +# for COMPONENT in uclibc/uclibc-upstream-HEAD; do pushd "${UPSTREAM_SANDBOXES_PATH}/${COMPONENT}" if ! svn update; then Index: generate_upstream_patches.sh =================================================================== RCS file: /cvsroot/linux-vax/toolchain/scripts/generate_upstream_patches.sh,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- generate_upstream_patches.sh 5 Jun 2005 16:13:23 -0000 1.5 +++ generate_upstream_patches.sh 23 Sep 2005 14:05:40 -0000 1.6 @@ -17,6 +17,7 @@ glibc/libc-upstream-HEAD \ glibc/ports-upstream-HEAD \ gcc/gcc-upstream-HEAD \ + linux/linux-upstream-HEAD \ uclibc/uclibc-upstream-HEAD; do pushd "${UPSTREAM_SANDBOXES_PATH}/`dirname "${COMPONENT}"`" diff -Nurp "`basename "${COMPONENT}"`-last" \ |
From: Jan-Benedict G. <jb...@us...> - 2005-09-23 13:57:53
|
Update of /cvsroot/linux-vax/toolchain/scripts In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22104 Modified Files: initial_cvs_checkout.sh Log Message: - For building uClibc, we'll need kernel sources (specifically kernel headers. Index: initial_cvs_checkout.sh =================================================================== RCS file: /cvsroot/linux-vax/toolchain/scripts/initial_cvs_checkout.sh,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- initial_cvs_checkout.sh 5 Jun 2005 16:05:00 -0000 1.3 +++ initial_cvs_checkout.sh 23 Sep 2005 13:57:41 -0000 1.4 @@ -14,6 +14,7 @@ mkdir gcc mkdir glibc mkdir uclibc + mkdir linux pushd binutils echo "If you're asked for a password right now, please answer with \"anoncvs\"" @@ -47,6 +48,16 @@ copy_directory.sh ports-upstream-HEAD ports-upstream-HEAD-last popd + pushd linux + echo "If you're asked for a password right now, please just press Enter." + cvs -d :pserver:ano...@cv...:/cvsroot/linux-vax login + + cvs -z9 -d :pserver:ano...@cv...:/cvsroot/linux-vax co kernel-2.5 + mv kernel-2.5 linux-upstream-HEAD + mkdir linux-upstream-HEAD-last + copy_directory.sh linux-upstream-HEAD linux-upstream-HEAD-last + popd + pushd uclibc svn co svn://uclibc.org/trunk/uClibc uclibc-upstream-HEAD mkdir uclibc-upstream-HEAD-last |