blob: b634564b2c33d48d56590c2a89eca6ded975e9f1 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
|
# Copyright (c) 2009-2010 by Aleksey Cheusov
# Copyright (c) 1994-2009 The NetBSD Foundation, Inc.
# Copyright (c) 1988, 1989, 1993 The Regents of the University of California
# Copyright (c) 1988, 1989 by Adam de Boor
# Copyright (c) 1989 by Berkeley Softworks
#
# See LICENSE file in the distribution.
############################################################
.if !defined(_MKC_IMP_PROG_MK)
_MKC_IMP_PROG_MK := 1
proginstall: .PHONY # ensure existence
CFLAGS += ${COPTS}
__proginstall: .USE
${INSTALL} ${RENAME} ${PRESERVE} ${COPY} ${STRIPFLAG} \
-o ${BINOWN:Q} -g ${BINGRP:Q} -m ${BINMODE} ${.ALLSRC} ${.TARGET}
.for p in ${PROGS}
do_install1: proginstall
_SRCS_ALL += ${SRCS.${p}}
DPSRCS.${p} = ${SRCS.${p}:M*.l:.l=.c} ${SRCS.${p}:M*.y:.y=.c}
CLEANFILES += ${DPSRCS.${p}}
.if defined(YHEADER)
CLEANFILES += ${SRCS.${p}:M*.y:.y=.h}
.endif # defined(YHEADER)
OBJS.${p} = ${SRCS.${p}:N*.h:N*.sh:N*.fth:T:R:S/$/.o/g}
.if !empty(SRCS.${p}:N*.h:N*.sh:M*/*:H)
SRC_PATHADD += ${SRCS:N*.h:N*.sh:M*/*:H}
.endif
.if defined(OBJS.${p}) && !empty(OBJS.${p})
.NOPATH: ${OBJS.${p}}
${p}: ${LIBCRT0} ${DPSRCS.${p}} ${OBJS.${p}} ${LIBC} ${LIBCRTBEGIN} ${LIBCRTEND} ${DPADD}
.if !commands(${p})
${MESSAGE.ld}
${_V}${LDREAL} -o ${.TARGET} ${OBJS.${p}} \
${LDFLAGS0} ${LDADD0} \
${LDFLAGS} ${LDFLAGS.prog} ${LDADD}
.endif # !commands(...)
.endif # defined(OBJS.${p}) && !empty(OBJS.${p})
.if !defined(MAN) && exists(${p}.1)
MAN += ${p}.1
.endif # !defined(MAN)
PROGNAME.${p} ?= ${PROGNAME:U${p}}
.if ${MKINSTALL:tl} == "yes"
dest_prog.${p} = ${DESTDIR}${BINDIR}/${PROGNAME.${p}}
UNINSTALLFILES += ${dest_prog.${p}}
INSTALLDIRS += ${dest_prog.${p}:H}
proginstall: ${dest_prog.${p}}
.PRECIOUS: ${dest_prog.${p}}
.PHONY: ${dest_prog.${p}}
.endif # ${MKINSTALL:tl} == "yes"
${DESTDIR}${BINDIR}/${PROGNAME.${p}}: ${p} __proginstall
CLEANFILES += ${OBJS.${p}}
.endfor # ${PROGS}
realdo_all: ${PROGS}
CLEANFILES += ${PROGS}
.endif # _MKC_IMP_PROG_MK
|