Automatically generate the DLL dependencies of the MSYS2 UQM build for installation and uninstallation
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
# Autogenerated by proppkgs.sh
|
||||
# Autogenerated by procpkgs.sh
|
||||
#
|
||||
!define PKG_CONTENT_FILE "uqm-0.8.0-content.uqm"
|
||||
!define PKG_CONTENT_MD5SUM "6cbc9d51fa63e07c0f4d1d061136d816"
|
||||
|
||||
@@ -9,8 +9,14 @@
|
||||
#
|
||||
# The awk, md5sum, and wc utilities must be installed, but MSYS2
|
||||
# should generally already have those in your path.
|
||||
#
|
||||
# The ntldd utility must also be installed and generally will NOT be
|
||||
# installed by default. "pacboy sync ntldd" in a MinGW environment should
|
||||
# install the correct version.
|
||||
|
||||
NSH_FILE="packages.nsh"
|
||||
INST_FILE="dlls.nsi"
|
||||
UNINST_FILE="un$INST_FILE"
|
||||
PKG_VERSION="0.8.0"
|
||||
|
||||
CONTENT_PKG="uqm-$PKG_VERSION-content.uqm"
|
||||
@@ -20,6 +26,8 @@ REMIX1_PKG="uqm-remix-disc1.uqm"
|
||||
REMIX2_PKG="uqm-remix-disc2.uqm"
|
||||
REMIX3_PKG="uqm-remix-disc3.uqm"
|
||||
REMIX4_PKG="uqm-remix-disc4.uqm"
|
||||
UQM_EXE="uqm.exe"
|
||||
KEYJAM_EXE="keyjam.exe"
|
||||
|
||||
check_pkg() {
|
||||
if [ ! -f "$1" ]; then
|
||||
@@ -47,8 +55,9 @@ check_pkg $REMIX1_PKG
|
||||
check_pkg $REMIX2_PKG
|
||||
check_pkg $REMIX3_PKG
|
||||
check_pkg $REMIX4_PKG
|
||||
check_pkg $UQM_EXE
|
||||
|
||||
echo "# Autogenerated by proppkgs.sh" > $NSH_FILE
|
||||
echo "# Autogenerated by procpkgs.sh" > $NSH_FILE
|
||||
echo "#" >> $NSH_FILE
|
||||
process_pkg $CONTENT_PKG PKG_CONTENT
|
||||
process_pkg $MUSIC_PKG PKG_3DOMUSIC
|
||||
@@ -59,3 +68,29 @@ process_pkg $REMIX3_PKG PKG_REMIX3
|
||||
process_pkg $REMIX4_PKG PKG_REMIX4
|
||||
|
||||
echo All packages processed. ${NSH_FILE} generated.
|
||||
|
||||
echo "# Autogenerated by procpkgs.sh" > $INST_FILE
|
||||
echo "#" >> $INST_FILE
|
||||
echo "# Autogenerated by procpkgs.sh" > $UNINST_FILE
|
||||
echo "#" >> $UNINST_FILE
|
||||
echo " File \"$UQM_EXE\"" >> $INST_FILE
|
||||
echo " File \"$KEYJAM_EXE\"" >> $INST_FILE
|
||||
echo " Delete \"\$INSTDIR\\$UQM_EXE\"" >> $UNINST_FILE
|
||||
echo " Delete \"\$INSTDIR\\$KEYJAM_EXE\"" >> $UNINST_FILE
|
||||
|
||||
echo "Processing $UQM_EXE..."
|
||||
DLLS=$(ntldd -R "$UQM_EXE" | awk '/\\bin\\/{print $3;}')
|
||||
echo "Processing $KEYJAM_EXE..."
|
||||
DLLS2=$(ntldd -R "$KEYJAM_EXE" | awk '/\\bin\\/{print $3;}')
|
||||
DLLS="$DLLS $DLLS2"
|
||||
rm -f "$INST_FILE.tmp" "$UNINST_FILE.tmp"
|
||||
touch "$INST_FILE.tmp" "$UNINST_FILE.tmp"
|
||||
for dll in $DLLS; do
|
||||
echo " File \"$dll\"" >> $INST_FILE.tmp
|
||||
echo " Delete \"\$INSTDIR\\$(basename $dll)\"" >> $UNINST_FILE.tmp
|
||||
done
|
||||
sort -u < "$INST_FILE.tmp" >> $INST_FILE
|
||||
sort -u < "$UNINST_FILE.tmp" >> $UNINST_FILE
|
||||
rm -f "$INST_FILE.tmp" "$UNINST_FILE.tmp"
|
||||
|
||||
echo "Executable processed. $INST_FILE and $UNINST_FILE generated."
|
||||
|
||||
@@ -238,22 +238,12 @@ SectionGroup "!UQM" SECGRP01
|
||||
SetOverwrite try
|
||||
File "AUTHORS.txt"
|
||||
File "COPYING.txt"
|
||||
File "libpng12-0.dll"
|
||||
File "Manual.txt"
|
||||
File "ogg.dll"
|
||||
File "OpenAL32.dll"
|
||||
File "wrap_oal.dll"
|
||||
File "README.txt"
|
||||
File "README-SDL.txt"
|
||||
File "SDL.dll"
|
||||
File "SDL_image.dll"
|
||||
File "SDL_gfx.dll"
|
||||
File "uqm.exe"
|
||||
File "keyjam.exe"
|
||||
File "vorbis.dll"
|
||||
File "vorbisfile.dll"
|
||||
File "WhatsNew.txt"
|
||||
File "zlib1.dll"
|
||||
!include "dlls.nsi"
|
||||
|
||||
SetOutPath $UQMUSERDATA
|
||||
SetOverwrite try
|
||||
File "uqm-pc.cfg"
|
||||
@@ -522,6 +512,8 @@ Section Uninstall
|
||||
Delete "$INSTDIR\AUTHORS.txt"
|
||||
Delete "$INSTDIR\stderr.txt"
|
||||
|
||||
!include "undlls.nsi"
|
||||
|
||||
Delete "$SMPROGRAMS\$ICONS_GROUP\Uninstall.lnk"
|
||||
Delete "$SMPROGRAMS\$ICONS_GROUP\Options Configuration.lnk"
|
||||
Delete "$SMPROGRAMS\$ICONS_GROUP\Key Configuration.lnk"
|
||||
|
||||
Reference in New Issue
Block a user