From d24f813f3f2a05c112e803e4256b53535895fc98 Mon Sep 17 00:00:00 2001 From: Jedidiah Barber Date: Wed, 14 Jul 2021 11:49:10 +1200 Subject: Initial mirror commit --- packaging/FileAssociation.nsh | 190 +++++++++++++++++++++++++++++++++++ packaging/clean-deb.sh | 4 + packaging/create-source-archive.sh | 19 ++++ packaging/debian/changelog.Debian | 3 + packaging/debian/conffiles | 1 + packaging/debian/control | 17 ++++ packaging/debian/copyright | 9 ++ packaging/debian/freshmemory.1 | 13 +++ packaging/debian/freshmemory.desktop | 15 +++ packaging/debian/freshmemory.xml | 8 ++ packaging/debian/postinst | 6 ++ packaging/debian/prerm | 7 ++ packaging/freshmemory.nsi | 72 +++++++++++++ packaging/make-deb.sh | 126 +++++++++++++++++++++++ packaging/make-wininstaller.bat | 15 +++ packaging/packaging.txt | 66 ++++++++++++ packaging/qt-win/cleanup.bat | 2 + packaging/qt-win/copy_qtdlls.bat | 28 ++++++ packaging/qt-win/list.txt | 25 +++++ 19 files changed, 626 insertions(+) create mode 100644 packaging/FileAssociation.nsh create mode 100755 packaging/clean-deb.sh create mode 100755 packaging/create-source-archive.sh create mode 100644 packaging/debian/changelog.Debian create mode 100644 packaging/debian/conffiles create mode 100644 packaging/debian/control create mode 100644 packaging/debian/copyright create mode 100644 packaging/debian/freshmemory.1 create mode 100644 packaging/debian/freshmemory.desktop create mode 100644 packaging/debian/freshmemory.xml create mode 100755 packaging/debian/postinst create mode 100755 packaging/debian/prerm create mode 100644 packaging/freshmemory.nsi create mode 100755 packaging/make-deb.sh create mode 100644 packaging/make-wininstaller.bat create mode 100644 packaging/packaging.txt create mode 100644 packaging/qt-win/cleanup.bat create mode 100644 packaging/qt-win/copy_qtdlls.bat create mode 100644 packaging/qt-win/list.txt (limited to 'packaging') diff --git a/packaging/FileAssociation.nsh b/packaging/FileAssociation.nsh new file mode 100644 index 0000000..157257f --- /dev/null +++ b/packaging/FileAssociation.nsh @@ -0,0 +1,190 @@ +/* +_____________________________________________________________________________ + + File Association +_____________________________________________________________________________ + + Based on code taken from http://nsis.sourceforge.net/File_Association + + Usage in script: + 1. !include "FileAssociation.nsh" + 2. [Section|Function] + ${FileAssociationFunction} "Param1" "Param2" "..." $var + [SectionEnd|FunctionEnd] + + FileAssociationFunction=[RegisterExtension|UnRegisterExtension] + +_____________________________________________________________________________ + + ${RegisterExtension} "[executable]" "[extension]" "[description]" + +"[executable]" ; executable which opens the file format + ; +"[extension]" ; extension, which represents the file format to open + ; +"[description]" ; description for the extension. This will be display in Windows Explorer. + ; + + + ${UnRegisterExtension} "[extension]" "[description]" + +"[extension]" ; extension, which represents the file format to open + ; +"[description]" ; description for the extension. This will be display in Windows Explorer. + ; + +_____________________________________________________________________________ + + Macros +_____________________________________________________________________________ + + Change log window verbosity (default: 3=no script) + + Example: + !include "FileAssociation.nsh" + !insertmacro RegisterExtension + ${FileAssociation_VERBOSE} 4 # all verbosity + !insertmacro UnRegisterExtension + ${FileAssociation_VERBOSE} 3 # no script +*/ + + +!ifndef FileAssociation_INCLUDED +!define FileAssociation_INCLUDED + +!include Util.nsh + +!verbose push +!verbose 3 +!ifndef _FileAssociation_VERBOSE + !define _FileAssociation_VERBOSE 3 +!endif +!verbose ${_FileAssociation_VERBOSE} +!define FileAssociation_VERBOSE `!insertmacro FileAssociation_VERBOSE` +!verbose pop + +!macro FileAssociation_VERBOSE _VERBOSE + !verbose push + !verbose 3 + !undef _FileAssociation_VERBOSE + !define _FileAssociation_VERBOSE ${_VERBOSE} + !verbose pop +!macroend + + + +!macro RegisterExtensionCall _EXECUTABLE _EXTENSION _DESCRIPTION + !verbose push + !verbose ${_FileAssociation_VERBOSE} + Push `${_DESCRIPTION}` + Push `${_EXTENSION}` + Push `${_EXECUTABLE}` + ${CallArtificialFunction} RegisterExtension_ + !verbose pop +!macroend + +!macro UnRegisterExtensionCall _EXTENSION _DESCRIPTION + !verbose push + !verbose ${_FileAssociation_VERBOSE} + Push `${_EXTENSION}` + Push `${_DESCRIPTION}` + ${CallArtificialFunction} UnRegisterExtension_ + !verbose pop +!macroend + + + +!define RegisterExtension `!insertmacro RegisterExtensionCall` +!define un.RegisterExtension `!insertmacro RegisterExtensionCall` + +!macro RegisterExtension +!macroend + +!macro un.RegisterExtension +!macroend + +!macro RegisterExtension_ + !verbose push + !verbose ${_FileAssociation_VERBOSE} + + Exch $R2 ;exe + Exch + Exch $R1 ;ext + Exch + Exch 2 + Exch $R0 ;desc + Exch 2 + Push $0 + Push $1 + + ReadRegStr $1 HKCR $R1 "" ; read current file association + StrCmp "$1" "" NoBackup ; is it empty + StrCmp "$1" "$R0" NoBackup ; is it our own + WriteRegStr HKCR $R1 "backup_val" "$1" ; backup current value +NoBackup: + WriteRegStr HKCR $R1 "" "$R0" ; set our file association + + ReadRegStr $0 HKCR $R0 "" + StrCmp $0 "" 0 Skip + WriteRegStr HKCR "$R0" "" "$R0" + WriteRegStr HKCR "$R0\shell" "" "open" + WriteRegStr HKCR "$R0\DefaultIcon" "" "$R2,0" +Skip: + WriteRegStr HKCR "$R0\shell\open\command" "" '"$R2" "%1"' + WriteRegStr HKCR "$R0\shell\edit" "" "Edit $R0" + WriteRegStr HKCR "$R0\shell\edit\command" "" '"$R2" "%1"' + + Pop $1 + Pop $0 + Pop $R2 + Pop $R1 + Pop $R0 + + !verbose pop +!macroend + + + +!define UnRegisterExtension `!insertmacro UnRegisterExtensionCall` +!define un.UnRegisterExtension `!insertmacro UnRegisterExtensionCall` + +!macro UnRegisterExtension +!macroend + +!macro un.UnRegisterExtension +!macroend + +!macro UnRegisterExtension_ + !verbose push + !verbose ${_FileAssociation_VERBOSE} + + Exch $R1 ;desc + Exch + Exch $R0 ;ext + Exch + Push $0 + Push $1 + + ReadRegStr $1 HKCR $R0 "" + StrCmp $1 $R1 0 NoOwn ; only do this if we own it + ReadRegStr $1 HKCR $R0 "backup_val" + StrCmp $1 "" 0 Restore ; if backup="" then delete the whole key + DeleteRegKey HKCR $R0 + Goto NoOwn + +Restore: + WriteRegStr HKCR $R0 "" $1 + DeleteRegValue HKCR $R0 "backup_val" + DeleteRegKey HKCR $R1 ;Delete key with association name settings + +NoOwn: + + Pop $1 + Pop $0 + Pop $R1 + Pop $R0 + + !verbose pop +!macroend + +!endif # !FileAssociation_INCLUDED \ No newline at end of file diff --git a/packaging/clean-deb.sh b/packaging/clean-deb.sh new file mode 100755 index 0000000..3569a8d --- /dev/null +++ b/packaging/clean-deb.sh @@ -0,0 +1,4 @@ +sudo rm -r freshmemory_* +rm packaging/debian/control.diff +rm packaging/debian/desktop.diff + diff --git a/packaging/create-source-archive.sh b/packaging/create-source-archive.sh new file mode 100755 index 0000000..a63842a --- /dev/null +++ b/packaging/create-source-archive.sh @@ -0,0 +1,19 @@ +#!/bin/bash + +VERSION=`cat debian/control|grep Version| cut -d' ' -f2| cut -d'-' -f1` +echo Version $VERSION +BRANCH=`hg log -r v$VERSION|grep branch|head -n1| cut -d' ' -f7` +echo Branch $BRANCH +SRC_DIR=$PWD +DST_DIR=freshmemory-$VERSION + +cd .. +hg clone $SRC_DIR $DST_DIR > /dev/null + +cd $DST_DIR +hg up $BRANCH > /dev/null +rm -r .hg* +cd .. + +tar cvjf $DST_DIR.tar.bz2 $DST_DIR > /dev/null + diff --git a/packaging/debian/changelog.Debian b/packaging/debian/changelog.Debian new file mode 100644 index 0000000..09371c0 --- /dev/null +++ b/packaging/debian/changelog.Debian @@ -0,0 +1,3 @@ +freshmemory unstable; urgency=high + * See change log at fresh-memory.com or /ChangeLog file + -- Mykhaylo Kopytonenko diff --git a/packaging/debian/conffiles b/packaging/debian/conffiles new file mode 100644 index 0000000..45dfb78 --- /dev/null +++ b/packaging/debian/conffiles @@ -0,0 +1 @@ +/etc/xdg/freshmemory/freshmemory.ini diff --git a/packaging/debian/control b/packaging/debian/control new file mode 100644 index 0000000..f8d5564 --- /dev/null +++ b/packaging/debian/control @@ -0,0 +1,17 @@ +Package: freshmemory +Priority: optional +Version: 1.5.0-1 +Section: education +Installed-Size: 2636 +Maintainer: Mykhaylo Kopytonenko +Homepage: http://fresh-memory.com +Architecture: amd64 +Depends: libc6, libstdc++6, libqt5core5a (>= 5.2), libqt5widgets5 (>= 5.2), libqt5gui5 (>= 5.2), libqt5xml5 (>= 5.2), libqt5network5 (>= 5.2), libqt5svg5 (>= 5.2), qttranslations5-l10n (>=5.2) +Description: Flashcards application with Spaced Repetition method + Fresh Memory is an education application for studying languages + with Spaced Repetition method and flashcards. Its primary purpose + is to study and repeat vocabulary of foreign languages. But other + disciplines can be studied as well: history, geography, medicine, + mathematics. The study material is stored as collections of + flashcards. + diff --git a/packaging/debian/copyright b/packaging/debian/copyright new file mode 100644 index 0000000..587e08b --- /dev/null +++ b/packaging/debian/copyright @@ -0,0 +1,9 @@ +Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: Freshmemory +Source: http://fresh-memory.com + +Files: * +Copyright: 2015 Mykhaylo Kopytonenko +License: GPL-3 + /usr/share/common-licenses/GPL-3 + diff --git a/packaging/debian/freshmemory.1 b/packaging/debian/freshmemory.1 new file mode 100644 index 0000000..00a9f12 --- /dev/null +++ b/packaging/debian/freshmemory.1 @@ -0,0 +1,13 @@ +.TH man 1 "05 Oct 2015" "1.x.0" "freshmemory man page" +.SH NAME +freshmemory \- Flashcards application using Spaced +Repetition method +.SH SYNOPSIS +freshmemory [dictionary-file] +.SH DESCRIPTION +Fresh Memory +.SH OPTIONS +No options +.SH AUTHOR +Mykhaylo Kopytonenko (mishakop@gmail.com) + diff --git a/packaging/debian/freshmemory.desktop b/packaging/debian/freshmemory.desktop new file mode 100644 index 0000000..0159e95 --- /dev/null +++ b/packaging/debian/freshmemory.desktop @@ -0,0 +1,15 @@ +[Desktop Entry] +Name=Fresh Memory +Version=1.5.0 +Encoding=UTF-8 +Type=Application +Comment=Flashcards application with Spaced Repetition +Exec=freshmemory %U +Icon=freshmemory +Categories=Education +X-Maemo-Category=Main +X-Window-Icon=freshmemory +X-Window-Icon-Dimmed=freshmemory +MimeType=application/x-fm-dictionary +Name[en_US]=Fresh Memory + diff --git a/packaging/debian/freshmemory.xml b/packaging/debian/freshmemory.xml new file mode 100644 index 0000000..b6505de --- /dev/null +++ b/packaging/debian/freshmemory.xml @@ -0,0 +1,8 @@ + + + + Freshmemory dictionary + + + + diff --git a/packaging/debian/postinst b/packaging/debian/postinst new file mode 100755 index 0000000..78e82c3 --- /dev/null +++ b/packaging/debian/postinst @@ -0,0 +1,6 @@ +#!/bin/sh +set -e +xdg-mime install --novendor /usr/share/freshmemory/freshmemory.xml +update-mime-database /usr/share/mime +xdg-desktop-menu install --novendor /usr/share/applications/freshmemory.desktop +xdg-icon-resource install --context mimetypes --size 128 /usr/share/pixmaps/freshmemory.png application-x-fm-dictionary diff --git a/packaging/debian/prerm b/packaging/debian/prerm new file mode 100755 index 0000000..22fa72a --- /dev/null +++ b/packaging/debian/prerm @@ -0,0 +1,7 @@ +#!/bin/sh +set -e +xdg-mime uninstall --novendor /usr/share/freshmemory/freshmemory.xml +update-mime-database /usr/share/mime +xdg-desktop-menu uninstall --novendor /usr/share/applications/freshmemory.desktop +xdg-icon-resource uninstall --context mimetypes --size 128 /usr/share/pixmaps/freshmemory.png application-x-fm-dictionary + diff --git a/packaging/freshmemory.nsi b/packaging/freshmemory.nsi new file mode 100644 index 0000000..dc5096d --- /dev/null +++ b/packaging/freshmemory.nsi @@ -0,0 +1,72 @@ +SetCompressor /SOLID lzma +!include "FileAssociation.nsh" + +!define /file VERSION ..\version.txt + +Name "Fresh Memory ${VERSION}" +OutFile "freshmemory-${VERSION}-setup.exe" + +Icon ..\images\mainicon.ico + +Page license +Page components +Page directory +Page instfiles +UninstPage uninstConfirm +UninstPage instfiles + +LicenseData ..\COPYING + +InstType "Normal" + +InstallDir $PROGRAMFILES\Freshmemory + +Section "Fresh Memory (required)" + SectionIn RO + SetOutPath $INSTDIR + File ..\freshmemory.exe + WriteUninstaller $INSTDIR\Uninstall.exe + + File /oname=README.txt ..\README + File /oname=ChangeLog.txt ..\ChangeLog + File /oname=AUTHORS.txt ..\AUTHORS + + SetOutPath "$INSTDIR\tr" + File ..\tr\*.qm + + SetShellVarContext all + CreateDirectory "$SMPROGRAMS\Fresh Memory" + Delete "$SMPROGRAMS\Fresh Memory\Fresh Memory*.lnk" + CreateShortCut "$SMPROGRAMS\Fresh Memory\Fresh Memory ${VERSION}.lnk" "$INSTDIR\freshmemory.exe" + CreateShortCut "$SMPROGRAMS\Fresh Memory\Uninstall.lnk" "$INSTDIR\Uninstall.exe" + WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Fresh Memory" "DisplayName" "Fresh Memory ${VERSION}" + WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Fresh Memory" "UninstallString" "$INSTDIR\Uninstall.exe" + + ${registerExtension} "$PROGRAMFILES\Freshmemory\freshmemory.exe" ".fmd" "Freshmemory dictionary" +SectionEnd + +Section "Qt libraries" + SectionIn 1 + SetOutPath "$INSTDIR" + File qt-win\*.dll + SetOutPath "$INSTDIR\imageformats" + File qt-win\imageformats\*.dll + SetOutPath "$INSTDIR\platforms" + File qt-win\platforms\*.dll +SectionEnd + +Section "Uninstall" + ${unregisterExtension} ".fmd" "Freshmemory dictionary" + + RMDir /r $INSTDIR + + SetShellVarContext all + RMDir /r $APPDATA\freshmemory + SetShellVarContext current + RMDir /r $APPDATA\freshmemory + + SetShellVarContext all + Delete "$SMPROGRAMS\Fresh Memory\*" + RMDir "$SMPROGRAMS\Fresh Memory" + DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Fresh Memory" +SectionEnd diff --git a/packaging/make-deb.sh b/packaging/make-deb.sh new file mode 100755 index 0000000..a7e7817 --- /dev/null +++ b/packaging/make-deb.sh @@ -0,0 +1,126 @@ +#!/bin/bash + +# Checks + +DEBIAN_DIR=packaging/debian +VERSION=`cat version.txt` +PKG_REVISION=1 +ARCH=amd64 +if [ `uname -i` != 'x86_64' ] +then + ARCH=i386 +fi +echo "Arch: $ARCH" + +DEBROOT=freshmemory_${VERSION}-${PKG_REVISION}_${ARCH} + +if [ ! -x freshmemory ] +then + echo "Error: Executable 'freshmemory' doesn't exist" + exit 1 +fi + +if [ -x ${DEBROOT} ] +then + sudo rm -rf ${DEBROOT} +fi + +strip freshmemory + +lrelease -silent freshmemory.pro + +mkdir -p $DEBROOT/DEBIAN +cp ${DEBIAN_DIR}/control $DEBROOT/DEBIAN +cp ${DEBIAN_DIR}/conffiles $DEBROOT/DEBIAN +cp ${DEBIAN_DIR}/postinst $DEBROOT/DEBIAN +cp ${DEBIAN_DIR}/prerm $DEBROOT/DEBIAN + +mkdir -p $DEBROOT/usr/bin +cp freshmemory $DEBROOT/usr/bin + +mkdir -p $DEBROOT/etc/xdg/freshmemory +cp doc/config/freshmemory.ini $DEBROOT/etc/xdg/freshmemory + +mkdir -p $DEBROOT/usr/share/freshmemory +cp --parents tr/*.qm $DEBROOT/usr/share/freshmemory + +cp ${DEBIAN_DIR}/freshmemory.xml $DEBROOT/usr/share/freshmemory + +# Copying Linux platform files + +DEBDOCDIR=$DEBROOT/usr/share/doc/freshmemory +mkdir -p $DEBDOCDIR +cp AUTHORS $DEBDOCDIR +cp ${DEBIAN_DIR}/copyright $DEBDOCDIR +cp README $DEBDOCDIR +cp ${DEBIAN_DIR}/changelog.Debian $DEBDOCDIR +gzip --best $DEBDOCDIR/changelog.Debian + +DEBMANDIR=$DEBROOT/usr/share/man/man1 +mkdir -p $DEBMANDIR +cp ${DEBIAN_DIR}/freshmemory.1 $DEBMANDIR +gzip --best $DEBMANDIR/freshmemory.1 + +mkdir -p $DEBROOT/usr/share/applications +cp ${DEBIAN_DIR}/freshmemory.desktop $DEBROOT/usr/share/applications +mkdir -p $DEBROOT/usr/share/pixmaps +cp images/freshmemory.png $DEBROOT/usr/share/pixmaps + +# Patching control file + +PKGSIZE=`du -s --exclude DEBIAN $DEBROOT| cut -f1` +echo "Package size: $PKGSIZE" + +CONTROL_TARGET=$DEBROOT/DEBIAN/control +CONTROL_DIFF=${DEBIAN_DIR}/control.diff +cp /dev/null $CONTROL_DIFF + +VERSION_NUMSTR=`grep "Version" -n $CONTROL_TARGET` +VERSION_LINE=`echo $VERSION_NUMSTR | cut -d: -f1` +VERSION_STR=`echo $VERSION_NUMSTR | cut -d: -f2-3` +echo "@@ -$VERSION_LINE,1 +$VERSION_LINE,1 @@" >> $CONTROL_DIFF +echo "-$VERSION_STR" >> $CONTROL_DIFF +echo "+Version: $VERSION-1" >> $CONTROL_DIFF + +SIZE_NUMSTR=`grep "Installed-Size" -n $CONTROL_TARGET` +SIZE_LINE=`echo $SIZE_NUMSTR | cut -d: -f1` +SIZE_STR=`echo $SIZE_NUMSTR | cut -d: -f2-3` +echo "@@ -$SIZE_LINE,1 +$SIZE_LINE,1 @@" >> $CONTROL_DIFF +echo "-$SIZE_STR" >> $CONTROL_DIFF +echo "+Installed-Size: $PKGSIZE" >> $CONTROL_DIFF + +ARCH_NUMSTR=`grep "Architecture" -n $CONTROL_TARGET` +ARCH_LINE=`echo $ARCH_NUMSTR | cut -d: -f1` +ARCH_STR=`echo $ARCH_NUMSTR | cut -d: -f2-3` +echo "@@ -$ARCH_LINE,1 +$ARCH_LINE,1 @@" >> $CONTROL_DIFF +echo "-$ARCH_STR" >> $CONTROL_DIFF +echo "+Architecture: $ARCH" >> $CONTROL_DIFF + +patch $CONTROL_TARGET < $CONTROL_DIFF + +# Patching desktop file + +DESKTOP_TARGET=$DEBROOT/usr/share/applications/freshmemory.desktop +DESKTOP_DIFF=${DEBIAN_DIR}/desktop.diff +cp /dev/null $DESKTOP_DIFF + +VERSION_NUMSTR=`grep "Version" -n $DESKTOP_TARGET` +VERSION_LINE=`echo $VERSION_NUMSTR | cut -d: -f1` +VERSION_STR=`echo $VERSION_NUMSTR | cut -d: -f2-3` +echo "@@ -$VERSION_LINE,1 +$VERSION_LINE,1 @@" >> $DESKTOP_DIFF +echo "-$VERSION_STR" >> $DESKTOP_DIFF +echo "+Version=$VERSION" >> $DESKTOP_DIFF + +patch $DESKTOP_TARGET < $DESKTOP_DIFF + +# Access rights + +sudo chown root:root -R ${DEBROOT} +sudo chmod g-w -R ${DEBROOT} +sudo chmod -x ${DEBROOT}/etc/xdg/freshmemory/freshmemory.ini + +# Make deb + +dpkg-deb -b ${DEBROOT} ${DEBROOT}.deb +lintian ${DEBROOT}.deb + diff --git a/packaging/make-wininstaller.bat b/packaging/make-wininstaller.bat new file mode 100644 index 0000000..9b0d0ee --- /dev/null +++ b/packaging/make-wininstaller.bat @@ -0,0 +1,15 @@ +cd .. +lrelease freshmemory.pro + +cd eula +call make plain + +cd ..\packaging + +cd qt-win +call copy_qtdlls.bat + +cd .. +"C:\Program Files (x86)\NSIS\unicode\makensis.exe" freshmemory.nsi + +pause \ No newline at end of file diff --git a/packaging/packaging.txt b/packaging/packaging.txt new file mode 100644 index 0000000..cf93b13 --- /dev/null +++ b/packaging/packaging.txt @@ -0,0 +1,66 @@ +Set Versions: + - version.txt - For qmake and Windows installer + - src/version.h - Only dictionary and study file versions + +What the scripts do: + - Generate translations: lrelease + +Prepare packages: + - Ubuntu 64-bit + - Windows + - Source archive + +Windows +============= +Required installs: +- (Sphinx-doc) +- NSIS Unicode + https://code.google.com/p/unsis/downloads/list +- Set QTDIR=C:\Qt\5.2.1 + +Compile: + qmake + make release + +Make installer: + Click make-wininstaller.bat + + +Ubuntu Linux +============== + +Required installs: + qt5-default + qtbase5-dev + qttools5-dev-tools + qttranslations5-l10n + g++ + python-sphinx + git + +Compile: + qmake + make + +./packaging/make-deb.sh + +What script does: + * All file structure are created + * Changelog is zipped + * Architecture and Installed-Size are set in debian control + * Version is set in freshmemory.desktop + * Checks with lintian + +Clean: +./packaging/clean-deb.sh + +http://www.linuxfordevices.com/c/a/Linux-For-Devices-Articles/How-to-make-deb-packages/ + + +Source archive +===================== + +From the repository root: + packaging/create-source-archive.sh + + diff --git a/packaging/qt-win/cleanup.bat b/packaging/qt-win/cleanup.bat new file mode 100644 index 0000000..fb8324d --- /dev/null +++ b/packaging/qt-win/cleanup.bat @@ -0,0 +1,2 @@ +del *.dll +rd /s /q imageformats diff --git a/packaging/qt-win/copy_qtdlls.bat b/packaging/qt-win/copy_qtdlls.bat new file mode 100644 index 0000000..09b372d --- /dev/null +++ b/packaging/qt-win/copy_qtdlls.bat @@ -0,0 +1,28 @@ +call cleanup.bat + +copy %QTDIR%\bin\Qt5Core.dll . +copy %QTDIR%\bin\Qt5Gui.dll . +copy %QTDIR%\bin\Qt5Widgets.dll . +copy %QTDIR%\bin\Qt5Network.dll . +copy %QTDIR%\bin\libwinpthread-1.dll . +copy %QTDIR%\bin\icuin51.dll . +copy %QTDIR%\bin\icuuc51.dll . +copy %QTDIR%\bin\icudt51.dll . +copy %QTDIR%\bin\libgcc_s_dw2-1.dll . +copy %QTDIR%\bin\libstdc*-6.dll . + +set QTIMG_PLUGINS=%QTDIR%\plugins\imageformats +set DSTIMG_PLUGINS=.\imageformats +mkdir %DSTIMG_PLUGINS% +copy %QTIMG_PLUGINS%\qgif.dll %DSTIMG_PLUGINS% +copy %QTIMG_PLUGINS%\qico.dll %DSTIMG_PLUGINS% +copy %QTIMG_PLUGINS%\qjpeg.dll %DSTIMG_PLUGINS% +copy %QTIMG_PLUGINS%\qmng.dll %DSTIMG_PLUGINS% +copy %QTIMG_PLUGINS%\qsvg.dll %DSTIMG_PLUGINS% +copy %QTIMG_PLUGINS%\qtga.dll %DSTIMG_PLUGINS% +copy %QTIMG_PLUGINS%\qtiff.dll %DSTIMG_PLUGINS% + +set QT_PLATFORMS=%QTDIR%\plugins\platforms +set DST_PLATFORMS=.\platforms +mkdir %DST_PLATFORMS% +copy %QT_PLATFORMS%\qwindows.dll %DST_PLATFORMS% diff --git a/packaging/qt-win/list.txt b/packaging/qt-win/list.txt new file mode 100644 index 0000000..283afa7 --- /dev/null +++ b/packaging/qt-win/list.txt @@ -0,0 +1,25 @@ +QTDIR = C:\Qt\5\5.2.1\mingw48_32 + +%QTDIR%\bin: + Qt5Core.dll + Qt5Gui.dll + Qt5Widgets.dll + Qt5Network.dll + libwinpthread-1.dll + icuin51.dll + icuuc51.dll + icudt51.dll + libgcc_s_dw2-1.dll + libstdc++-6.dll + +%QTDIR%\plugins\imageformats: + qgif.dll + qico.dll + qjpeg.dll + qmng.dll + qsvg.dll + qtga.dll + qtiff.dll + +%QTDIR%\plugins\platforms: + qtwindows.dll -- cgit