socsvn commit: r237563 - soc2012/scher/par_ports/head/Mk
scher at FreeBSD.org
scher at FreeBSD.org
Tue Jun 12 19:43:16 UTC 2012
Author: scher
Date: Tue Jun 12 19:43:13 2012
New Revision: 237563
URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=237563
Log:
[fixed] more detailed debugging output for parallel dependency builds.
dependencies' build output is splitted into separate files.
Modified:
soc2012/scher/par_ports/head/Mk/bsd.port.mk
Modified: soc2012/scher/par_ports/head/Mk/bsd.port.mk
==============================================================================
--- soc2012/scher/par_ports/head/Mk/bsd.port.mk Tue Jun 12 18:19:46 2012 (r237562)
+++ soc2012/scher/par_ports/head/Mk/bsd.port.mk Tue Jun 12 19:43:13 2012 (r237563)
@@ -5053,18 +5053,20 @@
${PKG_ADD} $${subpkgfile}; \
fi; \
else \
- (cd $$dir; ${MAKE} -DINSTALLS_DEPENDS $$target $$depends_args) & spawned=$$!; \
+ log_file="/tmp/ports_logs/dep-$${dir\#\#*/}-parent-${PORTNAME}.log"; \
+ (cd $$dir; ${MAKE} -DINSTALLS_DEPENDS $$target $$depends_args 2>> $${log_file} >> $${log_file} ) & spawned=$$!; \
fi; \
else \
- (cd $$dir; ${MAKE} -DINSTALLS_DEPENDS $$target $$depends_args) & spawned=$$!; \
+ log_file="/tmp/ports_logs/dep-$${dir\#\#*/}-parent-$${PORTNAME}.log"; \
+ (cd $$dir; ${MAKE} -DINSTALLS_DEPENDS $$target $$depends_args 2>> $${log_file} >> $${log_file} ) & spawned=$$!; \
fi; \
_PROCESS_ACTIVE_BUILDS= \
- echo "debugging_out_here: --- ENTER _PROCESS_ACTIVE_BUILDS SECTION " > ${PORTSDIR}/tmp/log; \
+ echo "---- dependency output ----- : --- ENTER _PROCESS_ACTIVE_BUILDS SECTION "; \
while true; do \
builds_num=$$( ${ECHO_CMD} $${active_builds} | wc -w ); \
if [ $${builds_num} -lt ${_parv_PARALLEL_BUILDS_NUMBER} ] && [ $${\#depends} -ne 0 ]; then \
- echo "debugging_out_here: WE CAN START ANOTHER PAR BUILD " > ${PORTSDIR}/tmp/log; \
+ echo "---- dependency output ----- : WE CAN START ANOTHER PAR BUILD "; \
break; \
fi; \
if [ $${builds_num} -eq 0 ] && [ $${\#depends} -eq 0 ]; then \
@@ -5077,12 +5079,12 @@
ps -p $${pid} > /dev/null || { \
wait $${pid} && status=$$? || status=$$?; \
if [ $${status} -eq 0 ]; then \
- echo "debugging_out_here: SOME DEP IS INSTALLED ($${dep}) " > ${PORTSDIR}/tmp/log; \
- echo "debugging_out_here: WAS _$${active_builds}_ " > ${PORTSDIR}/tmp/log; \
+ echo "---- dependency output ----- : SOME DEP IS INSTALLED ($${dep}) "; \
+ echo "---- dependency output ----- : ACTIVE BUILDS WAS _$${active_builds}_ "; \
active_builds="$${active_builds%%$${build}*} $${active_builds\#\#*$${build}}"; \
active_builds=$$( echo "$${active_builds}" | sed 's/^[[:space:]]*//' | sed 's/[[:space:]]*$$//' ); \
builds_num=$$(( $${builds_num} - 1 )); \
- echo "debugging_out_here: NOW _$${active_builds}_ " > ${PORTSDIR}/tmp/log; \
+ echo "---- dependency output ----- : ACTIVE BUILDS NOW _$${active_builds}_ "; \
if [ ${.TARGET} = "lib-depends" ]; then \
lib=$${dep%%:*}; \
pattern="`${ECHO_CMD} $$lib | ${SED} -E -e 's/\./\\\\./g' -e 's/(\\\\)?\+/\\\\+/g'`"; \
@@ -5092,19 +5094,20 @@
fi; \
fi; \
elif [ $${status} -eq ${_parv_MAKE_LOCK_EXIT_STATUS} ]; then \
- echo "debugging_out_here: SOME DEP IS LOCKED ($${dep}) " > ${PORTSDIR}/tmp/log; \
- echo "debugging_out_here: WAS _$${active_builds}_ " > ${PORTSDIR}/tmp/log; \
+ echo "---- dependency output ----- : SOME DEP IS LOCKED ($${dep}) "; \
+ echo "---- dependency output ----- : ACTIVE BUILDS WAS _$${active_builds}_ "; \
active_builds="$${active_builds%%$${build}*} $${active_builds\#\#*$${build}}"; \
active_builds=$$( echo "$${active_builds}" | sed 's/^[[:space:]]*//' | sed 's/[[:space:]]*$$//' ); \
builds_num=$$(( $${builds_num} - 1 )); \
- echo "debugging_out_here: NOW _$${active_builds}_ " > ${PORTSDIR}/tmp/log; \
- echo "debugging_out_here: ADD IT BACK DO DEPENDS LIST " > ${PORTSDIR}/tmp/log; \
- echo "debugging_out_here: WAS _$${depends}_ " > ${PORTSDIR}/tmp/log; \
+ echo "---- dependency output ----- : ACTIVE BUILDS NOW _$${active_builds}_ "; \
+ echo "---- dependency output ----- : ADD IT BACK DO DEPENDS LIST "; \
+ echo "---- dependency output ----- : DEPENDS WAS _$${depends}_ "; \
depends="$${depends} $${dep}"; \
depends=$$( echo "$${depends}" | sed 's/^[[:space:]]*//' | sed 's/[[:space:]]*$$//' ); \
- echo "debugging_out_here: NOW _$${depends}_ " > ${PORTSDIR}/tmp/log; \
+ echo "---- dependency output ----- : DEPENDS NOW _$${depends}_ "; \
else \
- ${ECHO_CMD} "Errors occured while building a dependency."; \
+ ${ECHO_CMD} "Errors occured while building a dependency (PID - $${pid}): $${dep}"; \
+ ${ECHO_CMD} "Checkout it's log"; \
${ECHO_CMD} "Terminating..."; \
exit 1; \
fi; \
@@ -5112,11 +5115,11 @@
done; \
if { [ $${builds_num} -eq ${_parv_PARALLEL_BUILDS_NUMBER} ] || \
( [ $${builds_num} -gt 0 ] && [ $${\#depends} -eq 0 ] ); }; then \
- echo "debugging_out_here: CAN'T SPAWN MORE DEPS! SLEEP... " > ${PORTSDIR}/tmp/log; \
+ echo "---- dependency output ----- : CAN'T SPAWN MORE DEPS! SLEEP... "; \
sleep 2; \
fi; \
done; \
- echo "debugging_out_here: --- LEAVE _PROCESS_ACTIVE_BUILDS SECTION " > ${PORTSDIR}/tmp/log
+ echo "---- dependency output ----- : --- LEAVE _PROCESS_ACTIVE_BUILDS SECTION "
_TERMINATE_PROCESS_TREE= \
${_dparv_START_OUTPUT}; \
@@ -5152,12 +5155,14 @@
depends=`${ECHO_CMD} "${${deptype}_DEPENDS}"`; \
depends=$$( echo "$${depends}" | sed 's/^[[:space:]]*//' | sed 's/[[:space:]]*$$//' ); \
active_builds=""; \
- echo "debugging_out_here: ------------------------- " > ${PORTSDIR}/tmp/log; \
- echo "debugging_out_here: ALL DEPS - $${depends}" > ${PORTSDIR}/tmp/log; \
+ echo "---- dependency output ----- : ----------START BUILDING DEPS---------- "; \
+ echo "---- dependency output ----- : ALL DEPS - $${depends}"; \
while [ $${#depends} -ne 0 ]; do \
i=$${depends%% *}; \
- echo "debugging_out_here: ----- NEW STEP -----" >> ${PORTSDIR}/tmp/log; \
- echo "debugging_out_here CURRENT DEP $${i}" >> ${PORTSDIR}/tmp/log; \
+ echo "---- dependency output ----- : ----- NEW STEP -----" ; \
+ echo "---- dependency output ----- DEPS TO BUILD _$${depends}_" ; \
+ echo "---- dependency output ----- ACTIVE BUILDS _$${active_builds}_" ; \
+ echo "---- dependency output ----- CURRENT DEP $${i}" ; \
prog=$${i%%:*}; \
if [ -z "$$prog" ]; then \
${ECHO_MSG} "Error: there is an empty port dependency in ${deptype}_DEPENDS."; \
@@ -5245,7 +5250,7 @@
( cd $${dir}; ${MAKE} check-lock ) || { \
status=$$?; \
if [ $${status} -eq ${_parv_MAKE_LOCK_EXIT_STATUS} ]; then \
- echo "debugging_out_here: LOCKED $${i}" >> ${PORTSDIR}/tmp/log; \
+ echo "---- dependency output ----- : LOCKED $${i}" ; \
${ECHO_CMD} $${prog} may be installing now.; \
notfound=${_parv_ON_LOCK_EXIT_STATUS}; \
else \
@@ -5263,26 +5268,30 @@
else \
${_INSTALL_DEPENDS} \
if [ $${spawned} ]; then \
- echo "debugging_out_here: SPAWNED PID $${spawned}" > ${PORTSDIR}/tmp/log; \
+ echo "---- dependency output ----- : SPAWNED PID $${spawned}"; \
active_builds="$${active_builds} $${spawned}:$${i}"; \
depends="$${depends%%$${i}*} $${depends##*$${i}}"; \
depends=$$( echo "$${depends}" | sed 's/^[[:space:]]*//' | sed 's/[[:space:]]*$$//' ); \
spawned=""; \
- echo "debugging_out_here: AFTER TRANSFER TO ACTIVE BUILDS _$${depends}_" >> ${PORTSDIR}/tmp/log; \
+ echo "---- dependency output ----- : ADD TO ACTIVE BUILDS _$${active_builds}_" ; \
+ echo "---- dependency output ----- : AFTER TRANSFER TO ACTIVE BUILDS _$${depends}_" ; \
fi; \
fi; \
elif [ $${notfound} -eq 0 ]; then \
depends="$${depends%%$${i}*} $${depends##*$${i}}"; \
depends=$$( echo "$${depends}" | sed 's/^[[:space:]]*//' | sed 's/[[:space:]]*$$//' ); \
- echo "debugging_out_here: AFTER DELETE _$${depends}_" >> ${PORTSDIR}/tmp/log; \
+ echo "---- dependency output ----- : AFTER FROM DEPS DELETE _$${depends}_" ; \
elif [ $${notfound} -eq ${_parv_ON_LOCK_EXIT_STATUS} ]; then \
if [ $$( ${ECHO_CMD} $${depends} | wc -w ) -gt 1 ]; then \
depends="$${depends#* } $${depends%% *}"; \
depends=$$( echo "$${depends}" | sed 's/^[[:space:]]*//' | sed 's/[[:space:]]*$$//' ); \
- echo "debugging_out_here: AFTER CHANGE $${depends}" >> ${PORTSDIR}/tmp/log; \
+ echo "---- dependency output ----- : AFTER ROUND CHANGE $${depends}" ; \
fi; \
fi; \
${_PROCESS_ACTIVE_BUILDS}; \
+ echo "---- dependency output ----- : ----- END OF STEP -----" ; \
+ echo "---- dependency output ----- DEPS TO BUILD _$${depends}_" ; \
+ echo "---- dependency output ----- ACTIVE BUILDS _$${active_builds}_" ; \
done
.endif
.else
@@ -5298,12 +5307,14 @@
depends=`${ECHO_CMD} "${LIB_DEPENDS}"`; \
depends=$$( echo "$${depends}" | sed 's/^[[:space:]]*//' | sed 's/[[:space:]]*$$//' ); \
active_builds=""; \
- echo "debugging_out_here: ------------------------- " > ${PORTSDIR}/tmp/log; \
- echo "debugging_out_here: ALL DEPS - $${depends}" > ${PORTSDIR}/tmp/log; \
+ echo "---- dependency output ----- : ----------START BUILDING LIB DEPS---------- "; \
+ echo "---- dependency output ----- : ALL DEPS - $${depends}"; \
while [ $${#depends} -ne 0 ]; do \
i=$${depends%% *}; \
- echo "debugging_out_here: ----- NEW STEP -----" >> ${PORTSDIR}/tmp/log; \
- echo "debugging_out_here CURRENT DEP $${i}" >> ${PORTSDIR}/tmp/log; \
+ echo "---- dependency output ----- : ----- NEW STEP -----" ; \
+ echo "---- dependency output ----- DEPS TO BUILD _$${depends}_" ; \
+ echo "---- dependency output ----- ACTIVE BUILDS _$${active_builds}_" ; \
+ echo "---- dependency output ----- CURRENT DEP $${i}" ; \
lib=$${i%%:*}; \
pattern="`${ECHO_CMD} $$lib | ${SED} -E -e 's/\./\\\\./g' -e 's/(\\\\)?\+/\\\\+/g'`"\
dir=$${i#*:}; \
@@ -5334,7 +5345,7 @@
( cd $${dir}; ${MAKE} check-lock ) || { \
status=$$?; \
if [ $${status} -eq ${_parv_MAKE_LOCK_EXIT_STATUS} ]; then \
- echo "debugging_out_here: LOCKED $${i}" >> ${PORTSDIR}/tmp/log; \
+ echo "---- dependency output ----- : LOCKED $${i}" ; \
${ECHO_CMD} $${lib} may be installing now.; \
notfound=${_parv_ON_LOCK_EXIT_STATUS}; \
else \
@@ -5352,26 +5363,30 @@
else \
${_INSTALL_DEPENDS} \
if [ $${spawned} ]; then \
- echo "debugging_out_here: SPAWNED PID $${spawned}" > ${PORTSDIR}/tmp/log; \
+ echo "---- dependency output ----- : SPAWNED PID $${spawned}"; \
active_builds="$${active_builds} $${spawned}:$${i}"; \
depends="$${depends%%$${i}*} $${depends##*$${i}}"; \
depends=$$( echo "$${depends}" | sed 's/^[[:space:]]*//' | sed 's/[[:space:]]*$$//' ); \
spawned=""; \
- echo "debugging_out_here: AFTER TRANSFER TO ACTIVE BUILDS _$${depends}_" >> ${PORTSDIR}/tmp/log; \
+ echo "---- dependency output ----- : ADD TO ACTIVE BUILDS _$${active_builds}_" ; \
+ echo "---- dependency output ----- : AFTER TRANSFER TO ACTIVE BUILDS _$${depends}_" ; \
fi; \
fi; \
elif [ $${notfound} -eq 0 ]; then \
depends="$${depends%%$${i}*} $${depends##*$${i}}"; \
depends=$$( echo "$${depends}" | sed 's/^[[:space:]]*//' | sed 's/[[:space:]]*$$//' ); \
- echo "debugging_out_here: AFTER DELETE _$${depends}_" >> ${PORTSDIR}/tmp/log; \
+ echo "---- dependency output ----- : AFTER FROM DEPS DELETE _$${depends}_" ; \
elif [ $${notfound} -eq ${_parv_ON_LOCK_EXIT_STATUS} ]; then \
if [ $$( ${ECHO_CMD} $${depends} | wc -w ) -gt 1 ]; then \
depends="$${depends#* } $${depends%% *}"; \
depends=$$( echo "$${depends}" | sed 's/^[[:space:]]*//' | sed 's/[[:space:]]*$$//' ); \
- echo "debugging_out_here: AFTER CHANGE $${depends}" >> ${PORTSDIR}/tmp/log; \
+ echo "---- dependency output ----- : AFTER ROUND CHANGE $${depends}" ; \
fi; \
fi; \
${_PROCESS_ACTIVE_BUILDS}; \
+ echo "---- dependency output ----- : ----- END OF STEP -----" ; \
+ echo "---- dependency output ----- DEPS TO BUILD _$${depends}_" ; \
+ echo "---- dependency output ----- ACTIVE BUILDS _$${active_builds}_" ; \
done
.endif
More information about the svn-soc-all
mailing list