Browse Source

update all the Config files for the various arches so they work with the new
config system. Hopefully I got everything here correct...
-Erik

Eric Andersen 22 years ago
parent
commit
c0a95906eb

+ 22 - 178
extra/Configs/Config.alpha

@@ -1,192 +1,36 @@
-# Library Configuration rules for uClibc
 #
 #
-# This file contains rules which are shared between multiple Makefiles.  All
-# normal configuration options live in the file named "Config".  You probably
-# should not mess with this file unless you know what you are doing...  
-# 
-# Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000,2001 Erik Andersen <andersee@debian.org>
+# For a description of the syntax of this configuration file,
+# see Documentation/kbuild/config-language.txt.
 #
 #
-# 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.
-#
-# 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.
-
-NATIVE_CC = gcc
-
-# If you are running a cross compiler, you may want to set this
-# to something more interesting...  Target architecture is determined
-# by asking this compiler what arch it compiles stuff for.
-CROSS = #$(TARGET_ARCH)-linux-
-CC = $(CROSS)gcc
-AR = $(CROSS)ar
-LD = $(CROSS)ld
-NM = $(CROSS)nm
-STRIPTOOL = $(CROSS)strip
-#STRIPTOOL = /bin/true
-
-# Set the following to `true' to make a debuggable build, and `false' for
-# production builds.
-DODEBUG = false
-
-# Compiler warnings you want to see 
-WARNINGS=-Wall
 
 
-# Note that the kernel source you use to compile with should be the same as the
-# Linux kernel you run your apps on.  uClibc doesn't even try to achieve binary
-# compatibility across kernel versions.  So don't expect, for example, uClibc
-# compiled with Linux kernel 2.0.x to implement lchown properly, since 2.0.x
-# can't do that. Similarly, if you compile uClibc vs Linux 2.4.x kernel headers,
-# but then run on Linux 2.0.x, lchown will be compiled into uClibc, but won't
-# work at all.  You have been warned.
-KERNEL_SOURCE=/home/andersee/kernel-source-2.4.18
+mainmenu "uClibc C Library Configuration"
 
 
-# Set this to `false' if your CPU doesn't have a memory management unit (MMU).
-# Set it to `true' otherwise.
-HAS_MMU = true
+menu "Target Architecture Features and Options"
 
 
-# Set this to `false' if you don't have/need basic floating point support
-# support in libc (strtod, printf, scanf).  Set it to `true' otherwise.
-# If this is not true, then libm will not be built.
-HAS_FLOATING_POINT = true
+config HAVE_ELF
+	bool
+	default y
 
 
-# Set to `true' if you want the math library to contain the full set
-# of C99 math library features.  Costs an extra 35k or so on x86. 
-DO_C99_MATH = true
-
-# Set this to 'false if you don't need shadow password support.
-HAS_SHADOW = true
-
-# Set this to `false' if you don't have/need locale support; `true' otherwise.
-# NOTE: Currently does not affect collation.
-# You must also generate the locale data and associated .h file.
-# See the README in directory extra/locale for details.
-HAS_LOCALE = false
-
-# Set this to `false' if you don't have/need wide char support.
-HAS_WCHAR = false
-
-# This specifies which malloc implementation is used.
-#
-# "malloc" use mmap for all allocations and so works very well on MMU-less
-# systems that do not support the brk() system call.   It is pretty smart 
-# about reusing already allocated memory, and minimizing memory wastage.
-#
-# "malloc-930716" is derived from libc-5.3.12 and uses the brk() system call
-# for all memory allocations.  This makes it very fast.  It is also pretty
-# smart about reusing already allocated memory, and minimizing memory wastage.
-# Because this uses brk() it will not work on uClinux MMU-less systems.
-#MALLOC = malloc 
-MALLOC = malloc-930716
+config C_SYMBOL_PREFIX
+	string
+	default ""
 
 
-# If you want large file support (greater then 2 GiB) turn this on.
-# Do not enable this unless your kernel provides large file support.
-DOLFS = true
+config ARCH_CFLAGS
+	string
+	default ""
 
 
-# Posix regular expression code is really big -- 27k all by itself.
-# If you don't use regular expressions, turn this off and save space.
-# Of course, if you only staticly link, leave this on, since it will
-# only be included in your apps if you use regular expressions. 
-INCLUDE_REGEX=true
+config ARCH_LDFLAGS
+	string
+	default ""
 
 
-# If you want to include RPC support, enable this.  RPC is almost never used 
-# for anything except NFS support, so unless you plan to use NFS, leave this
-# disabled.  This is off by default.
-INCLUDE_RPC = false
-
-# Normally we enable just enough RPC support for things like rshd and 
-# nfs mount to work.  If you find you need the rest of the RPC stuff, 
-# then enable this.
-INCLUDE_FULL_RPC = false
-
-# If you want to include support for the next version of the Internet
-# Protocol: IP version 6, enable this.  This is off by default.
-INCLUDE_IPV6 = false
-
-# If you want to include threads support, enable this.  The C library will
-# be compiled thread-safe, and the libpthread library will be built.
-INCLUDE_THREADS=false
-
-# If you want to support only Unix 98 PTYs enable this.  Some older
-# applications may need this disabled.  For most current programs, 
-# you can generally leave this true.
-UNIX98PTY_ONLY = true
-
-# Enable this if /dev/pts is on a devpts or devfs file system.  Both
-# these filesystems automatically manage permissions on the /dev/pts 
-# devices.  You may need to mount this fs on /dev/pts for this to work. 
-# This is true by default.
-ASSUME_DEVPTS = true
-
-
-# If you want to compile the library as PIC code, turn this on.
-# This is automagically enabled when HAVE_SHARED is true
-DOPIC = false
-
-# Enable support for shared libraries?  If this is false, you can
-# ignore all the rest of the options in this file...
-HAVE_SHARED = false
-
-# uClibc has a native shared library loader for some architectures.
-BUILD_UCLIBC_LDSO=false
-
-# If you are using shared libraries, but do not want/have a native
-# uClibc shared library loader, please specify the name of your
-# system's shared library loader here...
-#SYSTEM_LDSO=/lib/ld-linux.so.2
-SYSTEM_LDSO=$(shell for each in `$(CC) -print-search-dirs| \
-    grep ^libraries| sed -e 's/^libraries: //' -e 's/:/ /g'`;\
-    do ls $$each/ld.so.* 2>/dev/null;done)
-
-# When using shared libraries, this path is the location where the
-# shared library will be invoked.  This value will be compiled into
-# every binary compiled with uClibc.  
-#
-# BIG FAT WARNING:  
-# If you do not have a shared library loader with the correct name
-# sitting in the directory this points to, your binaries will not run.
-SHARED_LIB_LOADER_PATH=$(DEVEL_PREFIX)/lib
+config LIBGCC_CFLAGS
+	string
+	default ""
 
 
-# DEVEL_PREFIX is the directory into which the uClibc development
-# environment will be installed.   The result will look something 
-# like the following:
-#   DEVEL_PREFIX/
-#	lib/            <contains all runtime and static libs>
-#	include/        <Where all the header files go>
-# This value is used by the 'make install' Makefile target.  Since this
-# directory is compiled into the uclibc cross compiler spoofer, you
-# have to recompile if you change this value...
-DEVEL_PREFIX = /usr/$(TARGET_ARCH)-linux-uclibc
+source "extra/Configs/Config.in.arch"
 
 
-# SYSTEM_DEVEL_PREFIX is the directory prefix used when installing
-# bin/arch-uclibc-gcc, bin/arch-uclibc-ld, etc.   This is only used by
-# the 'make install' target, and is not compiled into anything.  This
-# defaults to $DEVEL_PREFIX/usr, but makers of .rpms and .debs will
-# want to set this to "/usr" instead.
-SYSTEM_DEVEL_PREFIX = $(DEVEL_PREFIX)
+endmenu
 
 
-# DEVEL_TOOL_PREFIX is the directory prefix used when installing
-# bin/gcc, bin/ld, etc.   This is only used by the 'make install'
-# target, and is not compiled into anything.  This defaults to
-# $DEVEL_PREFIX/usr, but makers of .rpms and .debs may want to
-# set this to something else.
-DEVEL_TOOL_PREFIX = $(DEVEL_PREFIX)/usr
+source "extra/Configs/Config.in"
 
 
-# If you want 'make install' to install everything under a temporary
-# directory, the define PREFIX during the install step,
-# i.e., 'make PREFIX=/var/tmp/uClibc install'.
-#PREFIX = $(TOPDIR)/_install
 
 

+ 24 - 0
extra/Configs/Config.arm

@@ -7,6 +7,26 @@ mainmenu "uClibc C Library Configuration"
 
 
 menu "Target Architecture Features and Options"
 menu "Target Architecture Features and Options"
 
 
+config HAVE_ELF
+	bool
+	default y
+
+config C_SYMBOL_PREFIX
+	string
+	default ""
+
+config ARCH_CFLAGS
+	string
+	default ""
+
+config ARCH_LDFLAGS
+	string
+	default ""
+
+config LIBGCC_CFLAGS
+	string
+	default ""
+
 choice
 choice
 	prompt "Target Processor Type"
 	prompt "Target Processor Type"
 	default CONFIG_GENERIC_ARM
 	default CONFIG_GENERIC_ARM
@@ -42,6 +62,10 @@ config CONFIG_XSCALE
 
 
 endchoice
 endchoice
 
 
+config ARCH_HAS_NO_MMU
+	bool
+	default y if CONFIG_ARM7TDMI
+
 config CPU_CFLAGS
 config CPU_CFLAGS
 	string
 	string
 	default "" if CONFIG_GENERIC_ARM
 	default "" if CONFIG_GENERIC_ARM

+ 22 - 202
extra/Configs/Config.cris

@@ -1,216 +1,36 @@
-# Library Configuration rules for uClibc for CRIS (Axis Etrax CPU)
 #
 #
-# This file contains rules which are shared between multiple Makefiles.  Feel
-# free to adjust to taste...  
-#  -Erik Andersen <andersen@lineo.com> <andersee@debian.org>
-# 
-# Copyright (C) 2000 by Lineo, inc.
-#           (C) 2002 by Axis Communications AB
+# For a description of the syntax of this configuration file,
+# see Documentation/kbuild/config-language.txt.
 #
 #
-# 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.
-#
-# 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.
-
-# Target architecture
-TARGET_ARCH = cris
-
-# Target specific things to add to CFLAGS
-ARCH_CFLAGS  = -fpic -mlinux -D__USE_WEAK_ALIASES
-
-# Target specific things to add to LDFLAGS
-ARCH_LDFLAGS = -mcrislinux
-
-# Target specific optins needed when asking $(CROSS)gcc about libgcc.a
-LIBGCC_CFLAGS = -mlinux
-
-# If you are running a cross compiler, you may want to set this
-# to something more interesting...
-NATIVE_CC = gcc
-CROSS = cris-
-CC = $(CROSS)gcc
-AR = $(CROSS)ar
-LD = $(CROSS)ld
-STRIPTOOL = $(CROSS)strip
-# STRIPTOOL = /bin/true
-
-# Compiler warnings you want to see 
-WARNINGS=-Wall
-
-# Note that the kernel source you use to compile with should be the same as the
-# Linux kernel you run your apps on.  uClibc doesn't even try to achieve binary
-# compatibility across kernel versions.  So don't expect, for example, uClibc
-# compiled with Linux kernel 2.0.x to implement lchown properly, since 2.0.x
-# can't do that. Similarly, if you compile uClibc vs Linux 2.4.x kernel headers,
-# but then run on Linux 2.0.x, lchown will be compiled into uClibc, but won't
-# work at all.  You have been warned.
-KERNEL_SOURCE=$(AXIS_KERNEL_DIR)
-
-# Disable this if your CPU has a memory management unit (MMU)
-HAS_MMU = true
-
-# Set this to 'false' if basic floating support isn't needed in
-# libc (strtod, printf, scanf). It this isn't true, libm will no
-# be built
-HAS_FLOATING_POINT = true
-
-# Set to 'true' if the math library should contain the full C99 math
-# functions. This adds a few K's..
-DO_C99_MATH = false
-
-# Set this to `false' if you don't have/need doubles.  This primarily
-# effects libm, which gets quite a bit larger, but also effects several
-# other places.  Set it to `true' otherwise.
-HAS_DOUBLE = false
-
-# Set this to `false' if you don't have/need long doubles.  This primarily
-# effects libm, which gets quite a bit larger.  Set it to `true' otherwise.
-HAS_LONG_DOUBLE = false
 
 
-# Set this to 'false if you don't need shadow password support.
-HAS_SHADOW = false
+mainmenu "uClibc C Library Configuration"
 
 
-# Set this to `false' if you don't have/need locale support; `true' otherwise.
-# Note: Currently only affects the ctype functions.  You must also generate
-# a locale file for anything but the C locale.  See directory extra/locale for
-# a utility to do so.  Also see the following option.
-HAS_LOCALE = false
+menu "Target Architecture Features and Options"
 
 
-# Set this to the path of your uClibc locale file directory.
-# Warning!  This must be different than the glibc locale directory to avoid
-# name conflicts, as the locale files are entirely different in format!
-LOCALE_DIR = "/usr/share/uClibc-locale/"
+config HAVE_ELF
+	bool
+	default y
 
 
-# Set the following to `true' to make a debuggable build.
-# Do not enable this for production builds...
-DODEBUG = false
+config C_SYMBOL_PREFIX
+	string
+	default ""
 
 
-# This specifies which malloc implementation is used.
-# "malloc-simple" is very, very small, but is also very, very dumb 
-# and does not try to make good use of memory or clean up after itself.
-#
-# "malloc" on the other hand is a bit bigger, but is pretty smart thereby
-# minimizing memory wastage and reusing already allocated memory.  This 
-# can be lots faster and safer IMHO.
-#
-# "malloc-930716" is from libc-5.3.12 and was/is the standard gnu malloc.
-# It is actually smaller than "malloc", at least on i386.  Right now, it
-# only works on i386 (and maybe m68k) because it needs sbrk.
-#MALLOC = malloc-simple
-#MALLOC = malloc 
-MALLOC = malloc-930716
-
-# If you want to collect common syscall code into one function, set to
-# true.  On i386 this saves about than 2.8k over all syscalls.
-# The idea came from the implementation in dietlibc.
-# At present, only affects i386.
-UNIFIED_SYSCALL = false
-
-# If you want large file summit support (greater then 2 Gib), 
-# turn this on.  This has no effect unless your kernel supports 
-# lfs.  This currently does nothing, but may someday...
-DOLFS = false
-
-# Posix regular expression code is really big -- 27k all by itself.
-# If you don't use regular expressions, turn this off and save space.
-# Of course, if you only staticly link, leave this on, since it will
-# only be included in your apps if you use regular expressions. 
-INCLUDE_REGEX = true
-
-# If you want to include RPC support, enable this.  RPC is almost never used 
-# for anything except NFS support, so unless you plan to use NFS, leave this
-# disabled.  This is off by default.
-INCLUDE_RPC = true
-
-# If you want to include threads support, enable this.  The C library will
-# be compiled thread-safe, and the libpthread library will be built.
-INCLUDE_THREADS = true
-
-# If you want to include support for the next version of the Internet
-# Protocol: IP version 6, enable this.  This is off by default.
-INCLUDE_IPV6 = false
+config ARCH_CFLAGS
+	string
+	default "-fpic -mlinux -D__USE_WEAK_ALIASES"
 
 
-# If you want to support only Unix 98 PTYs enable this.  Some older
-# applications may need this disabled.  For most current programs, 
-# you can generally leave this true.
-UNIX98PTY_ONLY = true
+config ARCH_LDFLAGS
+	string
+	default "-mcrislinux"
 
 
-# Enable this if /dev/pts is on a devpts or devfs file system.  Both
-# these filesystems automatically manage permissions on the /dev/pts 
-# devices.  You may need to mount this fs on /dev/pts for this to work. 
-# This is true by default.
-ASSUME_DEVPTS = true
+config LIBGCC_CFLAGS
+	string
+	default "-mlinux"
 
 
-# If you want to compile the library as PIC code, turn this on.
-# This is automagically enabled when HAVE_SHARED is true
-DOPIC = false
+source "extra/Configs/Config.in.arch"
 
 
-# Enable support for shared libraries?  If this is false, you can
-# ignore all the rest of the options in this file...
-HAVE_SHARED = true
+endmenu
 
 
-# uClibc has a native shared library loader for some architectures.
-BUILD_UCLIBC_LDSO=true
+source "extra/Configs/Config.in"
 
 
-# If you are using shared libraries, but do not want/have a native
-# uClibc shared library loader, please specify the name of your
-# system's shared library loader here...
-#
-#SYSTEM_LDSO=/lib/ld.so.1
-
-# When using shared libraries, this path is the location where the
-# shared library will be invoked.  This value will be compiled into
-# every binary compiled with uClibc.  
-#
-# BIG FAT WARNING:  
-# If you do not have a shared library loader with the correct name
-# sitting in the directory this points to, your binaries will not run.
-SHARED_LIB_LOADER_PATH=$(DEVEL_PREFIX)/lib
-
-# DEVEL_PREFIX is the directory into which the uClibc development
-# environment will be installed.   The result will look something 
-# like the following:
-#   DEVEL_PREFIX/
-#	bin/            <contains gcc, ld, etc>
-#	lib/            <contains all runtime and static libs>
-#	include/        <Where all the header files go>
-# This value is used by the 'make install' Makefile target.  Since this
-# directory is compiled into the uclibc cross compiler spoofer, you
-# have to recompile if you change this value...
-#DEVEL_PREFIX = /usr/$(TARGET_ARCH)-linux-uclibc
-
-ifdef prefix
-DEVEL_PREFIX = $(prefix)
-else
-ifdef AXIS_TOP_DIR
-DEVEL_PREFIX = $(AXIS_TOP_DIR)/target/cris-axis-linux-gnuuclibc
-else
-DEVEL_PREFIX = $(EROOT)
-endif
-endif
-
-# SYSTEM_DEVEL_PREFIX is the directory prefix used when installing
-# bin/arch-uclibc-gcc, bin/arch-uclibc-ld, etc.   This is only used by
-# the 'make install' target, and is not compiled into anything.  This
-# defaults to $DEVEL_PREFIX/usr, but makers of .rpms and .debs will
-# want to set this to "/usr" instead.
-#
-SYSTEM_DEVEL_PREFIX = $(DEVEL_PREFIX)/lib
 
 
-# If you want 'make install' to install everything under a temporary
-# directory, the define PREFIX during the install step,
-# i.e., 'make PREFIX=/var/tmp/uClibc install'.
-#PREFIX = $(TOPDIR)/_install

+ 0 - 191
extra/Configs/Config.cross.arm.uclinux

@@ -1,191 +0,0 @@
-# Library Configuration rules for uClibc
-#
-# This file contains rules which are shared between multiple Makefiles.  All
-# normal configuration options live in the file named "Config".  You probably
-# should not mess with this file unless you know what you are doing...  
-# 
-# Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000,2001 Erik Andersen <andersee@debian.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.
-#
-# 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.
-
-NATIVE_CC = gcc
-
-# If you are running a cross compiler, you may want to set this
-# to something more interesting...  Target architecture is determined
-# by asking this compiler what arch it compiles stuff for.
-CROSS = arm-elf-
-CC = $(CROSS)gcc
-AR = $(CROSS)ar
-LD = $(CROSS)ld
-NM = $(CROSS)nm
-STRIPTOOL = $(CROSS)strip
-#STRIPTOOL = /bin/true
-
-# Set the following to `true' to make a debuggable build, and `false' for
-# production builds.
-DODEBUG = false
-
-# Compiler warnings you want to see 
-WARNINGS=-Wall
-
-# Note that the kernel source you use to compile with should be the same as the
-# Linux kernel you run your apps on.  uClibc doesn't even try to achieve binary
-# compatibility across kernel versions.  So don't expect, for example, uClibc
-# compiled with Linux kernel 2.0.x to implement lchown properly, since 2.0.x
-# can't do that. Similarly, if you compile uClibc vs Linux 2.4.x kernel headers,
-# but then run on Linux 2.0.x, lchown will be compiled into uClibc, but won't
-# work at all.  You have been warned.
-KERNEL_SOURCE=/home/andersen/CVS/uClinux-2.0.x
-
-# Set this to `false' if your CPU doesn't have a memory management unit (MMU).
-# Set it to `true' otherwise.
-HAS_MMU = false
-
-# Set this to `false' if you don't have/need basic floating point support
-# support in libc (strtod, printf, scanf).  Set it to `true' otherwise.
-# If this is not true, then libm will not be built.
-HAS_FLOATING_POINT = true
-
-# Set to `true' if you want the math library to contain the full set
-# of C99 math library features.  Costs an extra 35k or so on x86. 
-DO_C99_MATH = false
-
-# Set this to 'false if you don't need shadow password support.
-HAS_SHADOW = false
-
-# Set this to `false' if you don't have/need locale support; `true' otherwise.
-# NOTE: Currently does not affect collation.
-# You must also generate the locale data and associated .h file.
-# See the README in directory extra/locale for details.
-HAS_LOCALE = false
-
-# Set this to `false' if you don't have/need wide char support.
-HAS_WCHAR = false
-
-# This specifies which malloc implementation is used.
-#
-# "malloc" use mmap for all allocations and so works very well on MMU-less
-# systems that do not support the brk() system call.   It is pretty smart 
-# about reusing already allocated memory, and minimizing memory wastage.
-#
-# "malloc-930716" is derived from libc-5.3.12 and uses the brk() system call
-# for all memory allocations.  This makes it very fast.  It is also pretty
-# smart about reusing already allocated memory, and minimizing memory wastage.
-# Because this uses brk() it will not work on uClinux MMU-less systems.
-MALLOC = malloc 
-#MALLOC = malloc-930716
-
-# Having brk allows one to use malloc-930716, which is an order
-# of magnitude faster then "malloc" for most allocations, but 
-# will do very bad things on MMU-less systems...
-EXCLUDE_BRK=true
-
-# If you want large file support (greater then 2 GiB) turn this on.
-# Do not enable this unless your kernel provides large file support.
-DOLFS = false
-
-# Posix regular expression code is really big -- 27k all by itself.
-# If you don't use regular expressions, turn this off and save space.
-# Of course, if you only staticly link, leave this on, since it will
-# only be included in your apps if you use regular expressions. 
-INCLUDE_REGEX=true
-
-# If you want to include RPC support, enable this.  RPC is almost never used 
-# for anything except NFS support, so unless you plan to use NFS, leave this
-# disabled.  This is off by default.
-INCLUDE_RPC = false
-
-# Normally we enable just enough RPC support for things like rshd and 
-# nfs mount to work.  If you find you need the rest of the RPC stuff, 
-# then enable this.
-INCLUDE_FULL_RPC = false
-
-# If you want to include support for the next version of the Internet
-# Protocol: IP version 6, enable this.  This is off by default.
-INCLUDE_IPV6 = false
-
-# If you want to support only Unix 98 PTYs enable this.  Some older
-# applications may need this disabled.  For most current programs, 
-# you can generally leave this true.
-UNIX98PTY_ONLY = true
-
-# Enable this if /dev/pts is on a devpts or devfs file system.  Both
-# these filesystems automatically manage permissions on the /dev/pts 
-# devices.  You may need to mount this fs on /dev/pts for this to work. 
-# This is true by default.
-ASSUME_DEVPTS = true
-
-
-# If you want to compile the library as PIC code, turn this on.
-# This is automagically enabled when HAVE_SHARED is true
-DOPIC = false
-
-# Enable support for shared libraries?  If this is false, you can
-# ignore all the rest of the options in this file...
-HAVE_SHARED = false
-
-# uClibc has a native shared library loader for some architectures.
-BUILD_UCLIBC_LDSO=false
-
-# If you are using shared libraries, but do not want/have a native
-# uClibc shared library loader, please specify the name of your
-# system's shared library loader here...
-#SYSTEM_LDSO=/lib/ld-linux.so.2
-
-# When using shared libraries, this path is the location where the
-# shared library will be invoked.  This value will be compiled into
-# every binary compiled with uClibc.  
-#
-# BIG FAT WARNING:  
-# If you do not have a shared library loader with the correct name
-# sitting in the directory this points to, your binaries will not run.
-#SHARED_LIB_LOADER_PATH=$(DEVEL_PREFIX)/lib
-
-# DEVEL_PREFIX is the directory into which the uClibc development
-# environment will be installed.   The result will look something 
-# like the following:
-#   DEVEL_PREFIX/
-#	lib/            <contains all runtime and static libs>
-#	include/        <Where all the header files go>
-# This value is used by the 'make install' Makefile target.  Since this
-# directory is compiled into the uclibc cross compiler spoofer, you
-# have to recompile if you change this value...
-#DEVEL_PREFIX = /usr/$(TARGET_ARCH)-linux-uclibc
-DEVEL_PREFIX = /opt/uClinux/$(TARGET_ARCH)-elf
-
-# SYSTEM_DEVEL_PREFIX is the directory prefix used when installing
-# bin/arch-uclibc-gcc, bin/arch-uclibc-ld, etc.   This is only used by
-# the 'make install' target, and is not compiled into anything.  This
-# defaults to $DEVEL_PREFIX/usr, but makers of .rpms and .debs will
-# want to set this to "/usr" instead.
-SYSTEM_DEVEL_PREFIX = $(DEVEL_PREFIX)
-
-# DEVEL_TOOL_PREFIX is the directory prefix used when installing
-# bin/gcc, bin/ld, etc.   This is only used by the 'make install'
-# target, and is not compiled into anything.  This defaults to
-# $DEVEL_PREFIX/usr, but makers of .rpms and .debs may want to
-# set this to something else.
-DEVEL_TOOL_PREFIX = $(DEVEL_PREFIX)/usr
-
-# If you want 'make install' to install everything under a temporary
-# directory, the define PREFIX during the install step,
-# i.e., 'make PREFIX=/var/tmp/uClibc install'.
-#PREFIX = $(TOPDIR)/_install
-

+ 25 - 177
extra/Configs/Config.h8300

@@ -1,192 +1,40 @@
-# Library Configuration rules for uClibc
 #
 #
-# This file contains rules which are shared between multiple Makefiles.  All
-# normal configuration options live in the file named "Config".  You probably
-# should not mess with this file unless you know what you are doing...  
-# 
-# Copyright (C) 2002 Erik Andersen <andersee@debian.org>
+# For a description of the syntax of this configuration file,
+# see Documentation/kbuild/config-language.txt.
 #
 #
-# 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.
-#
-# 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.
-
-# What arch do you want to compile for...
-#TARGET_ARCH=arm
-#TARGET_ARCH=i386
-#TARGET_ARCH=m68k
-#TARGET_ARCH=powerpc
-#TARGET_ARCH=sh
-#TARGET_ARCH=sparc
-TARGET_ARCH=h8300
-
-# If you are running a cross compiler, you may want to set this
-# to something more interesting...
-NATIVE_CC = gcc
-CROSS = h8300-hitachi-hms-
-CC = $(CROSS)gcc
-AR = $(CROSS)ar
-LD = $(CROSS)ld
-NM = $(CROSS)nm
-STRIPTOOL = $(CROSS)strip
-#STRIPTOOL = /bin/true
-
-# Set the following to `true' to make a debuggable build, and `false' for
-# production builds.
-DODEBUG = false
-
-# Compiler warnings you want to see 
-WARNINGS=-Wall
-
-# Note that the kernel source you use to compile with should be the same as the
-# Linux kernel you run your apps on.  uClibc doesn't even try to achieve binary
-# compatibility across kernel versions.  So don't expect, for example, uClibc
-# compiled with Linux kernel 2.0.x to implement lchown properly, since 2.0.x
-# can't do that. Similarly, if you compile uClibc vs Linux 2.4.x kernel headers,
-# but then run on Linux 2.0.x, lchown will be compiled into uClibc, but won't
-# work at all.  You have been warned.
-KERNEL_SOURCE=/opt/uClinux/linux
 
 
-# Set this to `false' if your CPU doesn't have a memory management unit (MMU).
-# Set it to `true' otherwise.
-HAS_MMU = false
-
-# Set this to `false' if you don't have/need basic floating point support
-# support in libc (strtod, printf, scanf).  Set it to `true' otherwise.
-# If this is not true, then libm will not be built.
-HAS_FLOATING_POINT = true
-
-# Set to `true' if you want the math library to contain the full set
-# of C99 math library features.  Costs an extra 35k or so on x86. 
-DO_C99_MATH = false
-
-# Set this to `false' if you don't have/need locale support; `true' otherwise.
-# NOTE: Currently does not affect collation.
-# You must also generate the locale data and associated .h file.
-# See the README in directory extra/locale for details.
-HAS_LOCALE = false
-
-# Set this to `false' if you don't have/need wide char support.
-HAS_WCHAR = false
-
-# This specifies which malloc implementation is used.
-#
-# "malloc" use mmap for all allocations and so works very well on MMU-less
-# systems that do not support the brk() system call.   It is pretty smart 
-# about reusing already allocated memory, and minimizing memory wastage.
-#
-# "malloc-930716" is derived from libc-5.3.12 and uses the brk() system call
-# for all memory allocations.  This makes it very fast.  It is also pretty
-# smart about reusing already allocated memory, and minimizing memory wastage.
-# Because this uses brk() it will not work on uClinux MMU-less systems.
-MALLOC = malloc 
-#MALLOC = malloc-930716
+mainmenu "uClibc C Library Configuration"
 
 
-# If you want large file summit support (greater then 2 Gib), 
-# turn this on.  This has no effect unless your kernel supports 
-# lfs.  This currently does nothing, but may someday...
-DOLFS = false
+menu "Target Architecture Features and Options"
 
 
-# If you want to include RPC support, enable this.  RPC is almost never used 
-# for anything except NFS support, so unless you plan to use NFS, leave this
-# disabled.  This is off by default.
-INCLUDE_RPC = true
+config HAVE_ELF
+	bool
+	default n
 
 
-# Normally we enable just enough RPC support for things like rshd and 
-# nfs mount to work.  If you find you need the rest of the RPC stuff, 
-# then enable this.
-INCLUDE_FULL_RPC = false
+config C_SYMBOL_PREFIX
+	string
+	default "_"
 
 
-# If you want to include support for the next version of the Internet
-# Protocol: IP version 6, enable this.  This is off by default.
-INCLUDE_IPV6 = false
+config ARCH_CFLAGS
+	string
+	default "-mh -mint32 -fsigned-char"
 
 
-# If you want to compile the library as PIC code, turn this on.
-DOPIC = false
+config ARCH_LDFLAGS
+	string
+	default ""
 
 
-#
-# ARCH_CFLAGS if your have something special to add to the CFLAGS
-#
-ARCH_CFLAGS  = -mh -mint32 -fsigned-char
-#
-# this is needed for 2.4 m68knommu builds
-#
-ARCH_CFLAGS2 = -I$(KERNEL_SOURCE)/include
-#
-# get this from elsewhere, maybe
-#
-OPTIMIZATION = $(DEBUG_CFLAGS) -mh -mint32 -fsigned-char
-
-# This is a COFF compiler (ick), so disable all the cool stuff
-HAVE_ELF = false
-
-
-
-# Enable support for shared libraries?  If this is false, you can
-# ignore all the rest of the options in this file...
-HAVE_SHARED = false
-
-# uClibc has a native shared library loader for some architectures.
-BUILD_UCLIBC_LDSO=false
-
-# If you are using shared libraries, but do not want/have a native
-# uClibc shared library loader, please specify the name of your
-# system's shared library loader here...
-#SYSTEM_LDSO=/lib/ld-linux.so.2
-
-# When using shared libraries, this path is the location where the
-# shared library will be invoked.  This value will be compiled into
-# every binary compiled with uClibc.  
-#
-# BIG FAT WARNING:  
-# If you do not have a shared library loader with the correct name
-# sitting in the directory this points to, your binaries will not run.
-#SHARED_LIB_LOADER_PATH=$(DEVEL_PREFIX)/lib
+config LIBGCC_CFLAGS
+	string
+	default ""
 
 
-# C defiend symbols prefix charactor
-C_SYMBOL_PREFIX = _
+config ARCH_HAS_NO_MMU
+	bool
+	default y
 
 
-# DEVEL_PREFIX is the directory into which the uClibc development
-# environment will be installed.   The result will look something 
-# like the following:
-#   DEVEL_PREFIX/
-#	lib/            <contains all runtime and static libs>
-#	include/        <Where all the header files go>
-# This value is used by the 'make install' Makefile target.  Since this
-# directory is compiled into the uclibc cross compiler spoofer, you
-# have to recompile if you change this value...
-#DEVEL_PREFIX = /usr/$(TARGET_ARCH)-linux-uclibc
-DEVEL_PREFIX = /opt/uClinux/$(TARGET_ARCH)-coff
+source "extra/Configs/Config.in.arch"
 
 
-# SYSTEM_DEVEL_PREFIX is the directory prefix used when installing
-# bin/arch-uclibc-gcc, bin/arch-uclibc-ld, etc.   This is only used by
-# the 'make install' target, and is not compiled into anything.  This
-# defaults to $DEVEL_PREFIX/usr, but makers of .rpms and .debs will
-# want to set this to "/usr" instead.
-SYSTEM_DEVEL_PREFIX = $(DEVEL_PREFIX)
+endmenu
 
 
-# DEVEL_TOOL_PREFIX is the directory prefix used when installing
-# bin/gcc, bin/ld, etc.   This is only used by the 'make install'
-# target, and is not compiled into anything.  This defaults to
-# $DEVEL_PREFIX/usr, but makers of .rpms and .debs may want to
-# set this to something else.
-DEVEL_TOOL_PREFIX = $(DEVEL_PREFIX)/usr
+source "extra/Configs/Config.in"
 
 
-# If you want 'make install' to install everything under a temporary
-# directory, the define PREFIX during the install step,
-# i.e., 'make PREFIX=/var/tmp/uClibc install'.
-#PREFIX = $(TOPDIR)/_install
 
 

+ 20 - 0
extra/Configs/Config.i386

@@ -7,6 +7,26 @@ mainmenu "uClibc C Library Configuration"
 
 
 menu "Target Architecture Features and Options"
 menu "Target Architecture Features and Options"
 
 
+config HAVE_ELF
+	bool
+	default y
+
+config C_SYMBOL_PREFIX
+	string
+	default ""
+
+config ARCH_CFLAGS
+	string
+	default ""
+
+config ARCH_LDFLAGS
+	string
+	default ""
+
+config LIBGCC_CFLAGS
+	string
+	default ""
+
 choice
 choice
 	prompt "Target Processor Type"
 	prompt "Target Processor Type"
 	default CONFIG_386
 	default CONFIG_386

+ 0 - 1
extra/Configs/Config.i386.default

@@ -30,7 +30,6 @@ KERNEL_SOURCE="/usr/src/linux"
 C_SYMBOL_PREFIX=""
 C_SYMBOL_PREFIX=""
 UCLIBC_UCLINUX_BROKEN_MUNMAP=y
 UCLIBC_UCLINUX_BROKEN_MUNMAP=y
 HAVE_ELF=y
 HAVE_ELF=y
-# NO_UNDERSCORES is not set
 # HAVE_DOT_HIDDEN is not set
 # HAVE_DOT_HIDDEN is not set
 
 
 #
 #

+ 26 - 198
extra/Configs/Config.i960

@@ -1,212 +1,40 @@
-# Library Configuration rules for uClibc
 #
 #
-# This file contains rules which are shared between multiple Makefiles.  All
-# normal configuration options live in the file named "Config".  You probably
-# should not mess with this file unless you know what you are doing...  
-# 
-# Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000,2001 Erik Andersen <andersee@debian.org>
+# For a description of the syntax of this configuration file,
+# see Documentation/kbuild/config-language.txt.
 #
 #
-# 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.
-#
-# 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.
-
-NATIVE_CC = gcc
-
-# If you are running a cross compiler, you may want to set this
-# to something more interesting...  Target architecture is determined
-# by asking this compiler what arch it compiles stuff for.
-CROSS = i960-intel-coff-
-CC = $(CROSS)gcc
-AR = $(CROSS)ar
-LD = $(CROSS)ld
-NM = $(CROSS)nm
-STRIPTOOL = $(CROSS)strip
-#STRIPTOOL = /bin/true
-
-# Set the following to `true' to make a debuggable build, and `false' for
-# production builds.
-DODEBUG = false
-
-# Compiler warnings you want to see 
-WARNINGS=-Wall
-
-# Note that the kernel source you use to compile with should be the same as the
-# Linux kernel you run your apps on.  uClibc doesn't even try to achieve binary
-# compatibility across kernel versions.  So don't expect, for example, uClibc
-# compiled with Linux kernel 2.0.x to implement lchown properly, since 2.0.x
-# can't do that. Similarly, if you compile uClibc vs Linux 2.4.x kernel headers,
-# but then run on Linux 2.0.x, lchown will be compiled into uClibc, but won't
-# work at all.  You have been warned.
-KERNEL_SOURCE=/home/mproulx/uClinux/linux-2.0.x
-
-# Set this to `false' if your CPU doesn't have a memory management unit (MMU).
-# Set it to `true' otherwise.
-HAS_MMU = false
-
-# Set this to `false' if you don't have/need basic floating point support
-# support in libc (strtod, printf, scanf).  Set it to `true' otherwise.
-# If this is not true, then libm will not be built.
-HAS_FLOATING_POINT = false
-
-# Set to `true' if you want the math library to contain the full set
-# of C99 math library features.  Costs an extra 35k or so on x86. 
-DO_C99_MATH = false
-
-# Set this to 'false if you don't need shadow password support.
-HAS_SHADOW = false
-
-# Set this to `false' if you don't have/need locale support; `true' otherwise.
-# NOTE: Currently does not affect collation.
-# You must also generate the locale data and associated .h file.
-# See the README in directory extra/locale for details.
-HAS_LOCALE = false
-
-# Set this to `false' if you don't have/need wide char support.
-HAS_WCHAR = false
-
-# This specifies which malloc implementation is used.
-#
-# "malloc" use mmap for all allocations and so works very well on MMU-less
-# systems that do not support the brk() system call.   It is pretty smart 
-# about reusing already allocated memory, and minimizing memory wastage.
-#
-# "malloc-930716" is derived from libc-5.3.12 and uses the brk() system call
-# for all memory allocations.  This makes it very fast.  It is also pretty
-# smart about reusing already allocated memory, and minimizing memory wastage.
-# Because this uses brk() it will not work on uClinux MMU-less systems.
-MALLOC = malloc 
-#MALLOC = malloc-930716
-
-# Having brk allows one to use malloc-930716, which is an order
-# of magnitude faster then "malloc" for most allocations, but 
-# will do very bad things on MMU-less systems...
-EXCLUDE_BRK=true
 
 
-# If you want large file support (greater then 2 GiB) turn this on.
-# Do not enable this unless your kernel provides large file support.
-DOLFS = false
+mainmenu "uClibc C Library Configuration"
 
 
-# Posix regular expression code is really big -- 27k all by itself.
-# If you don't use regular expressions, turn this off and save space.
-# Of course, if you only staticly link, leave this on, since it will
-# only be included in your apps if you use regular expressions. 
-INCLUDE_REGEX=true
+menu "Target Architecture Features and Options"
 
 
-# If you want to include RPC support, enable this.  RPC is almost never used 
-# for anything except NFS support, so unless you plan to use NFS, leave this
-# disabled.  This is off by default.
-INCLUDE_RPC = true
+config HAVE_ELF
+	bool
+	default n
 
 
-# Normally we enable just enough RPC support for things like rshd and 
-# nfs mount to work.  If you find you need the rest of the RPC stuff, 
-# then enable this.
-INCLUDE_FULL_RPC = false
+config C_SYMBOL_PREFIX
+	string
+	default "_"
 
 
-# If you want to include support for the next version of the Internet
-# Protocol: IP version 6, enable this.  This is off by default.
-INCLUDE_IPV6 = false
+config ARCH_CFLAGS
+	string
+	default "-mh -mint32 -fsigned-char"
 
 
-# If you want to include threads support, enable this.  The C library will
-# be compiled thread-safe, and the libpthread library will be built.
-INCLUDE_THREADS = false
-
-# If you want to support only Unix 98 PTYs enable this.  Some older
-# applications may need this disabled.  For most current programs, 
-# you can generally leave this true.
-UNIX98PTY_ONLY = false
-
-# Enable this if /dev/pts is on a devpts or devfs file system.  Both
-# these filesystems automatically manage permissions on the /dev/pts 
-# devices.  You may need to mount this fs on /dev/pts for this to work. 
-# This is true by default.
-ASSUME_DEVPTS = true
-
-
-# If you want to compile the library as PIC code, turn this on.
-# This is automagically enabled when HAVE_SHARED is true
-DOPIC = false
-
-#
-# ARCH_CFLAGS if your have something special to add to the CFLAGS
-#
-ARCH_CFLAGS  = -mrp
-#
-#
-# get this from elsewhere, maybe
-#
-OPTIMIZATION = -O2 $(DEBUG_CFLAGS)
-
-# This is a COFF compiler (ick), so disable all the cool stuff
-HAVE_ELF = false
-
-
-
-# Enable support for shared libraries?  If this is false, you can
-# ignore all the rest of the options in this file...
-HAVE_SHARED = false
-
-# uClibc has a native shared library loader for some architectures.
-BUILD_UCLIBC_LDSO=false
-
-# If you are using shared libraries, but do not want/have a native
-# uClibc shared library loader, please specify the name of your
-# system's shared library loader here...
-#SYSTEM_LDSO=/lib/ld-linux.so.2
-
-# When using shared libraries, this path is the location where the
-# shared library will be invoked.  This value will be compiled into
-# every binary compiled with uClibc.  
-#
-# BIG FAT WARNING:  
-# If you do not have a shared library loader with the correct name
-# sitting in the directory this points to, your binaries will not run.
-#SHARED_LIB_LOADER_PATH=$(DEVEL_PREFIX)/lib
+config ARCH_LDFLAGS
+	string
+	default ""
 
 
-# C defiend symbols prefix charactor
-C_SYMBOL_PREFIX = _
+config LIBGCC_CFLAGS
+	string
+	default ""
+	
+config ARCH_HAS_NO_MMU
+	bool
+	default y
 
 
-# DEVEL_PREFIX is the directory into which the uClibc development
-# environment will be installed.   The result will look something 
-# like the following:
-#   DEVEL_PREFIX/
-#	lib/            <contains all runtime and static libs>
-#	include/        <Where all the header files go>
-# This value is used by the 'make install' Makefile target.  Since this
-# directory is compiled into the uclibc cross compiler spoofer, you
-# have to recompile if you change this value...
-DEVEL_PREFIX = /usr/$(TARGET_ARCH)-linux-uclibc
+source "extra/Configs/Config.in.arch"
 
 
-# SYSTEM_DEVEL_PREFIX is the directory prefix used when installing
-# bin/arch-uclibc-gcc, bin/arch-uclibc-ld, etc.   This is only used by
-# the 'make install' target, and is not compiled into anything.  This
-# defaults to $DEVEL_PREFIX/usr, but makers of .rpms and .debs will
-# want to set this to "/usr" instead.
-SYSTEM_DEVEL_PREFIX = $(DEVEL_PREFIX)
+endmenu
 
 
-# DEVEL_TOOL_PREFIX is the directory prefix used when installing
-# bin/gcc, bin/ld, etc.   This is only used by the 'make install'
-# target, and is not compiled into anything.  This defaults to
-# $DEVEL_PREFIX/usr, but makers of .rpms and .debs may want to
-# set this to something else.
-DEVEL_TOOL_PREFIX = $(DEVEL_PREFIX)/usr
+source "extra/Configs/Config.in"
 
 
-# If you want 'make install' to install everything under a temporary
-# directory, the define PREFIX during the install step,
-# i.e., 'make PREFIX=/var/tmp/uClibc install'.
-#PREFIX = $(TOPDIR)/_install
 
 

+ 3 - 14
extra/Configs/Config.in.arch

@@ -5,7 +5,7 @@
 
 
 config UCLIBC_HAS_MMU
 config UCLIBC_HAS_MMU
 	bool "Target CPU has a memory management unit (MMU)"
 	bool "Target CPU has a memory management unit (MMU)"
-	default y
+	default y if !ARCH_HAS_NO_MMU
 	help
 	help
 	  If your target CPU does not have a memory management unit (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.  
 	  then answer N here.  Normally, Linux runs on systems with an MMU.  
@@ -72,24 +72,13 @@ config KERNEL_SOURCE
 	  but then run on Linux 2.0.x, lchown will be compiled into uClibc, but won't
 	  but then run on Linux 2.0.x, lchown will be compiled into uClibc, but won't
 	  work at all.  You have been warned.
 	  work at all.  You have been warned.
 
 
-config C_SYMBOL_PREFIX
-	string
-	default ""
-
 config UCLIBC_UCLINUX_BROKEN_MUNMAP
 config UCLIBC_UCLINUX_BROKEN_MUNMAP
 	bool
 	bool
 	depends on !UCLIBC_HAS_MMU
 	depends on !UCLIBC_HAS_MMU
 	default y
 	default y
 
 
-config HAVE_ELF
+config EXCLUDE_BRK
 	bool
 	bool
+	depends on !UCLIBC_HAS_MMU
 	default y
 	default y
 
 
-config NO_UNDERSCORES
-	bool
-	default n
-
-config HAVE_DOT_HIDDEN
-	bool
-	default n
-

+ 28 - 186
extra/Configs/Config.m68k

@@ -1,202 +1,44 @@
-# Library Configuration rules for uClibc
 #
 #
-# This file contains rules which are shared between multiple Makefiles.  All
-# normal configuration options live in the file named "Config".  You probably
-# should not mess with this file unless you know what you are doing...  
-# 
-# Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000,2001 Erik Andersen <andersee@debian.org>
+# For a description of the syntax of this configuration file,
+# see Documentation/kbuild/config-language.txt.
 #
 #
-# 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.
-#
-# 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.
-
-NATIVE_CC = gcc
-
-# If you are running a cross compiler, you may want to set this
-# to something more interesting...  Target architecture is determined
-# by asking this compiler what arch it compiles stuff for.
-#CROSS = m68k-elf-
-CC = $(CROSS)gcc
-AR = $(CROSS)ar
-LD = $(CROSS)ld
-NM = $(CROSS)nm
-STRIPTOOL = $(CROSS)strip
-#STRIPTOOL = /bin/true
-
-# Set the following to `true' to make a debuggable build, and `false' for
-# production builds.
-DODEBUG = false
-
-# Compiler warnings you want to see 
-WARNINGS=-Wall
-
-# Note that the kernel source you use to compile with should be the same as the
-# Linux kernel you run your apps on.  uClibc doesn't even try to achieve binary
-# compatibility across kernel versions.  So don't expect, for example, uClibc
-# compiled with Linux kernel 2.0.x to implement lchown properly, since 2.0.x
-# can't do that. Similarly, if you compile uClibc vs Linux 2.4.x kernel headers,
-# but then run on Linux 2.0.x, lchown will be compiled into uClibc, but won't
-# work at all.  You have been warned.
-KERNEL_SOURCE=/usr/src/linux
 
 
-# Set this to `false' if your CPU doesn't have a memory management unit (MMU).
-# Set it to `true' otherwise.
-HAS_MMU = false
-
-# Set this to `false' if you don't have/need basic floating point support
-# support in libc (strtod, printf, scanf).  Set it to `true' otherwise.
-# If this is not true, then libm will not be built.
-HAS_FLOATING_POINT = true
-
-# Set to `true' if you want the math library to contain the full set
-# of C99 math library features.  Costs an extra 35k or so on x86. 
-DO_C99_MATH = false
-
-# Set this to 'false if you don't need shadow password support.
-HAS_SHADOW = false
-
-# Set this to `false' if you don't have/need locale support; `true' otherwise.
-# NOTE: Currently does not affect collation.
-# You must also generate the locale data and associated .h file.
-# See the README in directory extra/locale for details.
-HAS_LOCALE = false
-
-# Set this to `false' if you don't have/need wide char support.
-HAS_WCHAR = false
-
-# This specifies which malloc implementation is used.
-#
-# "malloc" use mmap for all allocations and so works very well on MMU-less
-# systems that do not support the brk() system call.   It is pretty smart 
-# about reusing already allocated memory, and minimizing memory wastage.
-#
-# "malloc-930716" is derived from libc-5.3.12 and uses the brk() system call
-# for all memory allocations.  This makes it very fast.  It is also pretty
-# smart about reusing already allocated memory, and minimizing memory wastage.
-# Because this uses brk() it will not work on uClinux MMU-less systems.
-MALLOC = malloc 
-#MALLOC = malloc-930716
+mainmenu "uClibc C Library Configuration"
 
 
-# Having brk allows one to use malloc-930716, which is an order
-# of magnitude faster then "malloc" for most allocations, but 
-# will do very bad things on MMU-less systems...
-EXCLUDE_BRK=true
+menu "Target Architecture Features and Options"
 
 
-# If you want large file support (greater then 2 GiB) turn this on.
-# Do not enable this unless your kernel provides large file support.
-DOLFS = false
+config HAVE_ELF
+	bool
+	default y
 
 
-# Posix regular expression code is really big -- 27k all by itself.
-# If you don't use regular expressions, turn this off and save space.
-# Of course, if you only staticly link, leave this on, since it will
-# only be included in your apps if you use regular expressions. 
-INCLUDE_REGEX=true
+config C_SYMBOL_PREFIX
+	string
+	default ""
 
 
-# If you want to include RPC support, enable this.  RPC is almost never used 
-# for anything except NFS support, so unless you plan to use NFS, leave this
-# disabled.  This is off by default.
-INCLUDE_RPC = true
+config ARCH_CFLAGS
+	string
+	default "-Wa,--bitwise-or -I$(KERNEL_SOURCE)/include"
 
 
-# Normally we enable just enough RPC support for things like rshd and 
-# nfs mount to work.  If you find you need the rest of the RPC stuff, 
-# then enable this.
-INCLUDE_FULL_RPC = false
+config ARCH_LDFLAGS
+	string
+	default ""
 
 
-# If you want to include support for the next version of the Internet
-# Protocol: IP version 6, enable this.  This is off by default.
-INCLUDE_IPV6 = false
+config LIBGCC_CFLAGS
+	string
+	default ""
 
 
-# If you want to support only Unix 98 PTYs enable this.  Some older
-# applications may need this disabled.  For most current programs, 
-# you can generally leave this true.
-UNIX98PTY_ONLY = true
+config HAVE_ELF
+	bool
+	default y
 
 
-# Enable this if /dev/pts is on a devpts or devfs file system.  Both
-# these filesystems automatically manage permissions on the /dev/pts 
-# devices.  You may need to mount this fs on /dev/pts for this to work. 
-# This is true by default.
-ASSUME_DEVPTS = true
-
-
-# If you want to compile the library as PIC code, turn this on.
-# This is automagically enabled when HAVE_SHARED is true
-DOPIC = false
-
-#
-# ARCH_CFLAGS if your have something special to add to the CFLAGS
-#
-ARCH_CFLAGS  = -Wa,--bitwise-or -I$(KERNEL_SOURCE)/include
-#
-#
-# get this from elsewhere, maybe
-#
-OPTIMIZATION = $(DEBUG_CFLAGS)
-
-
-
-# Enable support for shared libraries?  If this is false, you can
-# ignore all the rest of the options in this file...
-HAVE_SHARED = false
-
-# uClibc has a native shared library loader for some architectures.
-BUILD_UCLIBC_LDSO=false
-
-# If you are using shared libraries, but do not want/have a native
-# uClibc shared library loader, please specify the name of your
-# system's shared library loader here...
-#SYSTEM_LDSO=/lib/ld-linux.so.2
-
-# When using shared libraries, this path is the location where the
-# shared library will be invoked.  This value will be compiled into
-# every binary compiled with uClibc.  
-#
-# BIG FAT WARNING:  
-# If you do not have a shared library loader with the correct name
-# sitting in the directory this points to, your binaries will not run.
-SHARED_LIB_LOADER_PATH=$(DEVEL_PREFIX)/lib
+config ARCH_HAS_NO_MMU
+	bool
+	default y
 
 
-# DEVEL_PREFIX is the directory into which the uClibc development
-# environment will be installed.   The result will look something 
-# like the following:
-#   DEVEL_PREFIX/
-#	lib/            <contains all runtime and static libs>
-#	include/        <Where all the header files go>
-# This value is used by the 'make install' Makefile target.  Since this
-# directory is compiled into the uclibc cross compiler spoofer, you
-# have to recompile if you change this value...
-DEVEL_PREFIX = /usr/$(TARGET_ARCH)-linux-uclibc
+source "extra/Configs/Config.in.arch"
 
 
-# SYSTEM_DEVEL_PREFIX is the directory prefix used when installing
-# bin/arch-uclibc-gcc, bin/arch-uclibc-ld, etc.   This is only used by
-# the 'make install' target, and is not compiled into anything.  This
-# defaults to $DEVEL_PREFIX/usr, but makers of .rpms and .debs will
-# want to set this to "/usr" instead.
-SYSTEM_DEVEL_PREFIX = $(DEVEL_PREFIX)
+endmenu
 
 
-# DEVEL_TOOL_PREFIX is the directory prefix used when installing
-# bin/gcc, bin/ld, etc.   This is only used by the 'make install'
-# target, and is not compiled into anything.  This defaults to
-# $DEVEL_PREFIX/usr, but makers of .rpms and .debs may want to
-# set this to something else.
-DEVEL_TOOL_PREFIX = $(DEVEL_PREFIX)/usr
+source "extra/Configs/Config.in"
 
 
-# If you want 'make install' to install everything under a temporary
-# directory, the define PREFIX during the install step,
-# i.e., 'make PREFIX=/var/tmp/uClibc install'.
-#PREFIX = $(TOPDIR)/_install
 
 

+ 0 - 206
extra/Configs/Config.m68k.coff

@@ -1,206 +0,0 @@
-# Library Configuration rules for uClibc
-#
-# This file contains rules which are shared between multiple Makefiles.  All
-# normal configuration options live in the file named "Config".  You probably
-# should not mess with this file unless you know what you are doing...  
-# 
-# Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000,2001 Erik Andersen <andersee@debian.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.
-#
-# 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.
-
-NATIVE_CC = gcc
-
-# If you are running a cross compiler, you may want to set this
-# to something more interesting...  Target architecture is determined
-# by asking this compiler what arch it compiles stuff for.
-CROSS = m68k-coff-
-CC = $(CROSS)gcc
-AR = $(CROSS)ar
-LD = $(CROSS)ld
-NM = $(CROSS)nm
-STRIPTOOL = $(CROSS)strip
-#STRIPTOOL = /bin/true
-
-# Set the following to `true' to make a debuggable build, and `false' for
-# production builds.
-DODEBUG = false
-
-# Compiler warnings you want to see 
-WARNINGS=-Wall
-
-# Note that the kernel source you use to compile with should be the same as the
-# Linux kernel you run your apps on.  uClibc doesn't even try to achieve binary
-# compatibility across kernel versions.  So don't expect, for example, uClibc
-# compiled with Linux kernel 2.0.x to implement lchown properly, since 2.0.x
-# can't do that. Similarly, if you compile uClibc vs Linux 2.4.x kernel headers,
-# but then run on Linux 2.0.x, lchown will be compiled into uClibc, but won't
-# work at all.  You have been warned.
-KERNEL_SOURCE=/opt/uClinux/linux
-
-# Set this to `false' if your CPU doesn't have a memory management unit (MMU).
-# Set it to `true' otherwise.
-HAS_MMU = false
-
-# Set this to `false' if you don't have/need basic floating point support
-# support in libc (strtod, printf, scanf).  Set it to `true' otherwise.
-# If this is not true, then libm will not be built.
-HAS_FLOATING_POINT = true
-
-# Set to `true' if you want the math library to contain the full set
-# of C99 math library features.  Costs an extra 35k or so on x86. 
-DO_C99_MATH = false
-
-# Set this to 'false if you don't need shadow password support.
-HAS_SHADOW = false
-
-# Set this to `false' if you don't have/need locale support; `true' otherwise.
-# NOTE: Currently does not affect collation.
-# You must also generate the locale data and associated .h file.
-# See the README in directory extra/locale for details.
-HAS_LOCALE = false
-
-# Set this to `false' if you don't have/need wide char support.
-HAS_WCHAR = false
-
-# This specifies which malloc implementation is used.
-#
-# "malloc" use mmap for all allocations and so works very well on MMU-less
-# systems that do not support the brk() system call.   It is pretty smart 
-# about reusing already allocated memory, and minimizing memory wastage.
-#
-# "malloc-930716" is derived from libc-5.3.12 and uses the brk() system call
-# for all memory allocations.  This makes it very fast.  It is also pretty
-# smart about reusing already allocated memory, and minimizing memory wastage.
-# Because this uses brk() it will not work on uClinux MMU-less systems.
-MALLOC = malloc 
-#MALLOC = malloc-930716
-
-# Having brk allows one to use malloc-930716, which is an order
-# of magnitude faster then "malloc" for most allocations, but 
-# will do very bad things on MMU-less systems...
-EXCLUDE_BRK=true
-
-# If you want large file support (greater then 2 GiB) turn this on.
-# Do not enable this unless your kernel provides large file support.
-DOLFS = false
-
-# Posix regular expression code is really big -- 27k all by itself.
-# If you don't use regular expressions, turn this off and save space.
-# Of course, if you only staticly link, leave this on, since it will
-# only be included in your apps if you use regular expressions. 
-INCLUDE_REGEX=true
-
-# If you want to include RPC support, enable this.  RPC is almost never used 
-# for anything except NFS support, so unless you plan to use NFS, leave this
-# disabled.  This is off by default.
-INCLUDE_RPC = true
-
-# Normally we enable just enough RPC support for things like rshd and 
-# nfs mount to work.  If you find you need the rest of the RPC stuff, 
-# then enable this.
-INCLUDE_FULL_RPC = false
-
-# If you want to include support for the next version of the Internet
-# Protocol: IP version 6, enable this.  This is off by default.
-INCLUDE_IPV6 = false
-
-# If you want to support only Unix 98 PTYs enable this.  Some older
-# applications may need this disabled.  For most current programs, 
-# you can generally leave this true.
-UNIX98PTY_ONLY = true
-
-# Enable this if /dev/pts is on a devpts or devfs file system.  Both
-# these filesystems automatically manage permissions on the /dev/pts 
-# devices.  You may need to mount this fs on /dev/pts for this to work. 
-# This is true by default.
-ASSUME_DEVPTS = true
-
-
-# If you want to compile the library as PIC code, turn this on.
-# This is automagically enabled when HAVE_SHARED is true
-DOPIC = false
-
-#
-# ARCH_CFLAGS if your have something special to add to the CFLAGS
-#
-ARCH_CFLAGS  = -Wa,--bitwise-or -msoft-float -I$(KERNEL_SOURCE)/include
-#
-#
-# get this from elsewhere, maybe
-#
-OPTIMIZATION = $(DEBUG_CFLAGS)
-
-# This is a COFF compiler (ick), so disable all the cool stuff
-HAVE_ELF = false
-
-
-
-# Enable support for shared libraries?  If this is false, you can
-# ignore all the rest of the options in this file...
-HAVE_SHARED = false
-
-# uClibc has a native shared library loader for some architectures.
-BUILD_UCLIBC_LDSO=false
-
-# If you are using shared libraries, but do not want/have a native
-# uClibc shared library loader, please specify the name of your
-# system's shared library loader here...
-#SYSTEM_LDSO=/lib/ld-linux.so.2
-
-# When using shared libraries, this path is the location where the
-# shared library will be invoked.  This value will be compiled into
-# every binary compiled with uClibc.  
-#
-# BIG FAT WARNING:  
-# If you do not have a shared library loader with the correct name
-# sitting in the directory this points to, your binaries will not run.
-#SHARED_LIB_LOADER_PATH=$(DEVEL_PREFIX)/lib
-
-# DEVEL_PREFIX is the directory into which the uClibc development
-# environment will be installed.   The result will look something 
-# like the following:
-#   DEVEL_PREFIX/
-#	lib/            <contains all runtime and static libs>
-#	include/        <Where all the header files go>
-# This value is used by the 'make install' Makefile target.  Since this
-# directory is compiled into the uclibc cross compiler spoofer, you
-# have to recompile if you change this value...
-#DEVEL_PREFIX = /usr/$(TARGET_ARCH)-linux-uclibc
-DEVEL_PREFIX = /opt/uClinux/$(TARGET_ARCH)-coff
-
-# SYSTEM_DEVEL_PREFIX is the directory prefix used when installing
-# bin/arch-uclibc-gcc, bin/arch-uclibc-ld, etc.   This is only used by
-# the 'make install' target, and is not compiled into anything.  This
-# defaults to $DEVEL_PREFIX/usr, but makers of .rpms and .debs will
-# want to set this to "/usr" instead.
-SYSTEM_DEVEL_PREFIX = $(DEVEL_PREFIX)
-
-# DEVEL_TOOL_PREFIX is the directory prefix used when installing
-# bin/gcc, bin/ld, etc.   This is only used by the 'make install'
-# target, and is not compiled into anything.  This defaults to
-# $DEVEL_PREFIX/usr, but makers of .rpms and .debs may want to
-# set this to something else.
-DEVEL_TOOL_PREFIX = $(DEVEL_PREFIX)/usr
-
-# If you want 'make install' to install everything under a temporary
-# directory, the define PREFIX during the install step,
-# i.e., 'make PREFIX=/var/tmp/uClibc install'.
-#PREFIX = $(TOPDIR)/_install
-

+ 50 - 188
extra/Configs/Config.mips

@@ -1,190 +1,52 @@
-# Library Configuration rules for uClibc
 #
 #
-# This file contains rules which are shared between multiple Makefiles.  All
-# normal configuration options live in the file named "Config".  You probably
-# should not mess with this file unless you know what you are doing...  
-# 
-# Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000,2001 Erik Andersen <andersee@debian.org>
+# For a description of the syntax of this configuration file,
+# see Documentation/kbuild/config-language.txt.
 #
 #
-# 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.
-#
-# 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.
-
-NATIVE_CC = gcc
-
-# Specify the target
-TARGET_ARCH=mips
-
-# If you are running a cross compiler, you may want to set this
-# to something more interesting...  Target architecture is determined
-# by asking this compiler what arch it compiles stuff for.
-CROSS = mips-linux-
-CC = $(CROSS)gcc
-AR = $(CROSS)ar
-LD = $(CROSS)ld
-NM = $(CROSS)nm
-STRIPTOOL = $(CROSS)strip
-#STRIPTOOL = /bin/true
-
-# Set the following to `true' to make a debuggable build, and `false' for
-# production builds.
-DODEBUG = false
-
-# Compiler warnings you want to see 
-WARNINGS = -Wall
-
-# Note that the kernel source you use to compile with should be the same as the
-# Linux kernel you run your apps on.  uClibc doesn't even try to achieve binary
-# compatibility across kernel versions.  So don't expect, for example, uClibc
-# compiled with Linux kernel 2.0.x to implement lchown properly, since 2.0.x
-# can't do that. Similarly, if you compile uClibc vs Linux 2.4.x kernel headers,
-# but then run on Linux 2.0.x, lchown will be compiled into uClibc, but won't
-# work at all.  You have been warned.
-KERNEL_SOURCE = /usr/src/linux
-
-# Set this to `false' if your CPU doesn't have a memory management unit (MMU).
-# Set it to `true' otherwise.
-HAS_MMU = true
-
-# Set this to `false' if you don't have/need basic floating point support
-# support in libc (strtod, printf, scanf).  Set it to `true' otherwise.
-# If this is not true, then libm will not be built.
-HAS_FLOATING_POINT = true
-
-# Set to `true' if you want the math library to contain the full set
-# of C99 math library features.  Costs an extra 35k or so on x86. 
-DO_C99_MATH = false
-
-# Set this to 'false if you don't need shadow password support.
-HAS_SHADOW = false
-
-# Set this to `false' if you don't have/need locale support; `true' otherwise.
-# NOTE: Currently does not affect collation.
-# You must also generate the locale data and associated .h file.
-# See the README in directory extra/locale for details.
-HAS_LOCALE = false
-
-# Set this to `false' if you don't have/need wide char support.
-HAS_WCHAR = false
-
-# This specifies which malloc implementation is used.
-#
-# "malloc" use mmap for all allocations and so works very well on MMU-less
-# systems that do not support the brk() system call.   It is pretty smart 
-# about reusing already allocated memory, and minimizing memory wastage.
-#
-# "malloc-930716" is derived from libc-5.3.12 and uses the brk() system call
-# for all memory allocations.  This makes it very fast.  It is also pretty
-# smart about reusing already allocated memory, and minimizing memory wastage.
-# Because this uses brk() it will not work on uClinux MMU-less systems.
-#MALLOC = malloc 
-MALLOC = malloc-930716
-
-# If you want large file support (greater then 2 GiB) turn this on.
-# Do not enable this unless your kernel provides large file support.
-DOLFS = false
-
-# Posix regular expression code is really big -- 27k all by itself.
-# If you don't use regular expressions, turn this off and save space.
-# Of course, if you only staticly link, leave this on, since it will
-# only be included in your apps if you use regular expressions. 
-INCLUDE_REGEX = true
-
-# If you want to include RPC support, enable this.  RPC is almost never used 
-# for anything except NFS support, so unless you plan to use NFS, leave this
-# disabled.  This is off by default.
-INCLUDE_RPC = false
-
-# Normally we enable just enough RPC support for things like rshd and 
-# nfs mount to work.  If you find you need the rest of the RPC stuff, 
-# then enable this.
-INCLUDE_FULL_RPC = false
-
-# If you want to include support for the next version of the Internet
-# Protocol: IP version 6, enable this.  This is off by default.
-INCLUDE_IPV6 = false
-
-# If you want to include threads support, enable this.  The C library will
-# be compiled thread-safe, and the libpthread library will be built.
-INCLUDE_THREADS = true
-
-# If you want to support only Unix 98 PTYs enable this.  Some older
-# applications may need this disabled.  For most current programs, 
-# you can generally leave this true.
-UNIX98PTY_ONLY = true
-
-# Enable this if /dev/pts is on a devpts or devfs file system.  Both
-# these filesystems automatically manage permissions on the /dev/pts 
-# devices.  You may need to mount this fs on /dev/pts for this to work. 
-# This is true by default.
-ASSUME_DEVPTS = true
-
-# If you want to compile the library as PIC code, turn this on.
-# This is automagically enabled when HAVE_SHARED is true
-DOPIC = false
-
-# Enable support for shared libraries?  If this is false, you can
-# ignore all the rest of the options in this file...
-HAVE_SHARED = true
-
-# uClibc has a native shared library loader for some architectures.
-BUILD_UCLIBC_LDSO = true
-
-# If you are using shared libraries, but do not want/have a native
-# uClibc shared library loader, please specify the name of your
-# system's shared library loader here...
-#SYSTEM_LDSO = /lib/ld-linux.so.2
-
-# When using shared libraries, this path is the location where the
-# shared library will be invoked.  This value will be compiled into
-# every binary compiled with uClibc.  
-#
-# BIG FAT WARNING:  
-# If you do not have a shared library loader with the correct name
-# sitting in the directory this points to, your binaries will not run.
-SHARED_LIB_LOADER_PATH = /lib
-
-# DEVEL_PREFIX is the directory into which the uClibc development
-# environment will be installed.   The result will look something 
-# like the following:
-#   DEVEL_PREFIX/
-#	lib/            <contains all runtime and static libs>
-#	include/        <Where all the header files go>
-# This value is used by the 'make install' Makefile target.  Since this
-# directory is compiled into the uclibc cross compiler spoofer, you
-# have to recompile if you change this value...
-DEVEL_PREFIX = /usr/$(TARGET_ARCH)-linux-uclibc
-
-# SYSTEM_DEVEL_PREFIX is the directory prefix used when installing
-# bin/arch-uclibc-gcc, bin/arch-uclibc-ld, etc.   This is only used by
-# the 'make install' target, and is not compiled into anything.  This
-# defaults to $DEVEL_PREFIX/usr, but makers of .rpms and .debs will
-# want to set this to "/usr" instead.
-SYSTEM_DEVEL_PREFIX = $(DEVEL_PREFIX)
-
-# DEVEL_TOOL_PREFIX is the directory prefix used when installing
-# bin/gcc, bin/ld, etc.   This is only used by the 'make install'
-# target, and is not compiled into anything.  This defaults to
-# $DEVEL_PREFIX/usr, but makers of .rpms and .debs may want to
-# set this to something else.
-DEVEL_TOOL_PREFIX = $(DEVEL_PREFIX)/usr
-
-# If you want 'make install' to install everything under a temporary
-# directory, the define PREFIX during the install step,
-# i.e., 'make PREFIX=/var/tmp/uClibc install'.
-#PREFIX = $(TOPDIR)/_install
+
+mainmenu "uClibc C Library Configuration"
+
+menu "Target Architecture Features and Options"
+
+config HAVE_ELF
+	bool
+	default y
+
+config C_SYMBOL_PREFIX
+	string
+	default ""
+
+config ARCH_CFLAGS
+	string
+	default ""
+
+config ARCH_LDFLAGS
+	string
+	default ""
+
+config LIBGCC_CFLAGS
+	string
+	default ""
+
+choice
+	prompt "Target Processor Endianness"
+	default ARCH_LITTLE_ENDIAN
+	help
+	  This is the endianness you wish to build use.  Choose either Big
+	  Endian (mips), or Little Endian (mipsel).
+
+config ARCH_LITTLE_ENDIAN
+	bool "Little Endian (mipsel)"
+
+config ARCH_BIG_ENDIAN
+	bool "Big Endian (mips)"
+
+endchoice
+
+
+source "extra/Configs/Config.in.arch"
+
+endmenu
+
+source "extra/Configs/Config.in"
+
+

+ 22 - 176
extra/Configs/Config.mipsel

@@ -1,190 +1,36 @@
-# Library Configuration rules for uClibc
 #
 #
-# This file contains rules which are shared between multiple Makefiles.  All
-# normal configuration options live in the file named "Config".  You probably
-# should not mess with this file unless you know what you are doing...  
-# 
-# Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000,2001 Erik Andersen <andersee@debian.org>
+# For a description of the syntax of this configuration file,
+# see Documentation/kbuild/config-language.txt.
 #
 #
-# 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.
-#
-# 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.
-
-NATIVE_CC = gcc
-
-# Specify the target
-TARGET_ARCH=mipsel
-
-# If you are running a cross compiler, you may want to set this
-# to something more interesting...  Target architecture is determined
-# by asking this compiler what arch it compiles stuff for.
-CROSS = mipsel-linux-
-CC = $(CROSS)gcc
-AR = $(CROSS)ar
-LD = $(CROSS)ld
-NM = $(CROSS)nm
-STRIPTOOL = $(CROSS)strip
-#STRIPTOOL = /bin/true
-
-# Set the following to `true' to make a debuggable build, and `false' for
-# production builds.
-DODEBUG = false
-
-# Compiler warnings you want to see 
-WARNINGS = -Wall
-
-# Note that the kernel source you use to compile with should be the same as the
-# Linux kernel you run your apps on.  uClibc doesn't even try to achieve binary
-# compatibility across kernel versions.  So don't expect, for example, uClibc
-# compiled with Linux kernel 2.0.x to implement lchown properly, since 2.0.x
-# can't do that. Similarly, if you compile uClibc vs Linux 2.4.x kernel headers,
-# but then run on Linux 2.0.x, lchown will be compiled into uClibc, but won't
-# work at all.  You have been warned.
-KERNEL_SOURCE = /usr/src/linux
-
-# Set this to `false' if your CPU doesn't have a memory management unit (MMU).
-# Set it to `true' otherwise.
-HAS_MMU = true
-
-# Set this to `false' if you don't have/need basic floating point support
-# support in libc (strtod, printf, scanf).  Set it to `true' otherwise.
-# If this is not true, then libm will not be built.
-HAS_FLOATING_POINT = true
-
-# Set to `true' if you want the math library to contain the full set
-# of C99 math library features.  Costs an extra 35k or so on x86. 
-DO_C99_MATH = false
 
 
-# Set this to 'false if you don't need shadow password support.
-HAS_SHADOW = false
+mainmenu "uClibc C Library Configuration"
 
 
-# Set this to `false' if you don't have/need locale support; `true' otherwise.
-# NOTE: Currently does not affect collation.
-# You must also generate the locale data and associated .h file.
-# See the README in directory extra/locale for details.
-HAS_LOCALE = false
+menu "Target Architecture Features and Options"
 
 
-# Set this to `false' if you don't have/need wide char support.
-HAS_WCHAR = false
+config HAVE_ELF
+	bool
+	default y
 
 
-# This specifies which malloc implementation is used.
-#
-# "malloc" use mmap for all allocations and so works very well on MMU-less
-# systems that do not support the brk() system call.   It is pretty smart 
-# about reusing already allocated memory, and minimizing memory wastage.
-#
-# "malloc-930716" is derived from libc-5.3.12 and uses the brk() system call
-# for all memory allocations.  This makes it very fast.  It is also pretty
-# smart about reusing already allocated memory, and minimizing memory wastage.
-# Because this uses brk() it will not work on uClinux MMU-less systems.
-#MALLOC = malloc 
-MALLOC = malloc-930716
-
-# If you want large file support (greater then 2 GiB) turn this on.
-# Do not enable this unless your kernel provides large file support.
-DOLFS = false
-
-# Posix regular expression code is really big -- 27k all by itself.
-# If you don't use regular expressions, turn this off and save space.
-# Of course, if you only staticly link, leave this on, since it will
-# only be included in your apps if you use regular expressions. 
-INCLUDE_REGEX = true
-
-# If you want to include RPC support, enable this.  RPC is almost never used 
-# for anything except NFS support, so unless you plan to use NFS, leave this
-# disabled.  This is off by default.
-INCLUDE_RPC = false
-
-# Normally we enable just enough RPC support for things like rshd and 
-# nfs mount to work.  If you find you need the rest of the RPC stuff, 
-# then enable this.
-INCLUDE_FULL_RPC = false
+config C_SYMBOL_PREFIX
+	string
+	default ""
 
 
-# If you want to include support for the next version of the Internet
-# Protocol: IP version 6, enable this.  This is off by default.
-INCLUDE_IPV6 = false
+config ARCH_CFLAGS
+	string
+	default ""
 
 
-# If you want to include threads support, enable this.  The C library will
-# be compiled thread-safe, and the libpthread library will be built.
-INCLUDE_THREADS = true
+config ARCH_LDFLAGS
+	string
+	default ""
 
 
-# If you want to support only Unix 98 PTYs enable this.  Some older
-# applications may need this disabled.  For most current programs, 
-# you can generally leave this true.
-UNIX98PTY_ONLY = true
+config LIBGCC_CFLAGS
+	string
+	default ""
 
 
-# Enable this if /dev/pts is on a devpts or devfs file system.  Both
-# these filesystems automatically manage permissions on the /dev/pts 
-# devices.  You may need to mount this fs on /dev/pts for this to work. 
-# This is true by default.
-ASSUME_DEVPTS = true
-
-# If you want to compile the library as PIC code, turn this on.
-# This is automagically enabled when HAVE_SHARED is true
-DOPIC = false
-
-# Enable support for shared libraries?  If this is false, you can
-# ignore all the rest of the options in this file...
-HAVE_SHARED = true
-
-# uClibc has a native shared library loader for some architectures.
-BUILD_UCLIBC_LDSO = true
-
-# If you are using shared libraries, but do not want/have a native
-# uClibc shared library loader, please specify the name of your
-# system's shared library loader here...
-#SYSTEM_LDSO = /lib/ld-linux.so.2
-
-# When using shared libraries, this path is the location where the
-# shared library will be invoked.  This value will be compiled into
-# every binary compiled with uClibc.  
-#
-# BIG FAT WARNING:  
-# If you do not have a shared library loader with the correct name
-# sitting in the directory this points to, your binaries will not run.
-SHARED_LIB_LOADER_PATH = /lib
+source "extra/Configs/Config.in.arch"
 
 
-# DEVEL_PREFIX is the directory into which the uClibc development
-# environment will be installed.   The result will look something 
-# like the following:
-#   DEVEL_PREFIX/
-#	lib/            <contains all runtime and static libs>
-#	include/        <Where all the header files go>
-# This value is used by the 'make install' Makefile target.  Since this
-# directory is compiled into the uclibc cross compiler spoofer, you
-# have to recompile if you change this value...
-DEVEL_PREFIX = /usr/$(TARGET_ARCH)-linux-uclibc
+endmenu
 
 
-# SYSTEM_DEVEL_PREFIX is the directory prefix used when installing
-# bin/arch-uclibc-gcc, bin/arch-uclibc-ld, etc.   This is only used by
-# the 'make install' target, and is not compiled into anything.  This
-# defaults to $DEVEL_PREFIX/usr, but makers of .rpms and .debs will
-# want to set this to "/usr" instead.
-SYSTEM_DEVEL_PREFIX = $(DEVEL_PREFIX)
+source "extra/Configs/Config.in"
 
 
-# DEVEL_TOOL_PREFIX is the directory prefix used when installing
-# bin/gcc, bin/ld, etc.   This is only used by the 'make install'
-# target, and is not compiled into anything.  This defaults to
-# $DEVEL_PREFIX/usr, but makers of .rpms and .debs may want to
-# set this to something else.
-DEVEL_TOOL_PREFIX = $(DEVEL_PREFIX)/usr
 
 
-# If you want 'make install' to install everything under a temporary
-# directory, the define PREFIX during the install step,
-# i.e., 'make PREFIX=/var/tmp/uClibc install'.
-#PREFIX = $(TOPDIR)/_install

+ 22 - 178
extra/Configs/Config.powerpc

@@ -1,192 +1,36 @@
-# Library Configuration rules for uClibc
 #
 #
-# This file contains rules which are shared between multiple Makefiles.  All
-# normal configuration options live in the file named "Config".  You probably
-# should not mess with this file unless you know what you are doing...  
-# 
-# Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000,2001 Erik Andersen <andersee@debian.org>
+# For a description of the syntax of this configuration file,
+# see Documentation/kbuild/config-language.txt.
 #
 #
-# 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.
-#
-# 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.
-
-NATIVE_CC = gcc
-
-# If you are running a cross compiler, you may want to set this
-# to something more interesting...  Target architecture is determined
-# by asking this compiler what arch it compiles stuff for.
-CROSS = #$(TARGET_ARCH)-linux-
-CC = $(CROSS)gcc
-AR = $(CROSS)ar
-LD = $(CROSS)ld
-NM = $(CROSS)nm
-STRIPTOOL = $(CROSS)strip
-#STRIPTOOL = /bin/true
-
-# Set the following to `true' to make a debuggable build, and `false' for
-# production builds.
-DODEBUG = false
-
-# Compiler warnings you want to see 
-WARNINGS=-Wall
 
 
-# Note that the kernel source you use to compile with should be the same as the
-# Linux kernel you run your apps on.  uClibc doesn't even try to achieve binary
-# compatibility across kernel versions.  So don't expect, for example, uClibc
-# compiled with Linux kernel 2.0.x to implement lchown properly, since 2.0.x
-# can't do that. Similarly, if you compile uClibc vs Linux 2.4.x kernel headers,
-# but then run on Linux 2.0.x, lchown will be compiled into uClibc, but won't
-# work at all.  You have been warned.
-KERNEL_SOURCE=/usr/src/linux
+mainmenu "uClibc C Library Configuration"
 
 
-# Set this to `false' if your CPU doesn't have a memory management unit (MMU).
-# Set it to `true' otherwise.
-HAS_MMU = true
+menu "Target Architecture Features and Options"
 
 
-# Set this to `false' if you don't have/need basic floating point support
-# support in libc (strtod, printf, scanf).  Set it to `true' otherwise.
-# If this is not true, then libm will not be built.
-HAS_FLOATING_POINT = true
+config HAVE_ELF
+	bool
+	default y
 
 
-# Set to `true' if you want the math library to contain the full set
-# of C99 math library features.  Costs an extra 35k or so on x86. 
-DO_C99_MATH = false
-
-# Set this to 'false if you don't need shadow password support.
-HAS_SHADOW = false
-
-# Set this to `false' if you don't have/need locale support; `true' otherwise.
-# NOTE: Currently does not affect collation.
-# You must also generate the locale data and associated .h file.
-# See the README in directory extra/locale for details.
-HAS_LOCALE = false
-
-# Set this to `false' if you don't have/need wide char support.
-HAS_WCHAR = false
-
-# This specifies which malloc implementation is used.
-#
-# "malloc" use mmap for all allocations and so works very well on MMU-less
-# systems that do not support the brk() system call.   It is pretty smart 
-# about reusing already allocated memory, and minimizing memory wastage.
-#
-# "malloc-930716" is derived from libc-5.3.12 and uses the brk() system call
-# for all memory allocations.  This makes it very fast.  It is also pretty
-# smart about reusing already allocated memory, and minimizing memory wastage.
-# Because this uses brk() it will not work on uClinux MMU-less systems.
-#MALLOC = malloc 
-MALLOC = malloc-930716
+config C_SYMBOL_PREFIX
+	string
+	default ""
 
 
-# If you want large file support (greater then 2 GiB) turn this on.
-# Do not enable this unless your kernel provides large file support.
-DOLFS = false
+config ARCH_CFLAGS
+	string
+	default ""
 
 
-# Posix regular expression code is really big -- 27k all by itself.
-# If you don't use regular expressions, turn this off and save space.
-# Of course, if you only staticly link, leave this on, since it will
-# only be included in your apps if you use regular expressions. 
-INCLUDE_REGEX=true
+config ARCH_LDFLAGS
+	string
+	default ""
 
 
-# If you want to include RPC support, enable this.  RPC is almost never used 
-# for anything except NFS support, so unless you plan to use NFS, leave this
-# disabled.  This is off by default.
-INCLUDE_RPC = false
-
-# Normally we enable just enough RPC support for things like rshd and 
-# nfs mount to work.  If you find you need the rest of the RPC stuff, 
-# then enable this.
-INCLUDE_FULL_RPC = false
-
-# If you want to include support for the next version of the Internet
-# Protocol: IP version 6, enable this.  This is off by default.
-INCLUDE_IPV6 = false
-
-# If you want to include threads support, enable this.  The C library will
-# be compiled thread-safe, and the libpthread library will be built.
-INCLUDE_THREADS=false
-
-# If you want to support only Unix 98 PTYs enable this.  Some older
-# applications may need this disabled.  For most current programs, 
-# you can generally leave this true.
-UNIX98PTY_ONLY = true
-
-# Enable this if /dev/pts is on a devpts or devfs file system.  Both
-# these filesystems automatically manage permissions on the /dev/pts 
-# devices.  You may need to mount this fs on /dev/pts for this to work. 
-# This is true by default.
-ASSUME_DEVPTS = true
-
-
-# If you want to compile the library as PIC code, turn this on.
-# This is automagically enabled when HAVE_SHARED is true
-DOPIC = false
-
-# Enable support for shared libraries?  If this is false, you can
-# ignore all the rest of the options in this file...
-HAVE_SHARED = true
-
-# uClibc has a native shared library loader for some architectures.
-BUILD_UCLIBC_LDSO=true
-
-# If you are using shared libraries, but do not want/have a native
-# uClibc shared library loader, please specify the name of your
-# system's shared library loader here...
-#SYSTEM_LDSO=/lib/ld-linux.so.2
-SYSTEM_LDSO=$(shell for each in `$(CC) -print-search-dirs| \
-    grep ^libraries| sed -e 's/^libraries: //' -e 's/:/ /g'`;\
-    do ls $$each/ld.so.* 2>/dev/null;done)
-
-# When using shared libraries, this path is the location where the
-# shared library will be invoked.  This value will be compiled into
-# every binary compiled with uClibc.  
-#
-# BIG FAT WARNING:  
-# If you do not have a shared library loader with the correct name
-# sitting in the directory this points to, your binaries will not run.
-SHARED_LIB_LOADER_PATH=$(DEVEL_PREFIX)/lib
+config LIBGCC_CFLAGS
+	string
+	default ""
 
 
-# DEVEL_PREFIX is the directory into which the uClibc development
-# environment will be installed.   The result will look something 
-# like the following:
-#   DEVEL_PREFIX/
-#	lib/            <contains all runtime and static libs>
-#	include/        <Where all the header files go>
-# This value is used by the 'make install' Makefile target.  Since this
-# directory is compiled into the uclibc cross compiler spoofer, you
-# have to recompile if you change this value...
-DEVEL_PREFIX = /usr/$(TARGET_ARCH)-linux-uclibc
+source "extra/Configs/Config.in.arch"
 
 
-# SYSTEM_DEVEL_PREFIX is the directory prefix used when installing
-# bin/arch-uclibc-gcc, bin/arch-uclibc-ld, etc.   This is only used by
-# the 'make install' target, and is not compiled into anything.  This
-# defaults to $DEVEL_PREFIX/usr, but makers of .rpms and .debs will
-# want to set this to "/usr" instead.
-SYSTEM_DEVEL_PREFIX = $(DEVEL_PREFIX)
+endmenu
 
 
-# DEVEL_TOOL_PREFIX is the directory prefix used when installing
-# bin/gcc, bin/ld, etc.   This is only used by the 'make install'
-# target, and is not compiled into anything.  This defaults to
-# $DEVEL_PREFIX/usr, but makers of .rpms and .debs may want to
-# set this to something else.
-DEVEL_TOOL_PREFIX = $(DEVEL_PREFIX)/usr
+source "extra/Configs/Config.in"
 
 
-# If you want 'make install' to install everything under a temporary
-# directory, the define PREFIX during the install step,
-# i.e., 'make PREFIX=/var/tmp/uClibc install'.
-#PREFIX = $(TOPDIR)/_install
 
 

+ 97 - 216
extra/Configs/Config.sh

@@ -1,219 +1,100 @@
-# Library Configuration rules for uClibc
 #
 #
-# This file contains rules which are shared between multiple Makefiles.  All
-# normal configuration options live in the file named "Config".  You probably
-# should not mess with this file unless you know what you are doing...  
-# 
-# Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2001 by Hewlett-Packard Australia
+# For a description of the syntax of this configuration file,
+# see Documentation/kbuild/config-language.txt.
 #
 #
-# 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.
-#
-# 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.
-
-NATIVE_CC = gcc
-
-# If you are running a cross compiler, you may want to set this
-# to something more interesting...  Target architecture is determined
-# by asking this compiler what arch it compiles stuff for.
-CROSS = /usr/cygnus/yapp-001013/H-i686-pc-linux-gnulibc2.1/bin/sh-linux-gnu-
-CC = $(CROSS)gcc
-AR = $(CROSS)ar
-LD = $(CROSS)ld
-NM = $(CROSS)nm
-STRIPTOOL = $(CROSS)strip
-#STRIPTOOL = /bin/true
-
-# Set the following to `true' to make a debuggable build, and `false' for
-# production builds.
-DODEBUG = false
-
-# Compiler warnings you want to see 
-WARNINGS=-Wall
-
-# Note that the kernel source you use to compile with should be the same as the
-# Linux kernel you run your apps on.  uClibc doesn't even try to achieve binary
-# compatibility across kernel versions.  So don't expect, for example, uClibc
-# compiled with Linux kernel 2.0.x to implement lchown properly, since 2.0.x
-# can't do that. Similarly, if you compile uClibc vs Linux 2.4.x kernel headers,
-# but then run on Linux 2.0.x, lchown will be compiled into uClibc, but won't
-# work at all.  You have been warned.
-KERNEL_SOURCE=../../../linux
 
 
-#
-# ARCH_CFLAGS if your have something special to add to the CFLAGS
-#
-ARCH_CFLAGS  = -DNO_UNDERSCORES
-
-ifeq ($(strip $(TARGET_ARCH)),sh)
-ifeq ($(strip $(TARGET_PROC)),SH2_BIG_THAMIS)
-ARCH_CFLAGS += -DHIOS -mb -m2 -specs=/usr/cygnus/yapp-001013/H-i686-pc-linux-gnulibc2.1/lib/gcc-lib/sh-linux-gnu/2.96-yapp-001013/specs_sh2
-HAS_MMU = false
-endif
-ifeq ($(strip $(TARGET_PROC)),SH3_BIG_UCLINUX)
-ARCH_CFLAGS += -mb
-HAS_MMU = false
-endif
-ifeq ($(strip $(TARGET_PROC)),SH3_LITTLE_UCLINUX)
-ARCH_CFLAGS += -ml
-HAS_MMU = false
-endif
-ifeq ($(strip $(TARGET_PROC)),SH3_BIG)
-ARCH_CFLAGS += -mb -m3 -D__BIG_ENDIAN__
-HAS_MMU = true
-endif
-ifeq ($(strip $(TARGET_PROC)),SH3)
-ARCH_CFLAGS += -ml
-HAS_MMU = true
-endif
-ifeq ($(strip $(TARGET_PROC)),SH4)
-ARCH_CFLAGS += -ml -m4
-HAS_MMU = true
-endif
-endif
-
-# Set this to `false' if you don't have/need basic floating point support
-# support in libc (strtod, printf, scanf).  Set it to `true' otherwise.
-# If this is not true, then libm will not be built.
-HAS_FLOATING_POINT = true
-
-# Set to `true' if you want the math library to contain the full set
-# of C99 math library features.  Costs an extra 35k or so on x86. 
-DO_C99_MATH = false
-
-# Set this to 'false if you don't need shadow password support.
-HAS_SHADOW = false
-
-# Set this to `false' if you don't have/need locale support; `true' otherwise.
-# NOTE: Currently does not affect collation.
-# You must also generate the locale data and associated .h file.
-# See the README in directory extra/locale for details.
-HAS_LOCALE = false
-
-# Set this to `false' if you don't have/need wide char support.
-HAS_WCHAR = false
-
-# This specifies which malloc implementation is used.
-#
-# "malloc" use mmap for all allocations and so works very well on MMU-less
-# systems that do not support the brk() system call.   It is pretty smart 
-# about reusing already allocated memory, and minimizing memory wastage.
-#
-# "malloc-930716" is derived from libc-5.3.12 and uses the brk() system call
-# for all memory allocations.  This makes it very fast.  It is also pretty
-# smart about reusing already allocated memory, and minimizing memory wastage.
-# Because this uses brk() it will not work on uClinux MMU-less systems.
-MALLOC = malloc 
-#MALLOC = malloc-930716
-
-# If you want large file support (greater then 2 GiB) turn this on.
-# Do not enable this unless your kernel provides large file support.
-DOLFS = false
-
-# Posix regular expression code is really big -- 27k all by itself.
-# If you don't use regular expressions, turn this off and save space.
-# Of course, if you only staticly link, leave this on, since it will
-# only be included in your apps if you use regular expressions. 
-INCLUDE_REGEX=true
-
-# If you want to include RPC support, enable this.  RPC is almost never used 
-# for anything except NFS support, so unless you plan to use NFS, leave this
-# disabled.  This is off by default.
-INCLUDE_RPC = false
-
-# Normally we enable just enough RPC support for things like rshd and 
-# nfs mount to work.  If you find you need the rest of the RPC stuff, 
-# then enable this.
-INCLUDE_FULL_RPC = false
-
-# If you want to include support for the next version of the Internet
-# Protocol: IP version 6, enable this.  This is off by default.
-INCLUDE_IPV6 = false
-
-# If you want to include threads support, enable this.  The C library will
-# be compiled thread-safe, and the libpthread library will be built.
-INCLUDE_THREADS = true
-
-# If you want to support only Unix 98 PTYs enable this.  Some older
-# applications may need this disabled.  For most current programs, 
-# you can generally leave this true.
-UNIX98PTY_ONLY = true
-
-# Enable this if /dev/pts is on a devpts or devfs file system.  Both
-# these filesystems automatically manage permissions on the /dev/pts 
-# devices.  You may need to mount this fs on /dev/pts for this to work. 
-# This is true by default.
-ASSUME_DEVPTS = true
-
-
-# If you want to compile the library as PIC code, turn this on.
-# This is automagically enabled when HAVE_SHARED is true
-DOPIC = false
-
-# Enable support for shared libraries?  If this is false, you can
-# ignore all the rest of the options in this file...
-HAVE_SHARED = true
-
-# uClibc has a native shared library loader for some architectures.
-BUILD_UCLIBC_LDSO= true
-
-# If you are using shared libraries, but do not want/have a native
-# uClibc shared library loader, please specify the name of your
-# system's shared library loader here...
-#SYSTEM_LDSO=/lib/ld-linux.so.2
-
-# When using shared libraries, this path is the location where the
-# shared library will be invoked.  This value will be compiled into
-# every binary compiled with uClibc.  
-#
-# BIG FAT WARNING:  
-# If you do not have a shared library loader with the correct name
-# sitting in the directory this points to, your binaries will not run.
-SHARED_LIB_LOADER_PATH=$(DEVEL_PREFIX)/lib
-
-# DEVEL_PREFIX is the directory into which the uClibc development
-# environment will be installed.   The result will look something 
-# like the following:
-#   DEVEL_PREFIX/
-#	lib/            <contains all runtime and static libs>
-#	include/        <Where all the header files go>
-# This value is used by the 'make install' Makefile target.  Since this
-# directory is compiled into the uclibc cross compiler spoofer, you
-# have to recompile if you change this value...
-DEVEL_PREFIX = /usr/$(TARGET_ARCH)-linux-uclibc
-
-# SYSTEM_DEVEL_PREFIX is the directory prefix used when installing
-# bin/arch-uclibc-gcc, bin/arch-uclibc-ld, etc.   This is only used by
-# the 'make install' target, and is not compiled into anything.  This
-# defaults to $DEVEL_PREFIX/usr, but makers of .rpms and .debs will
-# want to set this to "/usr" instead.
-SYSTEM_DEVEL_PREFIX = $(DEVEL_PREFIX)
-
-# DEVEL_TOOL_PREFIX is the directory prefix used when installing
-# bin/gcc, bin/ld, etc.   This is only used by the 'make install'
-# target, and is not compiled into anything.  This defaults to
-# $DEVEL_PREFIX/usr, but makers of .rpms and .debs may want to
-# set this to something else.
-DEVEL_TOOL_PREFIX = $(DEVEL_PREFIX)/usr
-
-# If you want 'make install' to install everything under a temporary
-# directory, the define PREFIX during the install step,
-# i.e., 'make PREFIX=/var/tmp/uClibc install'.
-#PREFIX = $(TOPDIR)/_install
-
-#Enable .hidden asm directives
-HAVE_DOT_HIDDEN=true
+mainmenu "uClibc C Library Configuration"
+
+menu "Target Architecture Features and Options"
+
+config HAVE_ELF
+	bool
+	default y
+
+config C_SYMBOL_PREFIX
+	string
+	default ""
+
+config ARCH_CFLAGS
+	string
+	default ""
+
+config ARCH_LDFLAGS
+	string
+	default ""
+
+config LIBGCC_CFLAGS
+	string
+	default ""
+
+config HAVE_DOT_HIDDEN
+        bool
+	default y
+
+choice
+	prompt "Target Processor Type"
+	default CONFIG_GENERIC_ARM
+	help
+	  This is the processor type of your CPU. This information is used for
+	  optimizing purposes, as well as to determine if your CPU has an MMU,
+	  an FPU, etc.  If you pick the wrong CPU type, there is no guarantee
+	  that uClibc will work at all....
+
+	  Here are the available choices:
+	  - "SH2" Hitachi SH2
+	  - "SH3" Hitachi SH3
+	  - "SH4" Hitachi SH4
+	  - "SH5" Hitachi SH5
+
+config CONFIG_SH2
+	bool "SH2"
+
+config CONFIG_SH3
+	bool "SH3"
+
+config CONFIG_SH4
+	bool "SH4"
+
+config CONFIG_SH5
+	bool "SH5"
+
+endchoice
+
+choice
+	prompt "Target Processor Endianness"
+	default ARCH_LITTLE_ENDIAN
+	help
+	  This is the endianness you wish to build use.  Choose either Big
+	  Endian, or Little Endian.
+
+config ARCH_LITTLE_ENDIAN
+	bool "Little Endian"
+
+config ARCH_BIG_ENDIAN
+	bool "Big Endian"
+
+endchoice
+
+
+config ARCH_HAS_NO_MMU
+	bool
+	default y if CONFIG_SH2 || CONFIG_SH3
+
+config CPU_CFLAGS
+	string
+	default "-DHIOS -ml -m2" if CONFIG_SH2 && ARCH_LITTLE_ENDIAN
+	default "-DHIOS -mb -m2" if CONFIG_SH2 && ARCH_BIG_ENDIAN
+	default "-DHIOS -ml -m3" if CONFIG_SH3 && ARCH_LITTLE_ENDIAN
+	default "-DHIOS -mb -m3" if CONFIG_SH3 && ARCH_BIG_ENDIAN
+	default "-DHIOS -ml -m4" if CONFIG_SH4 && ARCH_LITTLE_ENDIAN
+	default "-DHIOS -mb -m4" if CONFIG_SH4 && ARCH_BIG_ENDIAN
+	default "-DHIOS -ml -m5" if CONFIG_SH5 && ARCH_LITTLE_ENDIAN
+	default "-DHIOS -mb -m5" if CONFIG_SH5 && ARCH_BIG_ENDIAN
+
+source "extra/Configs/Config.in.arch"
+
+endmenu
+
+source "extra/Configs/Config.in"
+
+

+ 22 - 183
extra/Configs/Config.sparc

@@ -1,197 +1,36 @@
-# Library Configuration rules for uClibc
 #
 #
-# This file contains rules which are shared between multiple Makefiles.  All
-# normal configuration options live in the file named "Config".  You probably
-# should not mess with this file unless you know what you are doing...  
-# 
-# Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000,2001 Erik Andersen <andersee@debian.org>
+# For a description of the syntax of this configuration file,
+# see Documentation/kbuild/config-language.txt.
 #
 #
-# 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.
-#
-# 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.
-
-NATIVE_CC = gcc
-
-# If you are running a cross compiler, you may want to set this
-# to something more interesting...  Target architecture is determined
-# by asking this compiler what arch it compiles stuff for.
-CROSS = #$(TARGET_ARCH)-linux-
-CC = $(CROSS)gcc
-AR = $(CROSS)ar
-LD = $(CROSS)ld
-NM = $(CROSS)nm
-STRIPTOOL = $(CROSS)strip
-#STRIPTOOL = /bin/true
-
-# Set the following to `true' to make a debuggable build, and `false' for
-# production builds.
-DODEBUG = false
-
-# Compiler warnings you want to see 
-WARNINGS=-Wall
-
-# Note that the kernel source you use to compile with should be the same as the
-# Linux kernel you run your apps on.  uClibc doesn't even try to achieve binary
-# compatibility across kernel versions.  So don't expect, for example, uClibc
-# compiled with Linux kernel 2.0.x to implement lchown properly, since 2.0.x
-# can't do that. Similarly, if you compile uClibc vs Linux 2.4.x kernel headers,
-# but then run on Linux 2.0.x, lchown will be compiled into uClibc, but won't
-# work at all.  You have been warned.
-KERNEL_SOURCE=/usr/src/kernel-headers-2.2.19-sparc
-
-# Set this to `false' if your CPU doesn't have a memory management unit (MMU).
-# Set it to `true' otherwise.
-HAS_MMU = true
-
-# Set this to `false' if you don't have/need basic floating point support
-# support in libc (strtod, printf, scanf).  Set it to `true' otherwise.
-# If this is not true, then libm will not be built.
-HAS_FLOATING_POINT = true
-
-# Set to `true' if you want the math library to contain the full set
-# of C99 math library features.  Costs an extra 35k or so on x86. 
-DO_C99_MATH = true
-
-# Set this to 'false if you don't need shadow password support.
-HAS_SHADOW = false
-
-# Set this to `false' if you don't have/need locale support; `true' otherwise.
-# NOTE: Currently does not affect collation.
-# You must also generate the locale data and associated .h file.
-# See the README in directory extra/locale for details.
-HAS_LOCALE = false
 
 
-# Set this to `false' if you don't have/need wide char support.
-HAS_WCHAR = false
+mainmenu "uClibc C Library Configuration"
 
 
-# This specifies which malloc implementation is used.
-#
-# "malloc" use mmap for all allocations and so works very well on MMU-less
-# systems that do not support the brk() system call.   It is pretty smart 
-# about reusing already allocated memory, and minimizing memory wastage.
-#
-# "malloc-930716" is derived from libc-5.3.12 and uses the brk() system call
-# for all memory allocations.  This makes it very fast.  It is also pretty
-# smart about reusing already allocated memory, and minimizing memory wastage.
-# Because this uses brk() it will not work on uClinux MMU-less systems.
-#MALLOC = malloc 
-MALLOC = malloc-930716
-
-# Having brk allows one to use malloc-930716, which is an order
-# of magnitude faster then "malloc" for most allocations, but 
-# will do very bad things on MMU-less systems...
-EXCLUDE_BRK=false
-
-# If you want large file support (greater then 2 GiB) turn this on.
-# Do not enable this unless your kernel provides large file support.
-DOLFS = false
-
-# Posix regular expression code is really big -- 27k all by itself.
-# If you don't use regular expressions, turn this off and save space.
-# Of course, if you only staticly link, leave this on, since it will
-# only be included in your apps if you use regular expressions. 
-INCLUDE_REGEX=true
-
-# If you want to include RPC support, enable this.  RPC is almost never used 
-# for anything except NFS support, so unless you plan to use NFS, leave this
-# disabled.  This is off by default.
-INCLUDE_RPC = false
-
-# Normally we enable just enough RPC support for things like rshd and 
-# nfs mount to work.  If you find you need the rest of the RPC stuff, 
-# then enable this.
-INCLUDE_FULL_RPC = false
+menu "Target Architecture Features and Options"
 
 
-# If you want to include support for the next version of the Internet
-# Protocol: IP version 6, enable this.  This is off by default.
-INCLUDE_IPV6 = false
+config HAVE_ELF
+	bool
+	default y
 
 
-# If you want to include threads support, enable this.  The C library will
-# be compiled thread-safe, and the libpthread library will be built.
-INCLUDE_THREADS=false
+config C_SYMBOL_PREFIX
+	string
+	default ""
 
 
-# If you want to support only Unix 98 PTYs enable this.  Some older
-# applications may need this disabled.  For most current programs, 
-# you can generally leave this true.
-UNIX98PTY_ONLY = true
+config ARCH_CFLAGS
+	string
+	default "-fpic -mlinux -D__USE_WEAK_ALIASES"
 
 
-# Enable this if /dev/pts is on a devpts or devfs file system.  Both
-# these filesystems automatically manage permissions on the /dev/pts 
-# devices.  You may need to mount this fs on /dev/pts for this to work. 
-# This is true by default.
-ASSUME_DEVPTS = true
+config ARCH_LDFLAGS
+	string
+	default "-mcrislinux"
 
 
+config LIBGCC_CFLAGS
+	string
+	default "-mlinux"
 
 
-# If you want to compile the library as PIC code, turn this on.
-# This is automagically enabled when HAVE_SHARED is true
-DOPIC = false
-
-# Enable support for shared libraries?  If this is false, you can
-# ignore all the rest of the options in this file...
-HAVE_SHARED = false
-
-# uClibc has a native shared library loader for some architectures.
-BUILD_UCLIBC_LDSO=false
-
-# If you are using shared libraries, but do not want/have a native
-# uClibc shared library loader, please specify the name of your
-# system's shared library loader here...
-#SYSTEM_LDSO=/lib/ld-linux.so.2
-SYSTEM_LDSO=$(shell for each in `$(CC) -print-search-dirs| \
-    grep ^libraries| sed -e 's/^libraries: //' -e 's/:/ /g'`;\
-    do ls $$each/ld.so.* 2>/dev/null;done)
-
-# When using shared libraries, this path is the location where the
-# shared library will be invoked.  This value will be compiled into
-# every binary compiled with uClibc.  
-#
-# BIG FAT WARNING:  
-# If you do not have a shared library loader with the correct name
-# sitting in the directory this points to, your binaries will not run.
-SHARED_LIB_LOADER_PATH=$(DEVEL_PREFIX)/lib
-
-# DEVEL_PREFIX is the directory into which the uClibc development
-# environment will be installed.   The result will look something 
-# like the following:
-#   DEVEL_PREFIX/
-#	lib/            <contains all runtime and static libs>
-#	include/        <Where all the header files go>
-# This value is used by the 'make install' Makefile target.  Since this
-# directory is compiled into the uclibc cross compiler spoofer, you
-# have to recompile if you change this value...
-DEVEL_PREFIX = /usr/$(TARGET_ARCH)-linux-uclibc
+source "extra/Configs/Config.in.arch"
 
 
-# SYSTEM_DEVEL_PREFIX is the directory prefix used when installing
-# bin/arch-uclibc-gcc, bin/arch-uclibc-ld, etc.   This is only used by
-# the 'make install' target, and is not compiled into anything.  This
-# defaults to $DEVEL_PREFIX/usr, but makers of .rpms and .debs will
-# want to set this to "/usr" instead.
-SYSTEM_DEVEL_PREFIX = $(DEVEL_PREFIX)
+endmenu
 
 
-# DEVEL_TOOL_PREFIX is the directory prefix used when installing
-# bin/gcc, bin/ld, etc.   This is only used by the 'make install'
-# target, and is not compiled into anything.  This defaults to
-# $DEVEL_PREFIX/usr, but makers of .rpms and .debs may want to
-# set this to something else.
-DEVEL_TOOL_PREFIX = $(DEVEL_PREFIX)/usr
+source "extra/Configs/Config.in"
 
 
-# If you want 'make install' to install everything under a temporary
-# directory, the define PREFIX during the install step,
-# i.e., 'make PREFIX=/var/tmp/uClibc install'.
-#PREFIX = $(TOPDIR)/_install
 
 

+ 28 - 170
extra/Configs/Config.v850e

@@ -1,186 +1,44 @@
-# Library Configuration rules for uClibc
 #
 #
-# This file contains rules which are shared between multiple Makefiles.  All
-# normal configuration options live in the file named "Config".  You probably
-# should not mess with this file unless you know what you are doing...  
-# 
-# Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000,2001 Erik Andersen <andersee@debian.org>
+# For a description of the syntax of this configuration file,
+# see Documentation/kbuild/config-language.txt.
 #
 #
-# 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.
-#
-# 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.
-
-# The root directory used for installation, corresponding to $(prefix)
-# for GNU packages.  This defaults to /usr/local, but makers of .rpms
-# and .debs will want to set this to "/usr" instead.
-INSTALL_ROOT = /usr/local
-
-NATIVE_CC = gcc
-
-# If you are running a cross compiler, you may want to set this
-# to something more interesting...  Target architecture is determined
-# by asking this compiler what arch it compiles stuff for.
-CROSS = v850e-elf-
-CC = $(CROSS)gcc
-AR = $(CROSS)ar
-LD = $(CROSS)ld
-NM = $(CROSS)nm
-STRIPTOOL = $(CROSS)strip
-#STRIPTOOL = /bin/true
-
-# Set the following to `true' to make a debuggable build, and `false' for
-# production builds.
-DODEBUG = false
-
-# Compiler warnings you want to see 
-WARNINGS=-Wall
-
-# Note that the kernel source you use to compile with should be the same as the
-# Linux kernel you run your apps on.  uClibc doesn't even try to achieve binary
-# compatibility across kernel versions.  So don't expect, for example, uClibc
-# compiled with Linux kernel 2.0.x to implement lchown properly, since 2.0.x
-# can't do that. Similarly, if you compile uClibc vs Linux 2.4.x kernel headers,
-# but then run on Linux 2.0.x, lchown will be compiled into uClibc, but won't
-# work at all.  You have been warned.
-KERNEL_SOURCE=$(PROJ_UCLINUX)/uclinux/linux-2.4.6
-
-# Set this to `false' if your CPU doesn't have a memory management unit (MMU).
-# Set it to `true' otherwise.
-HAS_MMU = false
-
-# Set this to `false' if you don't have/need basic floating point support
-# support in libc (strtod, printf, scanf).  Set it to `true' otherwise.
-# If this is not true, then libm will not be built.
-HAS_FLOATING_POINT = true
 
 
-# Set to `true' if you want the math library to contain the full set
-# of C99 math library features.  Costs an extra 35k or so on x86. 
-DO_C99_MATH = false
+mainmenu "uClibc C Library Configuration"
 
 
-# Set this to `false' if you don't have/need locale support; `true' otherwise.
-# NOTE: Currently does not affect collation.
-# You must also generate the locale data and associated .h file.
-# See the README in directory extra/locale for details.
-HAS_LOCALE = false
+menu "Target Architecture Features and Options"
 
 
-# Set this to `false' if you don't have/need wide char support.
-HAS_WCHAR = false
+config HAVE_ELF
+	bool
+	default y
 
 
-# This specifies which malloc implementation is used.
-#
-# "malloc" use mmap for all allocations and so works very well on MMU-less
-# systems that do not support the brk() system call.   It is pretty smart 
-# about reusing already allocated memory, and minimizing memory wastage.
-#
-# "malloc-930716" is derived from libc-5.3.12 and uses the brk() system call
-# for all memory allocations.  This makes it very fast.  It is also pretty
-# smart about reusing already allocated memory, and minimizing memory wastage.
-# Because this uses brk() it will not work on uClinux MMU-less systems.
-MALLOC = malloc 
-#MALLOC = malloc-930716
-
-# If you want large file support (greater then 2 GiB) turn this on.
-# Do not enable this unless your kernel provides large file support.
-DOLFS = true
-
-# Posix regular expression code is really big -- 27k all by itself.
-# If you don't use regular expressions, turn this off and save space.
-# Of course, if you only staticly link, leave this on, since it will
-# only be included in your apps if you use regular expressions. 
-INCLUDE_REGEX=true
-
-# If you want to include RPC support, enable this.  RPC is almost never used 
-# for anything except NFS support, so unless you plan to use NFS, leave this
-# disabled.  This is off by default.
-INCLUDE_RPC = false
-
-# Normally we enable just enough RPC support for things like rshd and 
-# nfs mount to work.  If you find you need the rest of the RPC stuff, 
-# then enable this.
-INCLUDE_FULL_RPC = false
+config C_SYMBOL_PREFIX
+	string
+	default "_"
 
 
-# If you want to include support for the next version of the Internet
-# Protocol: IP version 6, enable this.  This is off by default.
-INCLUDE_IPV6 = false
+config ARCH_CFLAGS
+	string
+	default ""
 
 
-# If you want to support only Unix 98 PTYs enable this.  Some older
-# applications may need this disabled.  For most current programs, 
-# you can generally leave this true.
-UNIX98PTY_ONLY = true
+config ARCH_LDFLAGS
+	string
+	default ""
 
 
-# Enable this if /dev/pts is on a devpts or devfs file system.  Both
-# these filesystems automatically manage permissions on the /dev/pts 
-# devices.  You may need to mount this fs on /dev/pts for this to work. 
-# This is true by default.
-ASSUME_DEVPTS = true
+config LIBGCC_CFLAGS
+	string
+	default ""
 
 
+config HAVE_ELF
+	bool
+	default y
 
 
-# If you want to compile the library as PIC code, turn this on.
-# This is automagically enabled when HAVE_SHARED is true
-DOPIC = false
+config ARCH_HAS_NO_MMU
+	bool
+	default y
 
 
-# String prefixed to all user symbol names by the C compiler.  Usually
-# either empty or an underscore.
-C_SYMBOL_PREFIX = _
-
-# Enable support for shared libraries?  If this is false, you can
-# ignore all the rest of the options in this file...
-HAVE_SHARED = false
-
-# uClibc has a native shared library loader for some architectures.
-BUILD_UCLIBC_LDSO=false
-
-# If you are using shared libraries, but do not want/have a native
-# uClibc shared library loader, please specify the name of your
-# system's shared library loader here...
-#SYSTEM_LDSO=/lib/ld-linux.so.2
-
-# When using shared libraries, this path is the location where the
-# shared library will be invoked.  This value will be compiled into
-# every binary compiled with uClibc.  
-#
-# BIG FAT WARNING:  
-# If you do not have a shared library loader with the correct name
-# sitting in the directory this points to, your binaries will not run.
-SHARED_LIB_LOADER_PATH=$(DEVEL_PREFIX)/lib
+source "extra/Configs/Config.in.arch"
 
 
-# DEVEL_PREFIX is the directory into which the uClibc development
-# environment will be installed.   The result will look something 
-# like the following:
-#   DEVEL_PREFIX/
-#	lib/            <contains all runtime and static libs>
-#	include/        <Where all the header files go>
-# This value is used by the 'make install' Makefile target.  Since this
-# directory is compiled into the uclibc cross compiler spoofer, you
-# have to recompile if you change this value...
-DEVEL_PREFIX = $(INSTALL_ROOT)/$(TARGET_ARCH)-uclibc
+endmenu
 
 
-# SYSTEM_DEVEL_PREFIX is the directory prefix used when installing
-# bin/arch-uclibc-gcc, bin/arch-uclibc-ld, etc.   This is only used by
-# the 'make install' target, and is not compiled into anything.
-SYSTEM_DEVEL_PREFIX = $(INSTALL_ROOT)
+source "extra/Configs/Config.in"
 
 
-# DEVEL_TOOL_PREFIX is the directory prefix used when installing
-# bin/gcc, bin/ld, etc.   This is only used by the 'make install'
-# target, and is not compiled into anything.
-DEVEL_TOOL_PREFIX = $(DEVEL_PREFIX)
 
 
-# If you want 'make install' to install everything under a temporary
-# directory, the define PREFIX during the install step,
-# i.e., 'make PREFIX=/var/tmp/uClibc install'.
-#PREFIX = $(TOPDIR)/_install