diff options
-rw-r--r-- | extra/Configs/Config.in | 79 | ||||
-rw-r--r-- | extra/Configs/Config.in.arch | 4 | ||||
-rw-r--r-- | extra/Configs/Config.mips | 3 | ||||
-rw-r--r-- | extra/Makefile | 23 | ||||
-rw-r--r-- | extra/config/Makefile | 19 | ||||
-rw-r--r-- | extra/locale/Makefile | 15 | ||||
-rwxr-xr-x | extra/scripts/fix_includes.sh | 16 | ||||
-rwxr-xr-x | extra/scripts/gen_bits_syscall_h.sh | 16 | ||||
-rwxr-xr-x | extra/scripts/getent | 6 |
9 files changed, 88 insertions, 93 deletions
diff --git a/extra/Configs/Config.in b/extra/Configs/Config.in index b9db40966..ed265cfc0 100644 --- a/extra/Configs/Config.in +++ b/extra/Configs/Config.in @@ -2,6 +2,7 @@ # For a description of the syntax of this configuration file, # see extra/config/Kconfig-language.txt # + mainmenu "uClibc C Library Configuration" choice @@ -17,40 +18,43 @@ config TARGET_arm bool "arm" config TARGET_bfin - bool "bfin" + bool "bfin (BROKEN)" config TARGET_cris - bool "cris" + bool "cris (BROKEN)" config TARGET_e1 - bool "e1" + bool "e1 (BROKEN)" config TARGET_frv - bool "frv" + bool "frv (BROKEN)" config TARGET_h8300 - bool "h8300" + bool "h8300 (BROKEN)" + +config TARGET_hppa + bool "hppa" config TARGET_i386 bool "i386" config TARGET_i960 - bool "i960" + bool "i960 (BROKEN)" config TARGET_m68k bool "m68k" config TARGET_microblaze - bool "microblaze" + bool "microblaze (BROKEN)" config TARGET_mips bool "mips" config TARGET_nios - bool "nios" + bool "nios (BROKEN)" config TARGET_nios2 - bool "nios2" + bool "nios2 (BROKEN)" config TARGET_powerpc bool "powerpc" @@ -65,7 +69,7 @@ config TARGET_sparc bool "sparc" config TARGET_v850 - bool "v850" + bool "v850 (BROKEN)" config TARGET_x86_64 bool "x86_64" @@ -103,6 +107,10 @@ if TARGET_h8300 source "extra/Configs/Config.h8300" endif +if TARGET_hppa +source "extra/Configs/Config.hppa" +endif + if TARGET_i386 source "extra/Configs/Config.i386" endif @@ -167,18 +175,22 @@ config HAVE_NO_PIC default n config DOPIC - bool "Generate Position Independent Code (PIC)" + bool "Generate only Position Independent Code (PIC)" default y depends !HAVE_NO_PIC help - If you wish to build uClibc with support for shared libraries then - answer Y here. If you only want to build uClibc as a static library, - then answer N. + If you wish to build all of uClibc as PIC objects, then answer Y here. + If you are unsure, then you should answer N. config HAVE_NO_SHARED bool default n +config ARCH_HAS_NO_LDSO + bool + select HAVE_NO_SHARED + default n + config HAVE_SHARED bool "Enable support for shared libraries" depends on !HAVE_NO_SHARED @@ -188,11 +200,6 @@ config HAVE_SHARED answer Y here. If you only want to build uClibc as a static library, then answer N. -config ARCH_HAS_NO_LDSO - bool - select HAVE_NO_SHARED - default n - config FORCE_SHAREABLE_TEXT_SEGMENTS bool "Only load shared libraries which can share their text segment" depends on HAVE_SHARED @@ -340,6 +347,20 @@ config PTHREADS_DEBUG_SUPPORT If you are doing development and want to debug applications using uClibc's pthread library, answer Y. Otherwise, answer N. +config LINUXTHREADS_OLD + bool "Use the older (stable) version of linuxthreads" + default y + depends on UCLIBC_HAS_THREADS && !UCLIBC_HAS_THREADS_NATIVE + help + There are two versions of linuxthreads. The older (stable) version + has been in uClibc for quite a long time but hasn't seen too many + updates other than bugfixes. + + The new version has not been tested much, and lacks ports for arches + which glibc does not support (like bfin/frv/etc...), but is based on + the latest code from glibc, so it may be the only choice for the + newer ports (like alpha/amd64/64bit arches and hppa). + config UCLIBC_HAS_LFS bool "Large File Support" default y @@ -764,8 +785,8 @@ config UCLIBC_HAS_GLIBC_CUSTOM_PRINTF NOTE: This implementation limits the number or registered specifiers to 10. NOTE: This implementation requires new conversion specifiers to be ASCII - characters (0-0x7f). This is to avoid problems with processing - format strings in locales with different multibyte conversions. + characters (0-0x7f). This is to avoid problems with processing + format strings in locales with different multibyte conversions. Most people will answer N. @@ -1146,15 +1167,10 @@ config DEVEL_PREFIX endmenu -menu "uClibc security related options" - -config UCLIBC_SECURITY - bool "Enable security options" - default n +menu "Security options" config UCLIBC_BUILD_PIE bool "Build utilities as ET_DYN/PIE executables" - depends on UCLIBC_SECURITY depends on HAVE_SHARED depends on TARGET_arm || TARGET_frv || TARGET_i386 || TARGET_mips || TARGET_powerpc select FORCE_SHAREABLE_TEXT_SEGMENTS @@ -1167,9 +1183,13 @@ config UCLIBC_BUILD_PIE libraries have to be built with -fPIC or -fpic, and all assembler functions must be written as position independent code (PIC). +config HAVE_NO_SSP + bool + default n + config UCLIBC_HAS_SSP bool "Support for propolice smashing stack protector" - depends on UCLIBC_SECURITY + depends on !HAVE_NO_SSP default n help Add propolice smashing stack protector to the library. @@ -1224,7 +1244,6 @@ config UCLIBC_BUILD_SSP config UCLIBC_BUILD_RELRO bool "Build uClibc with RELRO" - depends on UCLIBC_SECURITY depends on HAVE_SHARED default y help @@ -1232,7 +1251,6 @@ config UCLIBC_BUILD_RELRO config UCLIBC_BUILD_NOW bool "Build uClibc with NOW" - depends on UCLIBC_SECURITY depends on HAVE_SHARED default y help @@ -1240,7 +1258,6 @@ config UCLIBC_BUILD_NOW config UCLIBC_BUILD_NOEXECSTACK bool "Build uClibc with noexecstack marking" - depends on UCLIBC_SECURITY default y help Mark all assembler files as noexecstack. This will result in marking diff --git a/extra/Configs/Config.in.arch b/extra/Configs/Config.in.arch index cd652cc89..e5d59e35a 100644 --- a/extra/Configs/Config.in.arch +++ b/extra/Configs/Config.in.arch @@ -20,7 +20,8 @@ config ARCH_BIG_ENDIAN endchoice config ARCH_HAS_NO_MMU - bool + bool "Target CPU does not have a memory management unit (MMU)" + select ARCH_HAS_NO_LDSO if !TARGET_frv default n config ARCH_HAS_MMU @@ -110,4 +111,3 @@ config C_SYMBOL_PREFIX config HAVE_DOT_CONFIG bool default y - diff --git a/extra/Configs/Config.mips b/extra/Configs/Config.mips index 02382976b..bca298a69 100644 --- a/extra/Configs/Config.mips +++ b/extra/Configs/Config.mips @@ -14,9 +14,6 @@ config ARCH_CFLAGS string default "-mno-split-addresses" -config ARCH_LDFLAGS - string - config LIBGCC_CFLAGS string diff --git a/extra/Makefile b/extra/Makefile index 5fabeb9ed..c0b8d3bdb 100644 --- a/extra/Makefile +++ b/extra/Makefile @@ -1,28 +1,13 @@ # Makefile for uClibc # # Copyright (C) 2000 by Lineo, inc. -# Copyright (C) 2000,2001 Erik Andersen <andersen@uclibc.org> +# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org> # -# This program is free software; you can redistribute it and/or modify it under -# the terms of the GNU Library General Public License as published by the Free -# Software Foundation; either version 2 of the License, or (at your option) any -# later version. +# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. # -# This program 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 Library General Public License for more -# details. -# -# You should have received a copy of the GNU Library General Public License -# along with this program; if not, write to the Free Software Foundation, Inc., -# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# Derived in part from the Linux-8086 C library, the GNU C Library, and several -# other sundry sources. Files within this library are copyright by their -# respective copyright holders. -TOPDIR=../ -include $(TOPDIR)Rules.mak +top_builddir=../ +include $(top_builddir)Rules.mak DIRS = EXTRA_DIRS_TO_CLEAN = config diff --git a/extra/config/Makefile b/extra/config/Makefile index 65345d131..e2e637aa8 100644 --- a/extra/config/Makefile +++ b/extra/config/Makefile @@ -1,23 +1,12 @@ # Makefile for uClibc # -# Copyright (C) 2002 Erik Andersen <andersen@codepoet.org> +# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org> # -# This program is free software; you can redistribute it and/or modify it under -# the terms of the GNU Library General Public License as published by the Free -# Software Foundation; either version 2 of the License, or (at your option) any -# later version. +# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. # -# This program 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 Library General Public License for more -# details. -# -# You should have received a copy of the GNU Library General Public License -# along with this program; if not, write to the Free Software Foundation, Inc., -# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -TOPDIR=../../ -include $(TOPDIR)Rules.mak +top_builddir=../../ +include $(top_builddir)Rules.mak all: ncurses conf mconf diff --git a/extra/locale/Makefile b/extra/locale/Makefile index 8fe252875..031b8666f 100644 --- a/extra/locale/Makefile +++ b/extra/locale/Makefile @@ -1,11 +1,18 @@ +# Makefile for uClibc +# +# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org> +# +# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. +# -TOPDIR = ../../ -EXTRA_LOCALE_DIR:=${shell cd $(TOPDIR)/extra/locale && pwd} -include $(TOPDIR)Rules.mak +top_builddir=../../ +include $(top_builddir)Rules.mak + +EXTRA_LOCALE_DIR:=${shell cd $(top_builddir)extra/locale && pwd} CFLAGS_wc8bit=-DCTYPE_PACKED=1 CFLAGS_mmap= -ifeq ($(strip $(UCLIBC_HAS_WCHAR)),y) +ifeq ($(UCLIBC_HAS_WCHAR),y) CFLAGS_wc8bit += -DDO_WIDE_CHAR=1 CFLAGS_mmap += -D__WCHAR_ENABLED=1 endif diff --git a/extra/scripts/fix_includes.sh b/extra/scripts/fix_includes.sh index 910242fa5..34058a966 100755 --- a/extra/scripts/fix_includes.sh +++ b/extra/scripts/fix_includes.sh @@ -1,21 +1,9 @@ #!/bin/sh -# Copyright (C) 2003 Erik Andersen <andersen@uclibc.org> # -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU Library General Public -# License as published by the Free Software Foundation; either -# version 2 of the License, or (at your option) any later -# version. +# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org> # -# This program 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 Library General Public License for more details. +# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. # -# You should have received a copy of the GNU Library General -# Public License along with this program; if not, write to the -# Free Software Foundation, Inc., 59 Temple Place, Suite 330, -# Boston, MA 02111-1307 USA usage () { echo "" diff --git a/extra/scripts/gen_bits_syscall_h.sh b/extra/scripts/gen_bits_syscall_h.sh index e60b75ab7..78c54a935 100755 --- a/extra/scripts/gen_bits_syscall_h.sh +++ b/extra/scripts/gen_bits_syscall_h.sh @@ -1,15 +1,21 @@ #!/bin/sh # +# Copyright (C) 2001 Manuel Novoa III <mjn3@uclibc.org> +# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org> +# +# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. +# + # June 27, 2001 Manuel Novoa III # -# This script expects TOPDIR and CC (as used in the Makefiles) to be set in -# the environment, and outputs the appropriate $TOPDIR/include/bits/sysnum.h -# corresponding to $TOPDIR/include/asm/unistd.h to stdout. +# This script expects top_builddir and CC (as used in the Makefiles) to be set in +# the environment, and outputs the appropriate $top_builddir/include/bits/sysnum.h +# corresponding to $top_builddir/include/asm/unistd.h to stdout. # # Warning!!! This does _no_ error checking!!! -UNISTD_H_PATH=$TOPDIR/include/asm/unistd.h -INCLUDE_OPTS="-I$TOPDIR/include" +UNISTD_H_PATH=$top_builddir/include/asm/unistd.h +INCLUDE_OPTS="-I$top_builddir/include" ( echo "#include \"$UNISTD_H_PATH\"" ; $CC -E -dN $INCLUDE_OPTS $UNISTD_H_PATH | # needed to strip out any kernel-internal defines diff --git a/extra/scripts/getent b/extra/scripts/getent index 3a96d74f6..9ffffa171 100755 --- a/extra/scripts/getent +++ b/extra/scripts/getent @@ -1,4 +1,10 @@ #!/bin/sh +# +# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org> +# +# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. +# + # Script to replicate the `getent` binary that comes with glibc search_entry() { |