Makefile revision 1.6
11.6Sagc# $NetBSD: Makefile,v 1.6 1999/12/24 09:08:48 agc Exp $ 21.1Sagc# 31.4Ssimonb.include <bsd.own.mk> 41.4Ssimonb 51.1SagcCPPFLAGS+= -DEXTENSIONS 61.6SagcWARNS= 1 71.1Sagc 81.1SagcSKEL_DIR= /etc/skel 91.1SagcEXAMPLE_DIR= ${DESTDIR}/usr/share/examples/usermgmt 101.1Sagc 111.1SagcPROG= user 121.6SagcSRCS+= user.c main.c 131.2SsimonbLINKS+= ${BINDIR}/user ${BINDIR}/useradd 141.2SsimonbLINKS+= ${BINDIR}/user ${BINDIR}/userdel 151.2SsimonbLINKS+= ${BINDIR}/user ${BINDIR}/usermod 161.2SsimonbLINKS+= ${BINDIR}/user ${BINDIR}/group 171.2SsimonbLINKS+= ${BINDIR}/user ${BINDIR}/groupadd 181.2SsimonbLINKS+= ${BINDIR}/user ${BINDIR}/groupdel 191.2SsimonbLINKS+= ${BINDIR}/user ${BINDIR}/groupmod 201.6SagcLINKS+= ${BINDIR}/user ${BINDIR}/userinfo 211.6SagcLINKS+= ${BINDIR}/user ${BINDIR}/groupinfo 221.1SagcLDADD+= -lutil 231.4SsimonbDPADD+= ${LIBUTIL} 241.6SagcMAN= user.8 useradd.8 userdel.8 usermod.8 userinfo.8 251.6SagcMAN+= group.8 groupadd.8 groupdel.8 groupmod.8 groupinfo.8 261.5SsorenMLINKS= useradd.8 adduser.8 271.1Sagc 281.4Ssimonb.if ${MKSHARE} != "no" 291.4SsimonbFILES= dot.cshrc dot.login dot.profile 301.4SsimonbFILESNAME_dot.cshrc= .cshrc 311.4SsimonbFILESNAME_dot.login= .login 321.4SsimonbFILESNAME_dot.profile= .profile 331.4SsimonbFILESDIR= /usr/share/examples/usermgmt 341.4Ssimonb.endif 351.4Ssimonb 361.6Sagc# this target checks the built-in default group, and, if it doesn't exist, 371.6Sagc# creates it 381.6Sagcdefault-group: 391.6Sagc @ln -fs ${.OBJDIR}/user ${.OBJDIR}/group; \ 401.6Sagc defgrp=`${.OBJDIR}/user add -D | awk '/^group/ { print $$2 }'`; \ 411.6Sagc if ${.OBJDIR}/group info -e $$defgrp; then \ 421.6Sagc defgid=`${.OBJDIR}/group info $$defgrp | awk '/^gid/ { print $$2 }'`; \ 431.6Sagc else \ 441.6Sagc defgid=99; \ 451.6Sagc while [ $$defgid -gt 0 ]; do \ 461.6Sagc ${.OBJDIR}/group info -e $$defgid || break; \ 471.6Sagc defgid=`expr $$defgid - 1`; \ 481.6Sagc done; \ 491.6Sagc if [ $$defgid -eq 0 ]; then \ 501.6Sagc defgid=100; \ 511.6Sagc while [ $$defgid -lt 60000 ]; do \ 521.6Sagc ${.OBJDIR}/group info -e $$defgid || break; \ 531.6Sagc defgid=`expr $$defgid + 1`; \ 541.6Sagc done; \ 551.6Sagc if [ $$defgid -eq 60000 ]; then \ 561.6Sagc echo "No gids left"; \ 571.6Sagc exit 1; \ 581.6Sagc fi; \ 591.6Sagc fi; \ 601.6Sagc ${.OBJDIR}/group add -g $$defgid $$defgrp; \ 611.6Sagc fi; \ 621.6Sagc echo "Default group is $$defgrp ($$defgid):"; \ 631.6Sagc ${.OBJDIR}/group info $$defgrp 641.6Sagc 651.1Sagc.include <bsd.prog.mk> 661.1Sagc 671.1Sagctest: ${PROG} 681.1Sagc @echo "No news is good news" 691.1Sagc @echo "1. Adding new user" 701.6Sagc @rm -f useradd 711.6Sagc @ln -s user useradd 721.6Sagc -./useradd -m -g=uid test1.1 731.1Sagc @echo "2. Modifying new user" 741.6Sagc -./${PROG} mod -l test1.2 test1.1 751.1Sagc @echo "3. Deleting new user" 761.6Sagc -./${PROG} del -r test1.2 771.1Sagc @echo "4. Attempting to add an invalid user name - IGNORE ANY ERROR" 781.1Sagc -./${PROG} add -m test1%1 791.1Sagc @echo "5. Bad usage - IGNORE ANY ERROR" 801.1Sagc -./${PROG} add -m 811.6Sagc @echo "6. Set range defaults" 821.6Sagc -./${PROG} add -D -r4000..6000 831.6Sagc -./${PROG} add -D 841.6Sagc @echo "7. Get user information" 851.6Sagc -./${PROG} info root 861.6Sagc @echo "8. Bad user name - IGNORE ANY ERROR" 871.6Sagc -./${PROG} info test1%1 || echo "User not found" 881.1Sagc @echo "All tests completed" 89