MYVERSION=3.3.0
COMPATIBLE_VERSIONS='^(3\.[1-3]\.[0-9]+)$'
# Template for development versions
-MYVERSION=3.2.1+toward_3.3.0_20160630210812
+MYVERSION=3.2.1+toward_3.3.0_20160701234032
COMPATIBLE_VERSIONS='^(3\.[1-3]\.[0-9]+\+toward_3\.[1-3]\.[0-9]+_[0-9]+|3\.[1-3]\.[0-9]+)$'
MYPREFIX=`dirname "\`dirname \"$0\"\`" | sed 's|/bin$||'`
MYPREFIX=${MYPREFIX:-/usr/local}
local dbrequires_valesc
message_section_title "Removing duplicated items in dependents lists"
program_exec_restartable_loop_operation make_dependents_lists_unique
- program_exec_restartable_loop_operation make_ignored_dependents_lists_unique
message_echo
}
program_exec_and_record_completion MAKE_DEPENDENTS_LISTS_UNIQUE
+# Remove duplicated lines in ignored dependents lists
+PROGRAM_DEPENDS='CONVERT_REQUIREMENTS_LIST INSPECT_DEPENDENTS'
+_program_exec_restartable_loop_operation__routine ()
+{
+ local dbpath tag level dstdb
+ dstdb=$1
+ cat "$dstdb" "$dstdb.raw" 2> /dev/null | sort -u > $dstdb.tmp
+ mv "$dstdb.tmp" "$dstdb"
+ rm -f "$dstdb.raw"
+}
+_program_exec_and_record_completion__operation ()
+{
+ local dbrequires_valesc
+ message_section_title "Removing duplicated items in ignored dependents lists"
+ program_exec_restartable_loop_operation make_ignored_dependents_lists_unique
+ message_echo
+}
+program_exec_and_record_completion MAKE_IGNORED_DEPENDENTS_LISTS_UNIQUE
+
# Preparation of target attribute information
for _TARGET_ATTR_INFO_table in requirements dependents itself
do
done
# Post-process after the preparation of target attribute information
-PROGRAM_DEPENDS='MAKE_DEPENDENTS_LISTS_UNIQUE TARGET_ATTR_INFO:requirements TARGET_ATTR_INFO:dependents'
+PROGRAM_DEPENDS='MAKE_DEPENDENTS_LISTS_UNIQUE MAKE_IGNORED_DEPENDENTS_LISTS_UNIQUE TARGET_ATTR_INFO:requirements TARGET_ATTR_INFO:dependents'
_program_exec_and_record_completion__operation ()
{
message_section_title "Post-process after the preparation of target attribute information"
# Inspection of necessary upgrades
for _NECESSARY_UPDATES_level in direct full
do
- PROGRAM_DEPENDS='INSPECT_NECESSITY INSPECT_ALL_DEPENDENCIES MAKE_DEPENDENTS_LISTS_UNIQUE'
+ PROGRAM_DEPENDS='INSPECT_NECESSITY INSPECT_ALL_DEPENDENCIES MAKE_DEPENDENTS_LISTS_UNIQUE MAKE_IGNORED_DEPENDENTS_LISTS_UNIQUE'
_program_exec_restartable_loop_operation__routine ()
{
local markerpath level dbpath origin tag
# Preparation for inspection of new leaf ports
if [ ! -e "${DBDIR}/inspected_ports_only_partially" ]
then
- PROGRAM_DEPENDS='INSPECT_ALL_DEPENDENCIES MAKE_DEPENDENTS_LISTS_UNIQUE PARSE_CONF'
+ PROGRAM_DEPENDS='INSPECT_ALL_DEPENDENCIES MAKE_DEPENDENTS_LISTS_UNIQUE MAKE_IGNORED_DEPENDENTS_LISTS_UNIQUE PARSE_CONF'
_program_exec_and_record_completion__operation ()
{
message_section_title "Preparation for inspection of new leaf ports"
# Inspection of new primary leaf ports
if [ ! -e "${DBDIR}/inspected_ports_only_partially" ]
then
- PROGRAM_DEPENDS='INSPECT_ALL_DEPENDENCIES MAKE_DEPENDENTS_LISTS_UNIQUE PREPARE_INSPECT_LEAF_PORTS PARSE_CONF'
+ PROGRAM_DEPENDS='INSPECT_ALL_DEPENDENCIES MAKE_DEPENDENTS_LISTS_UNIQUE MAKE_IGNORED_DEPENDENTS_LISTS_UNIQUE PREPARE_INSPECT_LEAF_PORTS PARSE_CONF'
_program_exec_restartable_loop_operation__routine ()
{
local origin origin_ini origin_esc dbpath origin_req
fi
if [ -e "$dbpath/requirements.all.full" -o -e "$dbpath/ignored_requirements.all" ]
then
- grep -v -E -f "${DBDIR}/conf/HOLD_PORTS.grep_pattern" "$dbpath/requirements.all.full" "$dbpath/ignored_requirements.all" | \
+ cat "$dbpath/requirements.all.full" "$dbpath/ignored_requirements.all" 2> /dev/null | \
+ grep -v -E -f "${DBDIR}/conf/HOLD_PORTS.grep_pattern" | \
fileedit_add_lines_if_new "${DBDIR}/stage.loop_list/leaf_ports_secondary_candidates" || :
fi
fileedit_add_a_line_if_new "^$origin_esc$" "${DBDIR}/grep.leaf_ports.pattern"
# Inspection of requirements of new leaf ports
if [ ! -e "${DBDIR}/inspected_ports_only_partially" ]
then
- PROGRAM_DEPENDS='INSPECT_ALL_DEPENDENCIES MAKE_DEPENDENTS_LISTS_UNIQUE INSPECT_PRIMARY_LEAF_PORTS PARSE_CONF'
+ PROGRAM_DEPENDS='INSPECT_ALL_DEPENDENCIES MAKE_DEPENDENTS_LISTS_UNIQUE MAKE_IGNORED_DEPENDENTS_LISTS_UNIQUE INSPECT_PRIMARY_LEAF_PORTS PARSE_CONF'
_program_exec_and_record_completion__operation ()
{
local num_leaves num_leaves_prev num_inspect num_leaves_new
program_exec_and_record_completion CLEANUP_REINST_STATUS
# Completion of building the temporary database
-PROGRAM_DEPENDS='REDO_INIT SETUP_REINST_TODO CLEANUP_REINST_STATUS PARSE_CONF INSPECT_ALL_DEPENDENCIES NECESSARY_UPDATES:direct NECESSARY_UPDATES:full PARSE_TARGET_ATTR_INFO MAKE_DEPENDENTS_LISTS_UNIQUE COLLECT_LEAF_PORTS_TO_DELETE'
+PROGRAM_DEPENDS='REDO_INIT SETUP_REINST_TODO CLEANUP_REINST_STATUS PARSE_CONF INSPECT_ALL_DEPENDENCIES NECESSARY_UPDATES:direct NECESSARY_UPDATES:full PARSE_TARGET_ATTR_INFO MAKE_DEPENDENTS_LISTS_UNIQUE MAKE_IGNORED_DEPENDENTS_LISTS_UNIQUE COLLECT_LEAF_PORTS_TO_DELETE'
_program_exec_and_record_completion__operation ()
{
message_section_title "The temporary database is completely built up"