From e8fdb8f0f7d2c61608953786563c39b0b219a8c7 Mon Sep 17 00:00:00 2001 From: Tony Theodore Date: Tue, 10 Oct 2017 16:22:37 +1100 Subject: [PATCH] run make cleanup-style --- src/djvulibre-test.c | 10 +- src/ghostscript-test.c | 22 +- src/hamlib-test.c | 176 ++++++------- src/hdf-eos2.mk | 2 +- src/libspectre-test.c | 18 +- src/qtsparkle-test.cpp | 10 +- src/qtsparkle_qt4-test.cpp | 10 +- tools/copydlldeps.md | 50 ++-- tools/copydlldeps.sh | 526 ++++++++++++++++++------------------- tools/install-deps | 2 +- 10 files changed, 413 insertions(+), 413 deletions(-) diff --git a/src/djvulibre-test.c b/src/djvulibre-test.c index ff46691e..604e0e7f 100644 --- a/src/djvulibre-test.c +++ b/src/djvulibre-test.c @@ -6,11 +6,11 @@ int main(int argc, char *argv[]) { - ddjvu_context_t *djvu_test; - (void)argc; + ddjvu_context_t *djvu_test; + (void)argc; - djvu_test = ddjvu_context_create(argv[0]); - ddjvu_context_release(djvu_test); + djvu_test = ddjvu_context_create(argv[0]); + ddjvu_context_release(djvu_test); - return 0; + return 0; } diff --git a/src/ghostscript-test.c b/src/ghostscript-test.c index 92dad400..f7101b68 100644 --- a/src/ghostscript-test.c +++ b/src/ghostscript-test.c @@ -26,20 +26,20 @@ void *minst; int main(int argc, char *argv[]) { - int code; + int code; - (void)argc; - (void)argv; + (void)argc; + (void)argv; - code = gsapi_new_instance(&minst, 0); - if (code < 0) - return 1; + code = gsapi_new_instance(&minst, 0); + if (code < 0) + return 1; - code = gsapi_exit(minst); - if (code < 0) - return 1; + code = gsapi_exit(minst); + if (code < 0) + return 1; - gsapi_delete_instance(minst); + gsapi_delete_instance(minst); - return 0; + return 0; } diff --git a/src/hamlib-test.c b/src/hamlib-test.c index ee382f74..98c5fa4e 100644 --- a/src/hamlib-test.c +++ b/src/hamlib-test.c @@ -8,99 +8,99 @@ #include int main(int argc, char *argv[]) { - RIG *my_rig; - char *rig_file, *info_buf, *mm; - freq_t freq; - value_t rawstrength, power, strength; - float s_meter, rig_raw2val(); - int status, retcode, isz; - unsigned int mwpower; - rmode_t mode; - pbwidth_t width; - rig_model_t myrig_model; - char portname[64]; - port_t myport; + RIG *my_rig; + char *rig_file, *info_buf, *mm; + freq_t freq; + value_t rawstrength, power, strength; + float s_meter, rig_raw2val(); + int status, retcode, isz; + unsigned int mwpower; + rmode_t mode; + pbwidth_t width; + rig_model_t myrig_model; + char portname[64]; + port_t myport; - strncpy(portname, argv[2], 63); - portname[63] = '\0'; + strncpy(portname, argv[2], 63); + portname[63] = '\0'; - if ((strcmp(argv[2], "--help") == 0) || (argc < 2)) { - printf("use like: ./%s \n", argv[0]); - printf("example: ./%s /dev/ttyS0\n", argv[0]); - return 0; - } + if ((strcmp(argv[2], "--help") == 0) || (argc < 2)) { + printf("use like: ./%s \n", argv[0]); + printf("example: ./%s /dev/ttyS0\n", argv[0]); + return 0; + } - /* Try to detect rig */ - /* may be overridden by backend probe */ - myport.type.rig = RIG_PORT_SERIAL; - myport.parm.serial.rate = 9600; - myport.parm.serial.data_bits = 8; - myport.parm.serial.stop_bits = 1; - myport.parm.serial.parity = RIG_PARITY_NONE; - myport.parm.serial.handshake = RIG_HANDSHAKE_NONE; - strncpy(myport.pathname, portname, FILPATHLEN); + /* Try to detect rig */ + /* may be overridden by backend probe */ + myport.type.rig = RIG_PORT_SERIAL; + myport.parm.serial.rate = 9600; + myport.parm.serial.data_bits = 8; + myport.parm.serial.stop_bits = 1; + myport.parm.serial.parity = RIG_PARITY_NONE; + myport.parm.serial.handshake = RIG_HANDSHAKE_NONE; + strncpy(myport.pathname, portname, FILPATHLEN); - rig_load_all_backends(); - myrig_model = rig_probe(&myport); - /* Set verbosity level - errors only */ - rig_set_debug(RIG_DEBUG_ERR); - /* Instantiate a rig - your rig */ - /* my_rig = rig_init(RIG_MODEL_TT565); */ - my_rig = rig_init(myrig_model); - /* Set up serial port, baud rate - serial device + baudrate */ - rig_file = "/dev/ttyUSB0"; - strncpy(my_rig->state.rigport.pathname, rig_file, FILPATHLEN - 1); - my_rig->state.rigport.parm.serial.rate = 57600; - my_rig->state.rigport.parm.serial.rate = 9600; - /* Open my rig */ - retcode = rig_open(my_rig); - printf("retcode of rig_open = %d \n", retcode); - /* Give me ID info, e.g., firmware version. */ - info_buf = (char *)rig_get_info(my_rig); - printf("Rig_info: '%s'\n", info_buf); + rig_load_all_backends(); + myrig_model = rig_probe(&myport); + /* Set verbosity level - errors only */ + rig_set_debug(RIG_DEBUG_ERR); + /* Instantiate a rig - your rig */ + /* my_rig = rig_init(RIG_MODEL_TT565); */ + my_rig = rig_init(myrig_model); + /* Set up serial port, baud rate - serial device + baudrate */ + rig_file = "/dev/ttyUSB0"; + strncpy(my_rig->state.rigport.pathname, rig_file, FILPATHLEN - 1); + my_rig->state.rigport.parm.serial.rate = 57600; + my_rig->state.rigport.parm.serial.rate = 9600; + /* Open my rig */ + retcode = rig_open(my_rig); + printf("retcode of rig_open = %d \n", retcode); + /* Give me ID info, e.g., firmware version. */ + info_buf = (char *)rig_get_info(my_rig); + printf("Rig_info: '%s'\n", info_buf); - /* Note: As a general practice, we should check to see if a given - * function is within the rig's capabilities before calling it, but - * we are simplifying here. Also, we should check each call's returned - * status in case of error. (That's an inelegant way to catch an unsupported - * operation.) - */ + /* Note: As a general practice, we should check to see if a given + * function is within the rig's capabilities before calling it, but + * we are simplifying here. Also, we should check each call's returned + * status in case of error. (That's an inelegant way to catch an unsupported + * operation.) + */ - /* Main VFO frequency */ - status = rig_get_freq(my_rig, RIG_VFO_CURR, &freq); - printf("status of rig_get_freq = %d \n", status); - printf("VFO freq. = %.1f Hz\n", freq); - /* Current mode */ - status = rig_get_mode(my_rig, RIG_VFO_CURR, &mode, &width); - printf("status of rig_get_mode = %d \n", status); - switch(mode) { - case RIG_MODE_USB: mm = "USB"; break; - case RIG_MODE_LSB: mm = "LSB"; break; - case RIG_MODE_CW: mm = "CW"; break; - case RIG_MODE_CWR: mm = "CWR"; break; - case RIG_MODE_AM: mm = "AM"; break; - case RIG_MODE_FM: mm = "FM"; break; - case RIG_MODE_WFM: mm = "WFM"; break; - case RIG_MODE_RTTY:mm = "RTTY"; break; - default: mm = "unrecognized"; break; /* there are more possibilities! */ - } - printf("Current mode = 0x%X = %s, width = %d\n", mode, mm, (int) width); - /* rig power output */ - status = rig_get_level(my_rig, RIG_VFO_CURR, RIG_LEVEL_RFPOWER, &power); - printf("RF Power relative setting = %.3f (0.0 - 1.0)\n", power.f); - /* Convert power reading to watts */ - status = rig_power2mW(my_rig, &mwpower, power.f, freq, mode); - printf("RF Power calibrated = %.1f Watts\n", mwpower/1000.); - /* Raw and calibrated S-meter values */ - status = rig_get_level(my_rig, RIG_VFO_CURR, RIG_LEVEL_RAWSTR, &rawstrength); - printf("Raw receive strength = %d\n", rawstrength.i); - isz = my_rig->caps->str_cal.size; - printf("isz = %d \n", isz); - s_meter = rig_raw2val(rawstrength.i, &my_rig->caps->str_cal); - printf("S-meter value = %.2f dB relative to S9\n", s_meter); - /* now try using RIG_LEVEL_STRENGTH itself */ - status = rig_get_strength(my_rig, RIG_VFO_CURR, &strength); - printf("status of rig_get_strength = %d \n", status); - printf("LEVEL_STRENGTH returns %d\n", strength.i); + /* Main VFO frequency */ + status = rig_get_freq(my_rig, RIG_VFO_CURR, &freq); + printf("status of rig_get_freq = %d \n", status); + printf("VFO freq. = %.1f Hz\n", freq); + /* Current mode */ + status = rig_get_mode(my_rig, RIG_VFO_CURR, &mode, &width); + printf("status of rig_get_mode = %d \n", status); + switch(mode) { + case RIG_MODE_USB: mm = "USB"; break; + case RIG_MODE_LSB: mm = "LSB"; break; + case RIG_MODE_CW: mm = "CW"; break; + case RIG_MODE_CWR: mm = "CWR"; break; + case RIG_MODE_AM: mm = "AM"; break; + case RIG_MODE_FM: mm = "FM"; break; + case RIG_MODE_WFM: mm = "WFM"; break; + case RIG_MODE_RTTY:mm = "RTTY"; break; + default: mm = "unrecognized"; break; /* there are more possibilities! */ + } + printf("Current mode = 0x%X = %s, width = %d\n", mode, mm, (int) width); + /* rig power output */ + status = rig_get_level(my_rig, RIG_VFO_CURR, RIG_LEVEL_RFPOWER, &power); + printf("RF Power relative setting = %.3f (0.0 - 1.0)\n", power.f); + /* Convert power reading to watts */ + status = rig_power2mW(my_rig, &mwpower, power.f, freq, mode); + printf("RF Power calibrated = %.1f Watts\n", mwpower/1000.); + /* Raw and calibrated S-meter values */ + status = rig_get_level(my_rig, RIG_VFO_CURR, RIG_LEVEL_RAWSTR, &rawstrength); + printf("Raw receive strength = %d\n", rawstrength.i); + isz = my_rig->caps->str_cal.size; + printf("isz = %d \n", isz); + s_meter = rig_raw2val(rawstrength.i, &my_rig->caps->str_cal); + printf("S-meter value = %.2f dB relative to S9\n", s_meter); + /* now try using RIG_LEVEL_STRENGTH itself */ + status = rig_get_strength(my_rig, RIG_VFO_CURR, &strength); + printf("status of rig_get_strength = %d \n", status); + printf("LEVEL_STRENGTH returns %d\n", strength.i); return 0; } diff --git a/src/hdf-eos2.mk b/src/hdf-eos2.mk index 7ead9bcc..700eea01 100644 --- a/src/hdf-eos2.mk +++ b/src/hdf-eos2.mk @@ -22,7 +22,7 @@ define $(PKG)_BUILD cd '$(1)' && \ ac_cv_func_malloc_0_nonnull=yes \ ac_cv_func_realloc_0_nonnull=yes \ - ./configure $(MXE_CONFIGURE_OPTS) \ + ./configure $(MXE_CONFIGURE_OPTS) \ --enable-install-include $(MAKE) -C '$(1)' -j '$(JOBS)' diff --git a/src/libspectre-test.c b/src/libspectre-test.c index 0e468524..f5f2e1df 100644 --- a/src/libspectre-test.c +++ b/src/libspectre-test.c @@ -6,17 +6,17 @@ int main(int argc, char *argv[]) { - SpectreDocument *document; - SpectreRenderContext *rc; + SpectreDocument *document; + SpectreRenderContext *rc; - (void)argc; - (void)argv; + (void)argc; + (void)argv; - document = spectre_document_new(); - rc = spectre_render_context_new(); + document = spectre_document_new(); + rc = spectre_render_context_new(); - spectre_document_free(document); - spectre_render_context_free(rc); + spectre_document_free(document); + spectre_render_context_free(rc); - return 0; + return 0; } diff --git a/src/qtsparkle-test.cpp b/src/qtsparkle-test.cpp index 0594294a..62054b19 100644 --- a/src/qtsparkle-test.cpp +++ b/src/qtsparkle-test.cpp @@ -8,10 +8,10 @@ int main() { - QWidget w; - qtsparkle::Updater* updater = new qtsparkle::Updater( - QUrl("http://www.example.com/sparkle.xml"), &w); - updater->SetVersion("1.0"); + QWidget w; + qtsparkle::Updater* updater = new qtsparkle::Updater( + QUrl("http://www.example.com/sparkle.xml"), &w); + updater->SetVersion("1.0"); - return 0; + return 0; } diff --git a/src/qtsparkle_qt4-test.cpp b/src/qtsparkle_qt4-test.cpp index 3e6e6578..888311f5 100644 --- a/src/qtsparkle_qt4-test.cpp +++ b/src/qtsparkle_qt4-test.cpp @@ -8,10 +8,10 @@ int main() { - QWidget w; - qtsparkle::Updater* updater = new qtsparkle::Updater( - QUrl("http://www.example.com/sparkle.xml"), &w); - updater->SetVersion("1.0"); + QWidget w; + qtsparkle::Updater* updater = new qtsparkle::Updater( + QUrl("http://www.example.com/sparkle.xml"), &w); + updater->SetVersion("1.0"); - return 0; + return 0; } diff --git a/tools/copydlldeps.md b/tools/copydlldeps.md index 3b63a039..7b54159e 100644 --- a/tools/copydlldeps.md +++ b/tools/copydlldeps.md @@ -6,12 +6,12 @@ It can be invoked on the command line like: ``` /share/mxe/tools/copydlldeps.sh --infile /home/mxeuser/test/i686-w64-mingw32.shared/Application.exe \ - --destdir /home/mxeuser/testdlls/ \ - --recursivesrcdir /home/mxeuser/mxe/usr/i686-w64-mingw32.shared/ \ - --srcdir /home/mxeuser/test/ \ - --copy \ - --enforcedir /home/mxeuser/mxe/usr/i686-w64-mingw32.shared/qt5/plugins/platforms/ \ - --objdump /home/mxeuser/mxe/usr/bin/i686-w64-mingw32.shared-objdump + --destdir /home/mxeuser/testdlls/ \ + --recursivesrcdir /home/mxeuser/mxe/usr/i686-w64-mingw32.shared/ \ + --srcdir /home/mxeuser/test/ \ + --copy \ + --enforcedir /home/mxeuser/mxe/usr/i686-w64-mingw32.shared/qt5/plugins/platforms/ \ + --objdump /home/mxeuser/mxe/usr/bin/i686-w64-mingw32.shared-objdump ``` It got embedded in a build script like: @@ -22,26 +22,26 @@ compiler=i686-w64-mingw32.shared orgDir=/path/to/my/nsis/dll # nsis is then copying all dlls in there to the place where the exe is located if [ ! $( echo $compiler | grep -q "shared" ) ]; then - echo "\$compiler=$compiler and contains the word 'shared'" | tee -a $CURLOG + echo "\$compiler=$compiler and contains the word 'shared'" | tee -a $CURLOG - echo "+-----------------------------------------------+ " | tee -a $CURLOG - echo "| Starting new MXE copydlldeps.sh by LHE DL5RCW | " | tee -a $CURLOG - echo "+-----------------------------------------------+ " | tee -a $CURLOG - echo "currently working in $( pwd ) " | tee -a $CURLOG - executable=$( find . -name "*.exe" | tail -n 1 ) - sharedLibsDir="${orgDir}/nsis/sharedLibs" - echo "populating dir $sharedLibsDir with dll dependencies of $executable" | tee -a $CURLOG - OBJDUMP=objdump - if [ -e "$MXEPATH/usr/bin/$compiler-objdump" ]; then - OBJDUMP="$MXEPATH/usr/bin/$compiler-objdump" - fi - $MXEPATH/tools/copydlldeps.sh --infile $executable \ - --destdir "$sharedLibsDir" \ - --recursivesrcdir "$MXEPATH/usr/$compiler/" \ - --enforcedir "$MXEPATH/usr/$compiler/qt5/plugins/platforms/" \ - --copy \ - --objdump "$OBJDUMP" \ - | tee -a $CURLOG + echo "+-----------------------------------------------+ " | tee -a $CURLOG + echo "| Starting new MXE copydlldeps.sh by LHE DL5RCW | " | tee -a $CURLOG + echo "+-----------------------------------------------+ " | tee -a $CURLOG + echo "currently working in $( pwd ) " | tee -a $CURLOG + executable=$( find . -name "*.exe" | tail -n 1 ) + sharedLibsDir="${orgDir}/nsis/sharedLibs" + echo "populating dir $sharedLibsDir with dll dependencies of $executable" | tee -a $CURLOG + OBJDUMP=objdump + if [ -e "$MXEPATH/usr/bin/$compiler-objdump" ]; then + OBJDUMP="$MXEPATH/usr/bin/$compiler-objdump" + fi + $MXEPATH/tools/copydlldeps.sh --infile $executable \ + --destdir "$sharedLibsDir" \ + --recursivesrcdir "$MXEPATH/usr/$compiler/" \ + --enforcedir "$MXEPATH/usr/$compiler/qt5/plugins/platforms/" \ + --copy \ + --objdump "$OBJDUMP" \ + | tee -a $CURLOG fi ``` diff --git a/tools/copydlldeps.sh b/tools/copydlldeps.sh index 8ead4a34..1bc358a3 100755 --- a/tools/copydlldeps.sh +++ b/tools/copydlldeps.sh @@ -1,10 +1,10 @@ -#!/bin/bash +#!/usr/bin/env bash # # print version and license -# is hereby part of the code and also displayed to the user +# is hereby part of the code and also displayed to the user version() { - cat <&2 + cat <&2 Welcome to $( basename $0)! Authors: Lars Holger Engelhard - DL5RCW (2016) @@ -51,7 +51,7 @@ tmp=$( mktemp -d ) # print an help menu help() { - cat <&2 + cat <&2 Usage: $0 -c -d DEST -s SRC [-f FILE|-F DIR] @@ -73,16 +73,16 @@ Operating options: -d, --destdir Destination directory - a single destination folder -f, --infile [ multiCall ] The input executable file or DLL. -F, --infiles, --indir [ multiCall ] The input directory of executable files and/or DLLs. - -s, --srcdir [ multiCall ] The directory with DLLs that can be copied. - -S, --srcdirs [ multiCall ] List of directories with DLLs that can be copied. Put "" around them, e.g. "/dir1 /root/dir2 /root/dir3" - -R, --recursivesrcdir [ multiCall ] Target directory for recursive search of folders containing *dll files + -s, --srcdir [ multiCall ] The directory with DLLs that can be copied. + -S, --srcdirs [ multiCall ] List of directories with DLLs that can be copied. Put "" around them, e.g. "/dir1 /root/dir2 /root/dir3" + -R, --recursivesrcdir [ multiCall ] Target directory for recursive search of folders containing *dll files -X, --excludepattern [ multiCall ] Exclude any path that contains such pattern, e.g. /(PREFIX)/(TARGET)/apps/ Optional binary settings: -o, --objdump Specify the path or name of your objdump application - -e, --enforcedir [ multiCall ] Enforce executable files and/or DLLs of a specific directory + -e, --enforcedir [ multiCall ] Enforce executable files and/or DLLs of a specific directory It will be entirely copied - flat, non recursive. assumes *.dll and *.exe in the top level directory - It will copy those into a directory in DESTDIR! + It will copy those into a directory in DESTDIR! e.g. /mxe/usr//qt5/plugins/platforms/ - for qwindows.dll becomes DESTDIR/platforms/ containing qwindows.dll Other options: @@ -97,14 +97,14 @@ Authors: Lars Holger Engelhard - DL5RCW EOF } -# terminate the application +# terminate the application # print an error message # and clean the tmp directory die() { - echo $1 >&2 - rm -rf "$tmp" - help - exit 1 + echo $1 >&2 + rm -rf "$tmp" + help + exit 1 } # find all directories containing dll files @@ -112,95 +112,95 @@ die() { # and findAllSrcDirectories will hunt for dlls in each one recursively # it will return a sorted list and duplicates are removed findAllSrcDirectories(){ - ar_recursiveDirList=${!1} - string="" - for curPath in "${ar_recursiveDirList[@]}"; do - for element in $(find $curPath $excludePattern -iname "*.dll"); do - #ar_list+="$(dirname $element) " - string+="$(dirname $element) " - done - done - string=$(echo "$string" | tr -s ' ' | tr ' ' '\n' | nl | sort -u -k2 | sort -n | cut -f2-) - echo $string #returns the string + ar_recursiveDirList=${!1} + string="" + for curPath in "${ar_recursiveDirList[@]}"; do + for element in $(find $curPath $excludePattern -iname "*.dll"); do + #ar_list+="$(dirname $element) " + string+="$(dirname $element) " + done + done + string=$(echo "$string" | tr -s ' ' | tr ' ' '\n' | nl | sort -u -k2 | sort -n | cut -f2-) + echo $string #returns the string } while [ $# -gt 0 ]; do - key="$1" - shift + key="$1" + shift - case $key in - -f|--infile) - infile+=" $1" - shift - ;; - -F|--indir|--infiles) - indir+=" $1" - shift - ;; - -s|--srcdir) - srcdir+=" $1" - shift - ;; - -d|--destdir) - destdir="$1" - shift - ;; - -S|--srcdirs) - srcdirs+=" $1" - shift - ;; - -R|--recursivesrcdir) - recursivesrcdir+=" $1" - shift - ;; - -X|--excludepattern) - excludepattern+=" $1" - shift - ;; - -o|--objdump) - OBJDUMP="$1" - shift - ;; - -e|--enforcedir) - enforcedir+=" $1" - shift - ;; - -l|-L|--loglevel) - loglevel="$1" - shift - ;; - -p|--print) - opmode="print" - ;; - -c|--copy) - opmode="copy" - ;; - -h|-H|--help) - help - exit 0 - ;; - -v|-V|--version) - version - exit 0 - ;; - *) - echo "unknown option $key ignored" >&2 - ;; - esac + case $key in + -f|--infile) + infile+=" $1" + shift + ;; + -F|--indir|--infiles) + indir+=" $1" + shift + ;; + -s|--srcdir) + srcdir+=" $1" + shift + ;; + -d|--destdir) + destdir="$1" + shift + ;; + -S|--srcdirs) + srcdirs+=" $1" + shift + ;; + -R|--recursivesrcdir) + recursivesrcdir+=" $1" + shift + ;; + -X|--excludepattern) + excludepattern+=" $1" + shift + ;; + -o|--objdump) + OBJDUMP="$1" + shift + ;; + -e|--enforcedir) + enforcedir+=" $1" + shift + ;; + -l|-L|--loglevel) + loglevel="$1" + shift + ;; + -p|--print) + opmode="print" + ;; + -c|--copy) + opmode="copy" + ;; + -h|-H|--help) + help + exit 0 + ;; + -v|-V|--version) + version + exit 0 + ;; + *) + echo "unknown option $key ignored" >&2 + ;; + esac done # setting default values if no arguments were given if ! [ "$loglevel" ]; then - loglevel=0 + loglevel=0 fi -if ! [ "$opmode" ]; then - opmode="copy" # used as default in productive - #opmode="print" # used as default in development +if ! [ "$opmode" ]; then + opmode="copy" # used as default in productive + #opmode="print" # used as default in development fi if ! [ "$destdir" ]; then - die '--destdir is not specified.' + die '--destdir is not specified.' fi if [ -n "$(ls -A $destdir 2>/dev/null)" ]; then @@ -211,41 +211,41 @@ else fi if [ "$loglevel" -gt 1 ]; then - echo "filelist=$filelist" - echo "opmode=$opmode" + echo "filelist=$filelist" + echo "opmode=$opmode" fi excluePattern="" # building an exclude command consisting of patterns. We still contain the first hit of find if [ ! -z "$excludepattern" ]; then - for curString in $( echo "$excludepattern" | tr -s ' ' | tr ' ' '\n' ); do - excludePattern+=" ! -path *$( echo "$curString" | tr -d ' ' )* " - done + for curString in $( echo "$excludepattern" | tr -s ' ' | tr ' ' '\n' ); do + excludePattern+=" ! -path *$( echo "$curString" | tr -d ' ' )* " + done fi if [ "$loglevel" -gt 1 ]; then - echo "\$excluePattern: $excludePattern" + echo "\$excluePattern: $excludePattern" fi str_inputFileList="" if [ "$indir" ]; then - for curPath in $( echo "${indir}" | tr -s ' ' | tr ' ' '\n' ); do - if [ `uname -s` == "Darwin" ]; then - curList=$( find $curPath -iname *.exe -or -iname *.dll | tr '\n' ' ' ) - else curList=$( find $curPath -iregex '.*\(dll\|exe\)' | tr '\n' ' ' ) - fi - str_inputFileList+=" $curList" - done + for curPath in $( echo "${indir}" | tr -s ' ' | tr ' ' '\n' ); do + if [ `uname -s` == "Darwin" ]; then + curList=$( find $curPath -iname *.exe -or -iname *.dll | tr '\n' ' ' ) + else curList=$( find $curPath -iregex '.*\(dll\|exe\)' | tr '\n' ' ' ) + fi + str_inputFileList+=" $curList" + done fi if [ "$infile" ]; then - for curFile in $( echo "${infile}" | tr -s ' ' | tr ' ' '\n' ); do - if [ `uname -s` == "Darwin" ]; then - curString=$( find $curPath -iname *.exe -or -iname *.dll | tr '\n' ' ' ) - else curString=$( find $curPath -iregex '.*\(dll\|exe\)' | tr '\n' ' ' ) - fi - str_inputFileList+=" $curString" - done + for curFile in $( echo "${infile}" | tr -s ' ' | tr ' ' '\n' ); do + if [ `uname -s` == "Darwin" ]; then + curString=$( find $curPath -iname *.exe -or -iname *.dll | tr '\n' ' ' ) + else curString=$( find $curPath -iregex '.*\(dll\|exe\)' | tr '\n' ' ' ) + fi + str_inputFileList+=" $curString" + done fi if [ -z "$str_inputFileList" ]; then - die 'there was no input defined. use --indir and/or --infile in your command' + die 'there was no input defined. use --indir and/or --infile in your command' fi if [ "$loglevel" -gt 1 ]; then echo "str_inputFileList=$str_inputFileList" @@ -254,32 +254,32 @@ fi str_srcDirList="" if [ "$srcdir" ]; then - str_srcDirList+=" $srcdir" + str_srcDirList+=" $srcdir" fi if [ "$srcdirs" ]; then - str_srcDirList+=" $srcdirs" + str_srcDirList+=" $srcdirs" fi if [ "$recursivesrcdir" ]; then - result="$( findAllSrcDirectories recursivesrcdir )" - str_srcDirList+=" $result" + result="$( findAllSrcDirectories recursivesrcdir )" + str_srcDirList+=" $result" fi if [ -z "$str_srcDirList" ]; then - die 'there was no source directory defined. use --srcdirs or --srcdir or --recursivesrcdir in your command' + die 'there was no source directory defined. use --srcdirs or --srcdir or --recursivesrcdir in your command' fi if [ "$loglevel" -gt 1 ]; then - #echo "infiles: filelist=$filelist" - echo "infiles: str_inputFileList=$str_inputFileList" - echo " opmode: $opmode" + #echo "infiles: filelist=$filelist" + echo "infiles: str_inputFileList=$str_inputFileList" + echo " opmode: $opmode" fi if [ "$loglevel" -gt 1 ]; then - echo "list for sources: str_srcDirList=${str_srcDirList}" - echo "using OBJDUMP=$OBJDUMP in Version $( $OBJDUMP -V)" + echo "list for sources: str_srcDirList=${str_srcDirList}" + echo "using OBJDUMP=$OBJDUMP in Version $( $OBJDUMP -V)" fi if [ "$loglevel" -gt 1 ]; then - ## during development, I like to interrupt here to check the above output and skip the rest - echo "starting in 5 seconds" && sleep 5 + ## during development, I like to interrupt here to check the above output and skip the rest + echo "starting in 5 seconds" && sleep 5 fi # introducing a whitelist of well known DLLs @@ -287,184 +287,184 @@ str_whiteListDlls="advapi32.dll kernel32.dll msvcrt.dll user32.dll ws2_32.dll gd # function to append dependencies (recursively) append_deps() { - if [ "$loglevel" -gt 1 ]; then - echo "\$1=$1 + \$2=$2 " - sleep 2 - fi - local bn="$( basename $1 )" - if [ -e "$tmp/$bn" ]; then - return 0 - fi - if [ $# -eq 2 ]; then - path="$1" - else - path="" - for curPath in $( echo "${str_srcDirList}" | tr -s ' ' | tr ' ' '\n' ); do - counter=0 - result="" - result=$(find $curPath $excludePattern -iname "$bn" -type f | tail -n 1) - if [ "$loglevel" -gt 1 ]; then - echo "complete find command in append_deps(): # find $curPath $excludePattern -iname $bn -type f | tail -n 1 # " - fi - if [ ! -z "$result" ];then - path="$result" - counter=$(expr $counter + 1) - fi + if [ "$loglevel" -gt 1 ]; then + echo "\$1=$1 + \$2=$2 " + sleep 2 + fi + local bn="$( basename $1 )" + if [ -e "$tmp/$bn" ]; then + return 0 + fi + if [ $# -eq 2 ]; then + path="$1" + else + path="" + for curPath in $( echo "${str_srcDirList}" | tr -s ' ' | tr ' ' '\n' ); do + counter=0 + result="" + result=$(find $curPath $excludePattern -iname "$bn" -type f | tail -n 1) + if [ "$loglevel" -gt 1 ]; then + echo "complete find command in append_deps(): # find $curPath $excludePattern -iname $bn -type f | tail -n 1 # " + fi + if [ ! -z "$result" ];then + path="$result" + counter=$(expr $counter + 1) + fi if [ $counter == 0 ]; then #echo "ERROR: could not find \$path for dll $bn, \$counter=$counter: searched $curPath" str_test="1" else echo "OKAY: found path for dll $bn = $path, \$counter=$counter: searched $curPath" fi - if [ "$loglevel" -gt 1 ]; then - if [ $counter == 0 ]; then - echo "could not find \$path for dll $bn, \$counter=$counter: searched $curPath" - else - echo "found path for dll $bn = $path, \$counter=$counter: searched $curPath" - fi - fi - done - if [ "$loglevel" -gt 1 ]; then - echo "path for dll $bn now is $path" - sleep 2 - fi - fi - echo "Processing $1" >&2 - if ! [ -e "$path" ]; then - if [ "$loglevel" -gt 1 ]; then - echo "path=$path| and we touch $tmp/$bn -> non existent in our src directories!" - sleep 4 - fi - touch "$tmp/$bn" - return 0 - fi - $OBJDUMP -p "$path" | grep 'DLL Name:' | cut -f3 -d' ' > "$tmp/$bn" - echo "executing: $OBJDUMP -p "$path" | grep 'DLL Name:' | cut -f3 -d' ' > "$tmp/$bn"" - for dll in $( cat "$tmp/$bn" | tr '\n' ' ' ); do - append_deps "$dll" - done - alldeps=$(printf "$alldeps\n%s" "$(cat $tmp/$bn)" | sort | uniq) + if [ "$loglevel" -gt 1 ]; then + if [ $counter == 0 ]; then + echo "could not find \$path for dll $bn, \$counter=$counter: searched $curPath" + else + echo "found path for dll $bn = $path, \$counter=$counter: searched $curPath" + fi + fi + done + if [ "$loglevel" -gt 1 ]; then + echo "path for dll $bn now is $path" + sleep 2 + fi + fi + echo "Processing $1" >&2 + if ! [ -e "$path" ]; then + if [ "$loglevel" -gt 1 ]; then + echo "path=$path| and we touch $tmp/$bn -> non existent in our src directories!" + sleep 4 + fi + touch "$tmp/$bn" + return 0 + fi + $OBJDUMP -p "$path" | grep 'DLL Name:' | cut -f3 -d' ' > "$tmp/$bn" + echo "executing: $OBJDUMP -p "$path" | grep 'DLL Name:' | cut -f3 -d' ' > "$tmp/$bn"" + for dll in $( cat "$tmp/$bn" | tr '\n' ' ' ); do + append_deps "$dll" + done + alldeps=$(printf "$alldeps\n%s" "$(cat $tmp/$bn)" | sort | uniq) } process_enforced_deps(){ - enforcedDirectory=$1 - if [ ! -d $enforcedDirectory ]; then - echo "warning! \$enforcedDirectory=$enforcedDirectory is not valid" - if [ "$loglevel" -gt 1 ]; then - sleep 10 - fi - fi - # first we append the path to enforced dir to our list of source directories - # if we would do this file recursively, we should loop to find those and append them all to the list - str_srcDirList+=" $enforcedDirectory" - # now we search for the dll and exe files to be included - if [ `uname -s` == "Darwin" ]; then - string=$( find $enforcedDirectory -maxdepth 1 -iname *.exe -or -iname *.dll | tr '\n' ' ' ) - else string=$( find $enforcedDirectory -maxdepth 1 -iregex '.*\(dll\|exe\)' | tr '\n' ' ' ) - fi - if [ "$loglevel" -gt 1 ]; then - echo "enforcedDirectory=$enforcedDirectory" - echo "we found dlls and exes:$string" - sleep 4 - fi - # we hard copy it to DEST - if [ `uname -s` == "Darwin" ]; then - cp -av "${enforcedDirectory}" "$destdir" - else cp -dpRxv "${enforcedDirectory}" "$destdir" - fi + enforcedDirectory=$1 + if [ ! -d $enforcedDirectory ]; then + echo "warning! \$enforcedDirectory=$enforcedDirectory is not valid" + if [ "$loglevel" -gt 1 ]; then + sleep 10 + fi + fi + # first we append the path to enforced dir to our list of source directories + # if we would do this file recursively, we should loop to find those and append them all to the list + str_srcDirList+=" $enforcedDirectory" + # now we search for the dll and exe files to be included + if [ `uname -s` == "Darwin" ]; then + string=$( find $enforcedDirectory -maxdepth 1 -iname *.exe -or -iname *.dll | tr '\n' ' ' ) + else string=$( find $enforcedDirectory -maxdepth 1 -iregex '.*\(dll\|exe\)' | tr '\n' ' ' ) + fi + if [ "$loglevel" -gt 1 ]; then + echo "enforcedDirectory=$enforcedDirectory" + echo "we found dlls and exes:$string" + sleep 4 + fi + # we hard copy it to DEST + if [ `uname -s` == "Darwin" ]; then + cp -av "${enforcedDirectory}" "$destdir" + else cp -dpRxv "${enforcedDirectory}" "$destdir" + fi } # beginning of the main function # we start with the enforced dlls and exe if [ ! -z "$enforcedir" ]; then - for curFile in $( echo "${enforcedir}" | tr -s ' ' | tr ' ' '\n'); do - echo "startig for file $curFile in enforce section" - append_deps "$curFile" rel - process_enforced_deps "$curFile" - done + for curFile in $( echo "${enforcedir}" | tr -s ' ' | tr ' ' '\n'); do + echo "startig for file $curFile in enforce section" + append_deps "$curFile" rel + process_enforced_deps "$curFile" + done fi # then we start with our indir or infile list for file in $str_inputFileList; do - echo "starting for file $file" - #sleep 4 - append_deps "$file" rel + echo "starting for file $file" + #sleep 4 + append_deps "$file" rel done echo "I will now search for \$alldeps" for debugOut in $( echo $alldeps | tr -s ' ' | tr '\n' ' '); do - echo "debugOut: $debugOut" + echo "debugOut: $debugOut" done if [ "$loglevel" -eq 1 ]; then - echo "waiting 10 seconds until I proceed - so you can read my debugOut" - sleep 10 + echo "waiting 10 seconds until I proceed - so you can read my debugOut" + sleep 10 - tmpStr=${str_srcDirList} - echo "\$alldeps has ${#alldeps[@]} elements" - echo "and \$str_srcDirList has ${#str_srcDirList} elements" + tmpStr=${str_srcDirList} + echo "\$alldeps has ${#alldeps[@]} elements" + echo "and \$str_srcDirList has ${#str_srcDirList} elements" fi str_summary="Here is the summary:" str_summary="${str_summary} # ==== 8< ==== START ==== 8< ==== " if [ $opmode == "copy" ]; then - echo "copying files from \${curFolder} to \$destdir:" + echo "copying files from \${curFolder} to \$destdir:" elif [ $opmode == "print" ]; then - echo "printing files:" + echo "printing files:" fi for dll in $( echo $alldeps | tr '\n' ' ' ); do - counter=0 - lowerDll=$( echo $dll | tr '[:upper:]' '[:lower:]' ) - if [ $lowerDll == $dll ]; then - lowerDll="" - fi - for curFolder in $( echo "${str_srcDirList}" | tr -s ' ' | tr ' ' '\n'); do - if [ "$loglevel" -gt 1 ]; then - echo "search for dll $dll in curFolder $curFolder" - sleep 1 - fi - for curDll in $dll $lowerDll; do - if [ -e "${curFolder}/${curDll}" ]; then - counter=$( expr $counter + 1 ) - if [ $opmode == "copy" ]; then - if [ `uname -s` == "Darwin" ]; then - cp -av "${curFolder}/${curDll}" "$destdir" - else cp -dpRxv "${curFolder}/${curDll}" "$destdir" - fi - - elif [ $opmode == "print" ]; then - echo "found $dll in: ${curFolder}/${curDll}" - else - echo "unknown opmode=$opmode" - fi - fi - done - done - if [ $counter == 0 ]; then - lowerDll=$( echo $dll | tr '[:upper:]' '[:lower:]' ) - str_whiteListDlls=$( echo ${str_whiteListDlls} | tr '[:upper:]' '[:lower:]' ) # make whiteListDlls lower case to ensure we find the match (case insensitive) - if [ -z "${str_whiteListDlls/*${lowerDll}*}" ]; then - if [ "$loglevel" -gt 1 ]; then - echo "Info: \"$dll\" not found - but it is white-listed. That means: it is well known by Windows - do not worry too much. " - fi - str_summary="${str_summary} # Info: \"$dll\" not found - but it is white-listed. That means: it is well known by Windows - do not worry too much. " - else - if [ "$loglevel" -gt 1 ]; then - echo "Warn: \"$dll\" NOT found. \$counter=$counter." - fi - str_summary="${str_summary} # Warn: \"$dll\" NOT found. \$counter=$counter." - fi - else - if [ "$loglevel" -gt 1 ]; then - echo "Good: \"$dll\" found in the list. \$counter=$counter" - fi - str_summary="${str_summary} # Good: \"$dll\" Found in the list. \$counter=$counter" - fi + counter=0 + lowerDll=$( echo $dll | tr '[:upper:]' '[:lower:]' ) + if [ $lowerDll == $dll ]; then + lowerDll="" + fi + for curFolder in $( echo "${str_srcDirList}" | tr -s ' ' | tr ' ' '\n'); do + if [ "$loglevel" -gt 1 ]; then + echo "search for dll $dll in curFolder $curFolder" + sleep 1 + fi + for curDll in $dll $lowerDll; do + if [ -e "${curFolder}/${curDll}" ]; then + counter=$( expr $counter + 1 ) + if [ $opmode == "copy" ]; then + if [ `uname -s` == "Darwin" ]; then + cp -av "${curFolder}/${curDll}" "$destdir" + else cp -dpRxv "${curFolder}/${curDll}" "$destdir" + fi + + elif [ $opmode == "print" ]; then + echo "found $dll in: ${curFolder}/${curDll}" + else + echo "unknown opmode=$opmode" + fi + fi + done + done + if [ $counter == 0 ]; then + lowerDll=$( echo $dll | tr '[:upper:]' '[:lower:]' ) + str_whiteListDlls=$( echo ${str_whiteListDlls} | tr '[:upper:]' '[:lower:]' ) # make whiteListDlls lower case to ensure we find the match (case insensitive) + if [ -z "${str_whiteListDlls/*${lowerDll}*}" ]; then + if [ "$loglevel" -gt 1 ]; then + echo "Info: \"$dll\" not found - but it is white-listed. That means: it is well known by Windows - do not worry too much. " + fi + str_summary="${str_summary} # Info: \"$dll\" not found - but it is white-listed. That means: it is well known by Windows - do not worry too much. " + else + if [ "$loglevel" -gt 1 ]; then + echo "Warn: \"$dll\" NOT found. \$counter=$counter." + fi + str_summary="${str_summary} # Warn: \"$dll\" NOT found. \$counter=$counter." + fi + else + if [ "$loglevel" -gt 1 ]; then + echo "Good: \"$dll\" found in the list. \$counter=$counter" + fi + str_summary="${str_summary} # Good: \"$dll\" Found in the list. \$counter=$counter" + fi done str_summary="${str_summary} # ==== 8< ==== END ==== 8< ==== " echo "Job is done." # print the summary now for curLine in "$( echo "${str_summary}" | tr -s '#' | tr '#' '\n' )"; do # convert # to a linebreak - string ecomes an array that can be processed in for loop - echo "$curLine" + echo "$curLine" done # clean up the temp directory stored in $tmp diff --git a/tools/install-deps b/tools/install-deps index 1047afd1..96b981f5 100755 --- a/tools/install-deps +++ b/tools/install-deps @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -xue