On 1/17/10, Martin Wilke <m...@freebsd.org> wrote:
> On Sun, 17 Jan 2010 11:44:05 +0100
> Pav Lucistnik <p...@freebsd.org> wrote:
>
>> Greg Larkin píše v so 16. 01. 2010 v 18:02 -0500:

>>
>> I will agree that `portupgrade -o` is way too useful feature.
>> I'd vote for reverting to the old behaviour.
>>

portupgrade and other tools can easily be patched to work with  the
new behavior, by defining DISABLE_CONFLICTS for the targets preceding
installation.  Since the new behavior is generally more efficient, and
safer, and since the people who will need to defer the check for some
reason are in the minority, I vote that we keep the new behavior, and
offer a chance to opt out of it with something like the attached
patch. I didn't add any extra warnings, since I assumed that those who
choose to defer the checks already know that this may lead to problems
in some cases.

b.



>> > I thought portmgr might have some insight into additional reasons
>> > for making the change, such as fixing a problem with pointyhat
>> > builds, etc. At the moment, I'm neutral on the change, since it
>> > hasn't caused me any grief, but I did some research for the folks
>> > who posted the original questions.
>>
>> It was done because someone thought it is a good idea and submitted a
>> PR about it.
>>
>
> Howdy,
>
> For some ports is the conflict check too late see example here.
>
> http://lists.freebsd.org/pipermail/freebsd-gecko/2009-December/000577.html
>
> I agree that we need a new pre-fetch hook in bsd.port.mk if a conflict
> present is. But that need a bit work and it is on my todo list...
>
> - Martin
>
--- bsd.port.mk.orig    2010-01-17 09:46:09.000000000 -0500
+++ bsd.port.mk 2010-01-17 10:36:02.000000000 -0500
@@ -541,6 +541,10 @@
 #                                pattern meta-characters "*", "?", "[", "]", 
and "!".
 #                                Example: apache*-1.2* apache*-1.3.[012345] 
apache-*+ssl_*
 #
+# LATE_CONFLICTS       - If set, this port will defer the check for conflicts 
until immediately
+#                      before the install target, to allow conflicting ports 
to be fetched and built.
+#                      This may expose build errors due to the presence of 
conflicting ports.
+#
 # Various directory definitions and variables to control them.
 # You rarely need to redefine any of these except WRKSRC and NO_WRKSUBDIR.
 #
@@ -4253,9 +4257,17 @@
 .else
 _CHROOT_SEQ=
 .endif
+.if defined(LATE_CONFLICTS)
+_EARLY_CONFLICT_CHECK=
+_LATE_CONFLICT_CHECK=  check-conflicts
+.else
+_EARLY_CONFLICT_CHECK= check-conflicts
+_LATE_CONFLICT_CHECK=
+.endif
+
 _SANITY_SEQ=   ${_CHROOT_SEQ} pre-everything check-makefile \
                                check-categories check-makevars 
check-desktop-entries \
-                               check-conflicts check-depends check-deprecated \
+                               ${_EARLY_CONFLICT_CHECK} check-depends 
check-deprecated \
                                check-vulnerable buildanyway-message 
options-message
 _FETCH_DEP=            check-sanity
 _FETCH_SEQ=            fetch-depends pre-fetch pre-fetch-script \
@@ -4275,8 +4287,8 @@
 _BUILD_SEQ=            build-message pre-build pre-build-script do-build \
                                post-build post-build-script
 _INSTALL_DEP=  build
-_INSTALL_SEQ=  install-message run-depends lib-depends apply-slist pre-install 
\
-                               pre-install-script generate-plist 
check-already-installed
+_INSTALL_SEQ=  install-message ${_LATE_CONFLICT_CHECK} run-depends lib-depends 
\
+                               apply-slist pre-install pre-install-script 
generate-plist check-already-installed
 _INSTALL_SUSEQ= check-umask install-mtree pre-su-install \
                                pre-su-install-script create-users-groups 
do-install \
                                install-desktop-entries post-install 
post-install-script \
_______________________________________________
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"

Reply via email to