1996-01-17 10:11:06 +08:00
|
|
|
|
# Copyright (C) 1991, 92, 93, 94, 95, 96 Free Software Foundation, Inc.
|
1995-02-18 09:27:10 +08:00
|
|
|
|
# This file is part of the GNU C Library.
|
|
|
|
|
|
|
|
|
|
# The GNU C Library 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.
|
|
|
|
|
|
|
|
|
|
# The GNU C Library 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 the GNU C Library; see the file COPYING.LIB. If
|
|
|
|
|
# not, write to the Free Software Foundation, Inc., 675 Mass Ave,
|
|
|
|
|
# Cambridge, MA 02139, USA.
|
|
|
|
|
|
|
|
|
|
#
|
|
|
|
|
# Makefile configuration options for the GNU C library.
|
|
|
|
|
#
|
|
|
|
|
ifneq (,)
|
|
|
|
|
This makefile requires GNU Make.
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
ifneq "$(origin +included-Makeconfig)" "file"
|
|
|
|
|
|
|
|
|
|
+included-Makeconfig := yes
|
|
|
|
|
|
|
|
|
|
ifdef subdir
|
|
|
|
|
.. := ../
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
# If config.make exists, the source directory was configured,
|
|
|
|
|
# so don't try to be clever and find another directory to build in.
|
|
|
|
|
ifneq (,$(wildcard $(..)config.make))
|
|
|
|
|
ARCH =
|
|
|
|
|
machine =
|
|
|
|
|
else # Not configured.
|
|
|
|
|
ifndef ARCH
|
|
|
|
|
ifdef machine
|
|
|
|
|
ARCH = $(machine)
|
|
|
|
|
endif # machine
|
|
|
|
|
endif # ARCH
|
|
|
|
|
endif # config.make
|
|
|
|
|
|
|
|
|
|
# Directory for object files and libc.a. If this is not defined, the
|
|
|
|
|
# object files live in the subdirectories where their sources live, and
|
|
|
|
|
# libc.a lives in the parent directory (this probably doesn't work any
|
|
|
|
|
# more).
|
|
|
|
|
ifdef ARCH
|
|
|
|
|
ifeq ($(filter /%,$(ARCH)),)
|
|
|
|
|
objdir := $(..)$(ARCH)
|
|
|
|
|
else
|
|
|
|
|
objdir = $(ARCH)
|
|
|
|
|
endif
|
|
|
|
|
endif
|
|
|
|
|
|
1995-11-08 10:28:15 +08:00
|
|
|
|
# $(common-objdir) is the place to put objects and
|
1995-02-18 09:27:10 +08:00
|
|
|
|
# such that are not specific to a single subdir.
|
|
|
|
|
ifdef objdir
|
|
|
|
|
objpfx = $(objdir)/
|
|
|
|
|
common-objpfx = $(objpfx)
|
|
|
|
|
common-objdir = $(objdir)
|
|
|
|
|
else
|
|
|
|
|
objpfx :=
|
|
|
|
|
ifdef ..
|
|
|
|
|
common-objpfx = $(..)
|
|
|
|
|
common-objdir = ..
|
|
|
|
|
else
|
|
|
|
|
# This is a kludge. make wizards might grok.
|
|
|
|
|
common-objpfx = sysdeps/../
|
|
|
|
|
common-objdir = .
|
|
|
|
|
endif
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Get the values defined by options to `configure'.
|
|
|
|
|
include $(common-objpfx)config.make
|
|
|
|
|
|
1995-05-09 15:03:38 +08:00
|
|
|
|
# Run config.status to update config.make and config.h. We don't show the
|
|
|
|
|
# dependence of config.h to Make, because it is only touched when it
|
|
|
|
|
# changes and so config.status would be run every time; the dependence of
|
|
|
|
|
# config.make should suffice to force regeneration and re-exec, and the new
|
|
|
|
|
# image will notice if config.h changed.
|
1996-03-06 00:23:22 +08:00
|
|
|
|
$(common-objpfx)config.make: $(common-objpfx)config.status $(..)config.h.in
|
1995-05-09 15:03:38 +08:00
|
|
|
|
cd $(<D); $(SHELL) $(<F)
|
|
|
|
|
|
1996-05-14 01:30:42 +08:00
|
|
|
|
# Find all the sysdeps configure fragments, to make sure we re-run
|
|
|
|
|
# configure when any of them changes.
|
|
|
|
|
sysdep-configures = $(foreach dir,$(config-sysdirs),\
|
|
|
|
|
$(patsubst %.in,%,\
|
|
|
|
|
$(firstword $(wildcard \
|
|
|
|
|
$(dir)/configure \
|
1996-05-14 02:10:51 +08:00
|
|
|
|
$(dir)/configure.in))))
|
1996-05-14 01:30:42 +08:00
|
|
|
|
|
1995-02-18 09:27:10 +08:00
|
|
|
|
# Force the user to configure before making.
|
1996-05-14 01:30:42 +08:00
|
|
|
|
$(common-objpfx)config.status: $(..)configure $(sysdep-configures)
|
1995-05-09 15:03:38 +08:00
|
|
|
|
@cd $(@D); if test -f $(@F); then exec $(SHELL) $(@F) --recheck; else \
|
|
|
|
|
echo The GNU C library has not been configured. >&2; \
|
|
|
|
|
echo Run \`configure\' to configure it before building. >&2; \
|
|
|
|
|
echo Try \`configure --help\' for more details. >&2; \
|
|
|
|
|
exit 1; fi
|
1995-02-18 09:27:10 +08:00
|
|
|
|
|
|
|
|
|
# Get the user's configuration parameters.
|
|
|
|
|
ifneq ($(wildcard $(..)configparms),)
|
|
|
|
|
include $(..)configparms
|
|
|
|
|
endif
|
|
|
|
|
ifneq ($(objpfx),)
|
|
|
|
|
ifneq ($(wildcard $(objpfx)configparms),)
|
|
|
|
|
include $(objpfx)configparms
|
|
|
|
|
endif
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
sysdep_dir := $(..)sysdeps
|
|
|
|
|
export sysdep_dir := $(sysdep_dir)
|
|
|
|
|
|
|
|
|
|
####
|
|
|
|
|
#### These are the configuration variables. You can define values for
|
|
|
|
|
#### the variables below in the file `configparms'.
|
|
|
|
|
#### Do NOT edit this file.
|
|
|
|
|
####
|
|
|
|
|
|
|
|
|
|
|
1995-10-17 08:41:39 +08:00
|
|
|
|
# Set this to either `stdio' or `libio', to compile in either GNU stdio
|
|
|
|
|
# or GNU libio.
|
|
|
|
|
ifndef stdio
|
|
|
|
|
stdio = stdio
|
|
|
|
|
endif
|
|
|
|
|
|
1995-02-18 09:27:10 +08:00
|
|
|
|
# Common prefix for machine-independent installation directories.
|
1995-06-22 17:00:11 +08:00
|
|
|
|
ifeq ($(origin prefix),undefined) # ifndef would override explicit empty value.
|
1995-02-18 09:27:10 +08:00
|
|
|
|
prefix = /usr/local
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
# Common prefix for machine-dependent installation directories.
|
1995-06-22 17:00:11 +08:00
|
|
|
|
ifeq ($(origin exec_prefix),undefined)
|
1995-02-18 09:27:10 +08:00
|
|
|
|
exec_prefix = $(prefix)
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
# Where to install the library and object files.
|
|
|
|
|
ifndef libdir
|
|
|
|
|
libdir = $(exec_prefix)/lib
|
|
|
|
|
endif
|
|
|
|
|
|
1995-11-08 10:28:15 +08:00
|
|
|
|
# Where to install the shared library and dynamic linker.
|
|
|
|
|
ifndef slibdir
|
|
|
|
|
slibdir = $(exec_prefix)/lib
|
|
|
|
|
endif
|
|
|
|
|
|
1995-02-18 09:27:10 +08:00
|
|
|
|
# Prefix to put on files installed in $(libdir). For libraries `libNAME.a',
|
|
|
|
|
# the prefix is spliced between `lib' and the name, so the linker switch
|
|
|
|
|
# `-l$(libprefix)NAME' finds the library; for other files the prefix is
|
|
|
|
|
# just prepended to the whole file name.
|
1995-06-22 17:00:11 +08:00
|
|
|
|
ifeq ($(origin libprefix),undefined)
|
1995-02-18 09:27:10 +08:00
|
|
|
|
libprefix =
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
# Where to install the header files.
|
|
|
|
|
ifndef includedir
|
|
|
|
|
includedir = $(exec_prefix)/include
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
# Where to install machine-independent data files.
|
1995-05-20 08:13:43 +08:00
|
|
|
|
# These are the timezone database, and the locale database.
|
1995-02-18 09:27:10 +08:00
|
|
|
|
ifndef datadir
|
|
|
|
|
datadir = $(prefix)/share
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
# Where to install the timezone data files (which are machine-independent).
|
|
|
|
|
ifndef zonedir
|
|
|
|
|
zonedir = $(datadir)/zoneinfo
|
|
|
|
|
endif
|
|
|
|
|
|
1995-09-28 17:00:19 +08:00
|
|
|
|
# Where to install the locale and message catalog data files (which are
|
|
|
|
|
# machine-independent).
|
1995-05-20 08:13:43 +08:00
|
|
|
|
ifndef localedir
|
|
|
|
|
localedir = $(datadir)/locale
|
|
|
|
|
endif
|
|
|
|
|
|
1995-09-28 17:00:19 +08:00
|
|
|
|
# Where to install the locale charmap source files.
|
Thu Mar 28 03:25:10 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu>
* intl/Makefile (copysrc): Add missing > in sed cmd.
Sat Mar 23 17:52:49 1996 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* Makeconfig: Rename Makefile variable nlsdir to i18ndir and
change value to $(datadir)/i18n. `nls' is not an appropriate
name.
* Makefile (subdirs): Add new subdir wctype.
* ctype/ctype-info.c: Add new global variable __ctype_names
and initialize from _nl_C_LC_CTYPE.
* ctype/ctype.h: In P1003.3b/D11 `alnum' is a separate character
class. Use bit 11.
[_ISbit]: Protect definition of bitmasks because they are also
used in wctype.h.
* libio/genops.c (_IO_sputbackc, _IO_sungetc): Clear EOF flag
after successfully pushing back a character.
Fundamental changes in locale implementation. Almost nothing
from the old code is used anymore.
* locale/charmap.c, locale/collate.c, locale/config.h,
locale/ctypedump.c, locale/hash.h, locale/keyword.gperf,
locale/keyword.h, locale/loadlocale.c, locale/locale-ctype.c,
locale/locale.c locale/localeconv.c, locale/localedef.c,
locale/localedef.h, locale/locfile-hash.c, locale/locfile-lex.c,
locale/locfile-parse.c, locale/messages.c, locale/monetary.c,
locale/numeric.c, locale/setlocale.c, locale/token.h,
locale/xmalloc.c: Removed.
* locale/Makefile: Update for new locale implementation with
program source code distributed in subdir.
* locale/categories.def, locale/iso-4217.def: Updated file
for new locale implementation.
* locale/langinfo.h: Updated for new locale implementation.
(ERA_D_T_FMT, ERA_T_FMT): New official values according to
P1003.2b/D11.
(_NL_COLLATE_NRULES, _NL_COLLATE_RULES, _NL_COLLATE_HASH_SIZE,
_NL_COLLATE_HASH_LAYERS, _NL_COLLATE_TABLE_EB,
_NL_COLLATE_TABLE_EL, _NL_COLLATE_UNDEFINED, _NL_COLLATE_EXTRA_EB,
_NL_COLLATE_EXTRA_EL, _NL_CTYPE_NAMES_EB, _NL_CTYPE_NAMES_EL,
_NL_CTYPE_HASH_SIZE, _NL_CTYPE_HASH_LAYERS, _NL_CTYPE_CLASS_NAMES,
_NL_CTYPE_MAP_NAMES, _NL_CTYPE_WIDTH): New internal values for
extended LC_CTYPE and LC_COLLATE implementation.
* locale/simple-hash.c, locale/simple-hash.h, locale/xmalloc.c,
locale/xstrdup.c: Helper functions for locale related programs.
* locale/C-collate.c, locale/C-ctype.c,
locale/C-messages.c, locale/C-monetary.c,
locale/C-numeric.c, locale/C-time.c,
locale/lc-collate.c, locale/lc-ctype.c,
locale/lc-messages.c, locale/lc-monetary.c,
locale/lc-numeric.c, locale/lc-time.c: New implementation of locale
functions, and new generated "C" locale data.
* locale/loadlocale.c: Now handles word fields in locale binary
automatically by changing the endianess if necessary.
* locale/localeinfo.h (LIMAGIC): Changed magic number because
of incompatible changes.
(locale_data): Changed definition to allow word as a value type.
(coll_sort_rule): Values for collation sorting mode.
(_NL_CURRENT_WORD): New macro to access word value of locale entry.
(__collate_table, __collate_extra): Declare new global variables
for collation tables.
* locale/programs/charmap-kw.gperf, locale/programs/charmap-kw.h,
locale/programs/charmap.c, locale/programs/charset.c,
locale/programs/charset.h, locale/programs/config.h,
locale/programs/ctypedump.c, locale/programs/ld-collate.c,
locale/programs/ld-ctype.c, locale/programs/ld-messages.c,
locale/programs/ld-monetary.c, locale/programs/ld-numeric.c,
locale/programs/ld-time.c, locale/programs/linereader.c,
locale/programs/linereader.h, locale/programs/locale.c,
locale/programs/localedef.c, locale/programs/locales.h,
locale/programs/locfile-kw.gperf, locale/programs/locfile-kw.h,
locale/programs/locfile-token.h, locale/programs/locfile.c,
locale/programs/locfile.h, locale/programs/stringtrans.c,
locale/programs/stringtrans.h: Implementation of locale related
programs.
* locale/weight.h: Functions to access collation tables.
* posix/unistd.h: Define _POSIX2_LOCALEDEF.
* stdio-common/printf_fp.c: Fix bug with printing certain numbers
< 10^-1. Reported by Bill Metzenthen.
* stdio-common/tfformat.c: Add new test for above bug.
* string/strcoll.c, string/strxfrm.c: Real implementation of
string collation according to ISO C.
* wctype/Makefile, wctype/cname-lookup.h, wctype/iswctype.c,
wctype/test_wctype.c, wctype/towctrans.c, wctype/wcfuncs.c,
wctype/wctrans.c, wctype/wctype.c, wctype/wctype.h: New files.
Implementation of wide character classes and mapping.
1996-03-28 16:30:38 +08:00
|
|
|
|
ifndef i18ndir
|
|
|
|
|
i18ndir = $(datadir)/i18n
|
1995-05-20 08:13:43 +08:00
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
|
1995-02-18 09:27:10 +08:00
|
|
|
|
# Where to install programs.
|
|
|
|
|
ifndef bindir
|
|
|
|
|
bindir = $(exec_prefix)/bin
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
# Where to install administrative programs.
|
|
|
|
|
ifndef sbindir
|
|
|
|
|
sbindir = $(exec_prefix)/sbin
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
# Where to install the Info files.
|
|
|
|
|
ifndef infodir
|
|
|
|
|
infodir = $(prefix)/info
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
# Where to install default configuration files. These include the local
|
|
|
|
|
# timezone specification and network data base files.
|
|
|
|
|
ifndef sysconfdir
|
|
|
|
|
sysconfdir = $(prefix)/etc
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
# What timezone should be the installed default (e.g., US/Eastern).
|
|
|
|
|
# Run `make -C time echo-zonenames' to see a list of available zone names.
|
|
|
|
|
# The local timezone can be changed with `zic -l TIMEZONE' at any time.
|
|
|
|
|
ifndef localtime
|
|
|
|
|
localtime = Factory
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
# Where to install the "localtime" timezone file; this is the file whose
|
|
|
|
|
# contents $(localtime) specifies. If this is a relative pathname, it is
|
|
|
|
|
# relative to $(zonedir). It is a good idea to put this somewhere
|
|
|
|
|
# other than there, so the zoneinfo directory contains only universal data,
|
|
|
|
|
# localizing the configuration data elsewhere.
|
|
|
|
|
ifndef localtime-file
|
|
|
|
|
localtime-file = $(sysconfdir)/localtime
|
|
|
|
|
endif
|
|
|
|
|
|
Sun May 26 15:15:08 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* stdlib/ldiv.c: Deansideclized.
Sun May 26 19:39:53 1996 Ulrich Drepper <drepper@cygnus.com>
* intl/loadmsgcat.c (_nl_load_domain): Test correct variable
after malloc.
* string/Makefile (tester-ENV): New variable to suppress message
translation in test.
* string/tester.c: Add tests for strtok_r and strsep.
* sysdeps/i386/i486/strcat.S: Correct some more 8bit operation
<-> 32 bit operand conflicts.
* sysdeps/i386/strsep.S: Wrapper around <sysdeps/i386/strtok.S>
to produce strsep function.
* sysdeps/i386/strtok.S: Optimized implementation of strtok
function.
* sysdeps/i386/strtok_r.S: Wrapper around <sysdeps/i386/strtok.S>
to produce strtok_r function.
* sysdeps/generic/strtok.c: Moved here from string/strtok.c.
Corrected example in comment.
* string/Makefile (routines): Add strtok_r.
* sysdeps/generic/strtok_r.c: New file. Implement reentrant version
of strtok_r.
* string/string.h: Add prototype for strtok_r.
* wcsmbs/wcstok.c: Handle illegal SAVE_PTR argument the same
as in strtok_r.
Sun May 26 13:28:23 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* time/tzset.c (__tzset): Ignore leading : in $TZ; always try tzfile
first and fall back to 1003.1 syntax only if it fails.
* time/Makefile (install-others): Also install posix/ZONE and
right/ZONE for each ZONE in $(zonenames).
(z.% rule): Generate rules for right/ZONE and posix/ZONE targets too,
the difference begin leapseconds vs /dev/null as 3rd dep. For
original ZONE targets use $(leapseconds), to be set in Makeconfig.
(target-zone-flavor): New variable.
(tzcompile): Use it to get the right -d for posix/ and right/ flavors.
* Makeconfig (leapseconds): New variable.
* mach/Machrules (%.udeps rule): Depend on Machrules.
Emit deps for .uh and .__h files.
(%.uh, %.__h rules): Don't depend on %.defs; use #include <$*.defs>
instead.
Sun May 26 01:06:47 1996 Ulrich Drepper <drepper@cygnus.com>
* stdlib/Makefile (routines): Add llabs, lldiv.
* stdlib/llabs.c: New file. Implementation of return
absolute value of long long argument.
* stdlib/lldiv.c: New file. Implementation of division with remainder
of long long argument.
* stdlib/stdlib.h [__USE_GNU] (lldiv_t): New type for lldiv
function.
Define prototypes for lldiv and llabs functions.
* locale/C-collate.c: Initialize _NL_COLLATE_NRULES element.
* stdlib/strtod.c: Replace wchar_t with wint_t. The later is
really the type for a single wide character.
* string/strxfrm.c (print_val): Define separate version for
use as wcsxfrm. Here we don't need UTF8 encoding.
* wcsmbs/wchar.h: gcc-2.7.2-960517 finally introduces wint_t
in <stddef.h>. Use this value and only for older gcc version
define in place.
(uwchar_t): Remove definition.
* wcsmbs/wcscmp.c, wcsmbs/wcscoll.c, wcsmbs/wcsncmp.c,
wcsmbs/wcsxfrm.c, wcsmbs/wmemcmp.c: : Don't use uwchar_t as unsigned
type. wint_t is intended for this.
Sat May 25 14:10:19 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* sysdeps/unix/bsd/direntry.h: Use [1] instead of [0] for d_name to
quiet -ansi -pedantic.
* sysdeps/unix/common/direntry.h: Likewise.
* login/Makefile (headers): Add lastlog.h.
* login/lastlog.h: New file.
* login/Makefile (CFLAGS): Don't append -D_THREAD_SAFE.
* login/utmp.h [_REENTRANT || _THREAD_SAFE]: Replace this conditional
with #ifdef __USE_REENTRANT.
* features.h (__GNU_LIBRARY__): Set to 6.
[_GNU_SOURCE] (_POSIX_SOURCE, _POSIX_C_SOURCE, _BSD_SOURCE,
_SVID_SOURCE): Make sure they are all defined.
* sysdeps/unix/sysv/linux/gnu/types.h: Instead of including
<linux/posix_types.h>, define _LINUX_TYPES_DONT_EXPORT and then
include <linux/types.h>.
* resource/sys/resource.h: Remove trailing commas from enums.
* sysdeps/generic/netinet/in.h: Remove trailing commas from enums.
* sysdeps/unix/sysv/linux/netinet/in.h: Likewise.
1996-05-27 03:19:51 +08:00
|
|
|
|
# What to use for leap second specifications in compiling the default
|
|
|
|
|
# timezone files. Set this to `/dev/null' for no leap second handling as
|
|
|
|
|
# 1003.1 requires, or to `leapseconds' for proper leap second handling.
|
|
|
|
|
# Both zone flavors are always available as `posix/ZONE' and `right/ZONE'.
|
|
|
|
|
# This variable determines the default: if it's `/dev/null',
|
|
|
|
|
# ZONE==posix/ZONE; if it's `leapseconds', ZONE==right/ZONE.
|
|
|
|
|
ifndef leapseconds
|
|
|
|
|
leapseconds = /dev/null
|
|
|
|
|
endif
|
|
|
|
|
|
1995-02-18 09:27:10 +08:00
|
|
|
|
# What timezone's DST rules should be used when a POSIX-style TZ
|
|
|
|
|
# environment variable doesn't specify any rules. For 1003.1 compliance
|
|
|
|
|
# this timezone must use rules that are as U.S. federal law defines DST.
|
|
|
|
|
# Run `make -C time echo-zonenames' to see a list of available zone names.
|
|
|
|
|
# This setting can be changed with `zic -p TIMEZONE' at any time.
|
|
|
|
|
# If you want POSIX.1 compatibility, use `America/New_York'.
|
|
|
|
|
ifndef posixrules
|
|
|
|
|
posixrules = America/New_York
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
# Where to install the "posixrules" timezone file; this is file
|
|
|
|
|
# whose contents $(posixrules) specifies. If this is a relative
|
|
|
|
|
# pathname, it is relative to $(zonedir).
|
|
|
|
|
ifndef posixrules-file
|
|
|
|
|
posixrules-file = posixrules
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Directory where your system's native header files live.
|
|
|
|
|
# This is used on Unix systems to generate some GNU libc header files.
|
|
|
|
|
ifndef sysincludedir
|
|
|
|
|
sysincludedir = /usr/include
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Commands to install files.
|
|
|
|
|
ifndef INSTALL_DATA
|
|
|
|
|
INSTALL_DATA = $(INSTALL) -m 644
|
|
|
|
|
endif
|
|
|
|
|
ifndef INSTALL_PROGRAM
|
|
|
|
|
INSTALL_PROGRAM = $(INSTALL)
|
|
|
|
|
endif
|
|
|
|
|
ifndef INSTALL
|
|
|
|
|
INSTALL = install
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# The name of the C compiler.
|
|
|
|
|
# If you've got GCC, and it works, use it.
|
|
|
|
|
ifeq ($(origin CC),default)
|
|
|
|
|
CC := gcc
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
# The name of the C compiler to use for compilations of programs to run on
|
|
|
|
|
# the host that is building the library. If you set CC to a
|
|
|
|
|
# cross-compiler, you must set this to the normal compiler.
|
|
|
|
|
ifndef BUILD_CC
|
|
|
|
|
BUILD_CC = $(CC)
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
# Default flags to pass the C compiler.
|
|
|
|
|
ifndef default_cflags
|
|
|
|
|
default_cflags := -g
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
# Flags to pass the C compiler when assembling preprocessed assembly code
|
|
|
|
|
# (`.S' files). On some systems the assembler doesn't understand the `#' line
|
|
|
|
|
# directives the preprocessor produces. If you have troubling compiling
|
|
|
|
|
# assembly code, try using -P here to suppress these directives.
|
|
|
|
|
ifndef asm-CPPFLAGS
|
|
|
|
|
asm-CPPFLAGS =
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
# Command for linking programs with the C library.
|
|
|
|
|
ifndef +link
|
1995-10-11 11:34:46 +08:00
|
|
|
|
+link = $(CC) -nostdlib -nostartfiles -o $@ \
|
|
|
|
|
$(sysdep-LDFLAGS) $(config-LDFLAGS) $(LDFLAGS) \
|
|
|
|
|
$(addprefix $(csu-objpfx),start.o $(+preinit)) \
|
1996-02-12 18:23:47 +08:00
|
|
|
|
$(filter-out $(common-objpfx)libc%,$^) $(link-libc) \
|
1995-10-11 11:34:46 +08:00
|
|
|
|
$(addprefix $(csu-objpfx),$(+postinit))
|
1995-02-18 09:27:10 +08:00
|
|
|
|
endif
|
1995-10-09 15:06:29 +08:00
|
|
|
|
ifndef config-LDFLAGS
|
|
|
|
|
ifeq (yes,$(build-shared))
|
1995-11-08 10:28:15 +08:00
|
|
|
|
config-LDFLAGS = -Wl,-dynamic-linker=$(slibdir)/$(rtld-installed-name)
|
1995-10-09 15:06:29 +08:00
|
|
|
|
endif
|
|
|
|
|
endif
|
1995-08-18 06:55:22 +08:00
|
|
|
|
ifndef link-libc
|
|
|
|
|
ifeq (yes,$(build-shared))
|
1996-05-13 00:38:08 +08:00
|
|
|
|
# We need the versioned name of libc.so in the deps of $(others) et al
|
|
|
|
|
# so that the symlink to libc.so is created before anything tries to
|
|
|
|
|
# run the linked programs.
|
Wed Feb 21 02:25:07 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu>
* Rules (others): Depend on $(extra-objs), $(install-lib),
$(install-bin), $(install-sbin), in object directory.
* Makeconfig (link-libc): Don't pass -rpath option with default
path, since ld.so should use the same default.
* Makerules (build-shlib): Likewise.
* Makerules (make-target-directory): Use mkinstalldirs.
* sysdeps/mach/i386/sysdep.h: Include unix/i386/sysdep.h to
redefine ENTRY et al.
* sysdeps/unix/sysv/linux/i386/sysdep.h (NO_UNDERSCORES, ENTRY):
Macros removed. The code in unix/i386/sysdep.h should now suffice.
* sysdeps/unix/i386/sysdep.h (ALIGNARG): New macro, defns for
[HAVE_ELF] and not.
(ENTRY): Use it in .align directive.
(CALL_MCOUNT): New macro, empty unless [PROF].
(ENTRY): Do CALL_MCOUNT just after the label.
* Makeconfig (CPPFLAGS-.po): New variable, use -DPROF so assembly
code can call mcount.
Tue Feb 20 23:05:16 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu>
* time/private.h, time/zdump.c, time/zic.c: Updated verbatim from ADO;
translation markings are now integrated in his distribution.
* stdlib/strtod.c (round_and_return): Add missing (mp_limb) 1 cast.
* po: New directory where `LANG.po' files for message translations
will reside.
* po/SYS_libc.pot: New file, template of message strings as in source.
* MakeTAGS: New rules to build po/SYS_libc.pot automatically from
the source using xgettext.
* Makerules ($(..)po/%.pot): New rule.
* manual/Makefile (../po/manual.pot): New target, make it empty.
* sysdeps/unix/bsd/alarm.c: Moved to sysdeps/unix/alarm.c.
* sysdeps/unix/bsd/nice.c: Moved to sysdeps/unix/nice.c.
* sysdeps/unix/bsd/stime.c: Moved to sysdeps/unix/stime.c.
* sysdeps/unix/bsd/time.c: Moved to sysdeps/unix/time.c.
* sysdeps/unix/bsd/utime.c: Moved to sysdeps/unix/utime.c.
1996-02-22 23:52:20 +08:00
|
|
|
|
link-libc = -Wl,-rpath-link=$(common-objdir) \
|
1996-05-13 00:38:08 +08:00
|
|
|
|
$(common-objpfx)libc.so$(libc.so-version) \
|
|
|
|
|
$(common-objpfx)libc.a $(gnulib)
|
1995-11-17 10:33:47 +08:00
|
|
|
|
# Choose the default search path for the dynamic linker based on
|
|
|
|
|
# where we will install libraries.
|
|
|
|
|
ifneq ($(libdir),$(slibdir))
|
|
|
|
|
default-rpath = $(slibdir):$(libdir)
|
|
|
|
|
else
|
|
|
|
|
default-rpath = $(libdir)
|
|
|
|
|
endif
|
1995-08-18 06:55:22 +08:00
|
|
|
|
else
|
|
|
|
|
link-libc = $(common-objpfx)libc.a $(gnulib) $(common-objpfx)libc.a
|
|
|
|
|
endif
|
|
|
|
|
endif
|
1995-02-18 09:27:10 +08:00
|
|
|
|
ifndef gnulib
|
|
|
|
|
gnulib := -lgcc
|
|
|
|
|
endif
|
1995-02-20 18:23:07 +08:00
|
|
|
|
ifeq ($(elf),yes)
|
|
|
|
|
+preinit = crti.o
|
|
|
|
|
+postinit = crtn.o
|
|
|
|
|
endif
|
|
|
|
|
ifdef objpfx
|
|
|
|
|
csu-objpfx = $(objpfx)
|
1995-10-25 10:19:39 +08:00
|
|
|
|
elf-objpfx = $(objpfx)
|
1995-02-20 18:23:07 +08:00
|
|
|
|
else
|
1995-04-09 03:09:39 +08:00
|
|
|
|
csu-objpfx = $(..)csu/
|
1995-10-25 10:19:39 +08:00
|
|
|
|
elf-objpfx = $(..)elf/
|
1995-02-20 18:23:07 +08:00
|
|
|
|
endif
|
1995-02-18 09:27:10 +08:00
|
|
|
|
|
1995-10-09 15:06:29 +08:00
|
|
|
|
ifeq (yes,$(build-shared))
|
|
|
|
|
ifndef rtld-installed-name
|
|
|
|
|
rtld-installed-name = ld.so
|
|
|
|
|
endif
|
|
|
|
|
endif
|
|
|
|
|
|
1995-10-25 10:19:39 +08:00
|
|
|
|
# How to run a program we just linked with our library.
|
|
|
|
|
# The program binary is assumed to be $(word 2,$^).
|
|
|
|
|
built-program-file = $(dir $(word 2,$^))$(notdir $(word 2,$^))
|
|
|
|
|
ifneq (yes,$(build-shared))
|
|
|
|
|
built-program-cmd = $(built-program-file)
|
|
|
|
|
else
|
1995-12-06 08:14:32 +08:00
|
|
|
|
comma = ,
|
1995-10-25 10:19:39 +08:00
|
|
|
|
define built-program-cmd
|
1995-12-06 08:14:32 +08:00
|
|
|
|
LD_LIBRARY_PATH=$(common-objdir)$(patsubst -Wl$(comma)-rpath-link=%,:%,\
|
|
|
|
|
$(filter -Wl$(comma)-rpath-link=%,\
|
1995-10-25 10:19:39 +08:00
|
|
|
|
$(sysdep-LDFLAGS))) \
|
|
|
|
|
$(elf-objpfx)ld.so $(built-program-file)
|
|
|
|
|
endef
|
|
|
|
|
endif
|
|
|
|
|
|
1995-02-18 09:27:10 +08:00
|
|
|
|
ifndef LD
|
|
|
|
|
LD := ld -X
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
ifndef RANLIB
|
|
|
|
|
RANLIB = ranlib
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
# Extra flags to pass to GCC.
|
1996-01-20 02:43:03 +08:00
|
|
|
|
+gccwarn := -Wall -Wwrite-strings -Wno-parentheses -Winline -Wstrict-prototypes
|
1995-02-18 09:27:10 +08:00
|
|
|
|
|
|
|
|
|
# This is the program that generates makefile
|
|
|
|
|
# dependencies from C source files.
|
|
|
|
|
ifndef +mkdep
|
|
|
|
|
+mkdep = $(CC) -M
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
# The program that makes Emacs-style TAGS files.
|
|
|
|
|
ETAGS := etags -T
|
|
|
|
|
|
|
|
|
|
# The `m4' macro processor; this is used by sysdeps/sparc/Makefile (and
|
|
|
|
|
# perhaps others) to preprocess assembly code in some cases.
|
|
|
|
|
M4 = m4
|
|
|
|
|
|
|
|
|
|
####
|
|
|
|
|
#### End of configuration variables.
|
|
|
|
|
####
|
|
|
|
|
|
|
|
|
|
# This tells some versions of GNU make before 3.63 not to export all variables.
|
|
|
|
|
.NOEXPORT:
|
|
|
|
|
|
|
|
|
|
# We want to echo the commands we're running without
|
|
|
|
|
# umpteem zillion filenames along with it (we use `...' instead)
|
|
|
|
|
# but we don't want this echoing done when the user has said
|
|
|
|
|
# he doesn't want to see commands echoed by using -s.
|
|
|
|
|
ifneq "$(findstring s,$(MAKEFLAGS))" "" # if -s
|
|
|
|
|
+cmdecho := echo >/dev/null
|
|
|
|
|
else # not -s
|
|
|
|
|
+cmdecho := echo
|
|
|
|
|
endif # -s
|
|
|
|
|
|
|
|
|
|
# These are the flags given to the compiler to tell
|
|
|
|
|
# it what sort of optimization and/or debugging output to do.
|
|
|
|
|
ifndef +cflags
|
|
|
|
|
# If `CFLAGS' was defined, use that.
|
|
|
|
|
ifdef CFLAGS
|
|
|
|
|
+cflags := $(filter-out -I%,$(CFLAGS))
|
|
|
|
|
endif # CFLAGS
|
|
|
|
|
endif # +cflags
|
|
|
|
|
|
|
|
|
|
# If none of the above worked, default to "-g".
|
|
|
|
|
ifeq "$(strip $(+cflags))" ""
|
|
|
|
|
+cflags := $(default_cflags)
|
|
|
|
|
endif # $(+cflags) == ""
|
|
|
|
|
|
|
|
|
|
+cflags := $(+cflags) $(+gccwarn)
|
|
|
|
|
+gcc-nowarn := -w
|
|
|
|
|
|
|
|
|
|
# Don't duplicate options if we inherited variables from the parent.
|
|
|
|
|
+cflags := $(sort $(+cflags))
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# These are flags given to the C compiler to tell it to look for include
|
|
|
|
|
# files (including ones given in angle brackets) in the current directory
|
|
|
|
|
# and in the parent library source directory.
|
|
|
|
|
# `+sysdep-includes' will be defined by Makerules.
|
Sat Nov 18 16:46:01 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* libio/Makefile, libio/cleanup.c, libio/clearerr.c, libio/feof.c,
libio/ferror.c, libio/fgetc.c, libio/filedoalloc.c, libio/fileno.c,
libio/fileops.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofdopen.c, libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofopen.c, libio/iofprintf.c, libio/iofputs.c, libio/iofread.c,
libio/iofscanf.c, libio/iofsetpos.c, libio/ioftell.c, libio/iofwrite.c,
libio/iogetdelim.c, libio/iogetline.c, libio/iogets.c, libio/iolibio.h,
libio/iopadn.c, libio/ioprims.c, libio/ioputs.c, libio/ioseekoff.c,
libio/ioseekpos.c, libio/iosetbuffer.c, libio/iosetvbuf.c,
libio/iosprintf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/iovsscanf.c, libio/libio.h, libio/libioP.h, libio/putc.c,
libio/putchar.c, libio/rewind.c, libio/setbuf.c, libio/setlinebuf.c,
libio/stdfiles.c, libio/stdio.c, libio/stdio.h, libio/strfile.h,
libio/strops.c, libio/vasprintf.c, libio/vscanf.c, libio/vsnprintf.c:
New files. Slightly modified version from Linux libc.
* libio/memstream.c, libio/vdprintf.c: New files for functions not
(yet) part of GNU libio.
* libio/iofopncook.c: Implementation of `fopencookie', mainly written
by Per Bothner.
* stdio-common/getline.c: Adapted to libio.
* stdio-common/snprintf.c: Adapted to libio.
* stdio-common/vfprintf.c: Adapted to libio.
* stdio-common/vfscanf.c: Adapted to libio.
* sysdeps/posix/tempname.c: Adapted to libio.
1995-11-20 11:48:11 +08:00
|
|
|
|
+includes = -I. $(filter-out -I,-I$(patsubst %/,%,$(..))) $($(stdio)-include) \
|
1995-02-18 09:27:10 +08:00
|
|
|
|
$(includes) $(+sysdep-includes) $(last-includes)
|
|
|
|
|
|
Sat Nov 18 16:46:01 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* libio/Makefile, libio/cleanup.c, libio/clearerr.c, libio/feof.c,
libio/ferror.c, libio/fgetc.c, libio/filedoalloc.c, libio/fileno.c,
libio/fileops.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofdopen.c, libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofopen.c, libio/iofprintf.c, libio/iofputs.c, libio/iofread.c,
libio/iofscanf.c, libio/iofsetpos.c, libio/ioftell.c, libio/iofwrite.c,
libio/iogetdelim.c, libio/iogetline.c, libio/iogets.c, libio/iolibio.h,
libio/iopadn.c, libio/ioprims.c, libio/ioputs.c, libio/ioseekoff.c,
libio/ioseekpos.c, libio/iosetbuffer.c, libio/iosetvbuf.c,
libio/iosprintf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/iovsscanf.c, libio/libio.h, libio/libioP.h, libio/putc.c,
libio/putchar.c, libio/rewind.c, libio/setbuf.c, libio/setlinebuf.c,
libio/stdfiles.c, libio/stdio.c, libio/stdio.h, libio/strfile.h,
libio/strops.c, libio/vasprintf.c, libio/vscanf.c, libio/vsnprintf.c:
New files. Slightly modified version from Linux libc.
* libio/memstream.c, libio/vdprintf.c: New files for functions not
(yet) part of GNU libio.
* libio/iofopncook.c: Implementation of `fopencookie', mainly written
by Per Bothner.
* stdio-common/getline.c: Adapted to libio.
* stdio-common/snprintf.c: Adapted to libio.
* stdio-common/vfprintf.c: Adapted to libio.
* stdio-common/vfscanf.c: Adapted to libio.
* sysdeps/posix/tempname.c: Adapted to libio.
1995-11-20 11:48:11 +08:00
|
|
|
|
# Since libio has several internal header files, we use a -I instead
|
|
|
|
|
# of many little headers in the top level source directory.
|
|
|
|
|
libio-include = -I$(..)libio
|
1995-02-18 09:27:10 +08:00
|
|
|
|
|
|
|
|
|
# These are the variables that the implicit compilation rules use.
|
|
|
|
|
CPPFLAGS = $(+includes) $(defines) -include $(..)libc-symbols.h \
|
1995-04-12 09:03:38 +08:00
|
|
|
|
$(sysdep-CPPFLAGS) $(CPPFLAGS-$(suffix $@))
|
1996-01-17 10:11:06 +08:00
|
|
|
|
override CFLAGS = $(+cflags) $(sysdep-CFLAGS) $(CFLAGS-$(suffix $@)) \
|
|
|
|
|
$(CFLAGS-$(<F))
|
1995-02-18 09:27:10 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# This is the macro that the implicit linking rules use.
|
|
|
|
|
ifneq "$(filter -g,$(+cflags))" "" # -g is in $(+cflags)
|
|
|
|
|
LDFLAGS := -g
|
|
|
|
|
endif
|
|
|
|
|
|
Thu Mar 16 00:04:41 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* locale/C-ctype.c: New correct data generated by drepper.
* Rules: Don't use $(libc.a).
Parsing of grouped numbers contributed by Ulrich Drepper.
* stdlib/strtol.c (__strtol_internal): Renamed from strtol. Take
new flag arg; if nonzero, parse locale-dependent thousands
grouping and interpret only the prefix that is correctly grouped.
(strtol): Define this to call _strtol_internal with zero for the flag.
Use a weak symbol for the definition.
* stdlib/strtod.c (strtod, __strtod_internal): Likewise.
Check for the exponent of the number overflowing the float format.
* stdlib/stdlib.h (__strtof, __strtold): Declarations removed.
(__strto{f,d,ld,l,ul,q,uq}_internal): Declare these functions.
[__OPTIMIZE__]: Define inline functions calling those.
* stdlib/grouping.h: New file, written by drepper.
* stdlib/Makefile (distribute): Add grouping.h.
* stdio/vfscanf.c: Grok %' modifier to numeric conversions. Call
__strtoX_internal with the grouping flag set iff the modifier is
present.
Wed Mar 15 00:40:54 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/generic/memchr.c: Fix typos: limit.h -> limits.h.
* mach/Machrules: Produce static deps for all object flavors.
[interface-library]: Remove all these variables and rules.
($(interface-library)-routines): Define this variable.
(extra-libs): Append $(interface-library) to this.
* mach/Makefile (interface-library): Omit .a suffix.
* hurd/Makefile: Likewise.
Tue Mar 14 23:40:31 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* stdio/internals.c (flushbuf): If !FLUSH_ONLY, don't skip out
early if no new data in buffer after priming.
* Makerules (object-suffixes, libtypes): Move all these variables
to Makeconfig.
* Makeconfig (object-suffixes, libtypes): Moved here from Makerules.
* Makerules (build-extra-lib): New canned sequence.
* sysdeps/mach/hurd/euidaccess.c: Include fcntl.h. Declare ERR;
fix uses of FILE and PORT. Remove bogus weak alias for `access'.
* sysdeps/mach/hurd/dirfd.c: Include hurd/fd.h and errno.h.
Add missing semicolon.
* sysdeps/mach/hurd/opendir.c: Include hurd/fd.h. Use a `struct
hurd_fd *' temp var, since DIRP->__fd is a `void *'.
* sysdeps/mach/hurd/readdir.c: Include hurd/fd.h.
* stdlib/wcstombs.c: #if 0 out code for non-ASCII chars until the
locale data format is implemented.
* sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
Pass &__sigreturn on the stack to the trampoline code, so it is
not position-dependent.
* stdio/printf_fp.c (NDEBUG): Define this to disable assert.
Don't include <stdarg.h>.
(__printf_fp): Last arg ARGS is now `const void **const';
dereference ARGS[0] instead of using va_arg.
* locale/setlocale.c: In LC_ALL case, initialize CATEGORY before
loop to install data.
* locale/loadlocale.c (_nl_category_num_items): Use _NL_ITEM_INDEX
to extract number from item code.
(_nl_load_locale): Close the descriptor when finished.
* malloc/realloc.c (_realloc_internal): Call _malloc_internal in
place of malloc.
* time/tzfile.c (__tzfile_default): Initialize RULE_STDOFF to zero.
1995-03-16 13:32:45 +08:00
|
|
|
|
|
|
|
|
|
# Enable object files for different versions of the library.
|
|
|
|
|
# Various things use $(object-suffixes) to know what all to make.
|
|
|
|
|
# The compilation rules use $(CPPFLAGS-${SUFFIX}) and $(CFLAGS-${SUFFIX})
|
|
|
|
|
# to pass different flags for each flavor.
|
|
|
|
|
libtypes = $(foreach o,$(object-suffixes),$(libtype$o))
|
|
|
|
|
object-suffixes := .o
|
|
|
|
|
libtype.o := lib%.a
|
|
|
|
|
ifeq (yes,$(build-shared))
|
|
|
|
|
# Under --enable-shared, we will build a shared library of PIC objects.
|
|
|
|
|
# The PIC object files are named foo.so.
|
|
|
|
|
object-suffixes += .so
|
|
|
|
|
CPPFLAGS-.so = -DPIC
|
|
|
|
|
CFLAGS-.so = -fPIC
|
|
|
|
|
libtype.so := lib%_pic.a
|
|
|
|
|
endif
|
|
|
|
|
ifeq (yes,$(build-profile))
|
|
|
|
|
# Under --enable-profile, we will build a static library of profiled objects.
|
|
|
|
|
# The profiled object files are named foo.po.
|
|
|
|
|
object-suffixes += .po
|
Wed Feb 21 02:25:07 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu>
* Rules (others): Depend on $(extra-objs), $(install-lib),
$(install-bin), $(install-sbin), in object directory.
* Makeconfig (link-libc): Don't pass -rpath option with default
path, since ld.so should use the same default.
* Makerules (build-shlib): Likewise.
* Makerules (make-target-directory): Use mkinstalldirs.
* sysdeps/mach/i386/sysdep.h: Include unix/i386/sysdep.h to
redefine ENTRY et al.
* sysdeps/unix/sysv/linux/i386/sysdep.h (NO_UNDERSCORES, ENTRY):
Macros removed. The code in unix/i386/sysdep.h should now suffice.
* sysdeps/unix/i386/sysdep.h (ALIGNARG): New macro, defns for
[HAVE_ELF] and not.
(ENTRY): Use it in .align directive.
(CALL_MCOUNT): New macro, empty unless [PROF].
(ENTRY): Do CALL_MCOUNT just after the label.
* Makeconfig (CPPFLAGS-.po): New variable, use -DPROF so assembly
code can call mcount.
Tue Feb 20 23:05:16 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu>
* time/private.h, time/zdump.c, time/zic.c: Updated verbatim from ADO;
translation markings are now integrated in his distribution.
* stdlib/strtod.c (round_and_return): Add missing (mp_limb) 1 cast.
* po: New directory where `LANG.po' files for message translations
will reside.
* po/SYS_libc.pot: New file, template of message strings as in source.
* MakeTAGS: New rules to build po/SYS_libc.pot automatically from
the source using xgettext.
* Makerules ($(..)po/%.pot): New rule.
* manual/Makefile (../po/manual.pot): New target, make it empty.
* sysdeps/unix/bsd/alarm.c: Moved to sysdeps/unix/alarm.c.
* sysdeps/unix/bsd/nice.c: Moved to sysdeps/unix/nice.c.
* sysdeps/unix/bsd/stime.c: Moved to sysdeps/unix/stime.c.
* sysdeps/unix/bsd/time.c: Moved to sysdeps/unix/time.c.
* sysdeps/unix/bsd/utime.c: Moved to sysdeps/unix/utime.c.
1996-02-22 23:52:20 +08:00
|
|
|
|
CPPFLAGS-.po = -DPROF
|
1996-02-16 23:14:24 +08:00
|
|
|
|
CFLAGS-.po = -pg
|
Thu Mar 16 00:04:41 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* locale/C-ctype.c: New correct data generated by drepper.
* Rules: Don't use $(libc.a).
Parsing of grouped numbers contributed by Ulrich Drepper.
* stdlib/strtol.c (__strtol_internal): Renamed from strtol. Take
new flag arg; if nonzero, parse locale-dependent thousands
grouping and interpret only the prefix that is correctly grouped.
(strtol): Define this to call _strtol_internal with zero for the flag.
Use a weak symbol for the definition.
* stdlib/strtod.c (strtod, __strtod_internal): Likewise.
Check for the exponent of the number overflowing the float format.
* stdlib/stdlib.h (__strtof, __strtold): Declarations removed.
(__strto{f,d,ld,l,ul,q,uq}_internal): Declare these functions.
[__OPTIMIZE__]: Define inline functions calling those.
* stdlib/grouping.h: New file, written by drepper.
* stdlib/Makefile (distribute): Add grouping.h.
* stdio/vfscanf.c: Grok %' modifier to numeric conversions. Call
__strtoX_internal with the grouping flag set iff the modifier is
present.
Wed Mar 15 00:40:54 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/generic/memchr.c: Fix typos: limit.h -> limits.h.
* mach/Machrules: Produce static deps for all object flavors.
[interface-library]: Remove all these variables and rules.
($(interface-library)-routines): Define this variable.
(extra-libs): Append $(interface-library) to this.
* mach/Makefile (interface-library): Omit .a suffix.
* hurd/Makefile: Likewise.
Tue Mar 14 23:40:31 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* stdio/internals.c (flushbuf): If !FLUSH_ONLY, don't skip out
early if no new data in buffer after priming.
* Makerules (object-suffixes, libtypes): Move all these variables
to Makeconfig.
* Makeconfig (object-suffixes, libtypes): Moved here from Makerules.
* Makerules (build-extra-lib): New canned sequence.
* sysdeps/mach/hurd/euidaccess.c: Include fcntl.h. Declare ERR;
fix uses of FILE and PORT. Remove bogus weak alias for `access'.
* sysdeps/mach/hurd/dirfd.c: Include hurd/fd.h and errno.h.
Add missing semicolon.
* sysdeps/mach/hurd/opendir.c: Include hurd/fd.h. Use a `struct
hurd_fd *' temp var, since DIRP->__fd is a `void *'.
* sysdeps/mach/hurd/readdir.c: Include hurd/fd.h.
* stdlib/wcstombs.c: #if 0 out code for non-ASCII chars until the
locale data format is implemented.
* sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
Pass &__sigreturn on the stack to the trampoline code, so it is
not position-dependent.
* stdio/printf_fp.c (NDEBUG): Define this to disable assert.
Don't include <stdarg.h>.
(__printf_fp): Last arg ARGS is now `const void **const';
dereference ARGS[0] instead of using va_arg.
* locale/setlocale.c: In LC_ALL case, initialize CATEGORY before
loop to install data.
* locale/loadlocale.c (_nl_category_num_items): Use _NL_ITEM_INDEX
to extract number from item code.
(_nl_load_locale): Close the descriptor when finished.
* malloc/realloc.c (_realloc_internal): Call _malloc_internal in
place of malloc.
* time/tzfile.c (__tzfile_default): Initialize RULE_STDOFF to zero.
1995-03-16 13:32:45 +08:00
|
|
|
|
libtype.po = lib%_p.a
|
|
|
|
|
endif
|
|
|
|
|
ifeq (yes,$(build-omitfp))
|
|
|
|
|
# Under --enable-omitfp, we build an the library optimized without
|
|
|
|
|
# debugging information using -fomit-frame-pointer, and build an extra
|
|
|
|
|
# library with debugging information. The debuggable objects are named foo.go.
|
|
|
|
|
object-suffixes += .go
|
|
|
|
|
CFLAGS-.go = -g
|
|
|
|
|
CFLAGS-.o = -g0 -O99 -fomit-frame-pointer
|
|
|
|
|
CFLAGS-.so += $(CFLAGS.o)
|
|
|
|
|
libtype.go = lib%_g.a
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
|
1995-02-18 09:27:10 +08:00
|
|
|
|
+gnu-stabs = $(shell echo>&2 '*** BARF ON ME')
|
|
|
|
|
|
|
|
|
|
ifneq ($(BUILD_CC),$(CC))
|
|
|
|
|
cross-compiling := yes
|
|
|
|
|
else
|
|
|
|
|
cross-compiling := no
|
|
|
|
|
endif
|
Fri Apr 19 00:49:44 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* stdlib/rpmatch.c (rpmatch: try): Take new arg NOMATCH, return value
for nonmatching nonerror (instead of !MATCH).
(rpmatch): Use it, so we return -1 when NOEXPR doesn't match either.
* resolv/getnetnamadr.c (getnetbyaddr): Use u_int32_t instead of
unsigned long for variable NET2.
* time/etcetera, time/europe, time/solar89: Updated from ADO's 96e.
Tue Apr 9 14:37:31 1996 Ulrich Drepper <drepper@cygnus.com>
* catgets/Makefile, catgets/catgets.c, catgets/catgetsinfo.h,
catgets/config.h, catgets/gencat.c, catgets/nl_types.h,
catgets/open_catalog.c: New files. Implementation of XPG4
compliant catgets() function and needed tools.
* Makefile (subdirs): Add catgets.
Thu Apr 18 23:36:11 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* math/Makefile (CPPFLAGS): Append -D__NO_MATH_INLINES.
Wed Apr 10 20:48:43 1996 Ulrich Drepper <drepper@cygnus.com>
* stdio-common/vfprintf.c: Correct some typos.
* sysdeps/libm-ieee754/w_gammaf.c, sysdeps/libm-ieee754/w_lgamma.c,
sysdeps/libm-ieee754/w_lgammaf.c: Reference signgam instead of
__signgam.
Thu Apr 18 21:07:27 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Makerules (no-whole-archive): New variable.
(build-shlib): Use it.
* elf/Makefile (libdl.so): Use it.
* configure.in (libc_cv_ld_no_whole_archive): New check for
--no-whole-archive.
* config.make.in (have-no-whole-archive): New variable.
* stdio-common/printf_fp.c: Increase fudge factor for BIGNUM_SIZE calc
from 3 to 4.
* Make-dist: Include version.mk.
(version, release): Variables removed.
* Makeconfig (version.mk): New target.
Fri Apr 19 01:42:18 1996 Ulrich Drepper <drepper@cygnus.com>
* locale/Makefile (headers): Add langinfo.h.
(CPPFLAGS): Remove -Iliblib.
1996-04-20 08:05:25 +08:00
|
|
|
|
|
|
|
|
|
# Figure out the version numbers from version.h.
|
1995-02-18 09:27:10 +08:00
|
|
|
|
|
Tue May 7 19:00:01 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* string/argz-extract.c: Remove const from decl.
* string/argz.h: Here too.
* Makeconfig (version.mk): Fix regexp in sed cmd.
Depend on $(..)Makeconfig.
* GMP code updated from gmp-2.0 release.
* stdlib/Makefile (mpn-routines): Removed add_1, added inlines.
* sysdeps/generic/add_1.c: File removed.
* stdlib/strtod.c: mp_limb is now mp_limb_t.
* stdlib/fpioconst.c, stdlib/fpioconst.h: Likewise.
* stdio-common/_itoa.c: Likewise.
* stdio-common/printf_fp.c: Likewise.
Don't include ansidecl.h.
* sysdeps/mach/hurd/getcwd.c: Use io_identity instead of io_stat.
* shlib-versions: New file.
* Makerules (soversions.mk): New target, include file generated from
shlib-versions. Moved shared library rules before installation rules.
Rewrote shared library installation rules for versioned libraries.
* math/Makefile (libm.so-version): Variable removed.
* sysdeps/mach/hurd/i386/exc2signal.c: Use struct hurd_signal_detail.
* hurd/report-wait.c (_S_msg_describe_ports): New function.
* configure.in: Add AC_PROG_LN_S check.
* config.make.in (LN_S): New variable.
Sun May 5 03:10:44 1996 Ulrich Drepper <drepper@cygnus.com>
* misc/efgcvt_r.c (ecvt_r): Work aroung gcc bug. gcc does
not know about weak aliases now and optimizes necessary `if'
statement away.
* posix/unistd.h: Add swapoff prototype.
* sysdeps/generic/confname.h: Add even more POSIX.4 symbols.
* sysdeps/posix/fpathconf.c (__fpathconf): Get information
for _PC_PATH_MAX from fstatfs function if available.
* sysdeps/posix/sysconf.c: Add code to handle _SC_AIO_LISTIO_MAX,
_SC_AIO_MAX, _SC_AIO_PRIO_DELTA_MAX, _SC_DELAYTIMER_MAX,
_SC_MQ_OPEN_MAX, _SC_MQ_PRIO_MAX, _SC_RTSIG_MAX,
_SC_SEM_NSEMS_MAX, _SC_SEM_VALUE_MAX, _SC_SIGQUEUE_MAX, and
_SC_TIMER_MAX.
* sysdeps/unix/sysv/sysv4/sysconf.c: Ditto.
* sysdeps/stub/swapoff.c: New file. Stub version for swapoff
function.
* sysdeps/unix/syscalls.list: Add swapoff.
* sysdeps/unix/sysv/linux/Dist: Add sys/acct.h.
* sysdeps/unix/sysv/linux/Makefile [$(subdir) == misc]
(sysdep_routines): Add mount, umount, llseek, setfsgid, setfsuid,
sysinfo, and uselib.
(headers): Add sys/sysinfo.h.
* sysdeps/unix/sysv/linux/gethostid.c: Prevent warning.
* sysdeps/unix/sysv/linux/i386/Makefile [$(subdir) == misc]
(sysdep_routines): Add ioperm, iopl, and vm86.
(headers): Add sys/perm.h and sys/vm86.h.
* sysdeps/unix/sysv/linux/i386/sys/perm.h: New file. Contains
prototypes for iopl and ioperm.
* sysdeps/unix/sysv/linux/i386/sys/vm86.h: New file. Contains
prototype for vm86.
* sysdeps/unix/sysv/linux/i386/syscalls.list: New file. Add
vm86 system call.
* sysdeps/unix/sysv/linux/sys/acct.h: New file. Contains
prototypes for acct function.
* sysdeps/unix/sysv/linux/sys/socket.h: Provide real header
file with prototypes.
* sysdeps/unix/sysv/linux/sys/sysinfo.h: New file. Contains
prototype for sysinfo function.
* sysdeps/unix/sysv/linux/syscalls.list: Add flock, ioperm, iopl,
llseek, setfsgid, setfsuid, sysinfo, and uselib.
* sysdeps/unix/sysv/linux/sysconf.c: Instead of duplicating
posix/sysconf.c now only handle cases different to that
implementation.
Tue May 7 15:08:19 1996 Miles Bader <miles@gnu.ai.mit.edu>
* stdio/linewrap.c (__line_wrap_output): Renamed from lwoutput
(all references changed). Now exported.
* stdio/linewrap.c (struct data): Type deleted (moved to linewrap.h).
(wrap_stream, unwrap_stream, lwclose, lwfileno, lwoutput,
line_wrap_stream, line_unwrap_stream): Use struct line_wrap_data
instead of struct data.
(lwoutput, line_wrap_stream, line_unwrap_stream): Rename various
occurences of `wrap' and `wrapmargin' to `wmargin'.
(line_wrapped, line_wrap_lmargin, line_wrap_set_lmargin,
line_wrap_rmargin, line_wrap_set_rmargin, line_wrap_wmargin,
line_wrap_set_wmargin, line_wrap_point): New functions.
* stdio/linewrap.h: New file.
* stdio/Makefile (headers): Add linewrap.h.
Tue May 7 14:19:12 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* sysdeps/unix/sysv/linux/i386/Makefile: File removed.
* stdio/stdio.h: Remove line_wrap_stream, line_unwap_stream decls.
* sysdeps/unix/sysv/linux/schedbits.h: New file.
Tue May 7 13:47:02 1996 Miles Bader <miles@gnu.ai.mit.edu>
* stdio/linewrap.c (struct data): Make margin fields not-pointers.
(lwoutput): Adjust uses acordingly.
* sysdeps/mach/hurd/fdatasync.c: New file.
* sysdeps/mach/hurd/fsync.c: Pass new flag to file_sync.
* sysdeps/mach/hurd/xmknod.c: Pass new flag to dir_link.
* sysdeps/mach/hurd/symlink.c: Likewise.
* sysdeps/mach/hurd/link.c: Likewise.
* sysdeps/mach/hurd/bind.c: Likewise.
* hurd/hurdsig.c (write_corefile): Likewise.
* hurd/hurdsig.c (write_corefile): Pass cttyid port to crash server.
* sysdeps/mach/hurd/fpathconf.c: RPC takes int pointer, not long int.
* sysdeps/mach/hurd/_exit.c (_hurd_exit): Pass sigcode arg to
proc_mark_exit.
* sysdeps/mach/hurd/dl-sysdep.c (_exit): Likewise.
* sysdeps/mach/hurd/wait4.c: Pass sigcode arg to proc_wait.
* sysdeps/mach/hurd/rename.c: Pass new flag to dir_rename.
* hurd/hurdfault.c (_hurdsig_fault_catch_exception_raise): Use struct
hurd_signal_detail.
* hurd/catch-exc.c (_S_catch_exception_raise): Likewise.
* hurd/hurd-raise.c (_hurd_raise_signal): Likewise.
* sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
Likewise.
* sysdeps/mach/hurd/setitimer.c (restart_itimer): Likewise.
* hurd/hurd/signal.h: Fix _hurd_exception2signal prototype.
* hurd/hurdsig.c (write_corefile): Take const struct
hurd_signal_detail * arg. Pass all details to crash_dump_task.
(_hurd_internal_post_signal): Pass DETAIL to write_corefile.
(_hurd_internal_post_signal: suspend): Pass code and error to
proc_mark_stop.
* hurd/hurdprio.c (_hurd_priority_which_map): Pass flags arg to
proc_getprocinfo by reference.
1996-05-08 10:07:47 +08:00
|
|
|
|
$(common-objpfx)version.mk: $(..)version.h $(..)Makeconfig
|
|
|
|
|
sed -n -e 's/^.*RELEASE.*"\([^"]*\)".*$$/release=\1/p' \
|
|
|
|
|
-e 's/^.*VERSION.*"\([^"]*\)".*$$/version=\1/p' \
|
Fri Apr 19 00:49:44 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* stdlib/rpmatch.c (rpmatch: try): Take new arg NOMATCH, return value
for nonmatching nonerror (instead of !MATCH).
(rpmatch): Use it, so we return -1 when NOEXPR doesn't match either.
* resolv/getnetnamadr.c (getnetbyaddr): Use u_int32_t instead of
unsigned long for variable NET2.
* time/etcetera, time/europe, time/solar89: Updated from ADO's 96e.
Tue Apr 9 14:37:31 1996 Ulrich Drepper <drepper@cygnus.com>
* catgets/Makefile, catgets/catgets.c, catgets/catgetsinfo.h,
catgets/config.h, catgets/gencat.c, catgets/nl_types.h,
catgets/open_catalog.c: New files. Implementation of XPG4
compliant catgets() function and needed tools.
* Makefile (subdirs): Add catgets.
Thu Apr 18 23:36:11 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* math/Makefile (CPPFLAGS): Append -D__NO_MATH_INLINES.
Wed Apr 10 20:48:43 1996 Ulrich Drepper <drepper@cygnus.com>
* stdio-common/vfprintf.c: Correct some typos.
* sysdeps/libm-ieee754/w_gammaf.c, sysdeps/libm-ieee754/w_lgamma.c,
sysdeps/libm-ieee754/w_lgammaf.c: Reference signgam instead of
__signgam.
Thu Apr 18 21:07:27 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Makerules (no-whole-archive): New variable.
(build-shlib): Use it.
* elf/Makefile (libdl.so): Use it.
* configure.in (libc_cv_ld_no_whole_archive): New check for
--no-whole-archive.
* config.make.in (have-no-whole-archive): New variable.
* stdio-common/printf_fp.c: Increase fudge factor for BIGNUM_SIZE calc
from 3 to 4.
* Make-dist: Include version.mk.
(version, release): Variables removed.
* Makeconfig (version.mk): New target.
Fri Apr 19 01:42:18 1996 Ulrich Drepper <drepper@cygnus.com>
* locale/Makefile (headers): Add langinfo.h.
(CPPFLAGS): Remove -Iliblib.
1996-04-20 08:05:25 +08:00
|
|
|
|
< $< > $@-new
|
|
|
|
|
mv -f $@-new $@
|
1995-02-18 09:27:10 +08:00
|
|
|
|
|
|
|
|
|
endif # Makeconfig not yet included
|