summaryrefslogtreecommitdiff
path: root/mk/build/bsd.build.mk
AgeCommit message (Collapse)AuthorFilesLines
2008-02-07Replaced _PKG_SILENT and _PKG_DEBUG with RUN.rillig1-4/+4
2008-01-04Made the .include directives simpler, since the directory of therillig1-3/+3
including file is always the first in the search path.
2007-02-06Documented NO_BUILD.rillig1-1/+8
2006-07-22Modify the barrier so that we always invoke the recursive make processjlam1-2/+2
when passing through the barrier. This ensures the PATH (passed via PKGSRC_MAKE_ENV) is correctly set for all phases after the barrier. This fixes a bug in "interactive" pkgsrc use, where if you have no work directory and type "make build && make install", then the "install" step does not have a PATH set to include all the wrapper and tools directories.
2006-07-07Rename <phase>_COOKIE variables to _COOKIE.<phase>. These are privatejlam1-8/+8
variables so there are no user-visible changes. This change just makes it a little easier to write for loops.
2006-07-07The build target needs to be barrier aware even in the NO_BUILD case.seb1-2/+4
Without this a straight make fails in pkgsrc/pkgtools/pkg_comp.
2006-07-06The cookie files are indirectly made using *-cookie targets, so verifyjlam1-1/+2
that they are never being created more than once by inserting a check into the *-cookie targets.
2006-07-06Always run the "pkginstall" step even if NO_BUILD is specified.jlam1-2/+2
2006-07-05Flatten out recursive makes into a single re-invocation of make byjlam1-5/+8
introducing the concept of a "barrier". We separate the user-invokable targets into ones that must happen before the barrier, and ones that must happen after the barrier. The ones that happen after the barrier are run in a sub-make process. In this case, the targets that must be run after the barrier are from the "wrapper" step and beyond. We rewrite the various "flow" targets, e.g. wrapper, configure, build, etc., so that they of the right form to use the barrier target. This now completely removes the concept of PKG_PHASE from pkgsrc. It is replaced with the concept of "before" and "after" the barrier, and this state can be checked by testing for the existence of the barrier cookie file. Because we've removed most of the recursive makes, there is now nowhere to hook the PKG_ERROR_HANDLER.* commands, so remove them for now. As part of this commit, put back the logic that conditionalized the sources for the various cookie files. Because the sources are all "phony" targets, they were always run, regardless of whether or not the cookie file already existed. Now, if a cookie file exists, then that entire phase associated with that cookie file is skipped. Lastly, fix a thinko in configure/bsd.configure.mk where setting NO_CONFIGURE in a package Makefile would manage to skip the "wrapper" step altogether. Fix this by correctly noting "wrapper" and not "patch" as the preceding step to "configure".
2006-07-05Make the check-vulnerable target more self-sufficient, by moving somejlam1-2/+2
of the logic from fetch/fetch.mk into flavor/pkg/check.mk, so that check-vulnerable can be used as a source target. Make check-vulnerable a source target for every phase of the build workflow, which ensures that it is always run if the user starts a new phase from the command line. Fix the cookie-generation targets so that they don't append, only overwrite to the cookie file. This works around potential problems due to recursive makes. Move the cookie checks so that they surround the corresponding phase target. The presence of the cookie should now inform the make process to avoid doing any processing of phases that occur before the phase corresponding to the cookie.
2006-07-05Refactor configure, build, test and wrapper phases out of bsd.pkg.mkjlam1-0/+43
and into their own directories. Also do some cleanups with build/_build and pkginstall -- we get rid of _build and simply run pkginstall as part of the "build" target. Introduce a new mechanism to handle varying directory depths under ${WRKSRC} in which we find files to override, e.g. configure, config.*, libtool, etc. OVERRIDE_DIRDEPTH is a package-settable variable that specifies how far under ${WRKSRC} the various targets should look, and it defaults to "2". We preserve the meaning of the various *_OVERRIDE variables, so if they are defined, then their values supersede the OVERRIDE_DIRDEPTH mechanism. devel/tla will need to specially set OVERRIDE_DIRDEPTH to 3 (see log for revision 1.1857 for bsd.pkg.mk -- to be done in a separate commit.