kopia lustrzana https://github.com/jamescoxon/dl-fldigi
91 wiersze
2.6 KiB
Bash
Executable File
91 wiersze
2.6 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
### Script to create a win32 installer file
|
|
### 20090510 Stelios Bounanos M0GLD
|
|
|
|
if [ $# -ne 2 ]; then
|
|
echo "Syntax: $0 data-dir build-dir" >&2
|
|
exit 1
|
|
fi
|
|
|
|
if [ -z "$PACKAGE_TARNAME" ]; then
|
|
echo "E: \$PACKAGE_TARNAME undefined"
|
|
exit 1
|
|
fi
|
|
|
|
PWD=`pwd`
|
|
data="${PWD}/$1"
|
|
build="${PWD}/$2"
|
|
|
|
# more sanity checks
|
|
for d in "$data" "$build"; do
|
|
test -d "$d" && continue
|
|
echo "E: ${d}: not a directory" >&2
|
|
exit 1
|
|
done
|
|
if ! test -w "$build"; then
|
|
echo "E: ${build} is not writeable" >&2
|
|
exit 1
|
|
fi
|
|
|
|
set -e
|
|
|
|
fldigi_name=Fldigi
|
|
fldigi_bin=fldigi.exe
|
|
flarq_name=Flarq
|
|
flarq_bin=flarq.exe
|
|
|
|
if test "x$WANT_FLDIGI" != "xyes" && test "x$WANT_FLARQ" != "xyes"; then
|
|
echo "E: refusing to create empty installer" >&2
|
|
exit 1
|
|
fi
|
|
if test "x$WANT_FLDIGI" = "xyes"; then
|
|
test "x$NOSTRIP" = "x" && $STRIP -S "$fldigi_bin"
|
|
def="$def -DHAVE_FLDIGI -DFLDIGI_NAME=$fldigi_name -DFLDIGI_BINARY=$fldigi_bin -DFLDIGI_VERSION=$PACKAGE_VERSION"
|
|
fi
|
|
if test "x$WANT_FLARQ" = "xyes"; then
|
|
test "x$NOSTRIP" = "x" && $STRIP -S "$flarq_bin"
|
|
def="$def -DHAVE_FLARQ -DFLARQ_NAME=$flarq_name -DFLARQ_BINARY=$flarq_bin -DFLARQ_VERSION=$FLARQ_VERSION"
|
|
fi
|
|
|
|
# Look for pthreadGC2.dll and mingwm10.dll
|
|
MINGWM_DLL=mingwm10.dll
|
|
PTW32_DLL=pthreadGC2.dll
|
|
if ! test -r "$build/$MINGWM_DLL" || ! test -r "$build/$PTW32_DLL"; then
|
|
IFS_saved="$IFS"
|
|
IFS=:
|
|
MINGWM_PATH=""
|
|
PTW32_PATH=""
|
|
for dir in $LIB_PATH; do
|
|
test "x$MINGWM_PATH" = "x" && test -r "$dir/$MINGWM_DLL" && MINGWM_PATH="$dir/$MINGWM_DLL"
|
|
test "x$PTW32_PATH" = "x" && test -r "$dir/$PTW32_DLL" && PTW32_PATH="$dir/$PTW32_DLL"
|
|
done
|
|
IFS="$IFS_saved"
|
|
fi
|
|
if ! test -r "$build/$MINGWM_DLL"; then
|
|
if test "x$MINGWM_PATH" != "x"; then
|
|
cp "$MINGWM_PATH" "$build"
|
|
elif test -r /usr/share/doc/mingw32-runtime/${MINGWM_DLL}.gz; then
|
|
# Debian and Ubuntu
|
|
gzip -dc /usr/share/doc/mingw32-runtime/${MINGWM_DLL}.gz > "$build/$MINGWM_DLL"
|
|
fi
|
|
fi
|
|
if ! test -r "$build/$PTW32_DLL"; then
|
|
if test "x$PTW32_PATH" != "x"; then
|
|
cp "$PTW32_PATH" "$build"
|
|
else
|
|
# look for dll in PTW32_LIBS
|
|
dir=$(echo $PTW32_LIBS | sed -r 's/.*-L([[:graph:]]+).*/\1/g')
|
|
lib=$(echo $PTW32_LIBS | sed -r 's/.*-l(pthreadGC[[:graph:]]+).*/\1/g')
|
|
lib="${lib}.dll"
|
|
if test -r "$dir/$lib"; then
|
|
cp "$dir/$lib" "$build"
|
|
fi
|
|
fi
|
|
fi
|
|
def="$def -DMINGWM_DLL=$MINGWM_DLL -DPTW32_DLL=$PTW32_DLL"
|
|
|
|
$MAKENSIS -V2 -NOCD -D"INSTALLER_FILE=$INSTALLER_FILE" -D"LICENSE_FILE=$data/../COPYING" \
|
|
-D"SUPPORT_URL=$PACKAGE_HOME" -D"UPDATES_URL=$PACKAGE_DL" -D"FLDIGI_DOCS_URL=$PACKAGE_DOCS" \
|
|
-D"FLARQ_DOCS_URL=$FLARQ_DOCS" -D"GUIDE_URL=$PACKAGE_GUIDE" $def "$data/win32/fldigi.nsi"
|