.
[kopensolaris-gnu/glibc.git] / login / Makefile
index da47089..8ddd139 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (C) 1996 Free Software Foundation, Inc.
+# Copyright (C) 1996, 1997, 1998 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
 
 subdir := login
 
-headers        := utmp.h utmpbits.h lastlog.h pty.h
+headers        := utmp.h bits/utmp.h lastlog.h pty.h
 
 routines := getutent getutent_r getutid getutline getutid_r getutline_r \
-           utmp_file utmp_db
+           utmp_file utmp_daemon utmpname updwtmp \
+           getpt grantpt unlockpt ptsname
 
-distribtue := utmp-private.h
+CFLAGS-grantpt.c = -DLIBEXECDIR='"$(libexecdir)"'
+
+others = utmpd utmpdump pt_chown
+install-sbin = utmpd
+install-others = $(inst_libexecdir)/pt_chown
+utmpd-routines := connection database error request xtmp
+extra-objs := $(utmpd-routines:=.o)
+
+distribute := utmp-private.h programs/xtmp.h programs/utmpd.h README.utmpd \
+             programs/utmpd-private.h $(utmpd-routines:%=programs/%.c) \
+             pty-private.h
+
+subdir-dirs = programs
+vpath %.c programs
+
+tests := tst-utmp tst-utmpx
 
 # Build the -lutil library with these extra functions.
 extra-libs      := libutil
 extra-libs-others := $(extra-libs)
 
-libutil-routines:= login login_tty logout logwtmp pty
-
+libutil-routines:= login login_tty logout logwtmp openpty forkpty
 
 include ../Rules
+
+ifeq (yes,$(build-static-nss))
+otherlibs += $(nssobjdir)/libnss_files.a $(resolvobjdir)/libnss_dns.a \
+            $(resolvobjdir)/libresolv.a $(common-objpfx)libc.a
+endif
+
+# pt_chown needs to be setuid root.
+$(inst_libexecdir)/pt_chown: $(objpfx)pt_chown $(+force)
+       $(make-target-directory)
+       -$(INSTALL_PROGRAM) -m 4755 -o root $< $@
+
+$(objpfx)utmpd: $(utmpd-routines:%=$(objpfx)%.o)
+
+# Depend on libc.so so a DT_NEEDED is generated in the shared objects.
+# This ensures they will load libc.so for needed symbols if loaded by
+# a statically-linked program that hasn't already loaded it.
+$(objpfx)libutil.so: $(common-objpfx)libc.so