xref: /illumos-gate/usr/src/cmd/mailwrapper/Makefile (revision f52943a93040563107b95bccb9db87d9971ef47d)
1#
2# This file and its contents are supplied under the terms of the
3# Common Development and Distribution License ("CDDL"), version 1.0.
4# You may only use this file in accordance with the terms of version
5# 1.0 of the CDDL.
6#
7# A full copy of the text of the CDDL should have accompanied this
8# source.  A copy of the CDDL is also available via the Internet at
9# http://www.illumos.org/license/CDDL.
10#
11
12#
13# Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
14# Copyright 2014 Alexander Pyhalov
15# Copyright (c) 2018, Joyent, Inc.
16#
17
18
19LIBPROG=	mailwrapper
20
21PROG= 	       $(LIBPROG)
22
23include ../Makefile.cmd
24
25MWOBJS=		fgetln.o fparseln.o mailwrapper.o
26
27CLOBBERFILES=	$(PROG)
28CLEANFILES=	$(MWOBJS)
29
30SRCS=	 	$(MWOBJS:%.o=%.c)
31
32CPROG=		mailwrapper
33CPROGSRC= 	$(CPROG:%=_%.c)
34
35CFS=		mailer.conf
36
37ROOTETCFILES=$(CFS:%=$(ROOTETC)/%)
38
39$(ROOTETCFILES) :=	FILEMODE = 0644
40
41# installed modules
42ROOTLIBPROG=	$(LIBPROG:%=$(ROOTLIB)/%)
43
44ROOTSYMLINKS=	$(ROOTBIN)/mailq \
45		$(ROOTLIB)/sendmail \
46		$(ROOTUSRSBIN)/newaliases \
47		$(ROOTUSRSBIN)/sendmail
48
49CPPFLAGS =	-I. $(CPPFLAGS.master)
50
51LINTFLAGS	+= -erroff=E_FUNC_RET_ALWAYS_IGNOR2
52
53SMOFF += all_func_returns
54
55# conditional assignments
56#
57all:=		TARGET= all
58install:=	TARGET= install
59clean:=		TARGET= clean
60clobber:=	TARGET= clobber
61lint:=		TARGET= lint
62
63# install rules
64$(ROOTINC)/% : %
65	$(INS.file)
66
67.KEEP_STATE:
68
69.PARALLEL: $(MWOBJS) $(OBJS)
70
71all:		$(PROG)
72
73mailwrapper:	$(MWOBJS)
74	$(LINK.c) -o $@ $(MWOBJS) $(LDLIBS)
75	$(POST_PROCESS)
76
77install: all .WAIT $(ROOTLIBPROG) $(ROOTSYMLINKS) $(ROOTETCFILES)
78
79# ROOTSYMLINKS
80#
81$(ROOTBIN)/mailq:
82	$(RM) $@; $(SYMLINK) ../lib/mailwrapper $@
83
84$(ROOTLIB)/sendmail:
85	$(RM) $@; $(SYMLINK) mailwrapper $@
86
87$(ROOTUSRSBIN)/newaliases:
88	$(RM) $@; $(SYMLINK) ../lib/mailwrapper $@
89
90$(ROOTUSRSBIN)/sendmail:
91	$(RM) $@; $(SYMLINK) ../lib/mailwrapper $@
92
93$(ROOTETCMAIL)/%:  %
94	$(INS.file)
95
96lint:
97	$(LINT.c) $(SRCS)
98
99clean:
100	$(RM) $(OBJS) $(MWOBJS) mailwrapper
101
102clobber: clean
103	$(RM) $(ROOTSYMLINKS) $(ROOTLIBPROG) $(ROOTETCFILES)
104