Makefile revision eb1a34638eba7c5add1421327f3eb225a8ea7518
1494N/A#
1494N/A# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
1494N/A# Use is subject to license terms.
1494N/A#
1494N/A
1494N/APROG= in.ftpd ftpcount ftpshut ftprestart privatepw
1494N/ASCRIPTS= ftpaddhost ftpconfig
1494N/AMANIFEST= ftp.xml
1494N/ASVCMETHOD= svc-ftp
1494N/A
1494N/Ainclude ../../../Makefile.cmd
1494N/A
1494N/ACOMMON_OBJS= COPYRIGHT.o vers.o
1494N/AFTPD_OBJS= $(COMMON_OBJS) ftpd.o ftpcmd.o glob.o logwtmp.o popen.o \
1494N/A access.o extensions.o realpath.o acl.o private.o \
1494N/A authenticate.o conversions.o rdservers.o paths.o hostacc.o \
1494N/A routevector.o restrict.o domain.o wu_fnmatch.o timeout.o \
1494N/A getpwnam.o strsep.o strcasestr.o inet.o xferlog.o gssutil.o \
1494N/A privs.o
1494N/AFTPCOUNT_OBJS= $(COMMON_OBJS) ftpcount.o rdservers.o inet.o
1494N/AFTPSHUT_OBJS= $(COMMON_OBJS) ftpshut.o rdservers.o inet.o
1494N/AFTPREST_OBJS= $(COMMON_OBJS) ftprestart.o rdservers.o inet.o
1494N/ACKCONFIG_OBJS= $(COMMON_OBJS) ckconfig.o rdservers.o inet.o
1494N/APRIVATE_OBJS= $(COMMON_OBJS) privatepw.o
1494N/AOBJS= $(FTPD_OBJS) ftpcount.o ftpshut.o ftprestart.o ckconfig.o \
1494N/A privatepw.o
1494N/ASRCS= $(OBJS:%.o=%.c)
1494N/ACONFIGFILES= ftpaccess ftpconversions ftpgroups ftphosts ftpservers ftpusers
1494N/AETCFTPDDIR= $(ROOTETC)/ftpd
1494N/AETCFTPDFILES= $(CONFIGFILES:%=$(ETCFTPDDIR)/%)
1494N/A$(ETCFTPDFILES):= FILEMODE= 0644
1494N/A$(ETCFTPDFILES):= GROUP= sys
1494N/AROOTUSRSBINSCRIPTS= $(SCRIPTS:%=$(ROOTUSRSBIN)/%)
1494N/AROOTFTPCOUNT= $(ROOTUSRSBIN)/ftpcount
1494N/AROOTFTPWHO= $(ROOTUSRSBIN)/ftpwho
1494N/A
1494N/AROOTMANIFESTDIR= $(ROOTSVCNETWORK)
1494N/A
1494N/A# I18n
1494N/APOFILE= in.ftpd_all.po
1494N/APOFILES= $(SCRIPTS:%=%.po)
1494N/A
1494N/A# When building for Solaris 8 add to CPPFLAGS:
1494N/A# -Ddn_skipname=__dn_skipname -DSOLARIS_NO_AUDIT_FTPD_LOGOUT
1494N/ACLOBBERFILES += ckconfig ftpwho $(SCRIPTS)
1494N/ACPPFLAGS += -DBSD_COMP -D_FILE_OFFSET_BITS=64 -DINET6 -DSOLARIS_BSM_AUDIT \
1494N/A -DSOLARIS_ETC_FTPUSERS -DSENDFILE -DCLOSEFROM -DUSE_GSS \
1494N/A -DSOLARIS_GSS_USEROK -DSOLARIS_PRIVS
1494N/ALDLIBS += -lsocket -lnsl -lpam -lbsm -lsendfile -lgss
1494N/AYFLAGS += -d
1494N/A
1494N/Ain.ftpd := LDFLAGS += $(MAPFILE.NGB:%=-M%)
1494N/A
1494N/A# tcov output relies on atexit(3C) registered functions being called, so stop
1494N/A# _exit() from being used. Passing -l to yacc stops it generating #line
1494N/A# directives which don't work with tcov.
1494N/Atcov := CFLAGS += -xa
1494N/Atcov := CPPFLAGS += -D_exit=exit
1494N/Atcov := YFLAGS += -l
1494N/A
1494N/A.KEEP_STATE:
1494N/A
1494N/Aall tcov: $(PROG) ckconfig ftpwho $(CONFIGFILES) $(SCRIPTS)
1494N/A
1494N/Ain.ftpd: $(FTPD_OBJS) $(MAPFILE.NGB)
1494N/A $(LINK.c) $(FTPD_OBJS) -o $@ $(LDLIBS)
1494N/A $(POST_PROCESS)
1494N/A
1494N/Aftpcount: $(FTPCOUNT_OBJS)
1494N/A $(LINK.c) $(FTPCOUNT_OBJS) -o $@ -lsocket -lnsl
1494N/A $(POST_PROCESS)
1494N/A
1494N/Aftpwho: ftpcount
1494N/A $(RM) $@
1494N/A $(LN) ftpcount $@
1494N/A
1494N/Aftpshut: $(FTPSHUT_OBJS)
1494N/A $(LINK.c) $(FTPSHUT_OBJS) -o $@ -lsocket -lnsl
1494N/A $(POST_PROCESS)
1494N/A
1494N/Aftprestart: $(FTPREST_OBJS)
1494N/A $(LINK.c) $(FTPREST_OBJS) -o $@ -lsocket -lnsl
1494N/A $(POST_PROCESS)
1494N/A
ckconfig: $(CKCONFIG_OBJS)
$(LINK.c) $(CKCONFIG_OBJS) -o $@ -lsocket -lnsl
$(POST_PROCESS)
privatepw: $(PRIVATE_OBJS)
$(LINK.c) $(PRIVATE_OBJS) -o $@
$(POST_PROCESS)
# This causes y.tab.c to be renamed to ftpcmd.c, needed by tcov.
ftpcmd.c: ftpcmd.y
$(ETCFTPDDIR)/%: %
$(INS.file)
$(POFILE): $(POFILES)
$(RM) $@
cat $(POFILES) >$@
$(ROOTFTPWHO): $(ROOTFTPCOUNT)
$(RM) $@
$(LN) $(ROOTFTPCOUNT) $@
install: all $(ROOTUSRSBINPROG) $(ROOTFTPWHO) $(ROOTUSRSBINSCRIPTS) \
$(ETCFTPDFILES) $(ROOTMANIFEST) $(ROOTSVCMETHOD)
check: $(CHKMANIFEST)
clean:
$(RM) $(OBJS) *.d *.tcov y.tab.h y.tab.c ftpcmd.c
lint: lint_SRCS
include ../../../Makefile.targ