Merge pull request #108 from ONLYOFFICE/hotfix/v5.5.4

Hotfix/v5.5.4
This commit is contained in:
Oleg Korshul
2020-06-24 13:00:47 +03:00
committed by GitHub
7 changed files with 65 additions and 5 deletions

View File

@ -24,6 +24,7 @@ parser.add_option("--branding", action="store", type="string", dest="branding",
parser.add_option("--branding-name", action="store", type="string", dest="branding-name", default="", help="branding name")
parser.add_option("--branding-url", action="store", type="string", dest="branding-url", default="", help="branding url")
parser.add_option("--sdkjs-addon", action="append", type="string", dest="sdkjs-addons", default=[], help="sdkjs addons")
parser.add_option("--sdkjs-addon-desktop", action="append", type="string", dest="sdkjs-addons-desktop", default=[], help="sdkjs addons desktop")
parser.add_option("--server-addon", action="append", type="string", dest="server-addons", default=[], help="server addons")
parser.add_option("--web-apps-addon", action="append", type="string", dest="web-apps-addons", default=[], help="web-apps addons")
parser.add_option("--sdkjs-plugin", action="append", type="string", dest="sdkjs-plugin", default=["default"], help="sdkjs addons for all products")

View File

@ -629,6 +629,16 @@ def sdkjs_addons_param():
params.append("--addon=" + config.sdkjs_addons[name])
return params
def sdkjs_addons_desktop_param():
if ("" == config.option("sdkjs-addons-desktop")):
return []
params = []
addons_list = config.option("sdkjs-addons-desktop").rsplit(", ")
for name in addons_list:
if name in config.sdkjs_addons_desktop:
params.append("--addon=" + config.sdkjs_addons_desktop[name])
return params
def server_addons_param():
if ("" == config.option("server-addons")):
return []
@ -845,6 +855,8 @@ def copy_sdkjs_plugin(src_dir, dst_dir, name, is_name_as_guid=False, is_desktop_
create_dir(dst_dir_path)
copy_dir_content(src_dir_path, dst_dir_path, "", ".git")
return
if not is_file(src_dir_path + "/config.json"):
return
config_content = readFile(src_dir_path + "/config.json")
index_start = config_content.find("\"asc.{")
index_start += 5

View File

@ -26,7 +26,6 @@ def make():
base.copy_dir(base_dir + "/../sdkjs/deploy/sdkjs", out_dir + "/builder/sdkjs")
# desktop
build_sdk_desktop(base_dir + "/../sdkjs/build")
if config.check_option("module", "desktop"):
build_sdk_desktop(base_dir + "/../sdkjs/build")
base.create_dir(out_dir + "/desktop")
@ -62,7 +61,7 @@ def build_interface(directory):
def build_sdk_desktop(directory):
#_run_npm_cli(directory)
_run_npm(directory)
_run_grunt(directory, ["--level=ADVANCED", "--desktop=true"] + base.sdkjs_addons_param())
_run_grunt(directory, ["--level=ADVANCED", "--desktop=true"] + base.sdkjs_addons_param() + base.sdkjs_addons_desktop_param())
return
def build_sdk_builder(directory):

View File

@ -77,6 +77,10 @@ def parse():
sdkjs_addons["content-controls"] = "sdkjs-content-controls"
sdkjs_addons["pivot-tables"] = "sdkjs-pivot-tables"
global sdkjs_addons_desktop
sdkjs_addons_desktop = {}
sdkjs_addons_desktop["disable-features"] = "sdkjs-disable-features"
global server_addons
server_addons = {}
server_addons["license"] = "server-license"

View File

@ -48,6 +48,28 @@ def make():
qmake_bat.append("call nmake build_libs install")
base.run_as_bat(qmake_bat, True)
os.chdir(old_cur)
# xp ----------------------------------------------------------------------------------------------------
os.chdir(base_dir + "/openssl")
base.replaceInFile(base_dir + "/openssl/crypto/rand/rand_win.c", "define USE_BCRYPTGENRANDOM", "define USE_BCRYPTGENRANDOM_FIX")
old_cur_dir = base_dir.replace(" ", "\\ ")
if (-1 != config.option("platform").find("win_64_xp")) and not base.is_dir("../build/win_64_xp"):
base.create_dir("./../build/win_64_xp")
qmake_bat = []
qmake_bat.append("call \"" + config.option("vs-path") + "/vcvarsall.bat\" x64")
qmake_bat.append("perl Configure VC-WIN64A --prefix=" + old_cur_dir + "\\build\\win_64_xp --openssldir=" + old_cur_dir + "\\build\\win_64_xp no-shared no-asm no-async")
qmake_bat.append("call nmake clean")
qmake_bat.append("call nmake build_libs install")
base.run_as_bat(qmake_bat, True)
if (-1 != config.option("platform").find("win_32_xp")) and not base.is_dir("../build/win_32_xp"):
base.create_dir("./../build/win_32_xp")
qmake_bat = []
qmake_bat.append("call \"" + config.option("vs-path") + "/vcvarsall.bat\" x86")
qmake_bat.append("perl Configure VC-WIN32 --prefix=" + old_cur_dir + "\\build\\win_32_xp --openssldir=" + old_cur_dir + "\\build\\win_32_xp no-shared no-asm no-async")
qmake_bat.append("call nmake clean")
qmake_bat.append("call nmake build_libs install")
base.run_as_bat(qmake_bat, True)
os.chdir(old_cur)
# -------------------------------------------------------------------------------------------------------
return
if (-1 != config.option("platform").find("linux")) and not base.is_dir("../build/linux_64"):

View File

@ -5,6 +5,7 @@ sys.path.append('../..')
import config
import base
import os
import subprocess
def clean():
if base.is_dir("depot_tools"):
@ -35,6 +36,27 @@ def is_xp_platform():
return True
return False
def is_use_clang():
get_gcc_version = "gcc -dumpfullversion -dumpversion"
popen = subprocess.Popen(get_gcc_version, stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True)
gcc_version = 4
try:
stdout, stderr = popen.communicate()
popen.wait()
gcc_version_str = stdout.strip().decode("utf-8")
gcc_version_major = gcc_version_str.split(".")[0]
gcc_version = int(gcc_version_major)
finally:
popen.stdout.close()
popen.stderr.close()
is_clang = "false"
if (gcc_version >= 6):
is_clang = "true"
print("gcc major version: " + str(gcc_version) + ", use clang:" + is_clang)
return is_clang
def make():
if not is_main_platform():
make_xp()
@ -118,11 +140,11 @@ def make():
base_args32 = "target_cpu=\\\"x86\\\" v8_target_cpu=\\\"x86\\\" v8_static_library=true is_component_build=false v8_use_snapshot=false"
if config.check_option("platform", "linux_64"):
base.cmd2("gn", ["gen", "out.gn/linux_64", "--args=\"is_debug=false " + base_args64 + " is_clang=false use_sysroot=false\""])
base.cmd2("gn", ["gen", "out.gn/linux_64", "--args=\"is_debug=false " + base_args64 + " is_clang=" + is_use_clang() + " use_sysroot=false treat_warnings_as_errors=false\""])
base.cmd("ninja", ["-C", "out.gn/linux_64"])
if config.check_option("platform", "linux_32"):
base.cmd2("gn", ["gen", "out.gn/linux_32", "--args=\"is_debug=false " + base_args32 + " is_clang=false use_sysroot=false\""])
base.cmd2("gn", ["gen", "out.gn/linux_32", "--args=\"is_debug=false " + base_args32 + " is_clang=" + is_use_clang() + " use_sysroot=false treat_warnings_as_errors=false\""])
base.cmd("ninja", ["-C", "out.gn/linux_32"])
if config.check_option("platform", "mac_64"):

View File

@ -105,7 +105,7 @@ def make():
# libraries
base.copy_lib(core_build_dir + "/lib/" + platform_postfix, root_dir, "hunspell")
base.copy_lib(core_build_dir + "/lib/" + platform_postfix, root_dir, "ooxmlsignature")
base.copy_lib(core_build_dir + "/lib/" + platform_postfix + ("/xp" if isWindowsXP else ""), root_dir, "ooxmlsignature")
base.copy_lib(core_build_dir + "/lib/" + platform_postfix + ("/xp" if isWindowsXP else ""), root_dir, "ascdocumentscore")
if (0 != platform.find("mac")):
base.copy_lib(core_build_dir + "/lib/" + platform_postfix + ("/xp" if isWindowsXP else ""), root_dir, "qtascdocumentscore")