summaryrefslogtreecommitdiff
path: root/src/devtools/lddd.in
diff options
context:
space:
mode:
authorLuke Shumaker <LukeShu@sbcglobal.net>2013-05-02 15:06:04 -0400
committerLuke Shumaker <LukeShu@sbcglobal.net>2013-05-02 15:06:04 -0400
commit962250da23024224fc9e0be782b16ae08df46671 (patch)
tree2cc17939d6fc064b65eb3ce20e43ba49565d925c /src/devtools/lddd.in
parentbf2e3833c4158c8ec94e6af621f7d50d11353957 (diff)
Update for the new devtools-par (major)
* `src/devtools`: Redo to get devtools from another location, and patch it * `src/chroot-tools/{chcleanup,chroot.conf}`: Only install 'base-devel' by default * libremkchroot: deprecate in favor of `librechroot make` * librechroot: - redo option parsing to be a "sub-command" (git-like) interface, instead of having esoteric flags (pacman-like). - add more documentation. - allow COPY to be an absolute path - generally clean up and use updated functions from `makechrootpkg.sh` * libremakepkg: - allow COPY to be an absolute path - update to work with the new `makechrootpkg.sh`: - `makechrootpkg.sh:chroot_exec()` -> `libremakepkg:run()` - `makechrootpkg.sh:chroot_init()` -> `libremakepkg:chroot_init()` - All functions from `makechrootpkg.sh` are wrapped, because they don't work with `set -euE`. - Other small changes
Diffstat (limited to 'src/devtools/lddd.in')
-rw-r--r--src/devtools/lddd.in48
1 files changed, 0 insertions, 48 deletions
diff --git a/src/devtools/lddd.in b/src/devtools/lddd.in
deleted file mode 100644
index 4040ce6..0000000
--- a/src/devtools/lddd.in
+++ /dev/null
@@ -1,48 +0,0 @@
-#!/bin/bash
-#
-# lddd - find broken library links on your machine
-#
-
-source @pkgdatadir@/common.sh
-
-ifs=$IFS
-IFS="${IFS}:"
-
-libdirs="/lib /usr/lib /usr/local/lib $(cat /etc/ld.so.conf.d/*)"
-extras=
-
-TEMPDIR=$(mktemp -d --tmpdir lddd-script.XXXX)
-
-msg 'Go out and drink some tea, this will take a while :) ...'
-# Check ELF binaries in the PATH and specified dir trees.
-for tree in $PATH $libdirs $extras; do
- msg2 "DIR $tree"
-
- # Get list of files in tree.
- files=$(find $tree -type f ! -name '*.a' ! -name '*.la' ! -name '*.py*' ! -name '*.txt' ! -name '*.h' ! -name '*.ttf' ! \
- -name '*.rb' ! -name '*.ko' ! -name '*.pc' ! -name '*.enc' ! -name '*.cf' ! -name '*.def' ! -name '*.rules' ! -name \
- '*.cmi' ! -name '*.mli' ! -name '*.ml' ! -name '*.cma' ! -name '*.cmx' ! -name '*.cmxa' ! -name '*.pod' ! -name '*.pm' \
- ! -name '*.pl' ! -name '*.al' ! -name '*.tcl' ! -name '*.bs' ! -name '*.o' ! -name '*.png' ! -name '*.gif' ! -name '*.cmo' \
- ! -name '*.cgi' ! -name '*.defs' ! -name '*.conf' ! -name '*_LOCALE' ! -name 'Compose' ! -name '*_OBJS' ! -name '*.msg' ! \
- -name '*.mcopclass' ! -name '*.mcoptype')
- IFS=$ifs
- for i in $files; do
- if (( $(file $i | grep -c 'ELF') != 0 )); then
- # Is an ELF binary.
- if (( $(ldd $i 2>/dev/null | grep -c 'not found') != 0 )); then
- # Missing lib.
- echo "$i:" >> $TEMPDIR/raw.txt
- ldd $i 2>/dev/null | grep 'not found' >> $TEMPDIR/raw.txt
- fi
- fi
- done
-done
-grep '^/' $TEMPDIR/raw.txt | sed -e 's/://g' >> $TEMPDIR/affected-files.txt
-# invoke pacman
-for i in $(cat $TEMPDIR/affected-files.txt); do
- pacman -Qo $i | awk '{print $4,$5}' >> $TEMPDIR/pacman.txt
-done
-# clean list
-sort -u $TEMPDIR/pacman.txt >> $TEMPDIR/possible-rebuilds.txt
-
-msg "Files saved to $TEMPDIR"