head 1.19; access; symbols pkgsrc-2023Q4:1.19.0.40 pkgsrc-2023Q4-base:1.19 pkgsrc-2023Q3:1.19.0.38 pkgsrc-2023Q3-base:1.19 pkgsrc-2023Q2:1.19.0.36 pkgsrc-2023Q2-base:1.19 pkgsrc-2023Q1:1.19.0.34 pkgsrc-2023Q1-base:1.19 pkgsrc-2022Q4:1.19.0.32 pkgsrc-2022Q4-base:1.19 pkgsrc-2022Q3:1.19.0.30 pkgsrc-2022Q3-base:1.19 pkgsrc-2022Q2:1.19.0.28 pkgsrc-2022Q2-base:1.19 pkgsrc-2022Q1:1.19.0.26 pkgsrc-2022Q1-base:1.19 pkgsrc-2021Q4:1.19.0.24 pkgsrc-2021Q4-base:1.19 pkgsrc-2021Q3:1.19.0.22 pkgsrc-2021Q3-base:1.19 pkgsrc-2021Q2:1.19.0.20 pkgsrc-2021Q2-base:1.19 pkgsrc-2021Q1:1.19.0.18 pkgsrc-2021Q1-base:1.19 pkgsrc-2020Q4:1.19.0.16 pkgsrc-2020Q4-base:1.19 pkgsrc-2020Q3:1.19.0.14 pkgsrc-2020Q3-base:1.19 pkgsrc-2020Q2:1.19.0.12 pkgsrc-2020Q2-base:1.19 pkgsrc-2020Q1:1.19.0.8 pkgsrc-2020Q1-base:1.19 pkgsrc-2019Q4:1.19.0.10 pkgsrc-2019Q4-base:1.19 pkgsrc-2019Q3:1.19.0.6 pkgsrc-2019Q3-base:1.19 pkgsrc-2019Q2:1.19.0.4 pkgsrc-2019Q2-base:1.19 pkgsrc-2019Q1:1.19.0.2 pkgsrc-2019Q1-base:1.19 pkgsrc-2018Q4:1.18.0.24 pkgsrc-2018Q4-base:1.18 pkgsrc-2018Q3:1.18.0.22 pkgsrc-2018Q3-base:1.18 pkgsrc-2018Q2:1.18.0.20 pkgsrc-2018Q2-base:1.18 pkgsrc-2018Q1:1.18.0.18 pkgsrc-2018Q1-base:1.18 pkgsrc-2017Q4:1.18.0.16 pkgsrc-2017Q4-base:1.18 pkgsrc-2017Q3:1.18.0.14 pkgsrc-2017Q3-base:1.18 pkgsrc-2017Q2:1.18.0.10 pkgsrc-2017Q2-base:1.18 pkgsrc-2017Q1:1.18.0.8 pkgsrc-2017Q1-base:1.18 pkgsrc-2016Q4:1.18.0.6 pkgsrc-2016Q4-base:1.18 pkgsrc-2016Q3:1.18.0.4 pkgsrc-2016Q3-base:1.18 pkgsrc-2016Q2:1.18.0.2 pkgsrc-2016Q2-base:1.18 pkgsrc-2016Q1:1.17.0.6 pkgsrc-2016Q1-base:1.17 pkgsrc-2015Q4:1.17.0.4 pkgsrc-2015Q4-base:1.17 pkgsrc-2015Q3:1.17.0.2 pkgsrc-2015Q3-base:1.17 pkgsrc-2015Q2:1.16.0.6 pkgsrc-2015Q2-base:1.16 pkgsrc-2015Q1:1.16.0.4 pkgsrc-2015Q1-base:1.16 pkgsrc-2014Q4:1.16.0.2 pkgsrc-2014Q4-base:1.16 pkgsrc-2014Q3:1.15.0.12 pkgsrc-2014Q3-base:1.15 pkgsrc-2014Q2:1.15.0.10 pkgsrc-2014Q2-base:1.15 pkgsrc-2014Q1:1.15.0.8 pkgsrc-2014Q1-base:1.15 pkgsrc-2013Q4:1.15.0.6 pkgsrc-2013Q4-base:1.15 pkgsrc-2013Q3:1.15.0.4 pkgsrc-2013Q3-base:1.15 pkgsrc-2013Q2:1.15.0.2 pkgsrc-2013Q2-base:1.15 pkgsrc-2013Q1:1.14.0.12 pkgsrc-2013Q1-base:1.14 pkgsrc-2012Q4:1.14.0.10 pkgsrc-2012Q4-base:1.14 pkgsrc-2012Q3:1.14.0.8 pkgsrc-2012Q3-base:1.14 pkgsrc-2012Q2:1.14.0.6 pkgsrc-2012Q2-base:1.14 pkgsrc-2012Q1:1.14.0.4 pkgsrc-2012Q1-base:1.14 pkgsrc-2011Q4:1.14.0.2 pkgsrc-2011Q4-base:1.14 pkgsrc-2011Q3:1.13.0.2 pkgsrc-2011Q3-base:1.13 pkgsrc-2011Q2:1.12.0.2 pkgsrc-2011Q2-base:1.12 pkgsrc-2011Q1:1.11.0.16 pkgsrc-2011Q1-base:1.11 pkgsrc-2010Q4:1.11.0.14 pkgsrc-2010Q4-base:1.11 pkgsrc-2010Q3:1.11.0.12 pkgsrc-2010Q3-base:1.11 pkgsrc-2010Q2:1.11.0.10 pkgsrc-2010Q2-base:1.11 pkgsrc-2010Q1:1.11.0.8 pkgsrc-2010Q1-base:1.11 pkgsrc-2009Q4:1.11.0.6 pkgsrc-2009Q4-base:1.11 pkgsrc-2009Q3:1.11.0.4 pkgsrc-2009Q3-base:1.11 pkgsrc-2009Q2:1.11.0.2 pkgsrc-2009Q2-base:1.11 pkgsrc-2009Q1:1.10.0.24 pkgsrc-2009Q1-base:1.10 pkgsrc-2008Q4:1.10.0.22 pkgsrc-2008Q4-base:1.10 pkgsrc-2008Q3:1.10.0.20 pkgsrc-2008Q3-base:1.10 cube-native-xorg:1.10.0.18 cube-native-xorg-base:1.10 pkgsrc-2008Q2:1.10.0.16 pkgsrc-2008Q2-base:1.10 cwrapper:1.10.0.14 pkgsrc-2008Q1:1.10.0.12 pkgsrc-2008Q1-base:1.10 pkgsrc-2007Q4:1.10.0.10 pkgsrc-2007Q4-base:1.10 pkgsrc-2007Q3:1.10.0.8 pkgsrc-2007Q3-base:1.10 pkgsrc-2007Q2:1.10.0.6 pkgsrc-2007Q2-base:1.10 pkgsrc-2007Q1:1.10.0.4 pkgsrc-2007Q1-base:1.10 jlam-pkgviews:1.10.0.2 jlam-pkgviews-base:1.10 pkgsrc-2006Q4:1.7.0.4 pkgsrc-2006Q4-base:1.7 pkgsrc-2006Q3:1.7.0.2 pkgsrc-2006Q3-base:1.7 pkgsrc-2006Q2:1.4.0.2 pkgsrc-2006Q2-base:1.4; locks; strict; comment @# @; 1.19 date 2019.01.22.14.29.44; author roy; state Exp; branches; next 1.18; commitid PJ2uOZq0pNViRM8B; 1.18 date 2016.04.10.15.58.02; author joerg; state Exp; branches; next 1.17; commitid 4OPBSqBKVmSA262z; 1.17 date 2015.09.07.19.23.47; author gdt; state Exp; branches; next 1.16; commitid E2MVJSGOGgDI7mAy; 1.16 date 2014.12.06.23.28.18; author agc; state Exp; branches; next 1.15; commitid lYHe9g566xJbj21y; 1.15 date 2013.05.23.13.18.56; author obache; state Exp; branches; next 1.14; commitid luDRDAjnnkXRVKQw; 1.14 date 2011.10.15.00.23.09; author reed; state Exp; branches; next 1.13; 1.13 date 2011.08.01.11.00.13; author apb; state Exp; branches; next 1.12; 1.12 date 2011.06.04.10.05.00; author obache; state Exp; branches; next 1.11; 1.11 date 2009.06.09.08.40.28; author joerg; state Exp; branches; next 1.10; 1.10 date 2007.03.09.03.28.58; author rillig; state Exp; branches; next 1.9; 1.9 date 2007.03.08.23.06.37; author rillig; state Exp; branches; next 1.8; 1.8 date 2007.02.20.11.17.03; author rillig; state Exp; branches; next 1.7; 1.7 date 2006.07.22.16.31.35; author jlam; state Exp; branches; next 1.6; 1.6 date 2006.07.07.21.24.28; author jlam; state Exp; branches; next 1.5; 1.5 date 2006.07.05.22.21.02; author jlam; state Exp; branches; next 1.4; 1.4 date 2006.06.05.22.49.44; author jlam; state Exp; branches; next 1.3; 1.3 date 2006.06.05.17.41.11; author jlam; state Exp; branches; next 1.2; 1.2 date 2006.06.05.17.21.55; author jlam; state Exp; branches; next 1.1; 1.1 date 2006.06.03.23.11.42; author jlam; state Exp; branches; next ; desc @@ 1.19 log @Call replace-names before SU This allows the replace target to work with OBJ on NFS where root isn't allowed. @ text @# $NetBSD: replace.mk,v 1.18 2016/04/10 15:58:02 joerg Exp $ # # Public targets: # # replace: # Updates a package in-place on the system. # It will acquire elevated privileges just-in-time. # # undo-replace: # Undoes the effects of a previous "make replace". # It will acquire elevated privileges just-in-time. # # # Private targets that must be defined by the package system format: # # _pkgformat-destdir-replace: # Updates a package in-place on the system. # # _pkgformat-undo-replace: # Undoes a previous "make _pkgformat-replace". # _pkgformat-destdir-undo-replace: # Undoes a previous "make _pkgformat-destdir-replace". .if ${_KEEP_BIN_PKGS} == "no" _REPLACE_TARGETS+= stage-package-create .else _REPLACE_TARGETS+= package .endif _REPLACE_TARGETS+= replace-message _REPLACE_TARGETS+= replace-names _REPLACE_TARGETS+= unprivileged-install-hook # # replace # .PHONY: replace .if defined(_PKGSRC_BARRIER) replace: ${_REPLACE_TARGETS} su-target .else replace: barrier .endif replace-message: .PHONY @@${PHASE_MSG} "Replacing for ${PKGNAME}" su-replace: .PHONY _pkgformat-destdir-replace MAKEFLAGS.su-replace= _UPDATE_RUNNING=yes MAKEFLAGS.su-replace+= PKGNAME_REQD=${PKGNAME_REQD:Q} # # undo-replace # undo-replace: .PHONY undo-replace-message su-target undo-replace-message: .PHONY @@${PHASE_MSG} "Undoing replacement for ${PKGNAME}" @@${WARNING_MSG} "experimental target - DATA LOSS MAY OCCUR." su-undo-replace: .PHONY _pkgformat-destdir-undo-replace MAKEFLAGS.su-undo-replace= _UPDATE_RUNNING=yes @ 1.18 log @Remove support for USE_DESTDIR=no. @ text @d1 1 a1 1 # $NetBSD: replace.mk,v 1.17 2015/09/07 19:23:47 gdt Exp $ d31 1 @ 1.17 log @Remove warning about 'make replace' being experimental. Lots of people have been using make replace for many years, at least since 2006. It hasn't been experimental for most of those years, and there have been no reports of "data loss". @ text @d1 1 a1 1 # $NetBSD: replace.mk,v 1.16 2014/12/06 23:28:18 agc Exp $ a15 3 # _pkgformat-replace: # Updates a package in-place on the system (USE_DESTDIR=no). # d17 1 a17 1 # Updates a package in-place on the system (USE_DESTDIR=yes). d25 1 a25 3 .if ${_USE_DESTDIR} == "no" _REPLACE_TARGETS+= ${_PKGSRC_BUILD_TARGETS} .elif ${_KEEP_BIN_PKGS} == "no" a46 3 .if ${_USE_DESTDIR} == "no" su-replace: .PHONY _pkgformat-replace .else a47 1 .endif a60 3 .if ${_USE_DESTDIR} == "no" su-undo-replace: .PHONY _pkgformat-undo-replace .else a61 1 .endif @ 1.16 log @Add a new definition, PKGSRC_KEEP_BIN_PKGS, which defaults to "no". This definition controls whether the binary package which is built during package installation will be copied to pkgsrc/packages/All. To retain binary packages in pkgsrc/packages/All, set PKGSRC_KEEP_BIN_PKGS=yes in environment or MAKECONF. If this is not set, binary packages will not be preserved after their WRKDIR is removed. This may not be what you want. To preserve the status quo since 2013/05/22, and just delete the binary package after it's built, the default for PKGSRC_KEEP_BIN_PKGS is "no", or it can be explicitly set. As reviewed on tech-pkg. @ text @d1 1 a1 1 # $NetBSD: replace.mk,v 1.14 2011/10/15 00:23:09 reed Exp $ a50 1 @@${WARNING_MSG} "experimental target - DATA LOSS MAY OCCUR." @ 1.15 log @prevent to generate binary package in ${PACKAGES} from the side effect of `install' with USE_DESTDIR=yes. This changes prevent to unwanted overwite of existing binary packages with test installation (`stage-install', `replace' & `undo-replace', and so on). To do both `install' and `package', you can still use `package-install' target, same as USE_DESTDIR=no. @ text @d30 2 d33 1 a33 1 _REPLACE_TARGETS+= stage-package-create @ 1.14 log @Rename "flavor" to "pkgformat". This is from Anton Panev's GSoC 2011 project to add RPM and DPKG support to pkgsrc. (I am not adding that further support in this commit.) This is just a rename of the existing functionality. Now it will be easy to test the GSoC work by simply putting in a single directory (such as "rpm" or "deb"). See http://addpackageforma.sourceforge.net/ for some details. This is from Anton's CVS, but I made some minor changes: - changed plural pkgformats to singular pkgformat (to be consistent) - fixed a few places (in comments) that were missed - catch up on some additions to flavor not in the pkgforma cvs: PKGSRC_SETENV and _flavor-destdir-undo-replace and undo-destdir-replace-install. @ text @d1 1 a1 1 # $NetBSD: replace.mk,v 1.13 2011/08/01 11:00:13 apb Exp $ d31 1 a31 1 _REPLACE_TARGETS+= package @ 1.13 log @Pass PKGNAME_REQD through to the make process on the other side of the "su" command. This fixes {cd math/py-networkx; env PYTHON_VERSION_DEFAULT=25 PKGNAME_REQD='py24-networkx-*' make replace;} @ text @d1 1 a1 1 # $NetBSD: replace.mk,v 1.12 2011/06/04 10:05:00 obache Exp $ d14 1 a14 1 # Private targets that must be defined by the package system flavor: d16 1 a16 1 # _flavor-replace: d19 1 a19 1 # _flavor-destdir-replace: d22 2 a23 2 # _flavor-undo-replace: # Undoes a previous "make _flavor-replace". d25 2 a26 2 # _flavor-destdir-undo-replace: # Undoes a previous "make _flavor-destdir-replace". d52 1 a52 1 su-replace: .PHONY _flavor-replace d54 1 a54 1 su-replace: .PHONY _flavor-destdir-replace d70 1 a70 1 su-undo-replace: .PHONY _flavor-undo-replace d72 1 a72 1 su-undo-replace: .PHONY _flavor-destdir-undo-replace @ 1.12 log @Add support undo-replace with USE_DESTDIR. fixes PR#43689. @ text @d1 1 a1 1 # $NetBSD: replace.mk,v 1.11 2009/06/09 08:40:28 joerg Exp $ d57 1 @ 1.11 log @Add support for using USE_DESTDIR=yes and replace together. Based on the patch send to tech-pkg in 2008, but less intrusive. @ text @d1 1 a1 1 # $NetBSD: replace.mk,v 1.10 2007/03/09 03:28:58 rillig Exp $ d25 3 d68 1 d70 3 @ 1.10 log @Fixed pkglint warnings. @ text @d1 1 a1 1 # $NetBSD: replace.mk,v 1.9 2007/03/08 23:06:37 rillig Exp $ d17 4 a20 1 # Updates a package in-place on the system. d25 1 d27 3 d48 1 d50 3 @ 1.9 log @Renamed replace-pkg to _flavor-replace and undo-replace-pkg to _flavor-undo-replace. The leading underscore makes it obvious that these targets are private, which saves redundant comments. @ text @d1 1 a1 1 # $NetBSD: replace.mk,v 1.8 2007/02/20 11:17:03 rillig Exp $ d30 1 a30 1 .PHONY: replace su-replace d37 1 a37 1 replace-message: d39 1 a39 1 @@${WARNING_MSG} "experimental target - DATA LOSS MAY OCCUR." d41 1 a41 1 su-replace: _flavor-replace d48 1 a48 2 .PHONY: undo-replace su-undo-replace undo-replace: undo-replace-message su-target d50 1 a50 1 undo-replace-message: d52 1 a52 1 @@${WARNING_MSG} "experimental target - DATA LOSS MAY OCCUR." d54 1 a54 1 su-undo-replace: _flavor-undo-replace @ 1.8 log @Cleaned up the code: - Targets that are not intended to be defined here (replace-pkg and undo-replace-pkg) are not defined here. (Sounds obvious, but apparently isn't.) - Targets that are intended to be defined here and only here (replace and undo-replace) do not need a multiple-definition protection. - Moved all comments to the top of the file. @ text @d1 1 a1 1 # $NetBSD: replace.mk,v 1.7 2006/07/22 16:31:35 jlam Exp $ d16 1 a16 1 # replace-pkg: d19 2 a20 2 # undo-replace-pkg: # Undoes a previous "make replace-pkg". d41 1 a41 1 su-replace: replace-pkg d55 1 a55 1 su-undo-replace: undo-replace-pkg @ 1.7 log @Modify the barrier so that we always invoke the recursive make process 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. @ text @d1 20 a20 1 # $NetBSD: replace.mk,v 1.6 2006/07/07 21:24:28 jlam Exp $ a21 6 ###################################################################### ### replace (PUBLIC) ###################################################################### ### replace is a public target to update a package in-place on the ### system. It will acquire elevated privileges just-in-time. ### d26 4 d31 1 a31 2 .if !target(replace) . if defined(_PKGSRC_BARRIER) d33 1 a33 1 . else a34 1 . endif d44 4 a47 6 ###################################################################### ### undo-replace (PUBLIC) ###################################################################### ### undo-replace is a public target to undo the effects of the ### "replace" target. It will acquire elevated privileges just-in-time. ### a48 1 .if !target(undo-replace) a49 1 .endif a56 22 ###################################################################### ### replace-pkg (PRIVATE, override) ###################################################################### ### replace-pkg updates a package in-place on the system. This should ### be overridden per package system flavor. ### .if !target(replace-pkg) replace-pkg: @@${DO_NADA} .endif ###################################################################### ### undo-replace-pkg (PRIVATE, override) ###################################################################### ### undo-replace-pkg undoes a "make replace". This should be overridden ### per package system flavor. ### .if !target(undo-replace-pkg) undo-replace-pkg: @@${DO_NADA} .endif @ 1.6 log @Rename _COOKIE variables to _COOKIE.. These are private variables so there are no user-visible changes. This change just makes it a little easier to write for loops. @ text @d1 1 a1 1 # $NetBSD: replace.mk,v 1.5 2006/07/05 22:21:02 jlam Exp $ d15 1 a15 1 . if exists(${_COOKIE.barrier}) @ 1.5 log @Flatten out recursive makes into a single re-invocation of make by 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". @ text @d1 1 a1 1 # $NetBSD: replace.mk,v 1.4 2006/06/05 22:49:44 jlam Exp $ d15 1 a15 1 . if exists(${_BARRIER_COOKIE}) @ 1.4 log @Use PHASE_MSG, STEP_MSG, WARNING_MSG, and ERROR_MSG in place of ECHO_MSG in various places. @ text @d1 1 a1 1 # $NetBSD: replace.mk,v 1.3 2006/06/05 17:41:11 jlam Exp $ d15 1 d17 3 @ 1.3 log @Allow overrides of the public targets, e.g. "install", "package", etc. if PKG_SKIP_REASON or PKG_FAIL_REASON is defined. This commit adds !target(...) guards around those target definitions to avoid "duplicate target definition" warnings. @ text @d1 1 a1 1 # $NetBSD: replace.mk,v 1.2 2006/06/05 17:21:55 jlam Exp $ d19 1 a19 1 @@${ECHO_MSG} "${_PKGSRC_IN}> Replacing for ${PKGNAME}" d37 1 a37 1 @@${ECHO_MSG} "${_PKGSRC_IN}> Undoing replacement for ${PKGNAME}" @ 1.2 log @Move definitions for UPDATE_TARGET and DEPENDS_TARGET closer to where they are used. Also, move UPDATE_RUNNING into the install module where it is used, and make it "private" by prepending with an underscore. @ text @d1 1 a1 1 # $NetBSD: replace.mk,v 1.1 2006/06/03 23:11:42 jlam Exp $ d14 1 d16 1 d32 1 d34 1 @ 1.1 log @First pass at implementing support for package system flavors other than pkgsrc's current one. This is an important lead-up to any project that redesigns the pkg_* tools in that it doesn't tie us to past design (mis)choices. This commit mostly deals with rearranging code, although there was a considerable amount of rewriting done in cases where I thought the code was somewhat messy and was difficult to understand. The design I chose for supporting multiple package system flavors is that the various depends, install, package, etc. modules would define default targets and variables that may be overridden in files from pkgsrc/mk/flavor/${PKG_FLAVOR}. The default targets would do the sensible thing of doing nothing, and pkgsrc infrastructure would rely on the appropriate things to be defined in pkgsrc/mk/flavor to do the real work. The pkgsrc/mk/flavor directory contains subdirectories corresponding to each package system flavor that we support. Currently, I only have "pkg" which represents the current pkgsrc-native package flavor. I've separated out most of the code where we make assumptions about the package system flavor, mostly either because we directly use the pkg_* tools, or we make assumptions about the package meta-data directory, or we directly manipulate the package meta-data files, and placed it into pkgsrc/mk/flavor/pkg. There are several new modules that have been refactored out of bsd.pkg.mk as part of these changes: check, depends, install, package, and update. Each of these modules has been slimmed down by rewriting them to avoid some recursive make calls. I've also religiously documented which targets are "public" and which are "private" so that users won't rely on reaching into pkgsrc innards to call a private target. The "depends" module is a complete overhaul of the way that we handle dependencies. There is now a separate "depends" phase that occurs before the "extract" phase where dependencies are installed. This differs from the old way where dependencies were installed just before extraction occurred. The reduce-depends.mk file is now replaced by a script that is invoked only once during the depends phase and is used to generate a cookie file that holds the full set of reduced dependencies. It is now possible to type "make depends" in a package directory and all missing dependencies will be installed. Future work on this project include: * Resolve the workflow design in anticipation of future work on staged installations where "package" conceptually happens before "install". * Rewrite the buildlink3 framework to not assume the use of the pkgsrc pkg_* tools. * Rewrite the pkginstall framework to provide a standard pkg_* tool to perform the actions, and allowing a purely declarative file per package to describe what actions need to be taken at install or deinstall time. * Implement support for the SVR4 package flavor. This will be proof that the appropriate abstractions are in place to allow using a completely different set of package management tools. @ text @d1 1 a1 1 # $NetBSD$ d21 1 a21 1 MAKEFLAGS.su-replace= UPDATE_RUNNING=yes d37 1 a37 1 MAKEFLAGS.su-undo-replace= UPDATE_RUNNING=yes @