
1: # Copyright (C) 1996-1998,2000-2002,2003,2007 Free Software Foundation, Inc. 2: # This file is part of the GNU C Library. 3: 4: # The GNU C Library is free software; you can redistribute it and/or 5: # modify it under the terms of the GNU Lesser General Public 6: # License as published by the Free Software Foundation; either 7: # version 2.1 of the License, or (at your option) any later version. 8: 9: # The GNU C Library is distributed in the hope that it will be useful, 10: # but WITHOUT ANY WARRANTY; without even the implied warranty of 11: # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12: # Lesser General Public License for more details. 13: 14: # You should have received a copy of the GNU Lesser General Public 15: # License along with the GNU C Library; if not, write to the Free 16: # Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 17: # 02111-1307 USA. 18: 19: # 20: # Sub-makefile for login portion of the library. 21: # 22: 23: subdir := login 24: 25: headers := utmp.h bits/utmp.h lastlog.h pty.h 26: 27: routines := getutent getutent_r getutid getutline getutid_r getutline_r \ 28: utmp_file utmpname updwtmp getpt grantpt unlockpt ptsname 29: 30: CFLAGS-grantpt.c = -DLIBEXECDIR='"$(libexecdir)"' 31: 32: others = utmpdump pt_chown 33: install-others-programs = $(inst_libexecdir)/pt_chown 34: 35: distribute := utmp-private.h utmp-equal.h pty-private.h 36: 37: subdir-dirs = programs 38: vpath %.c programs 39: 40: tests := tst-utmp tst-utmpx tst-grantpt 41: 42: # Build the -lutil library with these extra functions. 43: extra-libs := libutil 44: extra-libs-others := $(extra-libs) 45: 46: libutil-routines:= login login_tty logout logwtmp openpty forkpty 47: 48: include ../Rules 49: 50: CFLAGS-getpt.c = -fexceptions 51: 52: ifeq (yes,$(build-static-nss)) 53: otherlibs += $(nssobjdir)/libnss_files.a $(resolvobjdir)/libnss_dns.a \ 54: $(resolvobjdir)/libresolv.a $(common-objpfx)libc.a 55: endif 56: 57: # pt_chown needs to be setuid root. 58: $(inst_libexecdir)/pt_chown: $(objpfx)pt_chown $(+force) 59: $(make-target-directory) 60: -$(INSTALL_PROGRAM) -m 4755 -o root $< $@ 61: 62: # Depend on libc.so so a DT_NEEDED is generated in the shared objects. 63: # This ensures they will load libc.so for needed symbols if loaded by 64: # a statically-linked program that hasn't already loaded it. 65: $(objpfx)libutil.so: $(common-objpfx)libc.so $(common-objpfx)libc_nonshared.a