Add building windows installation

This commit is contained in:
Alexey Golubev
2018-09-04 17:07:21 +03:00
parent 827fb7e59f
commit 45f0edd3fc
3 changed files with 76 additions and 2 deletions

View File

@ -44,6 +44,8 @@ ifneq ($(filter %86,$(UNAME_M)),)
ARCHITECTURE := 32
endif
include win-linux/package/windows/Makefile.mk
QT_ICU ?= $(QT_LIBS)
DEST_CONV_DIR = $(DEST_DIR)/converter
@ -107,6 +109,7 @@ install: $(TARGETS)
$(INSTALL_FILE) $(CORE_LIB_DIR)/$(SHARED_PREFIX)ooxmlsignature$(SHARED_EXT) $(DEST_DIR)
$(INSTALL_FILE) $(CORE_LIB_DIR)/$(SHARED_PREFIX)hunspell$(SHARED_EXT) $(DEST_DIR)
$(INSTALL_FILE) ./LICENSE.txt $(DEST_DIR)
$(INSTALL_FILE) common/package/license/3dparty/3DPARTYLICENSE $(DEST_DIR)
$(INSTALL_FILE) $(QT_LIBS)/$(SHARED_PREFIX)Qt5Core$(SHARED_EXT) $(DEST_DIR)
$(INSTALL_FILE) $(QT_LIBS)/$(SHARED_PREFIX)Qt5Gui$(SHARED_EXT) $(DEST_DIR)
@ -139,7 +142,8 @@ ifeq ($(PLATFORM),win)
rm -f $(DEST_DIR)/**/*.pdb
endif
$(INSTALL_DIR) $(DICT_DIR) $(DEST_DIR)
mkdir -p $(DEST_DIR)/dictionaries
$(INSTALL_DIR) $(DICT_DIR)/* $(DEST_DIR)/dictionaries
$(INSTALL_DIR) common/package/fonts $(DEST_DIR)
$(INSTALL_FILE) ../core/Common/3dParty/cef/$(TARGET)/build/* $(DEST_DIR)

View File

@ -0,0 +1,63 @@
ISCC := iscc
CURL := curl -L -o
ifeq ($(UNAME_M),x86_64)
OS_ARCH := _x64
VCREDIST_URL := http://download.microsoft.com/download/2/c/6/2c675af0-2155-4961-b32e-289d7addfcec/vc_redist.x64.exe
WINSPARKLE_DLL := WinSparkle-0.6.0/x64/Release/WinSparkle.dll
endif
ifneq ($(filter %86,$(UNAME_M)),)
OS_ARCH := _x86
VCREDIST_URL := http://download.microsoft.com/download/d/e/c/dec58546-c2f5-40a7-b38e-4df8d60b9764/vc_redist.x86.exe
WINSPARKLE_DLL := WinSparkle-0.6.0/Release/WinSparkle.dll
endif
PUBLISHER_NAME ?= Ascensio System SIA
SIGN_STR := "byparam=signtool.exe sign /v /n $(word 1, $(PUBLISHER_NAME)) /t http://timestamp.verisign.com/scripts/timstamp.dll \$$f"
DESKTOP_EDITORS_EXE = win-linux/package/windows/DesktopEditors$(OS_ARCH).exe
DESKTOP_EDITORS_ZIP = win-linux/package/windows/DesktopEditors$(OS_ARCH).zip
PACKAGES += $(DESKTOP_EDITORS_EXE)
PACKAGES += $(DESKTOP_EDITORS_ZIP)
VCREDIST := win-linux/package/windows/data/vcredist/vcredist$(OS_ARCH).exe
WINSPARKLE := win-linux/windows/data/winsparkle/WinSparkle.dll
WINSPARKLE_URL := https://github.com/vslavik/winsparkle/releases/download/v0.6.0/WinSparkle-0.6.0.zip
WINSPARKLE_ARCH := WinSparkle-0.6.0.zip
$(DESKTOP_EDITORS_EXE): $(DEST_DIR) $(VCREDIST) $(WINSPARKLE)
$(DESKTOP_EDITORS_ZIP): $(DEST_DIR)
$(VCREDIST):
mkdir -p $(dir $(VCREDIST))
$(CURL) $(VCREDIST) $(VCREDIST_URL)
$(WINSPARKLE): $(WINSPARKLE_ARCH)
mkdir -p $(dir $(WINSPARKLE))
7z e $(WINSPARKLE_ARCH) -y -o$(dir $(WINSPARKLE)) $(WINSPARKLE_DLL)
$(WINSPARKLE_ARCH):
$(CURL) $(WINSPARKLE_ARCH) $(WINSPARKLE_URL)
$(DEST_DIR): install
win-linux/package/windows/%.exe:
cd $(dir $@) && $(ISCC) \
//DSCRIPT_CUSTOM_FILES=1 \
//Qp \
//S$(SIGN_STR) \
install$(OS_ARCH).iss
win-linux/package/windows/%.zip:
7z a -y $@ $(DEST_DIR)/*
package: $(PACKAGES)
#zip: $(DESKTOP_EDITORS_ZIP)
clean-package:
rm -f $(PACKAGES) $(WINSPARKLE_ARCH) $(WINSPARKLE) $(VCREDIST)

View File

@ -443,10 +443,11 @@ Name: {commonappdata}\{#APP_PATH}\webdata\cloud; Flags: uninsalwaysuninstall;
[Files]
#ifndef SCRIPT_CUSTOM_FILES
Source: data\vcredist\{#VC_REDIST_VER}; DestDir: {app}\; Flags: deleteafterinstall; \
AfterInstall: installVCRedist(ExpandConstant('{app}\{#VC_REDIST_VER}'), ExpandConstant('{cm:InstallAdditionalComponents}')); Check: not checkVCRedist;
#ifndef SCRIPT_CUSTOM_FILES
Source: .\data\projicons.exe; DestDir: {app}; DestName: {#iconsExe};
Source: ..\..\build\Release\release\{#NAME_EXE_IN}; DestDir: {app}; DestName: {#NAME_EXE_OUT};
@ -509,6 +510,12 @@ Source: ..\..\..\common\package\fonts\Carlito-BoldItalic.ttf; DestDir: {app}\fo
Source: ..\..\..\common\package\fonts\Carlito-Italic.ttf; DestDir: {app}\fonts; Flags: onlyifdoesntexist;
Source: ..\..\..\common\package\fonts\Carlito-Regular.ttf; DestDir: {app}\fonts; Flags: onlyifdoesntexist;
#else
Source: ..\..\..\ONLYOFFICE\DesktopEditors\*; DestDir: {app}; Flags: recursesubdirs;
#ifdef _UPDMODULE
Source: data\winsparkle\WinSparkle.dll; DestDir: {app}\; Flags: ignoreversion;
#endif
#endif
[Tasks]