#!/bin/bash # This script reads filenames from STDIN and outputs any relevant provides # information that needs to be included in the package. if [ "$1" ] then package_name="$1" fi [ -z "$OBJDUMP" ] && OBJDUMP=x86_64-pc-mingw32-objdump # Get the list of files. filelist=`sed "s/['\"]/\\\&/g"` dlls_to_exclude=" advapi32.dll comctl32.dll comdlg32.dll dnsapi.dll gdi32.dll glu32.dll glut32.dll imm32.dll kernel32.dll mscms.dll mscoree.dll msimg32.dll msvcrt.dll mswsock.dll ole32.dll oleaut32.dll opengl32.dll shell32.dll shlwapi.dll user32.dll version.dll winmm.dll wldap32.dll ws2_32.dll " exclude_pattern="" for i in $dlls_to_exclude; do if test "$exclude_pattern" == ""; then exclude_pattern=$i; else exclude_pattern=$exclude_pattern"|"$i; fi done dlls=$(echo $filelist | tr [:blank:] '\n' | grep -Ei '\.(dll|exe)$') for f in $dlls; do $OBJDUMP -p $f | grep 'DLL Name' | tr [:upper:] [:lower:] | grep -Eo '[-._\+[:alnum:]]+\.dll' | grep -Ev "$exclude_pattern" | sed 's/\(.*\)/mingw64(\1)/' done | sort -u