freebsd-skq/gnu/usr.bin/diff3/Makefile
kevans 10826e2c75 build: provide a default WARNS for all in-tree builds
The current default is provided in various Makefile.inc in some top-level
directories and covers a good portion of the tree, but doesn't cover parts
of the build a little deeper (e.g. libcasper).

Provide a default in src.sys.mk and set WARNS to it in bsd.sys.mk if that
variable is defined. This lets us relatively cleanly provide a default WARNS
no matter where you're building in the src tree without breaking things
outside of the tree.

Crunchgen has been updated as a bootstrap tool to work on this change
because it needs r365605 at a minimum to succeed. The cleanup necessary to
successfully walk over this change on WITHOUT_CLEAN builds has been added.

There is a supplemental project to this to list all of the warnings that are
encountered when the environment has WARNS=6 NO_WERROR=yes:
https://warns.kevans.dev -- this project will hopefully eventually go away
in favor of CI doing a much better job than it.

Reviewed by:	emaste, brooks, ngie (all earlier version)
Reviewed by:	emaste, arichardson (depend-cleanup.sh change)
Differential Revision:	https://reviews.freebsd.org/D26455
2020-09-18 17:17:46 +00:00

30 lines
654 B
Makefile

# $FreeBSD$
DIFFSRC=${SRCTOP}/contrib/diff/src
.PATH: ${DIFFSRC} \
${SRCTOP}/contrib/diff/lib \
${SRCTOP}/contrib/diff/man
PROG= diff3
SRCS= diff3.c version-etc.c \
xmalloc.c error.c c-stack.c exitfail.c cmpbuf.c
# Important for ctype macros!
CFLAGS+=-funsigned-char
CFLAGS+=-I${SRCTOP}/contrib/diff/
CFLAGS+=-I${SRCTOP}/contrib/diff/src
CFLAGS+=-I${SRCTOP}/contrib/diff/lib
CFLAGS+=-DHAVE_CONFIG_H
CFLAGS+=-DDEFAULT_DIFF_PROGRAM=\"/usr/bin/diff\"
WARNS?= 0
.for f in diff3.c
${f}: ${DIFFSRC}/${f} ${.CURDIR}/${f}.diff
patch -s -o ${.TARGET} < ${.CURDIR}/${f}.diff ${DIFFSRC}/${f}
CLEANFILES+= ${f}
.endfor
.include <bsd.prog.mk>