]> granicus.if.org Git - shadow/blob - src/Makefile.am
* src/chgpasswd.c: Add annotations to indicate that usage() does
[shadow] / src / Makefile.am
1
2 EXTRA_DIST = \
3         .indent.pro
4
5 ubindir = ${prefix}/bin
6 usbindir = ${prefix}/sbin
7 suidperms = 4755
8 sgidperms = 2755
9
10 INCLUDES = \
11         -I${top_srcdir}/lib \
12         -I$(top_srcdir)/libmisc
13
14 # XXX why are login and su in /bin anyway (other than for
15 # historical reasons)?
16 #
17 # if the system is screwed so badly that it can't mount /usr,
18 # you can (hopefully) boot single user, and then you're root
19 # so you don't need these programs for recovery.
20 #
21 # also /lib/libshadow.so.x.xx (if any) could be moved to /usr/lib
22 # and installation would be much simpler (just two directories,
23 # $prefix/bin and $prefix/sbin, no install-data hacks...)
24
25 bin_PROGRAMS   = groups login su
26 sbin_PROGRAMS  = nologin
27 ubin_PROGRAMS  = faillog lastlog chage chfn chsh expiry gpasswd newgrp passwd
28 usbin_PROGRAMS = \
29         chgpasswd \
30         chpasswd \
31         groupadd \
32         groupdel \
33         groupmems \
34         groupmod \
35         grpck \
36         grpconv \
37         grpunconv \
38         logoutd \
39         newusers \
40         pwck \
41         pwconv \
42         pwunconv \
43         useradd \
44         userdel \
45         usermod \
46         vipw
47
48 # id and groups are from gnu, sulogin from sysvinit
49 noinst_PROGRAMS = id sulogin
50
51 suidbins       = su
52 suidubins      = chage chfn chsh expiry gpasswd newgrp passwd
53 if ACCT_TOOLS_SETUID
54         suidubins += chage chgpasswd chpasswd groupadd groupdel groupmod newusers useradd userdel usermod
55 endif
56
57 if WITH_TCB
58 suidubins -= passwd
59 shadowsgidubins = passwd
60 endif
61
62 LDADD          = $(INTLLIBS) \
63                  $(LIBTCB) \
64                  $(top_builddir)/libmisc/libmisc.a \
65                  $(top_builddir)/lib/libshadow.la
66 AM_CPPFLAGS    = -DLOCALEDIR=\"$(datadir)/locale\"
67
68 if ACCT_TOOLS_SETUID
69 LIBPAM_SUID  = $(LIBPAM)
70 else
71 LIBPAM_SUID  =
72 endif
73
74 if USE_PAM
75 LIBCRYPT_NOPAM =
76 else
77 LIBCRYPT_NOPAM = $(LIBCRYPT)
78 endif
79
80 chage_LDADD    = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX)
81 chfn_LDADD     = $(LDADD) $(LIBPAM) $(LIBSELINUX) $(LIBCRYPT_NOPAM) $(LIBSKEY) $(LIBMD)
82 chgpasswd_LDADD = $(LDADD) $(LIBPAM_SUID) $(LIBSELINUX) $(LIBCRYPT)
83 chsh_LDADD     = $(LDADD) $(LIBPAM) $(LIBSELINUX) $(LIBCRYPT_NOPAM) $(LIBSKEY) $(LIBMD)
84 chpasswd_LDADD = $(LDADD) $(LIBPAM) $(LIBSELINUX) $(LIBCRYPT)
85 gpasswd_LDADD  = $(LDADD) $(LIBAUDIT) $(LIBSELINUX) $(LIBCRYPT)
86 groupadd_LDADD = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX)
87 groupdel_LDADD = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX)
88 groupmems_LDADD = $(LDADD) $(LIBPAM) $(LIBSELINUX)
89 groupmod_LDADD = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX)
90 grpck_LDADD    = $(LDADD) $(LIBSELINUX)
91 grpconv_LDADD  = $(LDADD) $(LIBSELINUX)
92 grpunconv_LDADD = $(LDADD) $(LIBSELINUX)
93 login_SOURCES  = \
94         login.c \
95         login_nopam.c
96 login_LDADD    = $(LDADD) $(LIBPAM) $(LIBAUDIT) $(LIBCRYPT_NOPAM) $(LIBSKEY) $(LIBMD)
97 newgrp_LDADD   = $(LDADD) $(LIBAUDIT) $(LIBCRYPT)
98 newusers_LDADD = $(LDADD) $(LIBPAM) $(LIBSELINUX) $(LIBCRYPT)
99 nologin_LDADD  =
100 passwd_LDADD   = $(LDADD) $(LIBPAM) $(LIBCRACK) $(LIBAUDIT) $(LIBSELINUX) $(LIBCRYPT_NOPAM)
101 pwck_LDADD     = $(LDADD) $(LIBSELINUX)
102 pwconv_LDADD   = $(LDADD) $(LIBSELINUX)
103 pwunconv_LDADD = $(LDADD) $(LIBSELINUX)
104 su_SOURCES     = \
105         su.c \
106         suauth.c
107 su_LDADD       = $(LDADD) $(LIBPAM) $(LIBCRYPT_NOPAM) $(LIBSKEY) $(LIBMD)
108 sulogin_LDADD  = $(LDADD) $(LIBCRYPT)
109 useradd_LDADD  = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX) $(LIBACL)
110 userdel_LDADD  = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX)
111 usermod_LDADD  = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX) $(LIBACL)
112 vipw_LDADD     = $(LDADD) $(LIBSELINUX)
113
114 install-am: all-am
115         $(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
116         ln -sf newgrp   $(DESTDIR)$(ubindir)/sg
117         ln -sf vipw     $(DESTDIR)$(usbindir)/vigr
118         for i in $(suidbins); do \
119                 chmod -f $(suidperms) $(DESTDIR)$(bindir)/$$i; \
120         done
121         for i in $(suidubins); do \
122                 chmod -f $(suidperms) $(DESTDIR)$(ubindir)/$$i; \
123         done
124 if WITH_TCB
125         for i in $(shadowsgidubins); do \
126                 chown root:shadow $(DESTDIR)$(ubindir)/$$i; \
127                 chmod -f $(sgidperms) $(DESTDIR)$(ubindir)/$$i; \
128         done
129 endif