pkgsrc/devel/bmake/files/mk/own.mk
nia 0b335ac794 bmake: Update to 20200517
2020-05-17  Simon J Gerraty  <sjg@beast.crufty.net>

	* VERSION (_MAKE_VERSION): 20200517
	Merge with NetBSD make, pick up
	o modified dollar tests to avoid shell dependencies
	o new tests for .INCLUDEFROM

2020-05-16  Simon J Gerraty  <sjg@beast.crufty.net>

	* unit-tests/dollar.mk: tweak  '1 dollar literal' test
	to not depend so much on shell behavior

2020-05-10  Simon J Gerraty  <sjg@beast.crufty.net>

	* VERSION (_MAKE_VERSION): 20200510
	Merge with NetBSD make, pick up
	o unit test for dollar handling

2020-05-06  Simon J Gerraty  <sjg@beast.crufty.net>

	* VERSION (_MAKE_VERSION): 20200506
	Merge with NetBSD make, pick up
	o str.c: empty string does not match % pattern
	  plus unit-test changes

2020-05-04  Simon J Gerraty  <sjg@beast.crufty.net>

	* VERSION (_MAKE_VERSION): 20200504
	May the 4th be with you
	Merge with NetBSD make, pick up
	o var.c: import handling of old sysV style modifier using '%'
	o str.c: refactor brk_string
	o unit-tests: add test case for lazy conditions

2020-04-18  Simon J Gerraty  <sjg@beast.crufty.net>

	* VERSION (_MAKE_VERSION): 20200418

	* configure.in: use_makefile=no for cygwin et al.
	case insensitive filesystems just don't work if both
	makefile and Makefile exist.
	NOTE: bmake does not support cygwin and likely never will,
	but if brave souls want to try it - help them out.

2020-04-02  Simon J Gerraty  <sjg@beast.crufty.net>

	* VERSION (_MAKE_VERSION): 20200402
	Merge with NetBSD make, pick up
	o meta.c: meta_oodate, CHECK_VALID_META is too aggressive for CMD
	  a blank command is perfectly valid.

2020-03-30  Simon J Gerraty  <sjg@beast.crufty.net>

	* VERSION (_MAKE_VERSION): 20200330
	Merge with NetBSD make, pick up
	o make.h: extern debug_file

2020-03-18  Simon J Gerraty  <sjg@beast.crufty.net>

	* VERSION (_MAKE_VERSION): 20200318
	Merge with NetBSD make, pick up
	o meta.c: meta_oodate, check for corrupted meta file
	  earlier and more often.

2020-02-20  Simon J Gerraty  <sjg@beast.crufty.net>

	* VERSION (_MAKE_VERSION): 20200220

2020-02-19  Simon J Gerraty  <sjg@beast.crufty.net>

	* boot-strap: unset MAKEFLAGS

2020-02-12  Simon J Gerraty  <sjg@beast.crufty.net>

	* VERSION (_MAKE_VERSION): 20200212
	* meta.c: meta_compat_parent check for USE_FILEMON
	  patch from Soeren Tempel

2020-02-05  Simon J Gerraty  <sjg@beast.crufty.net>

	* VERSION: 20200205
	Merge with NetBSD make, pick up
	o meta.c: fix compat mode, need to call meta_job_output()
	o job.c: extra fds for meta mode not needed if using filemon_dev

2020-01-22  Simon J Gerraty  <sjg@beast.crufty.net>

	* VERSION: 20200122
	Merge with NetBSD make, pick up
	o meta.c: avoid passing NULL to filemon_*() when meta_needed()
	  returns FALSE.

2020-01-21  Simon J Gerraty  <sjg@beast.crufty.net>

	* VERSION: 20200121
	Merge with NetBSD make, pick up
	o filemon/filemon_{dev,ktrace}.c: allow selection of
	  filemon implementation.  filemon_dev.c uses the kernel module
	  while filemon_ktrace.c leverages the fktrace api available in
	  NetBSD.  filemon_ktrace.c can hopefully form the basis for
	  adding support for other tracing mechanisms such as strace on
	  Linux.
	o meta.c: when target is out-of-date per normal make rules
	  record value of .OODATE in meta file.

2019-09-26  Simon J Gerraty  <sjg@beast.crufty.net>

	* VERSION: 20190926
	  Merge with NetBSD make, pick up
	  o parse.c: don't pass NULL to realpath(3)
	    some versions cannot handle it.

2019-04-09  Simon J Gerraty  <sjg@beast.crufty.net>

	* VERSION: 20190409
	  Merge with NetBSD make, pick up
	  o parse.c: ParseDoDependency: free paths rather than assert

2018-12-22  Simon J Gerraty  <sjg@beast.crufty.net>

	* VERSION: 20181222

	* configure.in: add --without-makefile to avoid generating
	  makefile and make-bootstrap.sh

	* include Makefile.inc if it exists

	* Use Makefile and Makefile.config.in in unit-tests
	  so we can use just: make obj && make && make test
	  when bmake is already available.
	  We add --without-makefile to CONFIGURE_ARGS in this case.

	* tweak bsd.after-import.mk (captures Makefile.config etc
	  after import to FreeBSD for example) to cope with all the above.

2018-12-21  Simon J Gerraty  <sjg@beast.crufty.net>

	* VERSION: 20181221
	  Merge with NetBSD make, pick up
	  o parse.c: ParseVErrorInternal use .PARSEDIR
	    and apply if relative, and then use .PARSEFILE
	    for consistent result.

2018-12-20  Simon J Gerraty  <sjg@beast.crufty.net>

	* VERSION: 20181220
	  Merge with NetBSD make, pick up
	  o parse.c: ParseVErrorInternal use .CURDIR if .PARSEDIR
	    is relative
	  o var.c: avoid SEGFAULT in .unexport-env
	    when MAKELEVEL is not set

2018-12-16  Simon J Gerraty  <sjg@beast.crufty.net>

	* VERSION: 20181216
	  Merge with NetBSD make, pick up
	  o fix for unit-tests/varquote.mk on Debian

2018-09-21  Simon J. Gerraty  <sjg@bad.crufty.net>

	* VERSION: 20180919
	  Merge with NetBSD make, pick up
	  o var.c: add :q
	  o dir.c: cleanup caching of stats

2018-09-21  Simon J Gerraty  <sjg@beast.crufty.net>

	* Makefile.config.in: use += where it makes sense.

2018-05-12  Simon J. Gerraty  <sjg@bad.crufty.net>

	* VERSION: 20180512
	  Merge with NetBSD make, pick up
	  o job.c: skip polling job token pipe

2018-04-05  Simon J. Gerraty  <sjg@bad.crufty.net>

	* VERSION: 20180405
	  Merge with NetBSD make, pick up
	  o parse.c: be more cautious about detecting depenency line
	    rather than sysV style include.

2018-02-22  Simon J. Gerraty  <sjg@bad.crufty.net>

	* VERSION: 20180222
	  Merge with NetBSD make, pick up
	  o parse.c: avoid calling sysconf for every call to loadfile

2018-02-18  Simon J. Gerraty  <sjg@bad.crufty.net>

	* VERSION: 20180218
	  Merge with NetBSD make, pick up
	  o var.c: Var_Set handle NULL value anytime.

2018-02-12  Simon J. Gerraty  <sjg@bad.crufty.net>

	* VERSION: 20180212
	  Merge with NetBSD make, pick up
	  o parse.c: do not treat .info as warning with -W

2017-12-07  Simon J. Gerraty  <sjg@bad.crufty.net>

	* VERSION: 20171207
	  Merge with NetBSD make, pick up
	  o var.c: Var_Append use Var_Set if var not previously set
	    so that VAR_CMD is handled correctly.
	    Add a suitable unit-test.

2017-11-26  Simon J. Gerraty  <sjg@bad.crufty.net>

	* VERSION (_MAKE_VERSION): 20171126

	* aclocal.m4: use AC_LINK_IFELSE for AC_C___ATTRIBUTE__
	  since AC_TRY_COMPILE puts input inside main()
	  which upsets modern compilers.

2017-11-18  Simon J. Gerraty  <sjg@bad.crufty.net>

	* VERSION: 20171118
	  Merge with NetBSD make, pick up
	  o var.c: do not append to variable set on command line
	    add unit-test to catch this.

2017-10-28  Simon J. Gerraty  <sjg@bad.crufty.net>

	* VERSION: 20171028
	  Merge with NetBSD make, pick up
	  o main.c: ignore empty MAKEOBJDIR

	* Makefile.config.in:
	  make @prefix@ @machine*@ and @default_sys_path@ defaults.

2017-10-05  Simon J. Gerraty  <sjg@bad.crufty.net>

	* VERSION: 20171005

	* unit-tests/dotwait.mk: redirect stderr through pipe for more
	  consistent result on some platforms.

2017-08-13  Simon J. Gerraty  <sjg@bad.crufty.net>

	* machine.sh: entry for AIX

2017-08-12  Simon J. Gerraty  <sjg@bad.crufty.net>

	* VERSION (_MAKE_VERSION): Move the setting of _MAKE_VERSION
	  to a file that can be included by configure as well as make.
	  This allows configure to set set _MAKE_VERSION in make-bootstrap.sh

2017-08-10  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20170810
	  Merge with NetBSD make, pick up
	  o meta.c: if target is in subdir we only need subdir name in
	    meta_name.

2017-07-20  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20170720
	  Merge with NetBSD make, pick up
	  o compat.c: pass SIGINT etc onto child and wait for it to exit
	    before we self-terminate.

2017-07-11  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20170711
	  forgot to update after merge on 20170708 ;-)
	  o main.c: refactor to reduce size of main function.
	    add -v option to always fully expand values.
	  o meta.c: ensure command output in meta file has ending newline
	    even when filemon not being used.
	    When matching ${.MAKE.META.IGNORE_PATTERNS} do not use
	    pathname via ':L' since any ':' in pathname breaks that.
	    Instead set a '${.p.}' to pathname in the target context and
	    use that.

2017-05-10  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20170510
	  Merge with NetBSD make, pick up
	  o main.c: Main_SetObjdir: ensure buf2 is in scope

2017-05-08  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20170505
	  see mk/ChangeLog

2017-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>

	* parse.c: not everyone has stdint.h

2017-05-01  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20170501
	  see mk/ChangeLog

2017-04-21  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20170421
	  Merge with NetBSD make, pick up
	  o str.c: Str_Match: fix closure tests for [^] and add unit-test.

2017-04-20  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20170420
	  Merge with NetBSD make, pick up
	  o main.c: only use -C arg "as is" if it contains no
	    relative component.

2017-04-18  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20170418
	  Merge with NetBSD make, pick up
	  o main.c: fix Main_SetObjdir() for relative paths (eg obj).

2017-04-17  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20170417
	  Merge with NetBSD make, pick up
	  o fixes a number of coverity complaints
	    - check return value of fseek, fcntl
	    - plug memory leak in Dir_FindFile, Var_LoopExpand,
	      JobPrintCommand, ParseTraditionalInclude
	    - use bmake_malloc() where NULL is not tollerated
	    - use MAKE_ATTR_UNUSED rather that kludges like
	      return(unused ? 0 : 0)
	    - use purge_cached_realpaths() rather than abuse cached_realpath()

2017-04-13  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20170413
	  Merge with NetBSD make, pick up
	  o main.c: when setting .OBJDIR ignore '$' in paths.

	* job.c: use MALLOC_OPTIONS to set malloc_options.

2017-04-11  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20170411
	  Merge with NetBSD make, pick up
	  o str.c: Str_Match: allow [^a-z] to behave as expected.

2017-03-26  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20170326
	  Merge with NetBSD make, pick up
	  o main.c: purge relative paths from realpath cache when .OBJDIR
	    is changed.

2017-03-11  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20170311
	  Merge with NetBSD make, pick up
          o main.c: only use -C arg "as is" if it starts with '/'.

2017-03-01  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20170301
	  Merge with NetBSD make, pick up
	  o main.c: use -C arg "as is" rather than getcwd()
	    if they identify the same directory.
	  o parse.c: ensure loadfile buffer is \n terminated in non-mmap case

2017-02-01  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20170201
	  Merge with NetBSD make, pick up
	  o var.c: allow :_=var and avoid use of special context.

2017-01-30  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20170130
	  Merge with NetBSD make, pick up
	  o var.c: add :range and :_
	  o main.c: partially initialize Dir_* before MainParseArgs()
	    can be called.
	    If -V, skip Main_ExportMAKEFLAGS()

2017-01-14  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20170114
	  Merge with NetBSD make, pick up
	  o var.c: allow specifying the utc value used by :{gm,local}time

2016-12-12  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20161212
	  Merge with NetBSD make, pick up
          o main.c: look for obj.${MACHINE}-${MACHINE_ARCH} too.

2016-12-09  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20161209
	  Merge with NetBSD make, pick up
	  o main.c: cleanup setting of .OBJDIR
	  o parse.c: avoid coredump from (var)=val

2016-11-26  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20161126
	  Merge with NetBSD make, pick up
	  o make.c: Make_OODate: report src node name if path not set

2016-09-26  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20160926
	  Merge with NetBSD make, pick up
	  o support for .DELETE_ON_ERROR: (remove targets that fail)

2016-09-26  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile MAN: tweak .Dt to match ${PROG}

2016-08-18  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20160818
	  its a neater number; pick up whitespace fixes to man page.

2016-08-17  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20160817
	  Merge with NetBSD make, pick up
	  o meta.c: move handling of .MAKE.META.IGNORE_* to meta_ignore()
	    so we can call it before adding entries to missingFiles.
	    Thus we do not track files we have been told to ignore.

2016-08-15  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20160815
	  Merge with NetBSD make, pick up
	  o meta_oodate: apply .MAKE.META.IGNORE_FILTER (if defined) to
	    pathnames, and skip if the expansion is empty.
	    Useful for dirdeps.mk when checking DIRDEPS_CACHE.

2016-08-12  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20160812
	  Merge with NetBSD make, pick up
	  o meta.c: remove all missingFiles entries that match a deleted
	    dir.
	  o main.c: set .ERROR_CMD if possible.

2016-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20160606
	  Merge with NetBSD make, pick up
	  o dir.c: extend mtimes cache to others via cached_stat()

2016-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20160604
	  Merge with NetBSD make, pick up
	  o meta.c: missing filemon data is only relevant if we read a
	    meta file.
	    Also do not return oodate for a missing metafile if gn->path
	    points to .CURDIR

2016-06-02  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20160602
	  Merge with NetBSD make, pick up
	  o cached_realpath(): avoid hitting filesystem more than necessary.
	  o meta.c: refactor need_meta decision, add knobs for
	    missing meta file and filemon data wrt out-of-datedness.

2016-05-28  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20160528

	* boot-strap, make-bootstrap.sh.in: Makefile now uses _MAKE_VERSION

2016-05-12  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20160512
	  Merge with NetBSD make, pick up
	  o meta.c: ignore paths that match .MAKE.META.IGNORE_PATTERNS
	    this is useful for gcov builds.
	  o propagate errors from filemon(4).

2016-05-09  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20160509
	  Merge with NetBSD make, pick up
	  o remove use of non-standard types u_int etc.
	  o meta.c: apply realpath() before matching against metaIgnorePaths

2016-04-04  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20160404
	  Merge with NetBSD make, pick up
	  o allow makefile to set .MAKE.JOBS

	* Makefile (PROG_NAME): use ${_MAKE_VERSION}

2016-03-15  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): 20160315
	  Merge with NetBSD make, pick up
	  o fix handling of archive members

2016-03-13  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (_MAKE_VERSION): rename variable to avoid interference
	  with checks for ${MAKE_VERSION}

2016-03-10  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (MAKE_VERSION): 20160310
	  Merge with NetBSD make, pick up
	  o meta.c: treat missing Read file same as Write, incase we Delete it.

2016-03-07  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (MAKE_VERSION): 20160307
	  Merge with NetBSD make, pick up
	  o var.c: fix :ts\nnn to be octal by default.
	  o meta.c: meta_finish() to cleanup memory.

2016-02-26  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (MAKE_VERSION): 20160226
	  Merge with NetBSD make, pick up
	  o meta.c: allow meta file for makeDepend if makefiles want it.

2016-02-19  Simon J. Gerraty  <sjg@bad.crufty.net>

	* var.c: default .MAKE.SAVE_DOLLARS to FALSE
	  for backwards compatability.

	* Makefile (MAKE_VERSION): 20160220
	  Merge with NetBSD make, pick up
	  o var.c: add knob to control handling of '$$' in :=

2016-02-18  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (MAKE_VERSION): 20160218
	  Merge with NetBSD make, pick up
	  o var.c: add .export-literal allows us to fix sys.clean-env.mk
	    post the changes to Var_Subst.
	    Var_Subst now takes flags, and does not consume '$$' in :=

2016-02-17  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (MAKE_VERSION): 20160217
	  Merge with NetBSD make, pick up
	  o var.c: preserve '$$' in :=
	  o parse.c: add .dinclude for handling included
	    makefile like .depend

2015-12-20  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (MAKE_VERSION): 20151220
	  Merge with NetBSD make, pick up
	  o suff.c: re-initialize suffNull when clearing suffixes.

2015-12-01  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (MAKE_VERSION): 20151201
	  Merge with NetBSD make, pick up
	  o cond.c: CondCvtArg: avoid access beyond end of empty buffer.
	  o meta.c: meta_oodate: use lstat(2) for checking link target
	    in case it is a symlink.
	  o var.c: avoid calling brk_string and Var_Export1 with empty
	    strings.

2015-11-26  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (MAKE_VERSION): 20151126
	  Merge with NetBSD make, pick up
	  o parse.c: ParseTrackInput don't access beyond
	    end of old value.

2015-10-22  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (MAKE_VERSION): 20151022

	* Add support for BSD/OS which lacks inttypes.h
	  and really needs sys/param.h for sys/sysctl.h
	  also 'type' is not a shell builtin.

	* var.c: eliminate uint32_t and need for inttypes.h

	* main.c: PrintOnError flush stdout before run .ERROR

	* parse.c: cope with _SC_PAGESIZE not being defined.


2015-10-20  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (MAKE_VERSION): 20151020
	  Merge with NetBSD make, pick up
	  o var.c: fix uninitialized var

2015-10-12  Simon J. Gerraty  <sjg@bad.crufty.net>

	* var.c: the conditional expressions used with ':?' can be
	expensive, if already discarding do not evaluate or expand
	anything.

2015-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (MAKE_VERSION): 20151010
	  Merge with NetBSD make, pick up
	  o Add Boolean wantit flag to Var_Subst and Var_Parse
	    when FALSE we know we are discarding the result and can
	    skip operations like Cmd_Exec.

2015-10-09  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (MAKE_VERSION): 20151009
	  Merge with NetBSD make, pick up
	  o var.c: don't check for NULL before free()
	  o meta.c: meta_oodate, do not hard code ignore of makeDependfile

2015-09-10  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (MAKE_VERSION): 20150910
	  Merge with NetBSD make, pick up
	  o main.c: with -w print Enter/Leaving messages for objdir too
	    if necessary.
	  o centralize shell metachar handling

	* FILES: add metachar.[ch]

2015-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>

	* Makefile (MAKE_VERSION): 20150606
	  Merge with NetBSD make, pick up
	  o make.1: document .OBJDIR target
2020-05-24 11:09:43 +00:00

271 lines
5.8 KiB
Makefile

# $Id: own.mk,v 1.2 2020/05/24 11:09:44 nia Exp $
.if !target(__${.PARSEFILE}__)
__${.PARSEFILE}__:
.if !target(__init.mk__)
.include "init.mk"
.endif
.if !defined(NOMAKECONF) && !defined(NO_MAKECONF)
MAKECONF?= /etc/mk.conf
.-include "${MAKECONF}"
.endif
.include <host-target.mk>
TARGET_OSNAME?= ${_HOST_OSNAME}
TARGET_OSREL?= ${_HOST_OSREL}
TARGET_OSTYPE?= ${HOST_OSTYPE}
TARGET_HOST?= ${HOST_TARGET}
# these may or may not exist
.-include <${TARGET_HOST}.mk>
.-include <config.mk>
RM?= rm
LN?= ln
INSTALL?= install
prefix?= /usr
.if exists(${prefix}/lib)
libprefix?= ${prefix}
.else
libprefix?= /usr
.endif
# FreeBSD at least does not set this
MACHINE_ARCH?= ${MACHINE}
# we need to make sure these are defined too in case sys.mk fails to.
COMPILE.s?= ${CC} ${AFLAGS} -c
LINK.s?= ${CC} ${AFLAGS} ${LDFLAGS}
COMPILE.S?= ${CC} ${AFLAGS} ${CPPFLAGS} -c -traditional-cpp
LINK.S?= ${CC} ${AFLAGS} ${CPPFLAGS} ${LDFLAGS}
COMPILE.c?= ${CC} ${CFLAGS} ${CPPFLAGS} -c
LINK.c?= ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}
CXXFLAGS?= ${CFLAGS}
COMPILE.cc?= ${CXX} ${CXXFLAGS} ${CPPFLAGS} -c
LINK.cc?= ${CXX} ${CXXFLAGS} ${CPPFLAGS} ${LDFLAGS}
COMPILE.m?= ${OBJC} ${OBJCFLAGS} ${CPPFLAGS} -c
LINK.m?= ${OBJC} ${OBJCFLAGS} ${CPPFLAGS} ${LDFLAGS}
COMPILE.f?= ${FC} ${FFLAGS} -c
LINK.f?= ${FC} ${FFLAGS} ${LDFLAGS}
COMPILE.F?= ${FC} ${FFLAGS} ${CPPFLAGS} -c
LINK.F?= ${FC} ${FFLAGS} ${CPPFLAGS} ${LDFLAGS}
COMPILE.r?= ${FC} ${FFLAGS} ${RFLAGS} -c
LINK.r?= ${FC} ${FFLAGS} ${RFLAGS} ${LDFLAGS}
LEX.l?= ${LEX} ${LFLAGS}
COMPILE.p?= ${PC} ${PFLAGS} ${CPPFLAGS} -c
LINK.p?= ${PC} ${PFLAGS} ${CPPFLAGS} ${LDFLAGS}
YACC.y?= ${YACC} ${YFLAGS}
# for suffix rules
IMPFLAGS?= ${COPTS.${.IMPSRC:T}} ${CPUFLAGS.${.IMPSRC:T}} ${CPPFLAGS.${.IMPSRC:T}}
.for s in .c .cc
COMPILE.$s += ${IMPFLAGS}
LINK.$s += ${IMPFLAGS}
.endfor
PRINT.VAR.MAKE = MAKESYSPATH=${MAKESYSPATH:U${.PARSEDIR}} ${.MAKE}
.if empty(.MAKEFLAGS:M-V*)
.if defined(MAKEOBJDIRPREFIX) || defined(MAKEOBJDIR)
PRINTOBJDIR= ${PRINT.VAR.MAKE} -r -V .OBJDIR -f /dev/null xxx
.else
PRINTOBJDIR= ${PRINT.VAR.MAKE} -V .OBJDIR
.endif
.else
PRINTOBJDIR= echo # prevent infinite recursion
.endif
# we really like to have SRCTOP and OBJTOP defined...
.if !defined(SRCTOP) || !defined(OBJTOP)
.-include <srctop.mk>
.endif
.if !defined(SRCTOP) || !defined(OBJTOP)
# dpadd.mk is rather pointless without these
OPTIONS_DEFAULT_NO+= DPADD_MK
.endif
# process options
OPTIONS_DEFAULT_NO+= \
INSTALL_AS_USER \
GPROF \
PROG_LDORDER_MK \
LIBTOOL \
LINT \
OPTIONS_DEFAULT_YES+= \
ARCHIVE \
AUTODEP \
CRYPTO \
DOC \
DPADD_MK \
GDB \
KERBEROS \
LINKLIB \
MAN \
NLS \
OBJ \
PIC \
SHARE \
SKEY \
YP \
OPTIONS_DEFAULT_DEPENDENT+= \
CATPAGES/MAN \
LDORDER_MK/PROG_LDORDER_MK \
OBJDIRS/OBJ \
PICINSTALL/LINKLIB \
PICLIB/PIC \
PROFILE/LINKLIB \
STAGING_PROG/STAGING \
.include <options.mk>
.if ${MK_INSTALL_AS_USER} == "yes"
# We ignore this if user is root.
_uid!= id -u
.if ${_uid} != 0
.if !defined(USERGRP)
USERGRP!= id -g
.export USERGRP
.endif
.for x in BIN CONF DOC INC INFO FILES KMOD LIB MAN NLS PROG SHARE
$xOWN= ${USER}
$xGRP= ${USERGRP}
$x_INSTALL_OWN=
.endfor
.endif
.endif
# override this in sys.mk
ROOT_GROUP?= wheel
BINGRP?= ${ROOT_GROUP}
BINOWN?= root
BINMODE?= 555
NONBINMODE?= 444
DIRMODE?= 755
INCLUDEDIR?= ${prefix}/include
INCDIR?= ${INCLUDEDIR}
# Define MANZ to have the man pages compressed (gzip)
#MANZ= 1
MANTARGET?= cat
MANDIR?= ${prefix}/share/man/${MANTARGET}
MANGRP?= ${BINGRP}
MANOWN?= ${BINOWN}
MANMODE?= ${NONBINMODE}
INCLUDEDIR?= ${libprefix}/include
LIBDIR?= ${libprefix}/lib
SHLIBDIR?= ${libprefix}/lib
.if ${USE_SHLIBDIR:Uno} == "yes"
_LIBSODIR?= ${SHLIBDIR}
.else
_LIBSODIR?= ${LIBDIR}
.endif
# this is where ld.*so lives
SHLINKDIR?= /usr/libexec
LINTLIBDIR?= ${libprefix}/libdata/lint
LIBGRP?= ${BINGRP}
LIBOWN?= ${BINOWN}
LIBMODE?= ${NONBINMODE}
DOCDIR?= ${prefix}/share/doc
DOCGRP?= ${BINGRP}
DOCOWN?= ${BINOWN}
DOCMODE?= ${NONBINMODE}
NLSDIR?= ${prefix}/share/nls
NLSGRP?= ${BINGRP}
NLSOWN?= ${BINOWN}
NLSMODE?= ${NONBINMODE}
KMODDIR?= ${prefix}/lkm
KMODGRP?= ${BINGRP}
KMODOWN?= ${BINOWN}
KMODMODE?= ${NONBINMODE}
SHAREGRP?= ${BINGRP}
SHAREOWN?= ${BINOWN}
SHAREMODE?= ${NONBINMODE}
COPY?= -c
STRIP_FLAG?= -s
.if ${TARGET_OSNAME} == "NetBSD"
.if exists(/usr/libexec/ld.elf_so)
OBJECT_FMT=ELF
.endif
OBJECT_FMT?=a.out
.endif
# sys.mk should set something appropriate if need be.
OBJECT_FMT?=ELF
.if (${_HOST_OSNAME} == "FreeBSD")
CFLAGS+= ${CPPFLAGS}
.endif
# allow for per target flags
# apply the :T:R first, so the more specific :T can override if needed
CPPFLAGS += ${CPPFLAGS_${.TARGET:T:R}} ${CPPFLAGS_${.TARGET:T}}
CFLAGS += ${CFLAGS_${.TARGET:T:R}} ${CFLAGS_${.TARGET:T}}
# Define SYS_INCLUDE to indicate whether you want symbolic links to the system
# source (``symlinks''), or a separate copy (``copies''); (latter useful
# in environments where it's not possible to keep /sys publicly readable)
#SYS_INCLUDE= symlinks
# don't try to generate PIC versions of libraries on machines
# which don't support PIC.
.if (${MACHINE_ARCH} == "vax") || \
((${MACHINE_ARCH} == "mips") && defined(STATIC_TOOLCHAIN)) || \
((${MACHINE_ARCH} == "alpha") && defined(ECOFF_TOOLCHAIN))
MK_PIC=no
.endif
# No lint, for now.
NOLINT=
.if ${MK_LINKLIB} == "no"
MK_PICINSTALL= no
MK_PROFILE= no
.endif
.if ${MK_MAN} == "no"
MK_CATPAGES= no
.endif
.if ${MK_OBJ} == "no"
MK_OBJDIRS= no
MK_AUTO_OBJ= no
.endif
.if ${MK_SHARE} == "no"
MK_CATPAGES= no
MK_DOC= no
MK_INFO= no
MK_MAN= no
MK_NLS= no
.endif
# :U incase not using our sys.mk
.if ${MK_META_MODE:Uno} == "yes"
# should all be set by sys.mk if not default
TARGET_SPEC_VARS ?= MACHINE
.if ${TARGET_SPEC_VARS:[#]} > 1
TARGET_SPEC_VARS_REV := ${TARGET_SPEC_VARS:[-1..1]}
.else
TARGET_SPEC_VARS_REV = ${TARGET_SPEC_VARS}
.endif
.if ${MK_STAGING} == "yes"
STAGE_ROOT?= ${OBJROOT}/stage
STAGE_OBJTOP?= ${STAGE_ROOT}/${TARGET_SPEC_VARS_REV:ts/}
.endif
.endif
.endif