glibc/mach/Makefile

177 lines
6.3 KiB
Makefile
Raw Normal View History

# Copyright (C) 1991-2018 Free Software Foundation, Inc.
1995-02-18 01:27:10 +00: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 Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
1995-02-18 01:27:10 +00:00
# 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
# Lesser General Public License for more details.
1995-02-18 01:27:10 +00:00
# You should have received a copy of the GNU Lesser General Public
# License along with the GNU C Library; if not, see
# <http://www.gnu.org/licenses/>.
1995-02-18 01:27:10 +00:00
subdir := mach
include ../Makeconfig
headers = mach_init.h mach.h mach_error.h mach-shortcuts.h mach/mach_traps.h \
1995-02-18 01:27:10 +00:00
$(interface-headers) mach/mach.h mach/mig_support.h mach/error.h \
$(lock-headers) machine-sp.h
lock = spin-solid spin-lock mutex-init mutex-solid
1995-02-18 01:27:10 +00:00
lock-headers = lock-intern.h machine-lock.h spin-lock.h
routines = $(mach-syscalls) $(mach-shortcuts) \
mach_init mig_strncpy msg \
mig-alloc mig-dealloc mig-reply \
msg-destroy msgserver \
mach_error errstring error_compat errsystems \
devstream setup-thread $(lock)
1995-02-18 01:27:10 +00:00
# The RPC interfaces go in a separate library.
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 05:32:45 +00:00
interface-library := libmachuser
# We produce mach_interface.h from mach.defs because there is already a
# <mach/mach.h> that is not the interface header (thanks CMU).
mach-interface-list := $(patsubst mach,mach_interface,$(mach-interface-list))
mach/mach_interface.defs = mach/mach.defs
# Similarly for memory_object_user vs. memory_object
mach-interface-list := $(patsubst memory_object,memory_object_user,\
$(mach-interface-list))
mach/memory_object_user.defs = mach/memory_object.defs
user-interfaces := $(addprefix mach/,$(mach-interface-list) \
mach_port mach_host exc \
)\
$(addprefix device/,device device_request)
server-interfaces := mach/exc
1995-02-18 01:27:10 +00:00
# Clear any environment value.
generated =
# Avoid ssp before TLS is initialized.
CFLAGS-mach_init.o = $(no-stack-protector)
CFLAGS-RPC_vm_statistics.o = $(no-stack-protector)
CFLAGS-RPC_vm_map.o = $(no-stack-protector)
CFLAGS-RPC_vm_protect.o = $(no-stack-protector)
CFLAGS-RPC_i386_set_gdt.o = $(no-stack-protector)
CFLAGS-RPC_i386_set_ldt.o = $(no-stack-protector)
CFLAGS-RPC_task_get_special_port.o = $(no-stack-protector)
1995-02-18 01:27:10 +00:00
# Translate GNU names for CPUs into the names used in Mach header files.
mach-machine = $(patsubst powerpc,ppc,$(base-machine))
1995-02-18 01:27:10 +00:00
# Define mach-syscalls and sysno-*.
ifndef inhibit_mach_syscalls
-include $(objpfx)mach-syscalls.mk
1995-02-18 01:27:10 +00:00
endif
$(objpfx)mach-syscalls.mk: syscalls.awk Makefile libc-modules.h
1995-02-18 01:27:10 +00:00
# Go kludges!!!
$(make-target-directory)
# We must use $(CFLAGS) to get -O flags that affect #if's in header files.
Sun May 12 11:16:58 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> * mach/Machrules (%.udeps rule): Write deps for %_server.[ch] too. (%_server.[ch] rule): Don't depend on %.defs; use #include to get installed .defs file. * stdio-common/vfprintf.c (flockfile, funlockfile): Define to nothing for stdio. Fix fUNlockfile -> funlockfile for libio. * stdio-common/vfscanf.c: Likewise. Sat May 11 13:43:41 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> * hurd/hurdfault.c: Include faultexc_server.h instead of faultexc.h. * mach/Machrules (%.ir rule): Don't produce deps for imports. * elf/dl-fini.c (_dl_fini): Clear L->l_init_called after calling fn. * Makerules (install): Depend on $(slibdir)/libc.so$(libc.so-version). [!subdir] ($(libdir)/libc.so, $(common-objpfx)/libc-syms.so): Protect these targets and install dep on $(libdir)/libc.so with this. * hurd/Makefile: Removed all rules and defns for using code from Hurd sources and installing headers from there. * sysdeps/mach/hurd/errnos.awk: Set in_mach_errors to FILENAME when we set it. In Mach error matching clause, only match if FILENAME is still the same value. * sysdeps/mach/hurd/Makefile: Don't include sysdeps/mach/Makefile; $(mach-srcdir) no longer exists. (hurd-srcdir): Variable removed. (includes): Don't append -I$(hurd-srcdir). (last-includes): Variable removed. Remove vpath specs using $(hurd-srcdir). (mach-errno-h): New canned sequence. ($(common-objpfx)errnos.d): New target, generated included makefile to determine absolute file names of Mach headers to search for error codes and set variable mach-errnos-deps. ($(common-objpfx)stamp-errnos): Depend on $(mach-errnos-deps) instead of prior explicit list. (generated): Add errnos.d, stamp-errnos. * mach/Machrules (some-if-rtn): New variable and target; compute deps of some if routine and make all if routines depend on that .d file instead of static list of .h files. * mach/Makefile (mach/mach_interface.defs, mach/memory_object_user.defs): Targets removed. ($(objpfx)mach-syscalls.mk): Tweak this kludge so it doesn't depend directly on Mach sources. * sysdeps/mach/Makefile (mach-srcdir): Variable removed. (includes): Don't append -I$(mach-srcdir). Remove vpath specs using $(mach-srcdir). * hurd/Makefile (server-interfaces): Add faultexc. (sig): Remove it from here. (fault%.[ch]): Rule removed. (MIGFLAGS-faultexc): New variable. * hurd/faultexc.defs: New file. * mach/Machrules (%.ustamp rule): Pass $(MIGFLAGS-$*) to mig. (%_server.[ch] rule): Likewise. * mach/Makefile: Removed all rules and defns for using code from Mach sources and installing headers from there. * Makeconfig [$(build-shared)=yes] (link-libc): Append $(libc.so-version) to libc.so. * mach/Machrules (%.ustamp rule): Don't depend on %.defs. (%.udeps): New rule parallel to that one, generating included makefiles with -M output from `#include <%.defs>'. * Makerules (sed-remove-objpfx): Remove space before \ at eol.
1996-05-12 16:38:08 +00:00
echo '#include <mach/syscall_sw.h>' | \
$(CC) $(CFLAGS) $(CPPFLAGS) -E -MD -MP -MF $@-dep -MT $@ \
-x c-header - \
-D_MACH_`echo $(mach-machine) | tr a-z A-Z`_SYSCALL_SW_H_=1 | \
Sun May 12 11:16:58 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> * mach/Machrules (%.udeps rule): Write deps for %_server.[ch] too. (%_server.[ch] rule): Don't depend on %.defs; use #include to get installed .defs file. * stdio-common/vfprintf.c (flockfile, funlockfile): Define to nothing for stdio. Fix fUNlockfile -> funlockfile for libio. * stdio-common/vfscanf.c: Likewise. Sat May 11 13:43:41 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> * hurd/hurdfault.c: Include faultexc_server.h instead of faultexc.h. * mach/Machrules (%.ir rule): Don't produce deps for imports. * elf/dl-fini.c (_dl_fini): Clear L->l_init_called after calling fn. * Makerules (install): Depend on $(slibdir)/libc.so$(libc.so-version). [!subdir] ($(libdir)/libc.so, $(common-objpfx)/libc-syms.so): Protect these targets and install dep on $(libdir)/libc.so with this. * hurd/Makefile: Removed all rules and defns for using code from Hurd sources and installing headers from there. * sysdeps/mach/hurd/errnos.awk: Set in_mach_errors to FILENAME when we set it. In Mach error matching clause, only match if FILENAME is still the same value. * sysdeps/mach/hurd/Makefile: Don't include sysdeps/mach/Makefile; $(mach-srcdir) no longer exists. (hurd-srcdir): Variable removed. (includes): Don't append -I$(hurd-srcdir). (last-includes): Variable removed. Remove vpath specs using $(hurd-srcdir). (mach-errno-h): New canned sequence. ($(common-objpfx)errnos.d): New target, generated included makefile to determine absolute file names of Mach headers to search for error codes and set variable mach-errnos-deps. ($(common-objpfx)stamp-errnos): Depend on $(mach-errnos-deps) instead of prior explicit list. (generated): Add errnos.d, stamp-errnos. * mach/Machrules (some-if-rtn): New variable and target; compute deps of some if routine and make all if routines depend on that .d file instead of static list of .h files. * mach/Makefile (mach/mach_interface.defs, mach/memory_object_user.defs): Targets removed. ($(objpfx)mach-syscalls.mk): Tweak this kludge so it doesn't depend directly on Mach sources. * sysdeps/mach/Makefile (mach-srcdir): Variable removed. (includes): Don't append -I$(mach-srcdir). Remove vpath specs using $(mach-srcdir). * hurd/Makefile (server-interfaces): Add faultexc. (sig): Remove it from here. (fault%.[ch]): Rule removed. (MIGFLAGS-faultexc): New variable. * hurd/faultexc.defs: New file. * mach/Machrules (%.ustamp rule): Pass $(MIGFLAGS-$*) to mig. (%_server.[ch] rule): Likewise. * mach/Makefile: Removed all rules and defns for using code from Mach sources and installing headers from there. * Makeconfig [$(build-shared)=yes] (link-libc): Append $(libc.so-version) to libc.so. * mach/Machrules (%.ustamp rule): Don't depend on %.defs. (%.udeps): New rule parallel to that one, generating included makefiles with -M output from `#include <%.defs>'. * Makerules (sed-remove-objpfx): Remove space before \ at eol.
1996-05-12 16:38:08 +00:00
sed -n -e 's/^kernel_trap(\(.*\),\([-0-9]*\),\([0-9]*\))$$/\1 \2 \3/p'\
Update. 1998-04-21 18:00 Ulrich Drepper <drepper@cygnus.com> * iconv/gconv.c (__gconv): Remove bogus input buffer size computation. * iconv/gconv_open.c (__gconv_open): Initialize outbufend element. * iconv/gconv_simple.c (__gconv_transform_internal_ascii): Don't use character in comparison with uint32_t. (__gconv_transform_internal_utf8): Specify MAX_NEEDED_TO. (__gconv_transform_utf8_internal): Specify MAX_NEEDED_FROM. Optimize BODY a bit. * iconv/loop.c: Require MIN_NEEDED_INPUT and MIN_NEEDED_OUTPUT to be defined. * iconv/skeleton.c: Also reset converted counter in case of an error. Call reset function using correct value for output buffer start. * iconvdata/Makefile: Re-enable tests. * iconvdata/iso8859-1.c: Swap MIN_NEEDED_INPUT and MIN_NEEDED_OUTPUT value for to-conversion. * iconvdata/TESTS: Add new third column. * iconvdata/run-iconv-test.sh: Add support for charsets which are not ASCII based. * iconvdata/testdata/suntzus: New file. * elf/dl-minimal.c (__strtol_internal): Increment pointer to string while reading. Correctly used base. Little optimization. (__strtoul_internal): Likewise. * elf/rtld.c (dl_main): Test to avoid duplicate call of _dl_init_paths was wrong. Use explicit variable. 1998-04-20 23:49 Zack Weinberg <zack@rabi.phys.columbia.edu> * configure.in: Check for awk. * config.make.in: Add AWK to be substituted. * manual/xtract-typefun.awk: Rewrite to eliminate gawk extensions. * manual/users.texi: Fix typo exposed by above rewrite. * Makefile: Invoke awk using AWK variable. * csu/Makefile: Likewise. * elf/Makefile: Likewise. * mach/Makefile: Likewise. * manual/Makefile: Likewise. * sysdeps/gnu/Makefile: Likewise. * sysdeps/mach/hurd/Makefile: Likewise. * sysdeps/unix/Makefile: Likewise. * timezone/Makefile: Likewise. 1998-04-10 Gordon Matzigkeit <gord@profitpress.com> * sysdeps/gnu/errlist.awk (ERR_REMAP): Implement error code to array index translation. (SYS_ERRLIST_ALIAS, SYS_NERR_ALIAS): Make weak aliases only if these are defined. * sysdeps/mach/hurd/Dist: Add errlist.c to distribution. * sysdeps/mach/hurd/errlist.c: New file. (ERR_TRANSLATE): Map Hurd error codes into errlist indices. (_hurd_errlist): The Hurd error list doesn't have Unix sys_errlist semantics, so rename it. 1998-04-16 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * iconvdata/run-iconv-test.sh: Make portable. Always test all conversions. 1998-04-21 12:30 H.J. Lu <hjl@gnu.org> * wcsmbs/wcsrtombs.c (__wcsrtombs): Initialize result to 0. * wcsmbs/wcsnrtombs.c: Likewise. 1998-04-21 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/dl-sysdep.c: Handle _dl_hwcap correctly. * wcsmbs/btowc.c (__btowc): Declare inptr as const char *. * time/strftime.c (my_strftime): Initialize pad variable in declaration. * iconvdata/big5.c: Don't use character constants in comparisons with unsigned value. * sysdeps/generic/setutxent.c: New file. * sysdeps/generic/getutxent.c: New file. * sysdeps/generic/endutxent.c: New file. * sysdeps/generic/getutxid.c: New file. * sysdeps/generic/getutxline.c: New file. * sysdeps/generic/pututxline.c: New file. * sysdeps/generic/utmpxname.c: New file. * sysdeps/generic/updwtmpx.c: New file.
1998-04-21 18:15:51 +00:00
| $(AWK) -f $< > $@-new
ifneq (,$(objpfx))
sed $(sed-remove-objpfx) $@-dep >> $@-new
else
cat $@-dep >> $@-new
endif
rm -f $@-dep
Update. 1998-06-22 17:02 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/enbl-secure.c: Don't use __libc_uid. * sysdeps/unix/sysv/linux/aio_sigqueue.c: Likewise. * sysdeps/unix/sysv/linux/sigqueue.c: Likewise. * sysdeps/unix/sysv/linux/init-first.c: Don't initialize __libc_uid. 1998-06-02 Gordon Matzigkeit <gord@profitpress.com> * mach/Makefile: Change `mv' invocations to `mv -f'. * mach/Machrules: Likewise. 1998-06-22 Andreas Jaeger <aj@arthur.rhein-neckar.de> * config.make.in (old-glibc-headers): Add it. * configure.in: Add test for glibc 2.0.x headers. * Makefile (headers2_0): New variable - contains so far only Linux/Intel glibc 2.0.x headers. (remove-old-headers): New rule to remove headers from glibc 2.0.x. (install): Depend on remove-old-headers. 1998-06-19 Mark Kettenis <kettenis@phys.uva.nl> * sysdeps/generic/ftruncate.c: Define function as __ftruncate and make ftruncate a weak alias. * sysdeps/mach/hurd/ftruncate.c: Really define function as __ftruncate. * sysdeps/mach/hurd/truncate.c: Include <unistd.h>. (truncate): Fix function defenition to match prototype. 1998-06-20 Mark Kettenis <kettenis@phys.uva.nl> * manual/terminal.texi: Document ttyname_r, getpt, grantpt, unlockpt, ptsname, ptsname_r, openpty and forkpty. 1998-06-22 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/glob.c: Make it possible to include glob.h before loading glob.c. Reported by Felix von Leitner <leitner@math.fu-berlin.de>. 1998-06-22 Andreas Jaeger <aj@arthur.rhein-neckar.de> * nscd/connections.c: Use poll() instead of select(). 1998-06-22 14:08 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/generic/Dist: Fix typo. 1998-06-20 Thorsten Kukuk <kukuk@vt.uni-paderborn.de> * nis/nis_add.c: Avoid unnecessary strlen () calls. * nis/nis_addmember.c: Likewise. * nis/nis_call.c: Likewise. * nis/nis_creategroup.c: Likewise. * nis/nis_destroygroup.c: Likewise. * nis/nis_findserv.c: Likewise. * nis/nis_ismember.c: Likewise. * nis/nis_print.c: Likewise. * nis/nis_print_group_entry.c: Likewise. * nis/nis_removemember.c: Likewise. * nis/nis_verifygroup.c: Likewise. * nis/ypclnt.c: Likewise. * nis/nis_file.c: Close file handles. * nis/nis_callback.c: Fix typo.
1998-06-22 17:08:51 +00:00
mv -f $@-new $@
1995-02-18 01:27:10 +00:00
generated += mach-syscalls.mk
ifndef mach-syscalls
# We cannot make the deps properly until we know how to make the system
# call functions, and for that we must know what they all are.
no_deps=t
else
$(mach-syscalls:%=$(objpfx)%.S): $(objpfx)%.S: $(objpfx)mach-syscalls.mk
(echo '#include <sysdep.h>'; \
echo 'kernel_trap (__$*,$(sysno-$*),$(nargs-$*))'; \
1995-02-18 01:27:10 +00:00
echo 'weak_alias (__$*, $*)') > $@-new
Update. 1998-06-22 17:02 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/enbl-secure.c: Don't use __libc_uid. * sysdeps/unix/sysv/linux/aio_sigqueue.c: Likewise. * sysdeps/unix/sysv/linux/sigqueue.c: Likewise. * sysdeps/unix/sysv/linux/init-first.c: Don't initialize __libc_uid. 1998-06-02 Gordon Matzigkeit <gord@profitpress.com> * mach/Makefile: Change `mv' invocations to `mv -f'. * mach/Machrules: Likewise. 1998-06-22 Andreas Jaeger <aj@arthur.rhein-neckar.de> * config.make.in (old-glibc-headers): Add it. * configure.in: Add test for glibc 2.0.x headers. * Makefile (headers2_0): New variable - contains so far only Linux/Intel glibc 2.0.x headers. (remove-old-headers): New rule to remove headers from glibc 2.0.x. (install): Depend on remove-old-headers. 1998-06-19 Mark Kettenis <kettenis@phys.uva.nl> * sysdeps/generic/ftruncate.c: Define function as __ftruncate and make ftruncate a weak alias. * sysdeps/mach/hurd/ftruncate.c: Really define function as __ftruncate. * sysdeps/mach/hurd/truncate.c: Include <unistd.h>. (truncate): Fix function defenition to match prototype. 1998-06-20 Mark Kettenis <kettenis@phys.uva.nl> * manual/terminal.texi: Document ttyname_r, getpt, grantpt, unlockpt, ptsname, ptsname_r, openpty and forkpty. 1998-06-22 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/glob.c: Make it possible to include glob.h before loading glob.c. Reported by Felix von Leitner <leitner@math.fu-berlin.de>. 1998-06-22 Andreas Jaeger <aj@arthur.rhein-neckar.de> * nscd/connections.c: Use poll() instead of select(). 1998-06-22 14:08 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/generic/Dist: Fix typo. 1998-06-20 Thorsten Kukuk <kukuk@vt.uni-paderborn.de> * nis/nis_add.c: Avoid unnecessary strlen () calls. * nis/nis_addmember.c: Likewise. * nis/nis_call.c: Likewise. * nis/nis_creategroup.c: Likewise. * nis/nis_destroygroup.c: Likewise. * nis/nis_findserv.c: Likewise. * nis/nis_ismember.c: Likewise. * nis/nis_print.c: Likewise. * nis/nis_print_group_entry.c: Likewise. * nis/nis_removemember.c: Likewise. * nis/nis_verifygroup.c: Likewise. * nis/ypclnt.c: Likewise. * nis/nis_file.c: Close file handles. * nis/nis_callback.c: Fix typo.
1998-06-22 17:08:51 +00:00
mv -f $@-new $@
1995-02-18 01:27:10 +00:00
generated += $(mach-syscalls:=.S)
endif # mach-syscalls
# These syscalls that look like RPCs actually have no RPC equivalents.
mach-shortcuts := $(filter-out device_writev_request \
device_read_overwrite_request \
device_read_overwrite \
vm_read_overwrite \
thread_switch \
,\
1995-02-18 01:27:10 +00:00
$(patsubst syscall_%,%,$(filter syscall_%,$(mach-syscalls))))
ifndef mach-shortcuts
# Forget about mach_interface.defs for this run. On the next run,
# $(mach-shortcuts) will be set, and that will change how
# mach_interface.defs is processed: it will get the -D flags below.
user-interfaces := $(filter-out $(mach-interface-list:%=mach/%) \
1995-02-18 01:27:10 +00:00
mach/mach_port mach/mach_host mach/mach4 \
device/device_request,\
$(user-interfaces))
endif
# For some reason, the calls in this file are `protected' by an ifdef.
MIGFLAGS-mach/mach4=-DMACH_PCSAMPLE
1995-02-18 01:27:10 +00:00
# Make the MiG stubs for $(mach-shortcuts) be CALL_rpc.
migdefines += $(foreach call,$(mach-shortcuts),-D$(call)=$(call)_rpc)
$(mach-interface-list:%=mach/%.uh) \
mach/mach_host.uh mach/mach_port.uh: $(objpfx)mach-syscalls.mk
1995-02-18 01:27:10 +00:00
ifdef mach-shortcuts
$(mach-shortcuts:%=$(objpfx)%.c): $(objpfx)%.c: shortcut.awk \
$(objpfx)RPC_%_rpc.c
Update. 1998-04-21 18:00 Ulrich Drepper <drepper@cygnus.com> * iconv/gconv.c (__gconv): Remove bogus input buffer size computation. * iconv/gconv_open.c (__gconv_open): Initialize outbufend element. * iconv/gconv_simple.c (__gconv_transform_internal_ascii): Don't use character in comparison with uint32_t. (__gconv_transform_internal_utf8): Specify MAX_NEEDED_TO. (__gconv_transform_utf8_internal): Specify MAX_NEEDED_FROM. Optimize BODY a bit. * iconv/loop.c: Require MIN_NEEDED_INPUT and MIN_NEEDED_OUTPUT to be defined. * iconv/skeleton.c: Also reset converted counter in case of an error. Call reset function using correct value for output buffer start. * iconvdata/Makefile: Re-enable tests. * iconvdata/iso8859-1.c: Swap MIN_NEEDED_INPUT and MIN_NEEDED_OUTPUT value for to-conversion. * iconvdata/TESTS: Add new third column. * iconvdata/run-iconv-test.sh: Add support for charsets which are not ASCII based. * iconvdata/testdata/suntzus: New file. * elf/dl-minimal.c (__strtol_internal): Increment pointer to string while reading. Correctly used base. Little optimization. (__strtoul_internal): Likewise. * elf/rtld.c (dl_main): Test to avoid duplicate call of _dl_init_paths was wrong. Use explicit variable. 1998-04-20 23:49 Zack Weinberg <zack@rabi.phys.columbia.edu> * configure.in: Check for awk. * config.make.in: Add AWK to be substituted. * manual/xtract-typefun.awk: Rewrite to eliminate gawk extensions. * manual/users.texi: Fix typo exposed by above rewrite. * Makefile: Invoke awk using AWK variable. * csu/Makefile: Likewise. * elf/Makefile: Likewise. * mach/Makefile: Likewise. * manual/Makefile: Likewise. * sysdeps/gnu/Makefile: Likewise. * sysdeps/mach/hurd/Makefile: Likewise. * sysdeps/unix/Makefile: Likewise. * timezone/Makefile: Likewise. 1998-04-10 Gordon Matzigkeit <gord@profitpress.com> * sysdeps/gnu/errlist.awk (ERR_REMAP): Implement error code to array index translation. (SYS_ERRLIST_ALIAS, SYS_NERR_ALIAS): Make weak aliases only if these are defined. * sysdeps/mach/hurd/Dist: Add errlist.c to distribution. * sysdeps/mach/hurd/errlist.c: New file. (ERR_TRANSLATE): Map Hurd error codes into errlist indices. (_hurd_errlist): The Hurd error list doesn't have Unix sys_errlist semantics, so rename it. 1998-04-16 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * iconvdata/run-iconv-test.sh: Make portable. Always test all conversions. 1998-04-21 12:30 H.J. Lu <hjl@gnu.org> * wcsmbs/wcsrtombs.c (__wcsrtombs): Initialize result to 0. * wcsmbs/wcsnrtombs.c: Likewise. 1998-04-21 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/dl-sysdep.c: Handle _dl_hwcap correctly. * wcsmbs/btowc.c (__btowc): Declare inptr as const char *. * time/strftime.c (my_strftime): Initialize pad variable in declaration. * iconvdata/big5.c: Don't use character constants in comparisons with unsigned value. * sysdeps/generic/setutxent.c: New file. * sysdeps/generic/getutxent.c: New file. * sysdeps/generic/endutxent.c: New file. * sysdeps/generic/getutxid.c: New file. * sysdeps/generic/getutxline.c: New file. * sysdeps/generic/pututxline.c: New file. * sysdeps/generic/utmpxname.c: New file. * sysdeps/generic/updwtmpx.c: New file.
1998-04-21 18:15:51 +00:00
$(AWK) -v alias=$* -v call=__$* -v rpc=__$*_rpc \
-v syscall=__syscall_$* -f $^ > $@-new
Update. 1998-06-22 17:02 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/enbl-secure.c: Don't use __libc_uid. * sysdeps/unix/sysv/linux/aio_sigqueue.c: Likewise. * sysdeps/unix/sysv/linux/sigqueue.c: Likewise. * sysdeps/unix/sysv/linux/init-first.c: Don't initialize __libc_uid. 1998-06-02 Gordon Matzigkeit <gord@profitpress.com> * mach/Makefile: Change `mv' invocations to `mv -f'. * mach/Machrules: Likewise. 1998-06-22 Andreas Jaeger <aj@arthur.rhein-neckar.de> * config.make.in (old-glibc-headers): Add it. * configure.in: Add test for glibc 2.0.x headers. * Makefile (headers2_0): New variable - contains so far only Linux/Intel glibc 2.0.x headers. (remove-old-headers): New rule to remove headers from glibc 2.0.x. (install): Depend on remove-old-headers. 1998-06-19 Mark Kettenis <kettenis@phys.uva.nl> * sysdeps/generic/ftruncate.c: Define function as __ftruncate and make ftruncate a weak alias. * sysdeps/mach/hurd/ftruncate.c: Really define function as __ftruncate. * sysdeps/mach/hurd/truncate.c: Include <unistd.h>. (truncate): Fix function defenition to match prototype. 1998-06-20 Mark Kettenis <kettenis@phys.uva.nl> * manual/terminal.texi: Document ttyname_r, getpt, grantpt, unlockpt, ptsname, ptsname_r, openpty and forkpty. 1998-06-22 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/glob.c: Make it possible to include glob.h before loading glob.c. Reported by Felix von Leitner <leitner@math.fu-berlin.de>. 1998-06-22 Andreas Jaeger <aj@arthur.rhein-neckar.de> * nscd/connections.c: Use poll() instead of select(). 1998-06-22 14:08 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/generic/Dist: Fix typo. 1998-06-20 Thorsten Kukuk <kukuk@vt.uni-paderborn.de> * nis/nis_add.c: Avoid unnecessary strlen () calls. * nis/nis_addmember.c: Likewise. * nis/nis_call.c: Likewise. * nis/nis_creategroup.c: Likewise. * nis/nis_destroygroup.c: Likewise. * nis/nis_findserv.c: Likewise. * nis/nis_ismember.c: Likewise. * nis/nis_print.c: Likewise. * nis/nis_print_group_entry.c: Likewise. * nis/nis_removemember.c: Likewise. * nis/nis_verifygroup.c: Likewise. * nis/ypclnt.c: Likewise. * nis/nis_file.c: Close file handles. * nis/nis_callback.c: Fix typo.
1998-06-22 17:08:51 +00:00
mv -f $@-new $@
1995-02-18 01:27:10 +00:00
generated += $(mach-shortcuts:%=%.c)
endif # mach-shortcuts
# Generate mach-shortcuts.h, which will contain the prototypes for the
# shortcutted kernel RPC functions.
$(objpfx)mach-shortcuts.h: $(mach-interface-list:%=$(objpfx)mach/%.h) \
1996-08-12 23:22:12 +00:00
$(objpfx)mach/mach_host.h \
1995-02-18 01:27:10 +00:00
$(objpfx)mach/mach_port.h
# The first line gets us one paragraph per line, with @s separating real lines.
# The second line selects paragraphs for the shortcutted functions.
Update from main archive 961219 Thu Dec 19 23:28:33 1996 Ulrich Drepper <drepper@cygnus.com> * resolv/resolv.h: Update from BIND 4.9.5-P1. * resolv/res_comp.c: Likewise. * resolv/res_debug.c: Likewise. * resolv/Banner: Update version number. Thu Dec 19 20:58:53 1996 Ulrich Drepper <drepper@cygnus.com> * elf/dlfcn.h: Add extern "C" wrapper. * io/utime.h: Don't define NULL since this isn't allowed in POSIX. * io/sys/stat.h: Declare `lstat' only if __USE_BSD || __USE_XOPEN_EXTENDED. * locale/locale.h: Define NULL. * math/math.c: Don't include <errno.h> to define math errors. * stdlib/stdlib.h: Likewise. * posix/unistd.h: Don't declare environ. * posix/sys/utsname.h (struct utsname): Declare member domainname as __domainname is !__USE_GNU. * signal/signal.h: Declare size_t only if __USE_BSD || __USE_XOPEN_EXTENDED. * stdio/stdio.h: Don't declare cuserid when __USE_POSIX, but instead when __USE_XOPEN. * string/string.h: Define strndup only if __USE_GNU. * sysdeps/unix/sysv/linux/clock.c: New file. * sysdeps/unix/sysv/linux/timebits.h: Define CLOCKS_PER_SEC as 1000000 per X/Open standard. * features.h: Add code to recognize _POSIX_C_SOURCE value 199309. Define __USE_POSIX199309. * posix/unistd.h: Declare fdatasync only if __USE_POSIX199309. * time/time.c: Declare nanosleep only if __USE_POSIX199309. Patches by Rüdiger Helsch <rh@unifix.de>. * locale/locale.h: Add declaration of newlocale and freelocale. * new-malloc/Makefile (distibute): Add mtrace.awk. (dist-routines): Add mcheck and mtrace. (install-lib, non-lib.a): Define as libmcheck.a. * new-malloc/malloc.h: Add declaration of __malloc_initialized. * new-malloc/mcheck.c: New file. * new-malloc/mcheck.h: New file. * new-malloc/mtrace.c: New file. * new-malloc/mtrace.awk: New file. * posix/unistd.h: Correct prototype for usleep. * sysdeps/unix/bsd/usleep.c: De-ANSI-declfy. Correct return type. * sysdeps/unix/sysv/linux/usleep.c: Real implementation based on nanosleep. * signal/signal.h: Change protoype of __sigpause to take two arguments. Remove prototype for sigpause. Add two different macros named sigpause selected when __USE_BSD or __USE_XOPEN are defined. This is necessary since the old BSD definition of theis function collides with the X/Open definition. * sysdeps/posix/sigpause.c: Change function definition to also fit X/Open definition. * sysdeps/libm-i387/e_exp.S: Make sure stack is empty when the function is left. * sysdeps/libm-i387/e_expl.S: Likewise. Patch by HJ Lu. 1996-12-17 Paul Eggert <eggert@twinsun.com> * many, many files: Spelling corrections. * catgets/catgetsinfo.h (mmapped): Renamed from mmaped (in struct catalog_info.status). * mach/err_kern.sub (err_codes_unix), string/stratcliff.c (main): Fix spelling in message. * po/libc.pot: Fix spelling in message for `zic'; this anticipates a fix in the tzcode distribution. Wed Dec 18 15:48:02 1996 Ulrich Drepper <drepper@cygnus.com> * time/strftime.c: Implement ^ flag to cause output be converted to use upper case characters. * time/zic.c: Update from ADO tzcode1996n. Wed Dec 18 14:29:24 1996 Erik Naggum <erik@naggum.no> * time/strftime.c (add): Don't change global `i' until all is over. Define NULL is not already defined. Tue Dec 17 09:49:03 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * libio/iovsprintf.c (_IO_vsprintf): Change `&sf' to `&sf._sbf._f' to avoid the need for a cast. * libio/iovsscanf.c (_IO_vsscanf): Likewise. * sunrpc/rpc/xdr.h: Add prototype for xdr_free.
1996-12-20 01:39:50 +00:00
# The third line removes `_rpc' from the names and reconstitutes the lines.
1995-02-18 01:27:10 +00:00
cat $^ | tr \\012 @ | sed s/@@/@%/g | tr % \\012 \
| grep '^/\* Routine [a-z0-9_]*_rpc \*/' \
| sed 's/_rpc//g' | tr @ \\012 > $@-new
Update. 1998-06-22 17:02 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/enbl-secure.c: Don't use __libc_uid. * sysdeps/unix/sysv/linux/aio_sigqueue.c: Likewise. * sysdeps/unix/sysv/linux/sigqueue.c: Likewise. * sysdeps/unix/sysv/linux/init-first.c: Don't initialize __libc_uid. 1998-06-02 Gordon Matzigkeit <gord@profitpress.com> * mach/Makefile: Change `mv' invocations to `mv -f'. * mach/Machrules: Likewise. 1998-06-22 Andreas Jaeger <aj@arthur.rhein-neckar.de> * config.make.in (old-glibc-headers): Add it. * configure.in: Add test for glibc 2.0.x headers. * Makefile (headers2_0): New variable - contains so far only Linux/Intel glibc 2.0.x headers. (remove-old-headers): New rule to remove headers from glibc 2.0.x. (install): Depend on remove-old-headers. 1998-06-19 Mark Kettenis <kettenis@phys.uva.nl> * sysdeps/generic/ftruncate.c: Define function as __ftruncate and make ftruncate a weak alias. * sysdeps/mach/hurd/ftruncate.c: Really define function as __ftruncate. * sysdeps/mach/hurd/truncate.c: Include <unistd.h>. (truncate): Fix function defenition to match prototype. 1998-06-20 Mark Kettenis <kettenis@phys.uva.nl> * manual/terminal.texi: Document ttyname_r, getpt, grantpt, unlockpt, ptsname, ptsname_r, openpty and forkpty. 1998-06-22 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/glob.c: Make it possible to include glob.h before loading glob.c. Reported by Felix von Leitner <leitner@math.fu-berlin.de>. 1998-06-22 Andreas Jaeger <aj@arthur.rhein-neckar.de> * nscd/connections.c: Use poll() instead of select(). 1998-06-22 14:08 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/generic/Dist: Fix typo. 1998-06-20 Thorsten Kukuk <kukuk@vt.uni-paderborn.de> * nis/nis_add.c: Avoid unnecessary strlen () calls. * nis/nis_addmember.c: Likewise. * nis/nis_call.c: Likewise. * nis/nis_creategroup.c: Likewise. * nis/nis_destroygroup.c: Likewise. * nis/nis_findserv.c: Likewise. * nis/nis_ismember.c: Likewise. * nis/nis_print.c: Likewise. * nis/nis_print_group_entry.c: Likewise. * nis/nis_removemember.c: Likewise. * nis/nis_verifygroup.c: Likewise. * nis/ypclnt.c: Likewise. * nis/nis_file.c: Close file handles. * nis/nis_callback.c: Fix typo.
1998-06-22 17:08:51 +00:00
mv -f $@-new $@
1995-02-18 01:27:10 +00:00
generated += mach-shortcuts.h
before-compile += $(objpfx)mach-shortcuts.h
include Machrules
include ../Rules
# A gcc bug prevents the generated file from working properly,
# so we have one in the distribution for the time being.
1995-02-18 01:27:10 +00:00
generated += errsystems.c
$(objpfx)errsystems.c: errsystems.awk err_*.sub \
$(wildcard $(addsuffix /err_*.sub,$(+sysdep_dirs)))
Update. 1998-04-21 18:00 Ulrich Drepper <drepper@cygnus.com> * iconv/gconv.c (__gconv): Remove bogus input buffer size computation. * iconv/gconv_open.c (__gconv_open): Initialize outbufend element. * iconv/gconv_simple.c (__gconv_transform_internal_ascii): Don't use character in comparison with uint32_t. (__gconv_transform_internal_utf8): Specify MAX_NEEDED_TO. (__gconv_transform_utf8_internal): Specify MAX_NEEDED_FROM. Optimize BODY a bit. * iconv/loop.c: Require MIN_NEEDED_INPUT and MIN_NEEDED_OUTPUT to be defined. * iconv/skeleton.c: Also reset converted counter in case of an error. Call reset function using correct value for output buffer start. * iconvdata/Makefile: Re-enable tests. * iconvdata/iso8859-1.c: Swap MIN_NEEDED_INPUT and MIN_NEEDED_OUTPUT value for to-conversion. * iconvdata/TESTS: Add new third column. * iconvdata/run-iconv-test.sh: Add support for charsets which are not ASCII based. * iconvdata/testdata/suntzus: New file. * elf/dl-minimal.c (__strtol_internal): Increment pointer to string while reading. Correctly used base. Little optimization. (__strtoul_internal): Likewise. * elf/rtld.c (dl_main): Test to avoid duplicate call of _dl_init_paths was wrong. Use explicit variable. 1998-04-20 23:49 Zack Weinberg <zack@rabi.phys.columbia.edu> * configure.in: Check for awk. * config.make.in: Add AWK to be substituted. * manual/xtract-typefun.awk: Rewrite to eliminate gawk extensions. * manual/users.texi: Fix typo exposed by above rewrite. * Makefile: Invoke awk using AWK variable. * csu/Makefile: Likewise. * elf/Makefile: Likewise. * mach/Makefile: Likewise. * manual/Makefile: Likewise. * sysdeps/gnu/Makefile: Likewise. * sysdeps/mach/hurd/Makefile: Likewise. * sysdeps/unix/Makefile: Likewise. * timezone/Makefile: Likewise. 1998-04-10 Gordon Matzigkeit <gord@profitpress.com> * sysdeps/gnu/errlist.awk (ERR_REMAP): Implement error code to array index translation. (SYS_ERRLIST_ALIAS, SYS_NERR_ALIAS): Make weak aliases only if these are defined. * sysdeps/mach/hurd/Dist: Add errlist.c to distribution. * sysdeps/mach/hurd/errlist.c: New file. (ERR_TRANSLATE): Map Hurd error codes into errlist indices. (_hurd_errlist): The Hurd error list doesn't have Unix sys_errlist semantics, so rename it. 1998-04-16 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * iconvdata/run-iconv-test.sh: Make portable. Always test all conversions. 1998-04-21 12:30 H.J. Lu <hjl@gnu.org> * wcsmbs/wcsrtombs.c (__wcsrtombs): Initialize result to 0. * wcsmbs/wcsnrtombs.c: Likewise. 1998-04-21 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/dl-sysdep.c: Handle _dl_hwcap correctly. * wcsmbs/btowc.c (__btowc): Declare inptr as const char *. * time/strftime.c (my_strftime): Initialize pad variable in declaration. * iconvdata/big5.c: Don't use character constants in comparisons with unsigned value. * sysdeps/generic/setutxent.c: New file. * sysdeps/generic/getutxent.c: New file. * sysdeps/generic/endutxent.c: New file. * sysdeps/generic/getutxid.c: New file. * sysdeps/generic/getutxline.c: New file. * sysdeps/generic/pututxline.c: New file. * sysdeps/generic/utmpxname.c: New file. * sysdeps/generic/updwtmpx.c: New file.
1998-04-21 18:15:51 +00:00
$(AWK) -v subsys='$(filter-out $<,$^)' -f $^ > $@.n
Update. 1998-06-22 17:02 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/enbl-secure.c: Don't use __libc_uid. * sysdeps/unix/sysv/linux/aio_sigqueue.c: Likewise. * sysdeps/unix/sysv/linux/sigqueue.c: Likewise. * sysdeps/unix/sysv/linux/init-first.c: Don't initialize __libc_uid. 1998-06-02 Gordon Matzigkeit <gord@profitpress.com> * mach/Makefile: Change `mv' invocations to `mv -f'. * mach/Machrules: Likewise. 1998-06-22 Andreas Jaeger <aj@arthur.rhein-neckar.de> * config.make.in (old-glibc-headers): Add it. * configure.in: Add test for glibc 2.0.x headers. * Makefile (headers2_0): New variable - contains so far only Linux/Intel glibc 2.0.x headers. (remove-old-headers): New rule to remove headers from glibc 2.0.x. (install): Depend on remove-old-headers. 1998-06-19 Mark Kettenis <kettenis@phys.uva.nl> * sysdeps/generic/ftruncate.c: Define function as __ftruncate and make ftruncate a weak alias. * sysdeps/mach/hurd/ftruncate.c: Really define function as __ftruncate. * sysdeps/mach/hurd/truncate.c: Include <unistd.h>. (truncate): Fix function defenition to match prototype. 1998-06-20 Mark Kettenis <kettenis@phys.uva.nl> * manual/terminal.texi: Document ttyname_r, getpt, grantpt, unlockpt, ptsname, ptsname_r, openpty and forkpty. 1998-06-22 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/glob.c: Make it possible to include glob.h before loading glob.c. Reported by Felix von Leitner <leitner@math.fu-berlin.de>. 1998-06-22 Andreas Jaeger <aj@arthur.rhein-neckar.de> * nscd/connections.c: Use poll() instead of select(). 1998-06-22 14:08 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/generic/Dist: Fix typo. 1998-06-20 Thorsten Kukuk <kukuk@vt.uni-paderborn.de> * nis/nis_add.c: Avoid unnecessary strlen () calls. * nis/nis_addmember.c: Likewise. * nis/nis_call.c: Likewise. * nis/nis_creategroup.c: Likewise. * nis/nis_destroygroup.c: Likewise. * nis/nis_findserv.c: Likewise. * nis/nis_ismember.c: Likewise. * nis/nis_print.c: Likewise. * nis/nis_print_group_entry.c: Likewise. * nis/nis_removemember.c: Likewise. * nis/nis_verifygroup.c: Likewise. * nis/ypclnt.c: Likewise. * nis/nis_file.c: Close file handles. * nis/nis_callback.c: Fix typo.
1998-06-22 17:08:51 +00:00
mv -f $@.n $@
# Convenient target to update all the generated source files.
.PHONY: generated
generated: $(addprefix $(common-objpfx),$(common-generated)) \
$(addprefix $(objpfx),$(generated))
.PHONY: mach-before-compile
mach-before-compile: $(mach-before-compile)