mirror of
https://github.com/Gnucash/gnucash.git
synced 2024-11-26 02:40:43 -06:00
bbeb9a2b62
This also drops the python wrapper for gnc-module. As for the guile wrappers, python should use other means of loading our shared libraries. This commit required a few tweaks to the dependency chain as some units inherited dependency information from gnc-module's public dependency interface.
140 lines
4.6 KiB
Bash
140 lines
4.6 KiB
Bash
#! /bin/sh
|
|
#
|
|
# Simple stupid utility to count lines of code
|
|
# The output may deceive you, remember to subtract 1 from file count
|
|
|
|
#
|
|
# FIXME This script is very out of date. It doesn't count a number
|
|
# of source directories (such as gnome, ledger, engine,...)
|
|
#
|
|
|
|
SRC_DIR=$(dirname $0)/../../src
|
|
|
|
cd $SRC_DIR
|
|
|
|
echo
|
|
echo
|
|
echo "app utils:"
|
|
wc $(find app-utils core-utils calculation gnc-module tax \
|
|
\( -regex '.*test[^/]*' -prune \) -o \
|
|
\( -path '*.svn' -prune \) -o \
|
|
\( \( -name '*.c' -o \
|
|
-name '*.h' -o \
|
|
-name '*.scm' \) -a \
|
|
-print \) | sort )
|
|
wc $(find app-utils core-utils calculation gnc-module tax \
|
|
\( -regex '.*test[^/]*' -prune \) -o \
|
|
\( -path '*.svn' -prune \) -o \
|
|
\( \( -name '*.c' -o \
|
|
-name '*.h' -o \
|
|
-name '*.scm' \) -a \
|
|
-print \) | sort ) | wc
|
|
|
|
echo
|
|
echo
|
|
echo "import export:"
|
|
wc $(find import-export \
|
|
\( -regex '.*test[^/]*' -prune \) -o \
|
|
\( -path '*.svn' -prune \) -o \
|
|
\( \( -name '*.c' -o \
|
|
-name '*.h' -o \
|
|
-name '*.scm' \) -a \
|
|
-print \) | sort )
|
|
wc $(find import-export \
|
|
\( -regex '.*test[^/]*' -prune \) -o \
|
|
\( -path '*.svn' -prune \) -o \
|
|
\( \( -name '*.c' -o \
|
|
-name '*.h' -o \
|
|
-name '*.scm' \) -a \
|
|
-print \) | sort ) | wc
|
|
|
|
echo
|
|
echo
|
|
echo "reports:"
|
|
wc $(find report \
|
|
\( -regex '.*test[^/]*' -prune \) -o \
|
|
\( -path '*.svn' -prune \) -o \
|
|
\( \( -name '*.c' -o \
|
|
-name '*.h' -o \
|
|
-name '*.scm' \) -a \
|
|
-print \) | sort )
|
|
wc $(find report \
|
|
\( -regex '.*test[^/]*' -prune \) -o \
|
|
\( -path '*.svn' -prune \) -o \
|
|
\( \( -name '*.c' -o \
|
|
-name '*.h' -o \
|
|
-name '*.scm' \) -a \
|
|
-print \) | sort ) | wc
|
|
|
|
echo
|
|
echo
|
|
echo "scheme misc:"
|
|
wc $(find scm \
|
|
\( -regex '.*test[^/]*' -prune \) -o \
|
|
\( -path '*.svn' -prune \) -o \
|
|
\( \( -name '*.c' -o \
|
|
-name '*.h' -o \
|
|
-name '*.scm' \) -a \
|
|
-print \) | sort )
|
|
wc $(find scm \
|
|
\( -regex '.*test[^/]*' -prune \) -o \
|
|
\( -path '*.svn' -prune \) -o \
|
|
\( \( -name '*.c' -o \
|
|
-name '*.h' -o \
|
|
-name '*.scm' \) -a \
|
|
-print \) | sort ) |wc
|
|
|
|
echo
|
|
echo
|
|
echo "Business:"
|
|
wc $(find business \
|
|
\( -regex '.*test[^/]*' -prune \) -o \
|
|
\( -path '*.svn' -prune \) -o \
|
|
\( \( -name '*.c' -o \
|
|
-name '*.h' -o \
|
|
-name '*.scm' \) -a \
|
|
-print \) | sort )
|
|
wc $(find business \
|
|
\( -regex '.*test[^/]*' -prune \) -o \
|
|
\( -path '*.svn' -prune \) -o \
|
|
\( \( -name '*.c' -o \
|
|
-name '*.h' -o \
|
|
-name '*.scm' \) -a \
|
|
-print \) | sort ) | wc
|
|
|
|
echo
|
|
echo
|
|
echo "test:"
|
|
wc $(find . \( -path '*.svn' -prune \) -o \
|
|
\( -regex '.*/test.*/.*' -a \
|
|
\( -name '*.c' -o \
|
|
-name '*.h' -o \
|
|
-name '*.scm' \) -a \
|
|
-print \) | sort )
|
|
wc $(find . \( -path '*.svn' -prune \) -o \
|
|
\( -regex '.*/test.*/.*' -a \
|
|
\( -name '*.c' -o \
|
|
-name '*.h' -o \
|
|
-name '*.scm' \) -a \
|
|
-print \) | sort ) | wc
|
|
|
|
echo
|
|
echo
|
|
echo "internal docs"
|
|
wc $(find .. \( -path '*.svn' -prune \) -o \
|
|
\( -name 'README*' -o \
|
|
-name '*.txt' -o \
|
|
-name '*.html' -o \
|
|
-name '*.texinfo' -o \
|
|
-name '*.dtd' \) -a \
|
|
-print | sort )
|
|
wc $(find .. \( -path '*.svn' -prune \) -o \
|
|
\( -name 'README*' -o \
|
|
-name '*.txt' -o \
|
|
-name '*.html' -o \
|
|
-name '*.texinfo' -o \
|
|
-name '*.dtd' \) -a \
|
|
-print | sort ) | wc
|
|
|
|
cd -
|