Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 19 Mar 2002 07:00:21 +0100 (CET)
From:      dirk.meyer@dinoex.sub.org
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/36083: Installs existing packages for dependecies
Message-ID:  <200203190600.g2J60Lvk051442@home.dinoex.sub.org>

next in thread | raw e-mail | index | archive | help

>Number:         36083
>Category:       ports
>Synopsis:       Installs existing packages for dependecies
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Mon Mar 18 22:10:01 PST 2002
>Closed-Date:
>Last-Modified:
>Originator:     Dirk Meyer
>Release:        FreeBSD 4.4-STABLE i386
>Organization:
privat
>Environment:
System: FreeBSD 4.5-STABLE i386

>Description:

	While package build, dependencies are always build.
	This patch installs an existing package with
	correct version.

>How-To-Repeat:

	This patch installs an existing package with correct version.
	to activate add to /etc/make.conf: USE_DEPENDED_PACKAGES=yes 

	This feature might even be on by default.

>Fix:

	apply a patch:

--- bsd.port.mk.orig	Sun Mar 17 00:37:02 2002
+++ bsd.port.mk	Tue Mar 19 06:56:27 2002
@@ -522,6 +522,8 @@
 #				  when you noticed the distfile you just fetched has
 #				  a different checksum and you intend to verify if
 #				  the port still works with it.
+# USE_DEPENDED_PACKAGES - Install dependencies from existing packages instead
+#						  of building it again.
 
 # Start of pre-makefile section.
 .if !defined(AFTERPORTMK)
@@ -1217,6 +1219,7 @@
 .endif
 
 PKG_CMD?=		/usr/sbin/pkg_create
+PKG_ADD?=	/usr/sbin/pkg_add
 PKG_DELETE?=	/usr/sbin/pkg_delete
 PKG_INFO?=		/usr/sbin/pkg_info
 .if !defined(PKG_ARGS)
@@ -2974,7 +2977,13 @@
 			if [ ! -d "$$dir" ]; then \
 				${ECHO_MSG} "     >> No directory for $$prog.  Skipping.."; \
 			else \
-				(cd $$dir; ${MAKE} $$target $$depends_args) ; \
+				subpkgfile=`(cd $$dir; ${MAKE} $$depends_args -V PKGFILE)`; \
+				if [ -r "$${subpkgfile}" -a X${USE_DEPENDED_PACKAGES} != "X" ]; then \
+					${ECHO_MSG} "===>   Installing existing package $${subpkgfile}"; \
+					${PKG_ADD} $${subpkgfile}; \
+				else \
+					(cd $$dir; ${MAKE} $$target $$depends_args) ; \
+				fi ; \
 				${ECHO_MSG} "===>   Returning to build of ${PKGNAME}"; \
 			fi; \
 		fi; \
>Release-Note:
>Audit-Trail:
>Unformatted:

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200203190600.g2J60Lvk051442>