tech-toolchain for a very detailed explanation of this. In short, add
a .y.h rule identical to the .y.c rule and make the .y.c rule rename
the .h file; also, clean the .h file in CLEANFILES.
gtar. pax has problems extracting certain archives which were made by
gtar and contain trailing trash at the end - gtar ignores this dross,
pax thinks it's valid, and prompts for the second volume.
* new bsd.own.mk variable OBJECT_FMT with values "a.out" or "ELF".
* use OBJECT_FMT in Makefile tests that depend on toolchain.
* Add new bsd.own.mk variable NOSHLIB that, if set indicates a given
port doesnt yet do shared libraries. Set on powerpc.
* Document new feature-test variables in src/share/mk/bsd.README.
Tested on i386, mips, fakedup Alpha environment.
current package (IF called from a package dir and not via bsd.port.subdir.mk;
in the latter case it's assumed that the dependent packages will be scanned
later anyways).
This fixes PR 4992 by Mario Kemper <magick@bundy.lip.owl.de>.
characters escaped with a backslash, but recognise the backslashes for
backwards compatibility. When matching names, do any escaping of
the regexp '.' metacharacter automatically, if needed.
When a shared object dependency is printed out, use a form that does
not have the backslashes in it, for readability.
Print out the full pathname of the matching shared object, for clarity.
to "no" in a package's Makefile when the authors have placed
restrictions on the redistribution of the distfiles. (Thanks to Jason
Thorpe for the idea).
Add a `mirror' target, which will do a "make fetch" if the package's
distfile is allowed to be redistributed. This is for use on sites
which mirror package distfiles. (Thanks to Charles Hannum for the
idea).
- Document NO_IGNORE, __ARCH_OK
- Make __ARCH_OK overridable, so it can be set to YES e.g. for fetching
all distfiles.
- Move ".ifndef(__ARCH_OK): block, so some targets like clean work
in any case.
- Add LOCALBASE and X11BASE to PATH in MAKE_ENV, CONFIGURE_ENV and
SCRIPT_ENV; this fixes PR 4573
bsd.port.mk, but this time use a definition before the inclusion,
which stops <bsd.own.mk> defining its own install target when
using the package system.
This makes the package system take notice of the definitions in
/etc/mk.conf
one if the categories directories, will call "make readme" in
any subdirectories.
I thought that this was suggested by Chris Demetriou, but I can't find
any PR backing this up. So my apologies to the person who did suggest
this.
characters, and avoids the wrong interpretation of magic HTML
characters in DESCR files or categories.
Forwarded to me by Chris Demetriou, and refers to PR 4341.
- Fixup documentation for CAT<sect>, CATPREFIX.
(these two changes were accidentally committed to the 1.3 branch
as revisions 1.13.2.3 and 1.13.2.4 before!)
+ set MAKE_PROGRAM variable in bsd.port.mk to either ${GMAKE} or
${MAKE}, and use it in do-build and do-install targets
+ if X11 package, and man pages are installed, add install.man to
${INSTALL_TARGET}, rather than using a separate command to do this.
Also added CATn= blah.0, similar to MANn= blah.1, which installs
pre-formatted man pages, like the ones imake produces.
bsd.port.mk would always find the executable (using which), even if
there wasn't an executable in the $PATH. I've modified bsd.port.mk to
look for the executable directly, and simplified the shell code
somewhat in the process. There may be a lurking bug in shell exit
status handling here.
Noted by matthew green <mrg@madrugada.eterna.com.au> and Chris
Demetriou <cgd@netbsd.org> (PR pkg/4337) but I was too stupid to
realise what was happening. That, and a copy of gmake in
/usr/local/bin.
- sys.mk:
add ${OBJC} and ${OBJCFLAGS} (equivalent to ${CC} and
${CFLAGS} respectively), and ${COMPILE.m} and ${LINK.m} rules
- bsd.sys.mk:
add .m, .m.o, and .m.ln rules (as per the C rules in sys.mk).
it's here, rather than in sys.mk, because `.m' isn't
exclusively used for Objective C files.
- bsd.lib.mk:
add .m.o, .m.po, .m.so, and .m.ln rules (as per C)
* Allow bsd.man.mk to be included separately.
* Always include bsd.own.mk and bsd.obj.mk.
* Include bsd.man.mk and bsd.nls.mk even if NOMAN or NONLS; just turn off
building of the affected files instead.
* Require bsd.subdir.mk to be included explicitly.
(Will make appropriate changes to Makefiles shortly.)
Change <$ARCH> into bsd.port.mk's ${ARCH} value (uname -m) when
constructing the derived PLIST, so that we can use packages on
non-i386 NetBSD architectures and have the correct file names in the
installed inventory.
PLIST before applying.
It is assumed that ports do install manpages uncompressed, if not
they have to set MANCOMPRESSED. Upon that, the pages will be
(un)compressed according to the setting of MANZ.
<bsd.own.mk> defines its own `install' target if none is defined,
which conflicts with the default one we define later on in bsd.port.mk.
This may nuke any WRKOBJDIR definitions (which I have yet to encounter),
but enables "make install" to work as expected.
+ Add temporary mtree file for any X11 packages (like xpm, jpeg etc),
which require a default X11 tree. This will change when we get a NetBSD
x11.dist mtree file.
+ Define SHAREOWN, SHAREGRP and SHAREMODE (in NetBSD) to be the same as
DOCOWN, DOCGRP and DOCMODE respectively.
- Changes from FreeBSD's V1.164:
* Warn if mtree-file not found
* On 'make reinstall' gets DEPENDS_TARGET set
to 'reinstall' instead of 'install'
- Changes from OpenBSD's V1.14:
* Documentation and implementation for ONLY_FOR_ARCHS
* Documentation and implementation for WRKOBJDIR
* Documentation on HAVE_MOTIF and MOTIF_STATIC:
set in /etc/mk.conf, not /etc/make.conf
* Set NOMANCOMPRESS=no to still compress man-pages
(should probably be set to 'yes')
* DEF_UMASK=022
* add ${MACHINE} suffix to WRKDIR if OBJMACHINE is set
* .include <bsd.own.mk>
tbl in building man pages. If the variable USETBL is defined, the
rules for making the man pages include tbl before nroff.
This supports at least 3 man pages in the tree.
(Related to PR 3144.)
and libs in the object tree, if you use a separate object tree,
while maintaining backward compatability with other build methods.
See the notes in src/share/mk/bsd.README for full details. Note
that the `make includes' target now only installs the include files
in the build directory (if you use one--otherwise they go in DESTDIR
just like before); `make install' will install include files in
DESTDIR.
support the two different incompatible rules for build .so files from
.S source on both NetBSD and binutils toolchains:
${CPP} | ${AS} for syscalls
${CC} for non-syscalls
for which the different toolchains's ${AS} requires diffferent flags.