Move buildscripts.
This commit is contained in:
73
buildscripts/build_macos.sh
Executable file
73
buildscripts/build_macos.sh
Executable file
@@ -0,0 +1,73 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -eu
|
||||
|
||||
show_usage() {
|
||||
echo -e "Usage: $0 <host> <branch> [config]"
|
||||
}
|
||||
|
||||
if [ $# -lt 1 ]
|
||||
then
|
||||
show_usage
|
||||
exit 1
|
||||
fi
|
||||
|
||||
SERVER_HOST=$1
|
||||
BRANCH=$2
|
||||
|
||||
QT_VERSION=5.7
|
||||
QT_REVISION=${QT_VERSION}.0
|
||||
QCMA_SOURCES=~/projects/qcma
|
||||
|
||||
VERSION=$(git -C "${QCMA_SOURCES}" describe --tags --abbrev=8)
|
||||
VERSION=${VERSION#v*}
|
||||
|
||||
if [ $# -ge 3 ]; then
|
||||
CONFIG=$3
|
||||
else
|
||||
CONFIG=
|
||||
fi
|
||||
|
||||
case "$CONFIG" in
|
||||
*DISABLE_FFMPEG*)
|
||||
BUILD_MODE=_noffmpeg
|
||||
;;
|
||||
*)
|
||||
BUILD_MODE=
|
||||
;;
|
||||
esac
|
||||
|
||||
git -C "${QCMA_SOURCES}" bundle create qcma.bundle --all
|
||||
scp "${QCMA_SOURCES}/qcma.bundle" $SERVER_HOST:qcma.bundle
|
||||
|
||||
ssh -T "${SERVER_HOST}" << EOSSH
|
||||
#!/bin/bash
|
||||
|
||||
set -eu
|
||||
QCMA_DIR="\$HOME/qcma"
|
||||
rm -rf "\${QCMA_DIR}"
|
||||
git clone -b ${BRANCH} qcma.bundle "\${QCMA_DIR}"
|
||||
|
||||
rm -rf qcma_build
|
||||
mkdir qcma_build
|
||||
|
||||
pushd qcma_build
|
||||
PATH=~/Qt${QT_REVISION}/${QT_VERSION}/clang_64/bin:/usr/local/bin:\$PATH
|
||||
lrelease "\${QCMA_DIR}/qcma.pro"
|
||||
qmake "\${QCMA_DIR}/qcma.pro" $CONFIG
|
||||
make -j2
|
||||
popd
|
||||
|
||||
rm -rf \${HOME}/qcma_output
|
||||
mkdir \${HOME}/qcma_output
|
||||
mv qcma_build/gui/qcma.app \${HOME}/qcma_output/Qcma.app
|
||||
cp \${QCMA_DIR}/buildscripts/macos/* \${HOME}/qcma_output/
|
||||
|
||||
pushd \${HOME}/qcma_output/
|
||||
macdeployqt Qcma.app -appstore-compliant
|
||||
appdmg appdmg.json Qcma_${VERSION}${BUILD_MODE}.dmg
|
||||
echo "Created Qcma_${VERSION}${BUILD_MODE}.dmg"
|
||||
popd
|
||||
EOSSH
|
||||
|
||||
scp ${SERVER_HOST}:qcma_output/Qcma_${VERSION}${BUILD_MODE}.dmg .
|
||||
91
buildscripts/build_windows.sh
Executable file
91
buildscripts/build_windows.sh
Executable file
@@ -0,0 +1,91 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -ex
|
||||
|
||||
SERVER_HOST=$1
|
||||
|
||||
VERSION=$(git describe --tags --abbrev=8)
|
||||
|
||||
scp windows/driver/*.exe ${SERVER_HOST}:
|
||||
scp windows/qcma.nsi ${SERVER_HOST}:qcma.nsi
|
||||
scp COPYING ${SERVER_HOST}:COPYING.rtf
|
||||
scp gui/resources/images/qcma.ico ${SERVER_HOST}:qcma.ico
|
||||
|
||||
ssh -T "${SERVER_HOST}" << EOSSH
|
||||
#!/bin/bash
|
||||
set -ex
|
||||
|
||||
for arch in i686 x86_64; do
|
||||
if [ "\$arch" == "i686" ]; then
|
||||
bits=32
|
||||
seh=libgcc_s_dw2-1.dll
|
||||
else
|
||||
bits=64
|
||||
seh=libgcc_s_seh-1.dll
|
||||
fi
|
||||
rm -rf win_\${arch}
|
||||
mkdir win_\${arch}
|
||||
OUT=\$(pwd)
|
||||
|
||||
pushd /cygdrive/c/ffmpeg-3.1.4-win\${bits}-shared/bin
|
||||
cp avcodec-57.dll "\${OUT}/win_\${arch}/"
|
||||
cp avformat-57.dll "\${OUT}/win_\${arch}/"
|
||||
cp avutil-55.dll "\${OUT}/win_\${arch}/"
|
||||
cp swscale-4.dll "\${OUT}/win_\${arch}/"
|
||||
cp swresample-2.dll "\${OUT}/win_\${arch}/"
|
||||
|
||||
pushd /cygdrive/c/msys64/mingw\${bits}/bin
|
||||
cp libfreetype-6.dll "\${OUT}/win_\${arch}/"
|
||||
cp \${seh} "\${OUT}/win_\${arch}/"
|
||||
cp libglib-2.0-0.dll "\${OUT}/win_\${arch}/"
|
||||
cp libgraphite2.dll "\${OUT}/win_\${arch}/"
|
||||
cp libharfbuzz-0.dll "\${OUT}/win_\${arch}/"
|
||||
cp libiconv-2.dll "\${OUT}/win_\${arch}/"
|
||||
cp libicudt57.dll "\${OUT}/win_\${arch}/"
|
||||
cp libicuin57.dll "\${OUT}/win_\${arch}/"
|
||||
cp libicuuc57.dll "\${OUT}/win_\${arch}/"
|
||||
cp libjpeg-8.dll "\${OUT}/win_\${arch}/"
|
||||
cp libpcre-1.dll "\${OUT}/win_\${arch}/"
|
||||
cp libpcre16-0.dll "\${OUT}/win_\${arch}/"
|
||||
cp libpng16-16.dll "\${OUT}/win_\${arch}/"
|
||||
cp libsqlite3-0.dll "\${OUT}/win_\${arch}/"
|
||||
cp libstdc++-6.dll "\${OUT}/win_\${arch}/"
|
||||
cp libtiff-5.dll "\${OUT}/win_\${arch}/"
|
||||
cp libusb-1.0.dll "\${OUT}/win_\${arch}/"
|
||||
cp libvitamtp-5.dll "\${OUT}/win_\${arch}/"
|
||||
cp libwinpthread-1.dll "\${OUT}/win_\${arch}/"
|
||||
cp libxml2-2.dll "\${OUT}/win_\${arch}/"
|
||||
cp Qt5Core.dll "\${OUT}/win_\${arch}/"
|
||||
cp Qt5Gui.dll "\${OUT}/win_\${arch}/"
|
||||
cp Qt5Sql.dll "\${OUT}/win_\${arch}/"
|
||||
cp Qt5Network.dll "\${OUT}/win_\${arch}/"
|
||||
cp Qt5Widgets.dll "\${OUT}/win_\${arch}/"
|
||||
cp zlib1.dll "\${OUT}/win_\${arch}/"
|
||||
cp liblzma-5.dll "\${OUT}/win_\${arch}/"
|
||||
cp libbz2-1.dll "\${OUT}/win_\${arch}/"
|
||||
cp libintl-8.dll "\${OUT}/win_\${arch}/"
|
||||
|
||||
cp qcma.exe "\${OUT}/win_\${arch}/"
|
||||
cp qcma_console.exe "\${OUT}/win_\${arch}/"
|
||||
|
||||
pushd /cygdrive/c/msys64/mingw\${bits}/share/qt5/plugins
|
||||
mkdir "\${OUT}/win_\${arch}/platforms"
|
||||
mkdir "\${OUT}/win_\${arch}/imageformats"
|
||||
mkdir "\${OUT}/win_\${arch}/sqldrivers"
|
||||
cp platforms/qwindows.dll "\${OUT}/win_\${arch}/platforms"
|
||||
cp imageformats/qgif.dll "\${OUT}/win_\${arch}/imageformats"
|
||||
cp imageformats/qjpeg.dll "\${OUT}/win_\${arch}/imageformats"
|
||||
cp imageformats/qtiff.dll "\${OUT}/win_\${arch}/imageformats"
|
||||
cp sqldrivers/qsqlite.dll "\${OUT}/win_\${arch}/sqldrivers"
|
||||
|
||||
pushd /cygdrive/c/msys64/mingw\${bits}/share/qt5/translations
|
||||
mkdir "\${OUT}/win_\${arch}/"translations
|
||||
cp qt_*.qm "\${OUT}/win_\${arch}/"translations
|
||||
popd
|
||||
popd
|
||||
popd
|
||||
popd
|
||||
done
|
||||
"/cygdrive/c/Program Files (x86)/NSIS/makensis" qcma.nsi
|
||||
EOSSH
|
||||
scp ${SERVER_HOST}:Qcma_setup.exe Qcma_setup-${VERSION}.exe
|
||||
10
buildscripts/macos/appdmg.json
Normal file
10
buildscripts/macos/appdmg.json
Normal file
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"title": "Qcma Installer",
|
||||
"icon": "installer.icns",
|
||||
"background": "installer-bg.png",
|
||||
"icon-size": 80,
|
||||
"contents": [
|
||||
{ "x": 456, "y": 344, "type": "link", "path": "/Applications" },
|
||||
{ "x": 182, "y": 344, "type": "file", "path": "Qcma.app" }
|
||||
]
|
||||
}
|
||||
BIN
buildscripts/macos/installer-bg.png
Normal file
BIN
buildscripts/macos/installer-bg.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 17 KiB |
BIN
buildscripts/macos/installer-bg@2x.png
Normal file
BIN
buildscripts/macos/installer-bg@2x.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 43 KiB |
BIN
buildscripts/macos/installer.icns
Normal file
BIN
buildscripts/macos/installer.icns
Normal file
Binary file not shown.
80
buildscripts/rpmbuild/qcma.spec
Normal file
80
buildscripts/rpmbuild/qcma.spec
Normal file
@@ -0,0 +1,80 @@
|
||||
#
|
||||
# qcma spec file
|
||||
#
|
||||
|
||||
%define _version 0.3.13
|
||||
|
||||
%if "%{_version}" == "testing" || "%{_version}" == "master"
|
||||
%define _verprefix %{_version}
|
||||
%else
|
||||
%define _verprefix v%{_version}
|
||||
%endif
|
||||
|
||||
%if 0%{?fedora}
|
||||
%define _qt5base qt5-qtbase
|
||||
%define _qt5imageformats qt5-qtimageformats
|
||||
%define _pkgconfig pkgconfig
|
||||
%define _qt5linguist qt5-linguist
|
||||
%define _qt5basedevel qt5-qtbase-devel
|
||||
%else
|
||||
%define qmake_qt5 qmake-qt5
|
||||
%define _qt5base libqt5-qtbase
|
||||
%define _qt5imageformats libqt5-qtimageformats
|
||||
%define _pkgconfig pkg-config
|
||||
%define _qt5linguist libqt5-linguist
|
||||
%define _qt5basedevel libqt5-qtbase-devel
|
||||
%endif
|
||||
|
||||
Name: qcma
|
||||
Summary: PSVita Content Manager Assistant
|
||||
License: GPL-3.0
|
||||
Release: 1
|
||||
Version: %{_version}
|
||||
URL: https://github.com/codestation/qcma
|
||||
Source: https://github.com/codestation/qcma/archive/%{_verprefix}/qcma-%{_version}.tar.gz
|
||||
Group: Productivity/File utilities
|
||||
Requires: libnotify
|
||||
Requires: ffmpeg
|
||||
Requires: %{_qt5base}
|
||||
Requires: %{_qt5imageformats}
|
||||
Requires: libvitamtp5 >= 2.5.9
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: %{_pkgconfig}
|
||||
BuildRequires: libnotify-devel
|
||||
BuildRequires: ffmpeg-devel
|
||||
BuildRequires: libvitamtp-devel
|
||||
BuildRequires: %{_qt5linguist}
|
||||
BuildRequires: %{_qt5basedevel}
|
||||
|
||||
%description
|
||||
QCMA is an cross-platform application to provide a Open Source implementation
|
||||
of the original Content Manager Assistant that comes with the PS Vita. QCMA
|
||||
is meant to be compatible with Linux, Windows and MAC OS X.
|
||||
|
||||
%prep
|
||||
%setup -n %{name}-%{version}
|
||||
|
||||
%build
|
||||
lrelease-qt5 common/resources/translations/*.ts
|
||||
%{qmake_qt5} PREFIX=/usr qcma.pro CONFIG+="QT5_SUFFIX"
|
||||
make %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
make install INSTALL_ROOT=%{buildroot}
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%{_bindir}/qcma
|
||||
%{_prefix}/share/applications/qcma.desktop
|
||||
%{_prefix}/share/icons/hicolor/64x64/apps/qcma.png
|
||||
%{_prefix}/share/man/man1/qcma.1.gz
|
||||
|
||||
%changelog
|
||||
|
||||
%package cli
|
||||
Summary: Content Manager Assistant for the PS Vita (headless version)
|
||||
%description cli
|
||||
Headless version of Qcma
|
||||
%files cli
|
||||
%{_bindir}/qcma_cli
|
||||
%{_prefix}/share/man/man1/qcma_cli.1.gz
|
||||
43
buildscripts/windows/PKGBUILD
Normal file
43
buildscripts/windows/PKGBUILD
Normal file
@@ -0,0 +1,43 @@
|
||||
_realname=qcma
|
||||
pkgbase=mingw-w64-${_realname}
|
||||
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
|
||||
pkgver=v0.3.13.13.g5236770
|
||||
pkgrel=1
|
||||
pkgdesc="Content Manager Assistant for the PS Vita"
|
||||
arch=(any)
|
||||
url="https://github.com/codestation/qcma"
|
||||
license=("GPL")
|
||||
makedepends=(${MINGW_PACKAGE_PREFIX}-pkg-config)
|
||||
depends=(${MINGW_PACKAGE_PREFIX}-crt ${MINGW_PACKAGE_PREFIX}-qt5 ${MINGW_PACKAGE_PREFIX}-ffmpeg ${MINGW_PACKAGE_PREFIX}-vitamtp)
|
||||
options=(strip staticlibs)
|
||||
source=('git+https://github.com/codestation/qcma.git#branch=testing')
|
||||
sha256sums=('SKIP')
|
||||
|
||||
pkgver() {
|
||||
cd qcma
|
||||
echo "$(git describe --long --tags | tr - .)"
|
||||
}
|
||||
|
||||
build() {
|
||||
unset LDFLAGS
|
||||
|
||||
for opt in gui console; do
|
||||
[[ -d ${srcdir}/build-${MINGW_CHOST} ]] && rm -rf ${srcdir}/build-${MINGW_CHOST}_${opt}
|
||||
mkdir -p ${srcdir}/build-${MINGW_CHOST}_${opt} && cd ${srcdir}/build-${MINGW_CHOST}_${opt}
|
||||
lrelease ../qcma/qcma.pro
|
||||
qmake ../qcma/qcma.pro CONFIG+=${opt}
|
||||
make
|
||||
done
|
||||
}
|
||||
|
||||
package() {
|
||||
|
||||
for opt in gui console; do
|
||||
cd ${srcdir}/build-${MINGW_CHOST}_${opt}
|
||||
if [ $opt == "console" ]; then
|
||||
install -D gui/qcma.exe "${pkgdir}${MINGW_PREFIX}/bin/qcma_console.exe"
|
||||
else
|
||||
install -D gui/qcma.exe "${pkgdir}${MINGW_PREFIX}/bin/qcma.exe"
|
||||
fi
|
||||
done
|
||||
}
|
||||
299
buildscripts/windows/qcma.nsi
Normal file
299
buildscripts/windows/qcma.nsi
Normal file
@@ -0,0 +1,299 @@
|
||||
#### QCMA NSIS Install Script
|
||||
|
||||
### Includes
|
||||
!include LogicLib.nsh
|
||||
!include MUI.nsh
|
||||
!include x64.nsh
|
||||
!include Sections.nsh
|
||||
|
||||
### General information
|
||||
!define PRODUCT_NAME "Qcma"
|
||||
!define PRODUCT_EXE_NAME "qcma.exe"
|
||||
!define PRODUCT_VERSION_MAJOR 0
|
||||
!define PRODUCT_VERSION_MINOR 3
|
||||
!define PRODUCT_VERSION_BUILD 13
|
||||
!define PRODUCT_PUBLISHER "codestation"
|
||||
!define PRODUCT_WEB_SITE "https://github.com/codestation/qcma"
|
||||
|
||||
### Macros
|
||||
!macro VerifyUserIsAdmin
|
||||
UserInfo::GetAccountType
|
||||
pop $0
|
||||
${If} $0 != "admin" ;Require admin rights on NT4+
|
||||
MessageBox mb_iconstop "Administrator rights required!"
|
||||
SetErrorLevel 740 ;ERROR_ELEVATION_REQUIRED
|
||||
Quit
|
||||
${EndIf}
|
||||
!macroend
|
||||
|
||||
### Functions
|
||||
Function finishPageRunFunction
|
||||
ExecShell "" "$INSTDIR\${PRODUCT_EXE_NAME}"
|
||||
FunctionEnd
|
||||
|
||||
Function finishpageaction
|
||||
CreateShortcut "$desktop\Qcma.lnk" "$instdir\qcma.exe"
|
||||
FunctionEnd
|
||||
|
||||
### Variables
|
||||
Var StartMenuFolder
|
||||
|
||||
### Installer settings
|
||||
|
||||
# Set compression
|
||||
SetCompressor /solid lzma
|
||||
|
||||
# Require admin rights on NT6+ (When UAC is turned on)
|
||||
RequestExecutionLevel admin
|
||||
|
||||
# This will be in the installer/uninstaller title bar
|
||||
Name "${PRODUCT_NAME}"
|
||||
OutFile "${PRODUCT_NAME}_setup.exe"
|
||||
InstallDir "$PROGRAMFILES\${PRODUCT_NAME}"
|
||||
|
||||
!define MUI_LANGDLL_ALLLANGUAGES
|
||||
!define MUI_ABORTWARNING
|
||||
|
||||
!define MUI_ICON "qcma.ico"
|
||||
!define MUI_UNICON "qcma.ico"
|
||||
|
||||
## Add installer pages
|
||||
!insertmacro MUI_PAGE_WELCOME
|
||||
!insertmacro MUI_PAGE_LICENSE "COPYING.rtf"
|
||||
!insertmacro MUI_PAGE_DIRECTORY
|
||||
!insertmacro MUI_PAGE_STARTMENU Application $StartMenuFolder
|
||||
!insertmacro MUI_PAGE_COMPONENTS
|
||||
!insertmacro MUI_PAGE_INSTFILES
|
||||
|
||||
!define MUI_FINISHPAGE_SHOWREADME ""
|
||||
!define MUI_FINISHPAGE_SHOWREADME_NOTCHECKED
|
||||
!define MUI_FINISHPAGE_SHOWREADME_TEXT "Create Desktop Shortcut"
|
||||
!define MUI_FINISHPAGE_SHOWREADME_FUNCTION finishpageaction
|
||||
|
||||
!define MUI_FINISHPAGE_RUN ""
|
||||
!define MUI_FINISHPAGE_RUN_NOTCHECKED
|
||||
!define MUI_FINISHPAGE_RUN_FUNCTION finishPageRunFunction
|
||||
!insertmacro MUI_PAGE_FINISH
|
||||
|
||||
## Add uninstaller pages
|
||||
!insertmacro MUI_UNPAGE_CONFIRM
|
||||
!insertmacro MUI_UNPAGE_INSTFILES
|
||||
!insertmacro MUI_UNPAGE_FINISH
|
||||
|
||||
## Define languages
|
||||
!insertmacro MUI_LANGUAGE "English"
|
||||
!insertmacro MUI_LANGUAGE "Spanish"
|
||||
!insertmacro MUI_LANGUAGE "Japanese"
|
||||
|
||||
### Installer
|
||||
|
||||
section "Qcma (required)"
|
||||
SectionIn RO
|
||||
|
||||
# Files for the install directory - to build the installer, these should be in the same directory as the install script (this file)
|
||||
SetOutPath $InstDir
|
||||
|
||||
# Files added here should be removed by the uninstaller (see section "uninstall")
|
||||
|
||||
${If} ${RunningX64}
|
||||
File "win_x86_64\qcma.exe"
|
||||
File "win_x86_64\qcma_console.exe"
|
||||
File "win_x86_64\avcodec-57.dll"
|
||||
File "win_x86_64\avformat-57.dll"
|
||||
File "win_x86_64\avutil-55.dll"
|
||||
File "win_x86_64\libfreetype-6.dll"
|
||||
File "win_x86_64\libgcc_s_seh-1.dll"
|
||||
File "win_x86_64\libglib-2.0-0.dll"
|
||||
File "win_x86_64\libgraphite2.dll"
|
||||
File "win_x86_64\libharfbuzz-0.dll"
|
||||
File "win_x86_64\libiconv-2.dll"
|
||||
File "win_x86_64\libicudt57.dll"
|
||||
File "win_x86_64\libicuin57.dll"
|
||||
File "win_x86_64\libicuuc57.dll"
|
||||
File "win_x86_64\libjpeg-8.dll"
|
||||
File "win_x86_64\libpcre-1.dll"
|
||||
File "win_x86_64\libpcre16-0.dll"
|
||||
File "win_x86_64\libpng16-16.dll"
|
||||
File "win_x86_64\libsqlite3-0.dll"
|
||||
File "win_x86_64\libstdc++-6.dll"
|
||||
File "win_x86_64\libtiff-5.dll"
|
||||
File "win_x86_64\libusb-1.0.dll"
|
||||
File "win_x86_64\libvitamtp-5.dll"
|
||||
File "win_x86_64\libwinpthread-1.dll"
|
||||
File "win_x86_64\libxml2-2.dll"
|
||||
File "win_x86_64\Qt5Core.dll"
|
||||
File "win_x86_64\Qt5Gui.dll"
|
||||
File "win_x86_64\Qt5Network.dll"
|
||||
File "win_x86_64\Qt5Sql.dll"
|
||||
File "win_x86_64\Qt5Widgets.dll"
|
||||
File "win_x86_64\swresample-2.dll"
|
||||
File "win_x86_64\swscale-4.dll"
|
||||
File "win_x86_64\zlib1.dll"
|
||||
File "win_x86_64\liblzma-5.dll"
|
||||
File "win_x86_64\libbz2-1.dll"
|
||||
File "win_x86_64\libintl-8.dll"
|
||||
|
||||
SetOutPath "$INSTDIR\platforms"
|
||||
File "win_x86_64\platforms\qwindows.dll"
|
||||
|
||||
SetOutPath "$INSTDIR\imageformats"
|
||||
File "win_x86_64\imageformats\qgif.dll"
|
||||
File "win_x86_64\imageformats\qjpeg.dll"
|
||||
File "win_x86_64\imageformats\qtiff.dll"
|
||||
|
||||
SetOutPath "$INSTDIR\sqldrivers"
|
||||
File "win_x86_64\sqldrivers\qsqlite.dll"
|
||||
|
||||
SetOutPath "$INSTDIR\translations"
|
||||
File "win_x86_64\translations\*.qm"
|
||||
${Else}
|
||||
File "win_i686\qcma.exe"
|
||||
File "win_i686\qcma_console.exe"
|
||||
File "win_i686\avcodec-57.dll"
|
||||
File "win_i686\avformat-57.dll"
|
||||
File "win_i686\avutil-55.dll"
|
||||
File "win_i686\libfreetype-6.dll"
|
||||
File "win_i686\libgcc_s_dw2-1.dll"
|
||||
File "win_i686\libglib-2.0-0.dll"
|
||||
File "win_i686\libgraphite2.dll"
|
||||
File "win_i686\libharfbuzz-0.dll"
|
||||
File "win_i686\libiconv-2.dll"
|
||||
File "win_i686\libicudt57.dll"
|
||||
File "win_i686\libicuin57.dll"
|
||||
File "win_i686\libicuuc57.dll"
|
||||
File "win_i686\libjpeg-8.dll"
|
||||
File "win_i686\libpcre-1.dll"
|
||||
File "win_i686\libpcre16-0.dll"
|
||||
File "win_i686\libpng16-16.dll"
|
||||
File "win_i686\libsqlite3-0.dll"
|
||||
File "win_i686\libstdc++-6.dll"
|
||||
File "win_i686\libtiff-5.dll"
|
||||
File "win_i686\libusb-1.0.dll"
|
||||
File "win_i686\libvitamtp-5.dll"
|
||||
File "win_i686\libwinpthread-1.dll"
|
||||
File "win_i686\libxml2-2.dll"
|
||||
File "win_i686\Qt5Core.dll"
|
||||
File "win_i686\Qt5Gui.dll"
|
||||
File "win_i686\Qt5Sql.dll"
|
||||
File "win_i686\Qt5Network.dll"
|
||||
File "win_i686\Qt5Widgets.dll"
|
||||
File "win_i686\swresample-2.dll"
|
||||
File "win_i686\swscale-4.dll"
|
||||
File "win_i686\zlib1.dll"
|
||||
File "win_i686\liblzma-5.dll"
|
||||
File "win_i686\libbz2-1.dll"
|
||||
File "win_i686\libintl-8.dll"
|
||||
|
||||
SetOutPath "$INSTDIR\platforms"
|
||||
File "win_i686\platforms\qwindows.dll"
|
||||
|
||||
SetOutPath "$INSTDIR\imageformats"
|
||||
File "win_i686\imageformats\qgif.dll"
|
||||
File "win_i686\imageformats\qjpeg.dll"
|
||||
File "win_i686\imageformats\qtiff.dll"
|
||||
|
||||
SetOutPath "$INSTDIR\sqldrivers"
|
||||
File "win_i686\sqldrivers\qsqlite.dll"
|
||||
|
||||
SetOutPath "$INSTDIR\translations"
|
||||
File "win_i686\translations\*.qm"
|
||||
|
||||
${EndIf}
|
||||
|
||||
SetOutPath $InstDir\driver
|
||||
File "QcmaDriver_winusb.exe"
|
||||
File "QcmaDriver_libusb0.exe"
|
||||
File "QcmaDriver_libusbk.exe"
|
||||
|
||||
# Uninstaller - See function un.onInit and section "uninstall" for configuration
|
||||
WriteUninstaller "$InstDir\uninstall.exe"
|
||||
|
||||
SetOutPath $InstDir
|
||||
|
||||
# Start Menu
|
||||
!insertmacro MUI_STARTMENU_WRITE_BEGIN Application
|
||||
CreateDirectory "$SMPROGRAMS\$StartMenuFolder"
|
||||
CreateShortCut "$SMPROGRAMS\$StartMenuFolder\${PRODUCT_NAME}.lnk" "$INSTDIR\${PRODUCT_EXE_NAME}"
|
||||
CreateShortCut "$SMPROGRAMS\$StartMenuFolder\Uninstall ${PRODUCT_NAME}.lnk" "$INSTDIR\uninstall.exe"
|
||||
!insertmacro MUI_STARTMENU_WRITE_END
|
||||
|
||||
# Registry information for add/remove programs
|
||||
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" "DisplayName" "${PRODUCT_NAME}"
|
||||
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" "UninstallString" "$\"$INSTDIR\uninstall.exe$\""
|
||||
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" "QuietUninstallString" "$\"$INSTDIR\uninstall.exe$\" /S"
|
||||
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" "InstallLocation" "$\"$INSTDIR$\""
|
||||
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" "DisplayIcon" "$\"$INSTDIR\qcma.ico$\""
|
||||
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" "Publisher" "${PRODUCT_PUBLISHER}"
|
||||
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" "URLInfoAbout" "$\"${PRODUCT_WEB_SITE}$\""
|
||||
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" "DisplayVersion" "${PRODUCT_VERSION_MAJOR}.${PRODUCT_VERSION_MINOR}.${PRODUCT_VERSION_BUILD}"
|
||||
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" "VersionMajor" ${PRODUCT_VERSION_MAJOR}
|
||||
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" "VersionMinor" ${PRODUCT_VERSION_MINOR}
|
||||
# There is no option for modifying or repairing the install
|
||||
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" "NoModify" 1
|
||||
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" "NoRepair" 1
|
||||
sectionEnd
|
||||
|
||||
Section "WinUSB driver" WUSB
|
||||
SectionIn 1
|
||||
ExecWait "$InstDir\driver\QcmaDriver_winusb.exe"
|
||||
sectionEnd
|
||||
|
||||
Section /O "libusb0 driver" USBK
|
||||
SectionIn 2
|
||||
ExecWait "$InstDir\driver\QcmaDriver_libusb0.exe"
|
||||
sectionEnd
|
||||
|
||||
Section /O "libusbK driver" USB0
|
||||
SectionIn 3
|
||||
ExecWait "$InstDir\driver\QcmaDriver_libusbk.exe"
|
||||
sectionEnd
|
||||
|
||||
function .onInit
|
||||
setShellVarContext all
|
||||
!insertmacro VerifyUserIsAdmin
|
||||
!insertmacro MUI_LANGDLL_DISPLAY
|
||||
|
||||
${If} ${RunningX64}
|
||||
StrCpy $InstDir "$ProgramFiles64\${PRODUCT_NAME}"
|
||||
SetRegView 64
|
||||
${Else}
|
||||
StrCpy $InstDir "$ProgramFiles32\${PRODUCT_NAME}"
|
||||
${EndIf}
|
||||
|
||||
StrCpy $1 ${WUSB}
|
||||
functionEnd
|
||||
|
||||
Function .onSelChange
|
||||
!insertmacro StartRadioButtons $1
|
||||
!insertmacro RadioButton ${WUSB}
|
||||
!insertmacro RadioButton ${USB0}
|
||||
!insertmacro RadioButton ${USBK}
|
||||
!insertmacro EndRadioButtons
|
||||
FunctionEnd
|
||||
|
||||
### Uninstaller
|
||||
|
||||
function un.onInit
|
||||
SetShellVarContext all
|
||||
!insertmacro VerifyUserIsAdmin
|
||||
!insertmacro MUI_LANGDLL_DISPLAY
|
||||
functionEnd
|
||||
|
||||
section "uninstall"
|
||||
|
||||
# Remove Start Menu launcher
|
||||
!insertmacro MUI_STARTMENU_GETFOLDER Application $StartMenuFolder
|
||||
Delete "$SMPROGRAMS\$StartMenuFolder\${PRODUCT_NAME}.lnk"
|
||||
Delete "$SMPROGRAMS\$StartMenuFolder\Uninstall ${PRODUCT_NAME}.lnk"
|
||||
RMDir "$SMPROGRAMS\$StartMenuFolder"
|
||||
|
||||
# Remove Desktop launcher
|
||||
Delete "$DESKTOP\${PRODUCT_NAME}.lnk"
|
||||
|
||||
# Recursively remove the contents of $INSTDIR, then $INSTDIR itself
|
||||
RMDir /r "$INSTDIR"
|
||||
RMDir "$INSTDIR"
|
||||
|
||||
# Remove uninstaller information from the registry
|
||||
DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}"
|
||||
sectionEnd
|
||||
Reference in New Issue
Block a user