1 # $Id: Makefile,v 1.30 2014/11/11 15:57:11 sjg Exp $
3 # Base version on src date
60 # this file gets generated by configure
61 .
-include "Makefile.config"
64 SRCS
+= ${LIBOBJS
:T
:.o
=.c
}
71 DEFAULT_SYS_PATH?
= ${prefix}/share
/mk
75 CFLAGS
+= -D_PATH_DEFSYSPATH
=\"${DEFAULT_SYS_PATH}\"
76 CFLAGS
+= -I.
-I
${srcdir} ${XDEFS} -DMAKE_NATIVE
77 CFLAGS
+= ${COPTS.
${.ALLSRC
:M
*.c
:T
:u
}}
78 COPTS.main.c
+= "-DMAKE_VERSION=\"${MAKE_VERSION}\""
80 # meta mode can be useful even without filemon
81 FILEMON_H ?
= /usr
/include/dev
/filemon
/filemon.h
82 .if exists
(${FILEMON_H}) && ${FILEMON_H
:T
} == "filemon.h"
83 COPTS.meta.c
+= -DHAVE_FILEMON_H
-I
${FILEMON_H
:H
}
87 .PATH
: ${srcdir}/lst.lib
89 .if make
(obj
) || make
(clean)
93 # start-delete1 for bsd.after-import.mk
94 # we skip a lot of this when building as part of FreeBSD etc.
96 # list of OS's which are derrived from BSD4.4
97 BSD44_LIST
= NetBSD FreeBSD OpenBSD DragonFly
101 isBSD44
:=${BSD44_LIST
:M
${OS}}
105 INSTALL?
=${srcdir}/install-sh
106 .if
(${MACHINE} == "sun386")
107 # even I don't have one of these anymore :-)
109 .elif
(${MACHINE} != "sunos")
111 CFLAGS
+= -DSIGNAL_FLAGS
=SA_RESTART
117 # turn this on by default - ignored if we are root
118 WITH_INSTALL_AS_USER
=
120 # suppress with -DWITHOUT_*
121 OPTIONS_DEFAULT_YES
+= \
126 OPTIONS_DEFAULT_NO
+= \
129 # process options now
132 .if
${MK_PROG_VERSION} == "yes"
133 PROG_NAME
= ${PROG}-${MAKE_VERSION}
134 .if
${MK_PROG_LINK} == "yes"
135 SYMLINKS
+= ${PROG}-${MAKE_VERSION} ${BINDIR}/${PROG}
145 .if
(${PROG} != "make")
146 CLEANFILES
+= my.history
147 .if make
(${MAN}) ||
!exists
(${srcdir}/${MAN})
148 my.history
: ${MAKEFILE}
150 echo
"is derived from NetBSD"; \
151 echo
".Xr make 1 ."; \
152 echo
"It uses autoconf to facilitate portability to other platforms."; \
156 ${MAN}: make
.1 my.history
158 @sed
-e
's/^.Nx/NetBSD/' -e
'/^.Nm/s/make/${PROG}/' \
159 -e
'/^.Sh HISTORY/rmy.history' \
160 -e
'/^.Sh HISTORY/,$$s,^.Nm,make,' ${srcdir}/make
.1 > $@
162 all beforeinstall
: ${MAN}
168 MANDEST?
= ${MANDIR}/${MANTARGET}1
170 .if
${MANTARGET} == "cat"
176 CPPFLAGS
+= -DMAKE_NATIVE
-DHAVE_CONFIG_H
177 COPTS.var.c
+= -Wno-cast-qual
178 COPTS.job.c
+= -Wno-format-nonliteral
179 COPTS.parse.c
+= -Wno-format-nonliteral
180 COPTS.var.c
+= -Wno-format-nonliteral
183 SHAREDIR
= ${prefix}/share
184 BINDIR
= ${prefix}/bin
185 MANDIR
= ${SHAREDIR}/man
191 # make sure that MAKE_VERSION gets updated.
192 main.o
: ${SRCS} ${MAKEFILE}
194 # start-delete2 for bsd.after-import.mk
195 .if
${MK_AUTOCONF_MK} == "yes"
196 .
include <autoconf.mk
>
198 SHARE_MK?
=${SHAREDIR}/mk
200 INSTALL?
=${srcdir}/install-sh
202 .if
${MK_INSTALL_MK} == "yes"
207 test -d
${DESTDIR}${BINDIR} ||
${INSTALL} -m
775 -d
${DESTDIR}${BINDIR}
208 test -d
${DESTDIR}${MANDEST} ||
${INSTALL} -m
775 -d
${DESTDIR}${MANDEST}
211 .if exists
(${MKSRC}/install-mk
)
212 test -d
${DESTDIR}${SHARE_MK} ||
${INSTALL} -m
775 -d
${DESTDIR}${SHARE_MK}
213 sh
${MKSRC}/install-mk
-v
-m
644 ${DESTDIR}${SHARE_MK}
215 @echo need to unpack mk.
tar.gz under
${srcdir} or set MKSRC
; false
219 # A simple unit-test driver to help catch regressions
221 cd
${.CURDIR
}/unit-tests
&& MAKEFLAGS
= ${.MAKE
} -r
-m
/ TEST_MAKE
=${TEST_MAKE
:U
${.OBJDIR
}/${PROG
:T
}} ${.TARGET
}