socsvn commit: r238393 - soc2012/scher/par_ports/head/Mk

scher at FreeBSD.org scher at FreeBSD.org
Wed Jun 27 12:39:21 UTC 2012


Author: scher
Date: Wed Jun 27 12:39:17 2012
New Revision: 238393
URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=238393

Log:
  [new_feature] license checking for port's dependencies
  
  If any dependencies need to ask for comfirmation then port's build stops,
  and user is listed all ports that will ask for licences checking.
  Then a user will have to eval "make patch" for the above mentioned ports.
  Only if no dependencies require license confirmation parallel ports build will be allowed.
  

Modified:
  soc2012/scher/par_ports/head/Mk/bsd.parallel.mk
  soc2012/scher/par_ports/head/Mk/bsd.port.mk

Modified: soc2012/scher/par_ports/head/Mk/bsd.parallel.mk
==============================================================================
--- soc2012/scher/par_ports/head/Mk/bsd.parallel.mk	Wed Jun 27 11:59:57 2012	(r238392)
+++ soc2012/scher/par_ports/head/Mk/bsd.parallel.mk	Wed Jun 27 12:39:17 2012	(r238393)
@@ -484,6 +484,34 @@
 # Parallel targets section
 # TODO: outline intergation with bsd.port.mk
 #
+check-license-depends: check-license-message
+	@license_to_ask=""; \
+	dirs_to_process=""; \
+	for dir in $$(${ALL-DEPENDS-LIST}); do \
+		license_status=$$(cd $${dir}; ${MAKE} -V _LICENSE_STATUS); \
+		if [ "$${license_status}" = "ask" ]; then \
+			license_to_ask="$${license_to_ask} $$(cd $${dir}; ${MAKE} -V PKGNAME)"; \
+			dirs_to_process="$${dirs_to_process} $${dir}"; \
+		fi; \
+	done; \
+	if [ $${license_to_ask} ]; then \
+		${ECHO_CMD} "The following ports will ask for license conformation:"; \
+		for port in $${license_to_ask}; do \
+			${ECHO_CMD} "    $${port}"; \
+		done; \
+		${ECHO_CMD} "Unable to process in parallel way."; \
+		${ECHO_CMD} "Call:"; \
+		${ECHO_CMD} "    make -D_parv_WANT_NON_PARALLEL_BUILD patch"; \
+		${ECHO_CMD} "in the following directories:"; \
+		for dir in $${dirs_to_process}; do \
+			${ECHO_CMD} "    $${dir}"; \
+		done; \
+		exit 1; \
+	fi
+
+check-license-message:
+	@${ECHO_MSG} "===> Checking out licenses for ${PKGNAME} dependencies";
+
 locking-config-recursive: locking-config-message lock-port-dbdir config-recursive unlock-port-dbdir
 
 locking-config-message:

Modified: soc2012/scher/par_ports/head/Mk/bsd.port.mk
==============================================================================
--- soc2012/scher/par_ports/head/Mk/bsd.port.mk	Wed Jun 27 11:59:57 2012	(r238392)
+++ soc2012/scher/par_ports/head/Mk/bsd.port.mk	Wed Jun 27 12:39:17 2012	(r238393)
@@ -1154,6 +1154,11 @@
 
 ############### PAR_PORTS SPECIFIC COMMENT LINE ############### 
 
+# TODO: doc needed
+.if defined(_parv_WANT_NON_PARALLEL_BUILD)
+.undef _parv_WANT_PARALLEL_BUILD
+.endif
+
 .if defined(_parv_WANT_PARALLEL_BUILD)
 .include "${PORTSDIR}/Mk/bsd.parallel.mk"
 .endif
@@ -1195,6 +1200,11 @@
 	@${DO_NADA}
 .endif
 
+.if !target(check-license-depends)
+check-license-depends:
+	@${DO_NADA}
+.endif
+
 ############### ENDF OF PAR_PORTS SPECIFIC COMMENT LINE  ###############
 
 #
@@ -4348,7 +4358,7 @@
 				check-categories check-makevars check-desktop-entries \
 				check-depends check-active-build-conflicts identify-install-conflicts check-deprecated \
 				check-vulnerable check-license check-config buildanyway-message \
-				options-message locking-config-recursive seal
+				options-message locking-config-recursive check-license-depends
 
 _PKG_DEP=		check-sanity locking-config-recursive
 _PKG_SEQ=		pkg-depends


More information about the svn-soc-all mailing list