Skip to content
Snippets Groups Projects
Select Git revision
  • 08cbbf992581f60ac264b63f81039309e7f4c482
  • experimental default protected
  • v2023.2.5-ffs
  • nrb/ex400-remove-wps
  • nrb/airmax-test
  • v2023.2.4-ffs
  • nrb/ar9344-reset-sequence
  • autinerd/experimental-openwrt-24.10
  • v2023.2.3-ffs
  • v2023.2.2-ffs
  • v2023.2-ffs
  • v2023.1-ffs
  • v2022.1.4-ffs
  • feature/addMikrotikwAP
  • v2022.1.3-ffs
  • v2021.1.2-ffs
  • v2022.1.1-ffs
  • master protected
  • v2021.1.1-ffs
  • nrb/gluon-master-cpe510
  • v2021.1-ffs
  • experimental-2025-07-01
  • experimental-2025-07-01-base
  • experimental-2025-06-25
  • experimental-2025-06-25-base
  • experimental-2025-06-24
  • experimental-2025-06-24-base
  • experimental-2025-06-22
  • experimental-2025-06-22-base
  • v2023.2.5-ffs0.1
  • experimental-2025-06-08
  • experimental-2025-06-08-base
  • experimental-2025-06-06
  • experimental-2025-06-06-base
  • experimental-2025-05-27
  • experimental-2025-05-27-base
  • experimental-2025-05-18
  • experimental-2025-05-18-base
  • experimental-2025-05-15
  • experimental-2025-05-15-base
  • experimental-2025-05-13
41 results

generic

Blame
  • depdot.sh 839 B
    #!/bin/bash
    
    # Script to output the dependency graph of Gluon's packages
    # Limitations:
    #  * Works only if directory names and package names are the same (true for all Gluon packages)
    #  * Doesn't show dependencies through virtual packages correctly
    
    
    
    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");"
    }
    
    echo 'digraph G {'
    
    for makefile in ./package/*/Makefile; do
    	dir="$(dirname "$makefile")"
    	package="$(basename "$dir")"
    
    	deps=$(grep -w DEPENDS "$makefile" | cut -d= -f2 | tr -d +)
    
    	print_node "$package"
    	for dep in $deps; do
    		print_node "$dep"
    		print_dep "$package" "$dep"
    	done
    done | sort -u
    
    popd >/dev/null
    
    echo '}'