Skip to content

Commit

Permalink
modify thirdlibrary version
Browse files Browse the repository at this point in the history
  • Loading branch information
KangLin committed Aug 27, 2017
1 parent 50e1865 commit b0d8298
Show file tree
Hide file tree
Showing 5 changed files with 244 additions and 55 deletions.
187 changes: 187 additions & 0 deletions Install/Install.nsi
Original file line number Diff line number Diff line change
@@ -0,0 +1,187 @@
; Script generated by the HM NIS Edit Script Wizard.

; HM NIS Edit Wizard helper defines
!define PRODUCT_NAME "RabbitIM"
!define PRODUCT_VERSION "v0.0.1"
!define PRODUCT_PUBLISHER "KangLin studio"
!define PRODUCT_WEB_SITE "https://github.com/KangLin/RabbitIM"
!define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\RabbitIM.exe"
!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\RabbitIM"
!define PRODUCT_UNINST_ROOT_KEY "HKLM"

SetCompressor lzma

; MUI 1.67 compatible ------
!include "MUI.nsh"
!include "x64.nsh"

; MUI Settings
!define MUI_ABORTWARNING
!define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\modern-install.ico"
!define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall.ico"

; Language Selection Dialog Settings
!define MUI_LANGDLL_REGISTRY_ROOT "${PRODUCT_UNINST_ROOT_KEY}"
!define MUI_LANGDLL_REGISTRY_KEY "${PRODUCT_UNINST_KEY}"
!define MUI_LANGDLL_REGISTRY_VALUENAME "NSIS:Language"

; Welcome page
!insertmacro MUI_PAGE_WELCOME
; License page
!insertmacro MUI_PAGE_LICENSE "install\LICENSE.md"
; Components page
!insertmacro MUI_PAGE_COMPONENTS
; Directory page
!insertmacro MUI_PAGE_DIRECTORY
; Instfiles page
!insertmacro MUI_PAGE_INSTFILES
; Finish page
!define MUI_FINISHPAGE_RUN "$INSTDIR\RabbitIM.exe"
!insertmacro MUI_PAGE_FINISH

; Uninstaller pages
!insertmacro MUI_UNPAGE_INSTFILES

; Language files
!insertmacro MUI_LANGUAGE "English"
!insertmacro MUI_LANGUAGE "SimpChinese"

LangString LANG_PRODUCT_NAME ${LANG_ENGLISH} "RabbitIM"
LangString LANG_PRODUCT_NAME ${LANG_SIMPCHINESE} "玉兔即时通讯系统"

LangString LANG_UNINSTALL_CONFIRM ${LANG_ENGLISH} "Thank you very much! $(^Name) has been successfully removed."
LangString LANG_UNINSTALL_CONFIRM ${LANG_SIMPCHINESE} "非常感謝您的使用! $(^Name) 已成功地从您的计算机中移除。"

LangString LANG_REMOVE_COMPONENT ${LANG_ENGLISH} "You sure you want to completely remove $ (^ Name), and all of its components?"
LangString LANG_REMOVE_COMPONENT ${LANG_SIMPCHINESE} "你确实要完全移除 $(^Name) ,其及所有的组件?"

; MUI end ------

Name "$(LANG_PRODUCT_NAME) ${PRODUCT_VERSION}"
OutFile "RabbitIM-Setup-${PRODUCT_VERSION}.exe"
InstallDir "$PROGRAMFILES\${PRODUCT_NAME}"
InstallDirRegKey HKLM "${PRODUCT_DIR_REGKEY}" ""
ShowInstDetails show
ShowUnInstDetails show
RequestExecutionLevel highest

; Install vc runtime
Function InstallVC
Push $R0
ClearErrors
ReadRegDword $R0 HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{FF66E9F6-83E7-3A3E-AF14-8DE9A809A6A4}" "Version"

; check regist
IfErrors 0 VSRedistInstalled
Exec "$INSTDIR\vcredist_x86.exe /q"
StrCpy $R0 "-1"

VSRedistInstalled:
;MessageBox MB_OK "Installed"
Exch $R0
Delete "$INSTDIR\vcredist_x86.exe"
FunctionEnd

Function InstallVC64
Push $R0
ClearErrors
ReadRegDword $R0 HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{FF66E9F6-83E7-3A3E-AF14-8DE9A809A6A4}" "Version"

; check regist
IfErrors 0 VSRedistInstalled
Exec "$INSTDIR\vcredist_x64.exe /q"
StrCpy $R0 "-1"

VSRedistInstalled:
;MessageBox MB_OK "Installed"
Exch $R0
Delete "$INSTDIR\vcredist_x64.exe"
FunctionEnd

Function InstallRuntime
${If} ${RunningX64}
IfFileExists "$INSTDIR\vcredist_x64.exe" 0 +2
call InstallVC64
IfFileExists "$INSTDIR\vcredist_x86.exe" 0 +2
call InstallVC
${Else}
IfFileExists "$INSTDIR\vcredist_x86.exe" 0 +2
call InstallVC
${EndIf}
FunctionEnd

Function InstallFont
StrCmp $LANGUAGE "2052" 0 +3
;Modify environment variable for default font to simsun.ttc
WriteRegStr HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" "OSGEARTH_DEFAULT_FONT" "simsun.ttc"
;Reflash environment variable
SendMessage ${HWND_BROADCAST} ${WM_WININICHANGE} 0 "STR:Environment"
FunctionEnd

Function .onInit
; !insertmacro MUI_LANGDLL_DISPLAY
FunctionEnd

Section "${PRODUCT_NAME}" SEC01
SetOutPath "$INSTDIR"
SetOverwrite ifnewer
File /r "install\*"
SetShellVarContext all
CreateDirectory "$SMPROGRAMS\${PRODUCT_NAME}"
CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\${PRODUCT_NAME}.lnk" "$INSTDIR\RabbitIM.exe"
CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\Uninstall.lnk" "$INSTDIR\uninst.exe"
CreateShortCut "$DESKTOP\${PRODUCT_NAME}.lnk" "$INSTDIR\RabbitIM.exe"
SetShellVarContext current
call InstallRuntime
SectionEnd

Section -AdditionalIcons
WriteIniStr "$INSTDIR\${PRODUCT_NAME}.url" "InternetShortcut" "URL" "${PRODUCT_WEB_SITE}"
SetShellVarContext all
CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\Uninstall.lnk" "$INSTDIR\uninst.exe"
CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\Website.lnk" "$INSTDIR\${PRODUCT_NAME}.url"
SetShellVarContext current
SectionEnd

Section -Post
WriteUninstaller "$INSTDIR\uninst.exe"
WriteRegStr HKLM "${PRODUCT_DIR_REGKEY}" "" "$INSTDIR\RabbitIM.exe"
call InstallFont
WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)"
WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninst.exe"
WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\RabbitIM.exe"
WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}"
WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "URLInfoAbout" "${PRODUCT_WEB_SITE}"
WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "Publisher" "${PRODUCT_PUBLISHER}"
SectionEnd

; Section descriptions
!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
!insertmacro MUI_DESCRIPTION_TEXT ${SEC01} "$(LANG_PRODUCT_NAME)"
!insertmacro MUI_FUNCTION_DESCRIPTION_END

Function un.onUninstSuccess
HideWindow
MessageBox MB_ICONINFORMATION|MB_OK "$(LANG_UNINSTALL_CONFIRM)"
FunctionEnd

Function un.onInit
!insertmacro MUI_UNGETLANGUAGE
MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "$(LANG_REMOVE_COMPONENT)" IDYES +2
Abort
FunctionEnd

Section Uninstall
SetShellVarContext all
RMDir /r "$SMPROGRAMS\${PRODUCT_NAME}"
Delete "$DESKTOP\$(LANG_PRODUCT_NAME).lnk"
SetOutPath "$SMPROGRAMS"
SetShellVarContext current
RMDir /r "$INSTDIR"

DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}"
DeleteRegKey HKLM "${PRODUCT_DIR_REGKEY}"
DeleteRegValue HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" "OSGEARTH_DEFAULT_FONT"
SendMessage ${HWND_BROADCAST} ${WM_WININICHANGE} 0 "STR:Environment"
SetAutoClose true
SectionEnd
1 change: 1 addition & 0 deletions RabbitIm.pro
Original file line number Diff line number Diff line change
Expand Up @@ -34,4 +34,5 @@ OTHER_FILES += README.md \
Update/*.xml \
Doxyfile* \
pri/* \
Install/* \
Dockerfile
4 changes: 2 additions & 2 deletions RabbitImApp.pro
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ win32 : equals(QMAKE_HOST.os, Windows){
#复制第三方依赖库动态库到编译输出目录
THIRD_LIBRARY_DLL = $${THIRD_LIBRARY_PATH}/bin/*.dll
exists($${THIRD_LIBRARY_DLL}){
equals(QMAKE_HOST.os, Windows){#:isEmpty(QMAKE_SH){
equals(QMAKE_HOST.os, Windows) : msvc | isEmpty(QMAKE_SH){
THIRD_LIBRARY_DLL = $$system_path($$THIRD_LIBRARY_DLL)
TARGET_PATH = $$system_path($$TARGET_PATH)
}
Expand All @@ -121,7 +121,7 @@ win32 : equals(QMAKE_HOST.os, Windows){

THIRD_LIBRARY_LIB = $${THIRD_LIBRARY_PATH}/lib/*.dll
exists($${THIRD_LIBRARY_LIB}){
equals(QMAKE_HOST.os, Windows){#:isEmpty(QMAKE_SH){
equals(QMAKE_HOST.os, Windows) : msvc | isEmpty(QMAKE_SH){
THIRD_LIBRARY_LIB = $$system_path($$THIRD_LIBRARY_LIB)
TARGET_PATH = $$system_path($$TARGET_PATH)
}
Expand Down
105 changes: 53 additions & 52 deletions appveyor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,29 +2,7 @@
version: '0.1.1.{build}'

environment:
matrix:
- BUILD_TARGERT: windows_mingw
TOOLCHAIN_VERSION: 530
QT_VERSION: qt5.8.0
QT_ROOT: /C/Qt/5.8/mingw53_32
AUTOBUILD_ARCH: x86
RABBIT_BUILD_THIRDLIBRARY: rabbitim
DOWNLOAD_FILE: https://sourceforge.net/projects/rabbitthirdlibrary/files/rabbit_windows_mingw530_x86_qt5.8.0.tar.gz/download
RABBITIM_USE_REPOSITORIES: "FALSE"
PASSWORD:
secure: 2WEtOQrdty3V3g0aEVvS3Q==

- BUILD_TARGERT: windows_mingw
TOOLCHAIN_VERSION: 530
QT_VERSION: qt5.7.1
QT_ROOT: /C/Qt/5.7/mingw53_32
AUTOBUILD_ARCH: x86
RABBIT_BUILD_THIRDLIBRARY: rabbitim
DOWNLOAD_FILE: https://sourceforge.net/projects/rabbitthirdlibrary/files/rabbit_windows_mingw530_x86_qt5.7.1.tar.gz/download
RABBITIM_USE_REPOSITORIES: "FALSE"
PASSWORD:
secure: 2WEtOQrdty3V3g0aEVvS3Q==

matrix:
- BUILD_TARGERT: windows_msvc
GENERATORS: "Visual Studio 14 2015"
TOOLCHAIN_VERSION: 14
Expand Down Expand Up @@ -75,10 +53,32 @@ environment:
QT_VERSION_DIR: 5.7
QT_VERSION: 5.7.1
RABBIT_BUILD_THIRDLIBRARY: rabbitim
DOWNLOAD_FILE: https://sourceforge.net/projects/rabbitthirdlibrary/files/Release/rabbit_android4.8_arm_5.7.1.tar.gz/download
DOWNLOAD_FILE: https://sourceforge.net/projects/rabbitthirdlibrary/files/rabbit_android4.8_arm_5.7.1.tar.gz/download
PASSWORD:
secure: 2WEtOQrdty3V3g0aEVvS3Q==


- BUILD_TARGERT: windows_mingw
TOOLCHAIN_VERSION: 530
QT_VERSION: qt5.8.0
QT_ROOT: /C/Qt/5.8/mingw53_32
AUTOBUILD_ARCH: x86
RABBIT_BUILD_THIRDLIBRARY: rabbitim
DOWNLOAD_FILE: https://sourceforge.net/projects/rabbitthirdlibrary/files/rabbit_windows_mingw530_x86_qt5.8.0.tar.gz/download
RABBITIM_USE_REPOSITORIES: "FALSE"
PASSWORD:
secure: 2WEtOQrdty3V3g0aEVvS3Q==

- BUILD_TARGERT: windows_mingw
TOOLCHAIN_VERSION: 530
QT_VERSION: qt5.7.1
QT_ROOT: /C/Qt/5.7/mingw53_32
AUTOBUILD_ARCH: x86
RABBIT_BUILD_THIRDLIBRARY: rabbitim
DOWNLOAD_FILE: https://sourceforge.net/projects/rabbitthirdlibrary/files/rabbit_windows_mingw530_x86_qt5.7.1.tar.gz/download
RABBITIM_USE_REPOSITORIES: "FALSE"
PASSWORD:
secure: 2WEtOQrdty3V3g0aEVvS3Q==

matrix:
fast_finish: false

Expand Down Expand Up @@ -108,46 +108,47 @@ before_build:
build_script:
- cd %APPVEYOR_BUILD_FOLDER%
- C:\msys64\usr\bin\bash.exe %APPVEYOR_BUILD_FOLDER%\ThirdLibrary\build_script\ci\build.sh
- if "%BUILD_TARGERT%" == "windows_msvc" copy "%APPVEYOR_BUILD_FOLDER%\Install\Install.nsi" "%APPVEYOR_BUILD_FOLDER%\build_%BUILD_TARGERT%" && cd "%APPVEYOR_BUILD_FOLDER%\build_%BUILD_TARGERT%" && "C:\Program Files (x86)\NSIS\makensis.exe" "Install.nsi"

#after_build:

artifacts:
# - path: ThirdLibrary/src
# name: RabbitImThirdLibrarySource

#- path: ThirdLibrary/$(BUILD_TARGERT)
# name: RabbitIm_$(BUILD_TARGERT)$(toolchain_version)_$(AUTOBUILD_ARCH)_$(QT_VERSION)_v$(appveyor_build_version)
# type: zip
- path: build_$(BUILD_TARGERT)/install
name: RabbitIm_$(BUILD_TARGERT)$(toolchain_version)_$(AUTOBUILD_ARCH)_$(QT_VERSION)_v$(BUILD_VERSION)

- path: build_${BUILD_TARGERT}/RabbitIM-Setup-*.exe
name: RabbitIM_$(BUILD_TARGERT)$(TOOLCHAIN_VERSION)_$(AUTOBUILD_ARCH)_$(QT_VERSION)_v$(appveyor_build_version)
type: zip

test: off

deploy:
provider: FTP
protocol: sftp
host: frs.sourceforge.net
username: kl222,rabbitim
#provider: FTP
#protocol: sftp
#host: frs.sourceforge.net
#username: kl222,rabbitim
#密码用这个加密 https://ci.appveyor.com/tools/encrypt
password:
secure: 2WEtOQrdty3V3g0aEVvS3Q==
folder: pfs #link pfs to /home/frs/project/r/ra/rabbitim
draft: false
active_mode: false
#password:
# secure: 2WEtOQrdty3V3g0aEVvS3Q==
#folder: pfs #link pfs to /home/frs/project/r/ra/rabbitim
#draft: false
#active_mode: false
#on:
#branch: master

#deploy:
# provider: GitHub
# release: rabbitim-third-library-v$(appveyor_build_version)
# description: 'rabbitim-third-library-v$(appveyor_build_version)'
# #token 在这个地址产生 https://github.com/settings/tokens 用这个加密 https://ci.appveyor.com/tools/encrypt
# auth_token:
# secure: ZwS9M6Ide+GfM4kLxJ5b9tRoB1wn/56nZRCAIP6Z7s3+YwcE+cx0Dv0d6X82lidF
# draft: false
# prerelease: false
# on:
# branch: master # release from master branch only
# #appveyor_repo_tag: true # deploy on tag push only
- provider: GitHub
#release: RabbitIM-v$(appveyor_build_version)
description: 'Release RabbitIM $(APPVEYOR_REPO_TAG_NAME) on windows'
#token : https://github.com/settings/tokens password encrypt: https://ci.appveyor.com/tools/encrypt
auth_token:
secure: xgIFN2iAfgj1gsWabdHrmFXvj0rce/ZWtKUwm3aDUNfLGu+kO/q94MYD8a46AbDL
#artifact: RabbitGIS_$(BUILD_TARGERT)$(TOOLCHAIN_VERSION)_$(AUTOBUILD_ARCH)_$(QT_VERSION)_v$(appveyor_build_version)
#draft: true
#prerelease: true
on:
BUILD_TARGERT: windows_msvc
TOOLCHAIN_VERSION: 14
QT_VERSION: qt5.7.1
AUTOBUILD_ARCH: x86
appveyor_repo_tag: true # deploy on tag push only

0 comments on commit b0d8298

Please sign in to comment.