mirror of
git://sourceware.org/git/glibc.git
synced 2024-11-21 01:12:26 +08:00
96bda0ea44
(DATABASE): Define this instead of DATAFILE. * nss/nss_files/files-hosts.c: Likewise. (hostbyname): Use LOOKUP_NAME macro. * nss/nss_db/db-XXX.c: New file. * nss/Makefile (services): Add db. (libnss_db-inhibit-o): New variable. (libnss_db-routines): New variable. (distribute): Append db-XXX.c. (libnss_db.so): Depend on libdb.so and libnss_files.so. ($(libnss_db-routines:%=$(objpfx)%.c)): New static pattern rule. * nss/nss_files/files-XXX.c (DB_LOOKUP): Add KEYSIZE and KEYPATTERN args, ignored. (DATAFILE): New macro. * nss/nss_files/files-parse.c (GENERIC): If undefined, define to "files-XXX.c". * nss/nss_files/files-rpc.c: Include GENERIC instead of "files-XXX.c". Pass db key args to DB_LOOKUP. (DATAFILE): Macro removed. (DATABASE): New macro replaces it, lacks "/etc/" prefix. * nss/nss_files/files-service.c: Likewise. * nss/nss_files/files-pwd.c: Likewise. * nss/nss_files/files-proto.c: Likewise. * nss/nss_files/files-grp.c: Likewise. * nss/nss_files/files-ethers.c: Likewise. * elf/linux-compat.c: File removed. * elf/Makefile (distribute): Remove linux-compat.c. (ld-linux.so.1): Remove target and associated variables. * sunrpc/xdr.c: Remove malloc decl. * sunrpc/portmap.c: Likewise. * sunrpc/svc_tcp.c (abort): Don't declare. Instead define as macro casting abort to fn returning bool_t. * nss/nss_files/files-parse.c [EXTERN_PARSER]: Do an extern decl of the parser function. [EXTERN_PARSER] (LINE_PARSER): Define to empty. * nss/nss_files/files-pwd.c (EXTERN_PARSER): Define it. * nss/nss_files/files-grp.c: Likewise. * Makeconfig (BUILD_CC): If undefined, define to $(CC). * sunrpc/rpc/types.h: Include stdlib.h instead of declaring malloc. * Makeconfig (built-program-cmd): Use $(rtld-installed-name) in place of ld.so so lookups for that soname find it. * nss/Makefile (libnss_dns.so): Depend on libresolv.so. (resobjdir, LDLIBS-nss_dns.so): Variables removed.
71 lines
2.3 KiB
Makefile
71 lines
2.3 KiB
Makefile
# Copyright (C) 1996 Free Software Foundation, Inc.
|
|
# This file is part of the GNU C Library.
|
|
|
|
# The GNU C Library is free software; you can redistribute it and/or
|
|
# 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.,
|
|
# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
|
|
#
|
|
# Makefile for name service switch.
|
|
#
|
|
subdir := nss
|
|
|
|
distribute := nsswitch.h XXX-lookup.c getXXbyYY.c getXXbyYY_r.c \
|
|
getXXent.c getXXent_r.c
|
|
|
|
# This is the trivial part which goes into libc itself.
|
|
routines = nsswitch $(addsuffix -lookup,$(databases))
|
|
|
|
# These are the databases that go through nss dispatch.
|
|
databases = proto service hosts network grp pwd rpc ethers
|
|
|
|
# Specify rules for the nss_* modules. We have some services.
|
|
services := files dns db
|
|
|
|
extra-libs = $(services:%=libnss_%)
|
|
|
|
# The sources are found in the appropriate subdir.
|
|
subdir-dirs = $(services:%=nss_%)
|
|
vpath %.c $(subdir-dirs)
|
|
|
|
|
|
libnss_files-routines := $(addprefix files-,$(databases))
|
|
distribute += files-XXX.c files-parse.c
|
|
|
|
libnss_dns-routines := dns-host dns-network
|
|
|
|
libnss_db-routines := $(addprefix db-,$(filter-out hosts network,\
|
|
$(databases)))
|
|
distribute += db-XXX.c
|
|
|
|
libnss_files-inhibit-o = $(filter-out .so,$(object-suffixes))
|
|
libnss_dns-inhibit-o = $(filter-out .so,$(object-suffixes))
|
|
libnss_db-inhibit-o = $(filter-out .so,$(object-suffixes))
|
|
|
|
|
|
include ../Rules
|
|
|
|
|
|
$(objpfx)libnss_dns.so: $(firstword $(objdir) $(..)resolv)/libresolv.so
|
|
|
|
$(objpfx)libnss_db.so: $(firstword $(objdir) $(..)db)/libdb.so \
|
|
$(objpfx)libnss_files.so
|
|
|
|
$(libnss_db-routines:%=$(objpfx)%.c): $(objpfx)db-%.c: nss_files/files-%.c
|
|
@rm -f $@.new
|
|
(echo '#define EXTERN_PARSER';\
|
|
echo '#define GENERIC "../nss_db/db-XXX.c"';\
|
|
echo '#include <$<>') > $@.new
|
|
mv -f $@.new $@
|