Skip to content
Snippets Groups Projects
Select Git revision
  • 994c94918a73a673f25a65fd6795fd89e19decec
  • v2018.2.x default
  • experimental
  • master
  • v2021.1.2-ffs
  • v2021.1.1-ffs
  • nrb/gluon-master-cpe510
  • v2021.1-ffs
  • v2020.2.3-ffs
  • nrbffs/fastd-remove-delay
  • v2020.2.2-ffs
  • v2020.2.1-ffs
  • v2020.2-ffs
  • v2020.2.x
  • v2020.1.3-ffs
  • v2020.1.1-ffs
  • v2020.1-ffs
  • v2019.1.2-ffs
  • v2019.1.1-ffs
  • nrb/test-radv-filter
  • v2019.1-ffs
  • nrbffs/netgear-ex6120
  • v2021.1.2-ffs0.2
  • v2021.1.2-ffs0.1
  • v2021.1.1-ffs0.4
  • v2021.1.1-ffs0.3
  • v2021.1.1-ffs0.2
  • v2021.1.1-ffs0.1
  • v2021.1-ffs0.1
  • v2020.2.3-ffs0.3
  • v2020.2.3-ffs0.2
  • v2020.2.3-ffs0.1
  • v2020.2.2-ffs0.1
  • v2020.2.1-ffs0.1
  • v2020.2-ffs0.1
  • v2020.2
  • v2020.2.x-ffs0.1
  • v2020.1.3-ffs0.1
  • v2020.1.1-ffs0.1
  • v2020.1-ffs0.1
  • v2019.1.2-ffs0.1
  • v2019.1.1-ffs0.1
42 results

Makefile

Blame
  • Forked from firmware / FFS Gluon
    Source project has a limited visibility.
    depdot.sh 964 B
    #!/usr/bin/env bash
    
    # Script to output the dependency graph of Gluon's packages
    # Limitations:
    #  * Doesn't show dependencies through virtual packages correctly
    
    set -e
    shopt -s nullglob
    
    
    pushd "$(dirname "$0")/.." >/dev/null
    
    
    escape_name() {
    	echo -n "_$1" | tr -c '[:alnum:]' _
    }
    
    print_node() {
    	echo "$(escape_name "$1") [label=\"$1\", shape=box];"
    }
    
    print_dep() {
    	echo "$(escape_name "$1") -> $(escape_name "$2");"
    }
    
    print_package() {
    	local package="$1" depends="$2"
    	# shellcheck disable=SC2086
    	set -- $depends
    
    	print_node "$package"
    	for dep in "$@"; do
    		print_node "$dep"
    		print_dep "$package" "$dep"
    	done
    }
    
    make -C openwrt -s prepare-tmpinfo
    
    echo 'digraph G {'
    
    cat ./openwrt/tmp/info/.packageinfo-feeds_gluon_base_* | while read -r key value; do
    	case "$key" in
    	'Package:')
    		package="$value"
    		;;
    	'Depends:')
    		depends="${value//+/}"
    		;;
    	'@@')
    		print_package "$package" "$depends"
    		;;
    	esac
    done | sort -u
    
    popd >/dev/null
    
    echo '}'