mirror of
git://code.qt.io/qt/qt5.git
synced 2026-04-04 20:56:46 +08:00
Compare commits
125 Commits
90a2d21db6
...
dev
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6ef2fa58fa | ||
|
|
e2cf3590fb | ||
|
|
d2bc5fdeae | ||
|
|
b8deff00ef | ||
|
|
05f8bb10d9 | ||
|
|
3bf43a0827 | ||
|
|
27280bf442 | ||
|
|
478c693b7b | ||
|
|
095baf0e00 | ||
|
|
97af7f3855 | ||
|
|
61ce5dfff1 | ||
|
|
74245b3b85 | ||
|
|
6b968eabd5 | ||
|
|
7ea233ce27 | ||
|
|
fc6b391028 | ||
|
|
99b67a8f3f | ||
|
|
073360db1e | ||
|
|
e5e813ef90 | ||
|
|
08892fc088 | ||
|
|
68c8815a01 | ||
|
|
e1a145abd1 | ||
|
|
10e3c62702 | ||
|
|
09d858a0de | ||
|
|
8bd36b1d0d | ||
|
|
e60dc5c15c | ||
|
|
a6e71f142d | ||
|
|
c87f7901ba | ||
|
|
c3679fb285 | ||
|
|
308b434080 | ||
|
|
3f6cd61644 | ||
|
|
1d4da9a59b | ||
|
|
ab346b98dc | ||
|
|
55c0e2f24a | ||
|
|
8a052e235f | ||
|
|
ffe1978449 | ||
|
|
52b3c97ab7 | ||
|
|
0ab91c0886 | ||
|
|
9deb066d4c | ||
|
|
fb581937ff | ||
|
|
378c8719a9 | ||
|
|
d5d3f89ce1 | ||
|
|
7a5b6bdeaa | ||
|
|
c3fe5fe6fe | ||
|
|
919a4ae240 | ||
|
|
4df773656c | ||
|
|
3480c00adb | ||
|
|
ebe3124831 | ||
|
|
ade4488de9 | ||
|
|
7f2d96a43e | ||
|
|
7a8ffd980f | ||
|
|
fd5f44a57b | ||
|
|
aa2272379a | ||
|
|
f1872a4b95 | ||
|
|
033329cb00 | ||
|
|
ac242f221d | ||
|
|
cf406805ab | ||
|
|
3e4f286588 | ||
|
|
fb596da6aa | ||
|
|
31919c204a | ||
|
|
2fb83dd605 | ||
|
|
160bdc0e7a | ||
|
|
d0c5982795 | ||
|
|
80d65734af | ||
|
|
3587ad0ef9 | ||
|
|
7c434c9885 | ||
|
|
4983ed8c5d | ||
|
|
8e438b8a28 | ||
|
|
33695df07e | ||
|
|
6bf59c7c90 | ||
|
|
94c844fd4d | ||
|
|
6967caf3a2 | ||
|
|
f189bb9151 | ||
|
|
c6ae09efea | ||
|
|
af0729eca4 | ||
|
|
3407ced707 | ||
|
|
1a9daf1574 | ||
|
|
e5871fa6e6 | ||
|
|
1e25956312 | ||
|
|
28f9120718 | ||
|
|
4d4e6bb490 | ||
|
|
88177e9ab8 | ||
|
|
6348aa919b | ||
|
|
30d874ad79 | ||
|
|
c399d002de | ||
|
|
3a7915481f | ||
|
|
4263429114 | ||
|
|
606a8b29c8 | ||
|
|
51bcd64151 | ||
|
|
b9c677baad | ||
|
|
90d17e93a9 | ||
|
|
bb4d800bd6 | ||
|
|
98688fe265 | ||
|
|
c16277f9d3 | ||
|
|
6568c2622c | ||
|
|
31ea7c6c4a | ||
|
|
4d1ec89791 | ||
|
|
674655fe32 | ||
|
|
4466bd8555 | ||
|
|
8fd9b78872 | ||
|
|
5476a35d44 | ||
|
|
2b4ab5519b | ||
|
|
2450189a4f | ||
|
|
a1289ed5d5 | ||
|
|
bee5ded33b | ||
|
|
dc592b73d6 | ||
|
|
9a13282256 | ||
|
|
5579337dde | ||
|
|
4456a7f592 | ||
|
|
da911f9b20 | ||
|
|
406dca5bf3 | ||
|
|
9c05c68c86 | ||
|
|
8fb136fc8a | ||
|
|
f032c3156d | ||
|
|
e98fab4c4e | ||
|
|
e6c1ad7c0b | ||
|
|
dd0dae532f | ||
|
|
a98c97ed95 | ||
|
|
c5a42f267f | ||
|
|
2bac4d3be9 | ||
|
|
e3966f2ffc | ||
|
|
6bd3b23b6c | ||
|
|
02beaf2090 | ||
|
|
45aeb45a6e | ||
|
|
4bff151490 | ||
|
|
2795f20a4e |
4
.gitignore
vendored
4
.gitignore
vendored
@@ -5,8 +5,8 @@ Makefile
|
|||||||
CMakeLists.txt.user*
|
CMakeLists.txt.user*
|
||||||
CMakeUserPresets.json
|
CMakeUserPresets.json
|
||||||
.vscode
|
.vscode
|
||||||
build
|
build/
|
||||||
build-*
|
build-*/
|
||||||
.DS_Store
|
.DS_Store
|
||||||
init-repository.opt
|
init-repository.opt
|
||||||
init-repository.opt.in
|
init-repository.opt.in
|
||||||
|
|||||||
2
.gitmodules
vendored
2
.gitmodules
vendored
@@ -249,7 +249,7 @@
|
|||||||
branch = dev
|
branch = dev
|
||||||
status = ignore
|
status = ignore
|
||||||
[submodule "qtlottie"]
|
[submodule "qtlottie"]
|
||||||
depends = qtbase qtdeclarative
|
depends = qtbase qtdeclarative qtquicktimeline
|
||||||
path = qtlottie
|
path = qtlottie
|
||||||
url = ../qtlottie.git
|
url = ../qtlottie.git
|
||||||
branch = dev
|
branch = dev
|
||||||
|
|||||||
@@ -4,5 +4,4 @@ We welcome contributions to Qt!
|
|||||||
|
|
||||||
Note that we cannot accept pull requests on GitHub. All contributions to the Qt project are exclusively handled through the [Gerrit code review system](https://codereview.qt-project.org).
|
Note that we cannot accept pull requests on GitHub. All contributions to the Qt project are exclusively handled through the [Gerrit code review system](https://codereview.qt-project.org).
|
||||||
|
|
||||||
Read the
|
See [contribute.qt-project.org](https://contribute.qt-project.org/) to learn more.
|
||||||
[Qt Contribution Guidelines](https://wiki.qt.io/Qt_Contribution_Guidelines) to learn more.
|
|
||||||
|
|||||||
@@ -5,6 +5,37 @@
|
|||||||
# with renamed functions, because we need similar logic for init-repository, but
|
# with renamed functions, because we need similar logic for init-repository, but
|
||||||
# we can't access qtbase before we clone it.
|
# we can't access qtbase before we clone it.
|
||||||
|
|
||||||
|
function(qt_ir_print_to_stdout text)
|
||||||
|
set(tmp_candidates
|
||||||
|
"${CMAKE_CURRENT_BINARY_DIR}"
|
||||||
|
"$ENV{TMPDIR}"
|
||||||
|
"$ENV{TEMP}"
|
||||||
|
"/tmp"
|
||||||
|
)
|
||||||
|
set(tmp "")
|
||||||
|
foreach(dir IN LISTS tmp_candidates)
|
||||||
|
if(dir STREQUAL "")
|
||||||
|
continue()
|
||||||
|
endif()
|
||||||
|
set(candidate "${dir}/.qt_configure_stdout_tmp")
|
||||||
|
execute_process(
|
||||||
|
COMMAND "${CMAKE_COMMAND}" -E touch "${candidate}"
|
||||||
|
RESULT_VARIABLE touch_result
|
||||||
|
)
|
||||||
|
if(touch_result EQUAL 0)
|
||||||
|
set(tmp "${candidate}")
|
||||||
|
break()
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
if(tmp STREQUAL "")
|
||||||
|
message("${text}") # last resort fallback (stderr)
|
||||||
|
return()
|
||||||
|
endif()
|
||||||
|
file(WRITE "${tmp}" "${text}")
|
||||||
|
execute_process(COMMAND "${CMAKE_COMMAND}" -E cat "${tmp}")
|
||||||
|
file(REMOVE "${tmp}")
|
||||||
|
endfunction()
|
||||||
|
|
||||||
# Call a function with the given arguments.
|
# Call a function with the given arguments.
|
||||||
function(qt_ir_call_function func)
|
function(qt_ir_call_function func)
|
||||||
set(call_code "${func}(")
|
set(call_code "${func}(")
|
||||||
@@ -178,7 +209,6 @@ function(qt_ir_command_line_set_input name val)
|
|||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
# Appends a value of a command line option into a global property.
|
# Appends a value of a command line option into a global property.
|
||||||
# Currently unused
|
|
||||||
function(qt_ir_command_line_append_input name val)
|
function(qt_ir_command_line_append_input name val)
|
||||||
if(NOT "${commandline_option_${name}_alias}" STREQUAL "")
|
if(NOT "${commandline_option_${name}_alias}" STREQUAL "")
|
||||||
set(name "${commandline_option_${name}_alias}")
|
set(name "${commandline_option_${name}_alias}")
|
||||||
@@ -240,6 +270,22 @@ function(qt_ir_commandline_string arg val nextok)
|
|||||||
endif()
|
endif()
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
|
# Like string, but appends to the existing value instead of overwriting.
|
||||||
|
# Allows repeated flags like: -skip qtwebengine -skip qtwebview
|
||||||
|
function(qt_ir_commandline_addString arg val nextok)
|
||||||
|
if(nextok)
|
||||||
|
qt_ir_args_get_next_command_line_arg(val)
|
||||||
|
|
||||||
|
if("${val}" MATCHES "^-")
|
||||||
|
qt_ir_add_error("No value supplied to command line options '${arg}'.")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
qt_ir_validate_value("${arg}" "${val}" success)
|
||||||
|
if(success)
|
||||||
|
qt_ir_command_line_append_input("${arg}" "${val}")
|
||||||
|
endif()
|
||||||
|
endfunction()
|
||||||
|
|
||||||
# Sets / handles the value of a command line void option.
|
# Sets / handles the value of a command line void option.
|
||||||
# This is an option like --force, which doesn't take any arguments.
|
# This is an option like --force, which doesn't take any arguments.
|
||||||
# Currently unused
|
# Currently unused
|
||||||
@@ -279,6 +325,7 @@ endfunction()
|
|||||||
#
|
#
|
||||||
# Currently handles the following types of CLI arguments:
|
# Currently handles the following types of CLI arguments:
|
||||||
# string
|
# string
|
||||||
|
# addString (like string, but accumulates values from repeated flags)
|
||||||
# boolean
|
# boolean
|
||||||
# void
|
# void
|
||||||
#
|
#
|
||||||
@@ -352,16 +399,17 @@ endfunction()
|
|||||||
|
|
||||||
# Shows help for the command line options.
|
# Shows help for the command line options.
|
||||||
function(qt_ir_show_help)
|
function(qt_ir_show_help)
|
||||||
|
set(help "")
|
||||||
set(help_file "${CMAKE_CURRENT_LIST_DIR}/QtIRHelp.txt")
|
set(help_file "${CMAKE_CURRENT_LIST_DIR}/QtIRHelp.txt")
|
||||||
if(EXISTS "${help_file}")
|
if(EXISTS "${help_file}")
|
||||||
file(READ "${help_file}" content)
|
file(READ "${help_file}" content)
|
||||||
message("${content}")
|
string(APPEND help "${content}")
|
||||||
endif()
|
endif()
|
||||||
|
string(APPEND help [[
|
||||||
message([[
|
|
||||||
General Options:
|
General Options:
|
||||||
-help, -h ............ Display this help screen
|
-help, -h ............ Display this help screen
|
||||||
]])
|
]])
|
||||||
|
qt_ir_print_to_stdout("${help}")
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
# Gets the unhandled command line args.
|
# Gets the unhandled command line args.
|
||||||
@@ -427,11 +475,13 @@ endfunction()
|
|||||||
# Convert to absolute path if necessary.
|
# Convert to absolute path if necessary.
|
||||||
function(qt_ir_get_option_as_existing_absolute_path name value)
|
function(qt_ir_get_option_as_existing_absolute_path name value)
|
||||||
qt_ir_get_option_value("${name}" path)
|
qt_ir_get_option_value("${name}" path)
|
||||||
if(NOT EXISTS "${abspath}")
|
if(NOT "${path}" STREQUAL "")
|
||||||
qt_ir_add_error("The path '${path}' passed with -${name} does not exist.")
|
if(NOT EXISTS "${path}")
|
||||||
endif()
|
qt_ir_add_error("The path '${path}' passed with -${name} does not exist.")
|
||||||
if(NOT IS_ABSOLUTE "${path}")
|
endif()
|
||||||
get_filename_component(path "${path}" ABSOLUTE)
|
if(NOT IS_ABSOLUTE "${path}")
|
||||||
|
get_filename_component(path "${path}" ABSOLUTE)
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
set("${value}" "${path}" PARENT_SCOPE)
|
set("${value}" "${path}" PARENT_SCOPE)
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|||||||
@@ -89,6 +89,26 @@ function(qt_ir_handle_called_from_configure top_level_src_path out_var_exit_reas
|
|||||||
|
|
||||||
qt_ir_validate_options_for_configure()
|
qt_ir_validate_options_for_configure()
|
||||||
|
|
||||||
|
# Convert -skip values to module-subset exclusions so init-repository respects them.
|
||||||
|
qt_ir_get_option_value(skip skip_modules)
|
||||||
|
if(skip_modules)
|
||||||
|
string(REPLACE "," ";" skip_modules "${skip_modules}")
|
||||||
|
list(TRANSFORM skip_modules STRIP)
|
||||||
|
list(TRANSFORM skip_modules PREPEND "-")
|
||||||
|
|
||||||
|
qt_ir_get_option_value(module-subset existing_subset)
|
||||||
|
if(NOT existing_subset)
|
||||||
|
set(existing_subset "default")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
list(APPEND skip_modules "${existing_subset}")
|
||||||
|
list(REMOVE_DUPLICATES skip_modules)
|
||||||
|
list(JOIN skip_modules "," merged_subset)
|
||||||
|
|
||||||
|
qt_ir_set_option_value(module-subset "${merged_subset}")
|
||||||
|
message(DEBUG "Preprocessed -skip option: module-subset is now: ${merged_subset}")
|
||||||
|
endif()
|
||||||
|
|
||||||
# -init_submodules implies --force
|
# -init_submodules implies --force
|
||||||
qt_ir_set_option_value(force TRUE)
|
qt_ir_set_option_value(force TRUE)
|
||||||
|
|
||||||
@@ -110,6 +130,11 @@ function(qt_ir_get_args_from_optfile_configure_filtered optfile_path out_var)
|
|||||||
set(extra_configure_args "")
|
set(extra_configure_args "")
|
||||||
set(extra_cmake_args "")
|
set(extra_cmake_args "")
|
||||||
|
|
||||||
|
# Collect modules to skip. These may come from:
|
||||||
|
# 1. The -skip option (consumed by init-repository's option parser)
|
||||||
|
# 2. Exclusion entries in -submodules/--module-subset (e.g. -qtfoo)
|
||||||
|
qt_ir_get_option_value(skip skip_modules)
|
||||||
|
|
||||||
# If the -submodules or --module-subset options were specified, transform
|
# If the -submodules or --module-subset options were specified, transform
|
||||||
# the values into something configure understands and pass them to configure.
|
# the values into something configure understands and pass them to configure.
|
||||||
qt_ir_get_option_value(module-subset submodules)
|
qt_ir_get_option_value(module-subset submodules)
|
||||||
@@ -133,25 +158,10 @@ function(qt_ir_get_args_from_optfile_configure_filtered optfile_path out_var)
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
list(JOIN include_submodules "," include_submodules)
|
list(JOIN include_submodules "," include_submodules)
|
||||||
list(JOIN exclude_submodules "," exclude_submodules)
|
|
||||||
|
|
||||||
# Handle case when the -skip argument is already passed.
|
# Merge exclusions from module-subset into the skip list.
|
||||||
# In that case read the passed values, merge with new ones,
|
if(exclude_submodules)
|
||||||
# remove both the -skip and its values, and re-add it later.
|
list(APPEND skip_modules ${exclude_submodules})
|
||||||
list(FIND filtered_args "-skip" skip_index)
|
|
||||||
if(exclude_submodules AND skip_index GREATER -1)
|
|
||||||
list(LENGTH filtered_args filtered_args_length)
|
|
||||||
math(EXPR skip_args_index "${skip_index} + 1")
|
|
||||||
|
|
||||||
if(skip_args_index LESS filtered_args_length)
|
|
||||||
list(GET filtered_args "${skip_args_index}" skip_args)
|
|
||||||
string(REPLACE "," ";" skip_args "${skip_args}")
|
|
||||||
list(APPEND skip_args ${exclude_submodules})
|
|
||||||
list(REMOVE_DUPLICATES skip_args)
|
|
||||||
list(JOIN skip_args "," exclude_submodules)
|
|
||||||
list(REMOVE_AT filtered_args "${skip_args_index}")
|
|
||||||
list(REMOVE_AT filtered_args "${skip_index}")
|
|
||||||
endif()
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Handle case when only '-submodules existing' is passed and the
|
# Handle case when only '-submodules existing' is passed and the
|
||||||
@@ -159,9 +169,13 @@ function(qt_ir_get_args_from_optfile_configure_filtered optfile_path out_var)
|
|||||||
if(include_submodules)
|
if(include_submodules)
|
||||||
list(APPEND extra_configure_args "-submodules" "${include_submodules}")
|
list(APPEND extra_configure_args "-submodules" "${include_submodules}")
|
||||||
endif()
|
endif()
|
||||||
if(exclude_submodules)
|
endif()
|
||||||
list(APPEND extra_configure_args "-skip" "${exclude_submodules}")
|
|
||||||
endif()
|
# Forward all collected skip modules to configure.
|
||||||
|
if(skip_modules)
|
||||||
|
list(REMOVE_DUPLICATES skip_modules)
|
||||||
|
list(JOIN skip_modules "," skip_csv)
|
||||||
|
list(APPEND extra_configure_args "-skip" "${skip_csv}")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Insert the extra arguments into the proper positions before and after '--'.
|
# Insert the extra arguments into the proper positions before and after '--'.
|
||||||
|
|||||||
@@ -38,6 +38,7 @@ macro(qt_ir_set_known_command_line_options)
|
|||||||
qt_ir_commandline_option(init-submodules TYPE boolean)
|
qt_ir_commandline_option(init-submodules TYPE boolean)
|
||||||
# We alias qtbase's submodules option to init-repository module-subset.
|
# We alias qtbase's submodules option to init-repository module-subset.
|
||||||
qt_ir_commandline_option(submodules ALIAS module-subset TYPE string)
|
qt_ir_commandline_option(submodules ALIAS module-subset TYPE string)
|
||||||
|
qt_ir_commandline_option(skip TYPE addString)
|
||||||
|
|
||||||
set_property(GLOBAL PROPERTY _qt_ir_known_command_line_options "${commandline_known_options}")
|
set_property(GLOBAL PROPERTY _qt_ir_known_command_line_options "${commandline_known_options}")
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|||||||
@@ -120,15 +120,15 @@ Configurations:
|
|||||||
# Test on Ubuntu 24.04 x64 X11
|
# Test on Ubuntu 24.04 x64 X11
|
||||||
-
|
-
|
||||||
Id: 'ubuntu-24.04-x64-developer-build-x11-tests'
|
Id: 'ubuntu-24.04-x64-developer-build-x11-tests'
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-54'
|
||||||
Compiler: 'GCC'
|
Compiler: 'GCC'
|
||||||
Features: ['Sccache', 'TestOnly', 'InsignificantTests']
|
Features: ['Sccache', 'TestOnly']
|
||||||
Platform dependency: 'ubuntu-24.04-x64-developer-build'
|
Platform dependency: 'ubuntu-24.04-x64-developer-build'
|
||||||
-
|
-
|
||||||
Id: 'ubuntu-24.04-x64-x11-tests'
|
Id: 'ubuntu-24.04-x64-x11-tests'
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-54'
|
||||||
Compiler: 'GCC'
|
Compiler: 'GCC'
|
||||||
Features: ['Sccache', 'TestOnly', 'InsignificantTests']
|
Features: ['Sccache', 'TestOnly']
|
||||||
Platform dependency: 'ubuntu-24.04-x64'
|
Platform dependency: 'ubuntu-24.04-x64'
|
||||||
-
|
-
|
||||||
Id: 'opensuse-15.6-developer-build'
|
Id: 'opensuse-15.6-developer-build'
|
||||||
@@ -182,7 +182,6 @@ Configurations:
|
|||||||
'VCPKG_TARGET_TRIPLET=x64-windows-qt',
|
'VCPKG_TARGET_TRIPLET=x64-windows-qt',
|
||||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
|
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
|
||||||
'WEBVIEW2_SDK_ROOT={{.Env.WEBVIEW2_SDK_ROOT_PATH}}',
|
'WEBVIEW2_SDK_ROOT={{.Env.WEBVIEW2_SDK_ROOT_PATH}}',
|
||||||
'ZLIB_ROOT={{.Env.ZLIB_PATH_AMD64}}',
|
|
||||||
]
|
]
|
||||||
-
|
-
|
||||||
Id: 'windows-11_24H2-msvc2022'
|
Id: 'windows-11_24H2-msvc2022'
|
||||||
@@ -191,14 +190,13 @@ Configurations:
|
|||||||
Features: ['Sccache', 'Packaging', "DebugAndRelease", 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
Features: ['Sccache', 'Packaging', "DebugAndRelease", 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
||||||
Configure arguments: '-debug-and-release -force-debug-info -headersclean -nomake examples -qt-zlib'
|
Configure arguments: '-debug-and-release -force-debug-info -headersclean -nomake examples -qt-zlib'
|
||||||
Environment variables: [
|
Environment variables: [
|
||||||
'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\.. -DPostgreSQL_ROOT={{.Env.POSTGRESQL_LIB_x64}}\..',
|
'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ROOT_DIR_x64}}\.. -DPostgreSQL_ROOT={{.Env.POSTGRESQL_LIB_x64}}\..',
|
||||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC}} -DQT_DEPLOY_FFMPEG=TRUE -DFEATURE_clangcpp=OFF -DINPUT_headersclean=ON',
|
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC}} -DQT_DEPLOY_FFMPEG=TRUE -DFEATURE_clangcpp=OFF -DINPUT_headersclean=ON',
|
||||||
'LLVM_INSTALL_DIR={{.Env.LLVM_INSTALL_DIR_msvc}}',
|
'LLVM_INSTALL_DIR={{.Env.LLVM_INSTALL_DIR_msvc}}',
|
||||||
'VCPKG_HOST_TRIPLET=x64-windows-qt',
|
'VCPKG_HOST_TRIPLET=x64-windows-qt',
|
||||||
'VCPKG_TARGET_TRIPLET=x64-windows-qt',
|
'VCPKG_TARGET_TRIPLET=x64-windows-qt',
|
||||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
|
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
|
||||||
'WEBVIEW2_SDK_ROOT={{.Env.WEBVIEW2_SDK_ROOT_PATH}}',
|
'WEBVIEW2_SDK_ROOT={{.Env.WEBVIEW2_SDK_ROOT_PATH}}',
|
||||||
'ZLIB_ROOT={{.Env.ZLIB_PATH_AMD64}}',
|
|
||||||
]
|
]
|
||||||
-
|
-
|
||||||
Id: 'windows-11_23h2-arm64-msvc2022'
|
Id: 'windows-11_23h2-arm64-msvc2022'
|
||||||
@@ -213,7 +211,6 @@ Configurations:
|
|||||||
'VCPKG_TARGET_TRIPLET=arm64-windows-qt',
|
'VCPKG_TARGET_TRIPLET=arm64-windows-qt',
|
||||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
|
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
|
||||||
'WEBVIEW2_SDK_ROOT={{.Env.WEBVIEW2_SDK_ROOT_PATH}}',
|
'WEBVIEW2_SDK_ROOT={{.Env.WEBVIEW2_SDK_ROOT_PATH}}',
|
||||||
'ZLIB_ROOT={{.Env.ZLIB_PATH_ARM64}}',
|
|
||||||
]
|
]
|
||||||
-
|
-
|
||||||
Id: 'windows-11_24H2-msvc2022-arm64'
|
Id: 'windows-11_24H2-msvc2022-arm64'
|
||||||
@@ -227,9 +224,9 @@ Configurations:
|
|||||||
'TARGET_CONFIGURE_ARGS=-debug-and-release -force-debug-info -platform win32-arm64-msvc -qt-zlib -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-psql -no-sql-mimer',
|
'TARGET_CONFIGURE_ARGS=-debug-and-release -force-debug-info -platform win32-arm64-msvc -qt-zlib -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-psql -no-sql-mimer',
|
||||||
'TARGET_CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ROOT_DIR_x64_arm64}} -DQT_FORCE_BUILD_TOOLS=ON',
|
'TARGET_CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ROOT_DIR_x64_arm64}} -DQT_FORCE_BUILD_TOOLS=ON',
|
||||||
'NON_QTBASE_TARGET_CMAKE_ARGS=-DFEATURE_native_grpc=OFF -DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC_ARM64}} -DQT_DEPLOY_FFMPEG=TRUE',
|
'NON_QTBASE_TARGET_CMAKE_ARGS=-DFEATURE_native_grpc=OFF -DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC_ARM64}} -DQT_DEPLOY_FFMPEG=TRUE',
|
||||||
'OPENSSL_CONF_x64={{.Env.OPENSSL_CONF_x64_arm64}}',
|
'OPENSSL_INCLUDE={{.Env.OPENSSL_INCLUDE_x64_arm64}}',
|
||||||
'OPENSSL_INCLUDE_x64={{.Env.OPENSSL_INCLUDE_x64_arm64}}',
|
'OPENSSL_LIB={{.Env.OPENSSL_LIB_x64_arm64}}',
|
||||||
'OPENSSL_LIB_x64={{.Env.OPENSSL_LIB_x64_arm64}}',
|
'OPENSSL_ROOT_DIR={{.Env.OPENSSL_ROOT_DIR_x64_arm64}}',
|
||||||
'LLVM_INSTALL_DIR={{.Env.LLVM_INSTALL_DIR_msvc_arm64}}',
|
'LLVM_INSTALL_DIR={{.Env.LLVM_INSTALL_DIR_msvc_arm64}}',
|
||||||
'VCPKG_HOST_TRIPLET=x64-windows-qt',
|
'VCPKG_HOST_TRIPLET=x64-windows-qt',
|
||||||
'VCPKG_TARGET_TRIPLET=arm64-windows-qt',
|
'VCPKG_TARGET_TRIPLET=arm64-windows-qt',
|
||||||
@@ -256,7 +253,6 @@ Configurations:
|
|||||||
'VCPKG_HOST_TRIPLET=x64-windows-qt',
|
'VCPKG_HOST_TRIPLET=x64-windows-qt',
|
||||||
'VCPKG_TARGET_TRIPLET=x64-windows-qt',
|
'VCPKG_TARGET_TRIPLET=x64-windows-qt',
|
||||||
'gRPC_ROOT={{.Env.gRPC_ROOT_msvc}}',
|
'gRPC_ROOT={{.Env.gRPC_ROOT_msvc}}',
|
||||||
'ZLIB_ROOT={{.Env.ZLIB_PATH_AMD64}}',
|
|
||||||
]
|
]
|
||||||
-
|
-
|
||||||
Id: 'rhel-9.6'
|
Id: 'rhel-9.6'
|
||||||
@@ -270,6 +266,18 @@ Configurations:
|
|||||||
'VCPKG_HOST_TRIPLET=x64-linux-qt',
|
'VCPKG_HOST_TRIPLET=x64-linux-qt',
|
||||||
'VCPKG_TARGET_TRIPLET=x64-linux-qt',
|
'VCPKG_TARGET_TRIPLET=x64-linux-qt',
|
||||||
]
|
]
|
||||||
|
-
|
||||||
|
Id: 'rhel-10.0'
|
||||||
|
Template: 'qtci-linux-RHEL-10.0-x86_64-51'
|
||||||
|
Compiler: 'GCC'
|
||||||
|
Features: ['Sccache', 'UseConfigure', 'InstallQt5Dependencies', 'GenerateSBOM', 'VerifySBOM', 'InsignificantTests', 'DoNotAbortTestingOnFirstFailure']
|
||||||
|
Configure arguments: '-nomake examples -release -force-debug-info -headersclean -separate-debug-info -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput'
|
||||||
|
Environment variables: [
|
||||||
|
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
|
||||||
|
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE -DINPUT_headersclean=ON',
|
||||||
|
'VCPKG_HOST_TRIPLET=x64-linux-qt',
|
||||||
|
'VCPKG_TARGET_TRIPLET=x64-linux-qt',
|
||||||
|
]
|
||||||
-
|
-
|
||||||
Id: 'ios-universal'
|
Id: 'ios-universal'
|
||||||
Template: 'qtci-macos-14-arm-106'
|
Template: 'qtci-macos-14-arm-106'
|
||||||
|
|||||||
@@ -1,10 +1,5 @@
|
|||||||
Version: 2
|
Version: 2
|
||||||
Configurations:
|
Configurations:
|
||||||
-
|
|
||||||
Id: 'ubuntu-22.04-license-check'
|
|
||||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['TestOnly', 'LicenseCheckV2']
|
|
||||||
-
|
-
|
||||||
Id: 'ubuntu-24.04-x64-license-check'
|
Id: 'ubuntu-24.04-x64-license-check'
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-50'
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-50'
|
||||||
|
|||||||
@@ -12,23 +12,19 @@ Configurations:
|
|||||||
Template: 'qtci-macos-15-arm-104'
|
Template: 'qtci-macos-15-arm-104'
|
||||||
Compiler: 'Clang'
|
Compiler: 'Clang'
|
||||||
Target arch: 'x86_64-arm64'
|
Target arch: 'x86_64-arm64'
|
||||||
Features: ['Packaging', 'DoNotRunTests', 'WarningsAreErrors', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
Features: ['Sccache', 'Packaging', 'DoNotRunTests', 'WarningsAreErrors', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
||||||
Configure arguments: '-nomake examples -release -force-debug-info -separate-debug-info -headersclean -framework'
|
Configure arguments: '-nomake examples -release -force-debug-info -separate-debug-info -headersclean -framework'
|
||||||
Environment variables: [
|
Environment variables: [
|
||||||
'CMAKE_ARGS=-DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_DIR}}',
|
'CMAKE_ARGS=-DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_DIR}}',
|
||||||
'NON_QTBASE_CMAKE_ARGS=-DFEATURE_gds=OFF -DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE -DINPUT_headersclean=ON -DQT_FEATURE_open62541_security=OFF',
|
'NON_QTBASE_CMAKE_ARGS=-DFEATURE_gds=OFF -DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE -DINPUT_headersclean=ON -DQT_FEATURE_open62541_security=OFF',
|
||||||
|
'VCPKG_HOST_TRIPLET=universal-osx-qt',
|
||||||
|
'VCPKG_TARGET_TRIPLET=universal-osx-qt',
|
||||||
]
|
]
|
||||||
|
|
||||||
# Test on all supported macOS versions (deployment targets)
|
# Test on all supported macOS versions (deployment targets)
|
||||||
|
|
||||||
# On x86_64
|
# On x86_64
|
||||||
|
|
||||||
-
|
|
||||||
Id: 'macos-13-x86_64-tests'
|
|
||||||
Template: 'qtci-macos-13-x86_64-103'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Features: ['Sccache', 'TestOnly', 'Packaging']
|
|
||||||
Platform dependency: 'macos-universal-on-arm64'
|
|
||||||
-
|
-
|
||||||
Id: 'macos-14-x86_64-tests'
|
Id: 'macos-14-x86_64-tests'
|
||||||
Template: 'qtci-macos-14-x86_64-105'
|
Template: 'qtci-macos-14-x86_64-105'
|
||||||
@@ -43,7 +39,7 @@ Configurations:
|
|||||||
Platform dependency: 'macos-universal-on-arm64'
|
Platform dependency: 'macos-universal-on-arm64'
|
||||||
-
|
-
|
||||||
Id: 'macos-26-x86_64-tests'
|
Id: 'macos-26-x86_64-tests'
|
||||||
Template: 'qtci-macos-26-x86_64-100'
|
Template: 'qtci-macos-26-x86_64-101'
|
||||||
Compiler: 'Clang'
|
Compiler: 'Clang'
|
||||||
Features: ['Sccache', 'TestOnly', 'Packaging', 'DoNotAbortTestingOnFirstFailure']
|
Features: ['Sccache', 'TestOnly', 'Packaging', 'DoNotAbortTestingOnFirstFailure']
|
||||||
Platform dependency: 'macos-universal-on-arm64'
|
Platform dependency: 'macos-universal-on-arm64'
|
||||||
@@ -51,12 +47,6 @@ Configurations:
|
|||||||
|
|
||||||
# And arm64
|
# And arm64
|
||||||
|
|
||||||
-
|
|
||||||
Id: 'macos-13-arm64-tests'
|
|
||||||
Template: 'qtci-macos-13-arm-107'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Features: ['Sccache', 'TestOnly', 'Packaging']
|
|
||||||
Platform dependency: 'macos-universal-on-arm64'
|
|
||||||
-
|
-
|
||||||
Id: 'macos-14-arm64-tests'
|
Id: 'macos-14-arm64-tests'
|
||||||
Template: 'qtci-macos-14-arm-106'
|
Template: 'qtci-macos-14-arm-106'
|
||||||
@@ -84,17 +74,7 @@ Configurations:
|
|||||||
|
|
||||||
-
|
-
|
||||||
Id: 'macos-x86_64-developer-build'
|
Id: 'macos-x86_64-developer-build'
|
||||||
Template: 'qtci-macos-15-x86_64-103'
|
Template: 'qtci-macos-26-x86_64-101'
|
||||||
Compiler: 'Clang'
|
|
||||||
Features: ['Sccache', 'DoNotRunTests', 'WarningsAreErrors', 'UseConfigure', 'StandaloneExamples']
|
|
||||||
Configure arguments: '-developer-build -release -force-asserts -force-debug-info -no-pch -no-framework -qtnamespace TestNamespace -make examples'
|
|
||||||
Environment variables: [
|
|
||||||
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_DIR}}',
|
|
||||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE',
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'macos-26-x86_64-developer-build'
|
|
||||||
Template: 'qtci-macos-26-x86_64-100'
|
|
||||||
Compiler: 'Clang'
|
Compiler: 'Clang'
|
||||||
Features: ['Sccache', 'DoNotRunTests', 'WarningsAreErrors', 'UseConfigure', 'StandaloneExamples']
|
Features: ['Sccache', 'DoNotRunTests', 'WarningsAreErrors', 'UseConfigure', 'StandaloneExamples']
|
||||||
Configure arguments: '-developer-build -release -force-asserts -force-debug-info -no-pch -no-framework -qtnamespace TestNamespace -make examples'
|
Configure arguments: '-developer-build -release -force-asserts -force-debug-info -no-pch -no-framework -qtnamespace TestNamespace -make examples'
|
||||||
@@ -111,6 +91,8 @@ Configurations:
|
|||||||
Environment variables: [
|
Environment variables: [
|
||||||
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_DIR}}',
|
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_DIR}}',
|
||||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE',
|
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE',
|
||||||
|
'VCPKG_HOST_TRIPLET=universal-osx-qt',
|
||||||
|
'VCPKG_TARGET_TRIPLET=universal-osx-qt',
|
||||||
]
|
]
|
||||||
-
|
-
|
||||||
Id: 'macos-26-arm64-developer-build'
|
Id: 'macos-26-arm64-developer-build'
|
||||||
@@ -121,15 +103,11 @@ Configurations:
|
|||||||
Environment variables: [
|
Environment variables: [
|
||||||
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_DIR}}',
|
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_DIR}}',
|
||||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE',
|
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE',
|
||||||
|
'VCPKG_HOST_TRIPLET=arm64-osx-qt',
|
||||||
|
'VCPKG_TARGET_TRIPLET=arm64-osx-qt',
|
||||||
]
|
]
|
||||||
|
|
||||||
# Test on all supported macOS versions (deployment targets)
|
# Test on all supported macOS versions (deployment targets)
|
||||||
-
|
|
||||||
Id: 'macos-13-arm64-developer-build-tests'
|
|
||||||
Template: 'qtci-macos-13-arm-107'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Features: ['TestOnly']
|
|
||||||
Platform dependency: 'macos-arm64-developer-build'
|
|
||||||
-
|
-
|
||||||
Id: 'macos-14-arm64-developer-build-tests'
|
Id: 'macos-14-arm64-developer-build-tests'
|
||||||
Template: 'qtci-macos-14-arm-106'
|
Template: 'qtci-macos-14-arm-106'
|
||||||
@@ -146,6 +124,6 @@ Configurations:
|
|||||||
Id: 'macos-26-arm64-developer-build-tests'
|
Id: 'macos-26-arm64-developer-build-tests'
|
||||||
Template: 'qtci-macos-26-arm-104'
|
Template: 'qtci-macos-26-arm-104'
|
||||||
Compiler: 'Clang'
|
Compiler: 'Clang'
|
||||||
Features: ['TestOnly', 'InsignificantTests', 'DoNotAbortTestingOnFirstFailure']
|
Features: ['TestOnly']
|
||||||
Platform dependency: 'macos-26-arm64-developer-build'
|
Platform dependency: 'macos-26-arm64-developer-build'
|
||||||
Environment variables: [ 'COIN_CTEST_IGNORE_EXIT_CODE=1' ]
|
Environment variables: [ 'COIN_CTEST_IGNORE_EXIT_CODE=1' ]
|
||||||
|
|||||||
8
coin/platform_configs/messagingframework.yaml
Normal file
8
coin/platform_configs/messagingframework.yaml
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
Version: 2
|
||||||
|
Module only: true
|
||||||
|
Include: [
|
||||||
|
cmake_platforms.yaml: [
|
||||||
|
"ubuntu-22.04"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
Configurations: []
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
Version: 2
|
||||||
|
Include: [
|
||||||
|
cmake_platforms.yaml,
|
||||||
|
address_sanitizer_platforms.yaml,
|
||||||
|
offline_documentation.yaml
|
||||||
|
]
|
||||||
|
Configurations: []
|
||||||
|
Overrides:
|
||||||
|
-
|
||||||
|
Id: '.*'
|
||||||
|
+Features: ['BuildCMakeFromSources']
|
||||||
@@ -2,7 +2,7 @@ Version: 2
|
|||||||
Configurations:
|
Configurations:
|
||||||
-
|
-
|
||||||
Id: 'ubuntu-24.04-x64-examples-and-tests-build'
|
Id: 'ubuntu-24.04-x64-examples-and-tests-build'
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-54'
|
||||||
Compiler: 'GCC'
|
Compiler: 'GCC'
|
||||||
Features: ['Sccache', 'UseConfigure', 'DoNotRunTests', 'NoSubmoduleDependencies']
|
Features: ['Sccache', 'UseConfigure', 'DoNotRunTests', 'NoSubmoduleDependencies']
|
||||||
Configure arguments: '-make examples -make tests'
|
Configure arguments: '-make examples -make tests'
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ Version: 2
|
|||||||
Configurations:
|
Configurations:
|
||||||
-
|
-
|
||||||
Id: 'ubuntu-24.04-x64-run-cmake-tests'
|
Id: 'ubuntu-24.04-x64-run-cmake-tests'
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-54'
|
||||||
Compiler: 'GCC'
|
Compiler: 'GCC'
|
||||||
Features: ['Sccache', 'NoSubmoduleDependencies', 'TopLevelRunCMakeTests', 'DisableTests', 'VMSize16']
|
Features: ['Sccache', 'NoSubmoduleDependencies', 'TopLevelRunCMakeTests', 'DisableTests', 'VMSize16']
|
||||||
Configure arguments: ''
|
Configure arguments: ''
|
||||||
|
|||||||
@@ -0,0 +1,16 @@
|
|||||||
|
Version: 2
|
||||||
|
Module only: True
|
||||||
|
Configurations:
|
||||||
|
-
|
||||||
|
Id: 'ubuntu-22.04-baseline-tests'
|
||||||
|
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
|
||||||
|
Compiler: 'GCC'
|
||||||
|
Features: ['Sccache', 'UseConfigure']
|
||||||
|
Configure arguments: '-developer-build -nomake examples'
|
||||||
|
Environment variables: [
|
||||||
|
'CMAKE_ARGS=-DFEATURE_test_auto=OFF -DFEATURE_test_baseline=ON -DOpenGL_GL_PREFERENCE=LEGACY',
|
||||||
|
'CTEST_DIR=tests/baseline',
|
||||||
|
'TESTARGS=-auto',
|
||||||
|
'QT_LANCELOT_SERVER=10.150.153.60'
|
||||||
|
]
|
||||||
|
|
||||||
@@ -5,7 +5,7 @@ Configurations:
|
|||||||
Template: 'qtci-windows-11_24H2-x86_64-71'
|
Template: 'qtci-windows-11_24H2-x86_64-71'
|
||||||
Compiler: 'MSVC2022'
|
Compiler: 'MSVC2022'
|
||||||
Features: ['Sccache', 'Debug', 'UseConfigure', 'DoNotRunTests']
|
Features: ['Sccache', 'Debug', 'UseConfigure', 'DoNotRunTests']
|
||||||
Configure arguments: '-debug -force-debug-info -headersclean -make examples -qt-zlib'
|
Configure arguments: '-debug -force-debug-info -headersclean -nomake examples -qt-zlib' # disabled example builds: qmake builds fail with C1041
|
||||||
Environment variables: [
|
Environment variables: [
|
||||||
'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\.. -DPostgreSQL_ROOT={{.Env.POSTGRESQL_LIB_x64}}\.. -DQT_UNITY_BUILD=ON',
|
'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\.. -DPostgreSQL_ROOT={{.Env.POSTGRESQL_LIB_x64}}\.. -DQT_UNITY_BUILD=ON',
|
||||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC}} -DQT_DEPLOY_FFMPEG=TRUE -DFEATURE_clangcpp=OFF -DINPUT_headersclean=ON',
|
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC}} -DQT_DEPLOY_FFMPEG=TRUE -DFEATURE_clangcpp=OFF -DINPUT_headersclean=ON',
|
||||||
|
|||||||
@@ -15,8 +15,3 @@ Include: [
|
|||||||
quick-bridges.yaml
|
quick-bridges.yaml
|
||||||
]
|
]
|
||||||
Configurations: []
|
Configurations: []
|
||||||
Overrides:
|
|
||||||
# Make VxWorks tests insignificant.
|
|
||||||
-
|
|
||||||
Id: 'vxworks-x86_64-tests'
|
|
||||||
Features: ['VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly', 'InsignificantTests']
|
|
||||||
|
|||||||
13
coin/platform_configs/qtbridge-csharp.yaml
Normal file
13
coin/platform_configs/qtbridge-csharp.yaml
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
Version: 2
|
||||||
|
Include: [
|
||||||
|
quick-bridges.yaml: [
|
||||||
|
"windows-quick-bridges"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
Configurations:
|
||||||
|
-
|
||||||
|
Id: 'windows-quick-bridges-csharp'
|
||||||
|
Template: 'qtci-windows-11_24H2-x86_64-71'
|
||||||
|
Compiler: 'MSVC2022'
|
||||||
|
Platform dependency: 'windows-quick-bridges'
|
||||||
|
Features: ['Packaging', 'Sccache', "DebugAndRelease", 'UseConfigure', 'DisableTests', 'RunAsPlatformDependency', 'QtBridgesCsharp']
|
||||||
46
coin/platform_configs/qtbridge-java.yaml
Normal file
46
coin/platform_configs/qtbridge-java.yaml
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
Version: 2
|
||||||
|
Include: [
|
||||||
|
quick-bridges.yaml: [
|
||||||
|
"macos-quick-bridges",
|
||||||
|
"linux-quick-bridges",
|
||||||
|
"windows-quick-bridges"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
|
||||||
|
Configurations:
|
||||||
|
-
|
||||||
|
Id: 'windows-quick-bridges-java'
|
||||||
|
Template: 'qtci-windows-11_24H2-x86_64-71'
|
||||||
|
Compiler: 'MSVC2022'
|
||||||
|
Platform dependency: 'windows-quick-bridges'
|
||||||
|
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'RunAsPlatformDependency', 'QtBridgesJava']
|
||||||
|
|
||||||
|
-
|
||||||
|
Id: 'windows-on-arm-quick-bridges-java'
|
||||||
|
Template: 'qtci-windows-11_23H2-aarch64-53'
|
||||||
|
Compiler: 'MSVC2022'
|
||||||
|
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'QtBridgesJava']
|
||||||
|
|
||||||
|
-
|
||||||
|
Id: 'linux-quick-bridges-java'
|
||||||
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-54'
|
||||||
|
Compiler: 'GCC'
|
||||||
|
Platform dependency: 'linux-quick-bridges'
|
||||||
|
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'RunAsPlatformDependency', 'RunAsPlatformDependency', 'QtBridgesJava']
|
||||||
|
|
||||||
|
-
|
||||||
|
Id: 'linux-on-arm-quick-bridges-java'
|
||||||
|
Template: 'qtci-linux-Ubuntu-24.04-aarch64-52'
|
||||||
|
Compiler: 'GCC'
|
||||||
|
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'QtBridgesJava']
|
||||||
|
Environment variables: [
|
||||||
|
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
|
||||||
|
]
|
||||||
|
-
|
||||||
|
Id: 'macos-quick-bridges-universal-java'
|
||||||
|
Template: 'qtci-macos-15-arm-104'
|
||||||
|
Compiler: 'Clang'
|
||||||
|
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'QtBridgesJava']
|
||||||
|
Environment variables: [
|
||||||
|
'CMAKE_ARGS=-DCMAKE_OSX_ARCHITECTURES="x86_64;arm64"',
|
||||||
|
]
|
||||||
37
coin/platform_configs/qtbridge-python.yaml
Normal file
37
coin/platform_configs/qtbridge-python.yaml
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
Version: 2
|
||||||
|
Include: [
|
||||||
|
quick-bridges.yaml: [
|
||||||
|
"macos-quick-bridges",
|
||||||
|
"windows-quick-bridges"
|
||||||
|
],
|
||||||
|
cmake_platforms.yaml: [
|
||||||
|
"rhel-9.6"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
Configurations:
|
||||||
|
-
|
||||||
|
Id: 'windows-quick-bridges-python'
|
||||||
|
Template: 'qtci-windows-11_24H2-x86_64-71'
|
||||||
|
Compiler: 'MSVC2022'
|
||||||
|
Platform dependency: 'windows-quick-bridges'
|
||||||
|
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'RunAsPlatformDependency', 'QtBridgesPython']
|
||||||
|
|
||||||
|
-
|
||||||
|
Id: 'linux-quick-bridges-python'
|
||||||
|
Template: 'qtci-linux-RHEL-9.6-x86_64-51'
|
||||||
|
Compiler: 'GCC'
|
||||||
|
Platform dependency: 'rhel-9.6'
|
||||||
|
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'RunAsPlatformDependency', 'QtBridgesPython']
|
||||||
|
|
||||||
|
-
|
||||||
|
Id: 'macos-quick-bridges-python'
|
||||||
|
Template: 'qtci-macos-15-arm-104'
|
||||||
|
Compiler: 'Clang'
|
||||||
|
Platform dependency: 'macos-quick-bridges'
|
||||||
|
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'RunAsPlatformDependency', 'QtBridgesPython']
|
||||||
|
|
||||||
|
-
|
||||||
|
Id: 'windows-on-arm-quick-bridges-python'
|
||||||
|
Template: 'qtci-windows-11_23H2-aarch64-53'
|
||||||
|
Compiler: 'MSVC2022'
|
||||||
|
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'QtBridgesPython']
|
||||||
21
coin/platform_configs/qtbridge-rust.yaml
Normal file
21
coin/platform_configs/qtbridge-rust.yaml
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
Version: 2
|
||||||
|
Include: [
|
||||||
|
quick-bridges.yaml: [
|
||||||
|
"linux-quick-bridges",
|
||||||
|
"windows-quick-bridges"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
Configurations:
|
||||||
|
-
|
||||||
|
Id: 'windows-quick-bridges-rust'
|
||||||
|
Template: 'qtci-windows-11_24H2-x86_64-71'
|
||||||
|
Compiler: 'MSVC2022'
|
||||||
|
Platform dependency: 'windows-quick-bridges'
|
||||||
|
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'RunAsPlatformDependency', 'QtBridgesRust']
|
||||||
|
|
||||||
|
-
|
||||||
|
Id: 'linux-quick-bridges-rust'
|
||||||
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-54'
|
||||||
|
Compiler: 'GCC'
|
||||||
|
Platform dependency: 'linux-quick-bridges'
|
||||||
|
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'RunAsPlatformDependency', 'RunAsPlatformDependency', 'QtBridgesRust']
|
||||||
21
coin/platform_configs/qtbridge-swift.yaml
Normal file
21
coin/platform_configs/qtbridge-swift.yaml
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
Version: 2
|
||||||
|
Include: [
|
||||||
|
quick-bridges.yaml: [
|
||||||
|
"macos-quick-bridges",
|
||||||
|
"linux-quick-bridges"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
Configurations:
|
||||||
|
-
|
||||||
|
Id: 'macos-quick-bridges-swift'
|
||||||
|
Template: 'qtci-macos-15-arm-104'
|
||||||
|
Compiler: 'Clang'
|
||||||
|
Platform dependency: 'macos-quick-bridges'
|
||||||
|
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'RunAsPlatformDependency', 'QtBridgesSwift']
|
||||||
|
|
||||||
|
-
|
||||||
|
Id: 'linux-quick-bridges-swift'
|
||||||
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-54'
|
||||||
|
Compiler: 'GCC'
|
||||||
|
Platform dependency: 'linux-quick-bridges'
|
||||||
|
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'RunAsPlatformDependency', 'QtBridgesSwift']
|
||||||
@@ -10,13 +10,6 @@ Include: [
|
|||||||
]
|
]
|
||||||
]
|
]
|
||||||
Configurations:
|
Configurations:
|
||||||
-
|
|
||||||
Id: 'windows-quick-bridges-dotnet'
|
|
||||||
Template: 'qtci-windows-11_24H2-x86_64-71'
|
|
||||||
Compiler: 'MSVC2022'
|
|
||||||
Platform dependency: 'windows-quick-bridges'
|
|
||||||
Features: ['Packaging', 'Sccache', "DebugAndRelease", 'UseConfigure', 'DisableTests', 'RunAsPlatformDependency', 'QtBridgesDotnet']
|
|
||||||
|
|
||||||
-
|
-
|
||||||
Id: 'windows-quick-bridges-rust'
|
Id: 'windows-quick-bridges-rust'
|
||||||
Template: 'qtci-windows-11_24H2-x86_64-71'
|
Template: 'qtci-windows-11_24H2-x86_64-71'
|
||||||
@@ -47,14 +40,14 @@ Configurations:
|
|||||||
|
|
||||||
-
|
-
|
||||||
Id: 'linux-quick-bridges-java'
|
Id: 'linux-quick-bridges-java'
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-54'
|
||||||
Compiler: 'GCC'
|
Compiler: 'GCC'
|
||||||
Platform dependency: 'linux-quick-bridges'
|
Platform dependency: 'linux-quick-bridges'
|
||||||
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'RunAsPlatformDependency', 'RunAsPlatformDependency', 'QtBridgesJava']
|
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'RunAsPlatformDependency', 'RunAsPlatformDependency', 'QtBridgesJava']
|
||||||
|
|
||||||
-
|
-
|
||||||
Id: 'linux-quick-bridges-rust'
|
Id: 'linux-quick-bridges-rust'
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-54'
|
||||||
Compiler: 'GCC'
|
Compiler: 'GCC'
|
||||||
Platform dependency: 'linux-quick-bridges'
|
Platform dependency: 'linux-quick-bridges'
|
||||||
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'RunAsPlatformDependency', 'RunAsPlatformDependency', 'QtBridgesRust']
|
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'RunAsPlatformDependency', 'RunAsPlatformDependency', 'QtBridgesRust']
|
||||||
@@ -5,7 +5,7 @@ Configurations:
|
|||||||
Id: 'qtgp-on-linux-rhel_9_6'
|
Id: 'qtgp-on-linux-rhel_9_6'
|
||||||
Template: 'qtci-linux-RHEL-9.6-x86_64-51'
|
Template: 'qtci-linux-RHEL-9.6-x86_64-51'
|
||||||
Compiler: 'GCC'
|
Compiler: 'GCC'
|
||||||
Features: ['TestOnly']
|
Features: ['Packaging', 'UseConfigure']
|
||||||
-
|
-
|
||||||
Id: 'qtgp-on-macos'
|
Id: 'qtgp-on-macos'
|
||||||
Template: 'qtci-macos-14-arm-106'
|
Template: 'qtci-macos-14-arm-106'
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ Version: 2
|
|||||||
Configurations:
|
Configurations:
|
||||||
-
|
-
|
||||||
Id: 'ubuntu-24.04-x86-static-qtlite'
|
Id: 'ubuntu-24.04-x86-static-qtlite'
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-54'
|
||||||
Compiler: 'GCC'
|
Compiler: 'GCC'
|
||||||
Features: ['Sccache', 'UseConfigure', 'DoNotRunTests', 'MinimalStaticTests']
|
Features: ['Sccache', 'UseConfigure', 'DoNotRunTests', 'MinimalStaticTests']
|
||||||
Configure arguments: >
|
Configure arguments: >
|
||||||
@@ -224,7 +224,7 @@ Configurations:
|
|||||||
]
|
]
|
||||||
-
|
-
|
||||||
Id: 'ubuntu-24.04-x86-static-qtlite-tests'
|
Id: 'ubuntu-24.04-x86-static-qtlite-tests'
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-54'
|
||||||
Compiler: 'GCC'
|
Compiler: 'GCC'
|
||||||
Features: ['Sccache', 'TestOnly','InsignificantTests']
|
Features: ['Sccache', 'TestOnly','InsignificantTests']
|
||||||
Platform dependency: 'ubuntu-24.04-x86-static-qtlite'
|
Platform dependency: 'ubuntu-24.04-x86-static-qtlite'
|
||||||
|
|||||||
@@ -13,7 +13,6 @@ Configurations:
|
|||||||
-separate-debug-info
|
-separate-debug-info
|
||||||
-optimize-size
|
-optimize-size
|
||||||
-shared
|
-shared
|
||||||
-disable-deprecated-up-to 0x070000
|
|
||||||
-no-feature-widgets
|
-no-feature-widgets
|
||||||
-no-feature-sql
|
-no-feature-sql
|
||||||
-no-feature-printsupport
|
-no-feature-printsupport
|
||||||
@@ -24,7 +23,7 @@ Configurations:
|
|||||||
Environment variables: []
|
Environment variables: []
|
||||||
-
|
-
|
||||||
Id: 'linux-quick-bridges'
|
Id: 'linux-quick-bridges'
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-54'
|
||||||
Compiler: 'GCC'
|
Compiler: 'GCC'
|
||||||
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'Insignificant']
|
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'Insignificant']
|
||||||
Configure arguments: >
|
Configure arguments: >
|
||||||
@@ -35,7 +34,6 @@ Configurations:
|
|||||||
-separate-debug-info
|
-separate-debug-info
|
||||||
-optimize-size
|
-optimize-size
|
||||||
-shared
|
-shared
|
||||||
-disable-deprecated-up-to 0x070000
|
|
||||||
-no-feature-widgets
|
-no-feature-widgets
|
||||||
-no-feature-sql
|
-no-feature-sql
|
||||||
-no-feature-printsupport
|
-no-feature-printsupport
|
||||||
@@ -43,7 +41,9 @@ Configurations:
|
|||||||
-no-feature-vnc
|
-no-feature-vnc
|
||||||
-no-feature-picture
|
-no-feature-picture
|
||||||
-no-feature-pdf
|
-no-feature-pdf
|
||||||
Environment variables: []
|
Environment variables: [
|
||||||
|
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
|
||||||
|
]
|
||||||
-
|
-
|
||||||
Id: 'windows-quick-bridges'
|
Id: 'windows-quick-bridges'
|
||||||
Template: 'qtci-windows-11_24H2-x86_64-71'
|
Template: 'qtci-windows-11_24H2-x86_64-71'
|
||||||
@@ -56,7 +56,6 @@ Configurations:
|
|||||||
-force-debug-info
|
-force-debug-info
|
||||||
-optimize-size
|
-optimize-size
|
||||||
-shared
|
-shared
|
||||||
-disable-deprecated-up-to 0x070000
|
|
||||||
-no-feature-widgets
|
-no-feature-widgets
|
||||||
-no-feature-sql
|
-no-feature-sql
|
||||||
-no-feature-printsupport
|
-no-feature-printsupport
|
||||||
|
|||||||
@@ -151,7 +151,7 @@ Configurations:
|
|||||||
Platform dependency: 'macos-quick-minimal'
|
Platform dependency: 'macos-quick-minimal'
|
||||||
-
|
-
|
||||||
Id: 'linux-quick-minimal'
|
Id: 'linux-quick-minimal'
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-54'
|
||||||
Compiler: 'GCC'
|
Compiler: 'GCC'
|
||||||
Features: ['Sccache', 'UseConfigure', 'DisableTests', 'Insignificant']
|
Features: ['Sccache', 'UseConfigure', 'DisableTests', 'Insignificant']
|
||||||
Configure arguments: >
|
Configure arguments: >
|
||||||
|
|||||||
15
coin/platform_configs/tqtc-qtmcp.yaml
Normal file
15
coin/platform_configs/tqtc-qtmcp.yaml
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
Version: 2
|
||||||
|
Include: [
|
||||||
|
cmake_platforms.yaml: [
|
||||||
|
'ubuntu-22.04',
|
||||||
|
'ubuntu-22.04-x11-tests',
|
||||||
|
'ubuntu-24.04-x64',
|
||||||
|
'ubuntu-24.04-x64-x11-tests',
|
||||||
|
'windows-11_24H2-msvc2022'
|
||||||
|
],
|
||||||
|
macos.yaml: [
|
||||||
|
'macos-arm64-developer-build',
|
||||||
|
'macos-14-arm64-developer-build-tests'
|
||||||
|
]
|
||||||
|
]
|
||||||
|
Configurations: []
|
||||||
@@ -12,5 +12,5 @@ Configurations:
|
|||||||
Template: 'qtci-linux-openSUSE-16.0-x86_64-51'
|
Template: 'qtci-linux-openSUSE-16.0-x86_64-51'
|
||||||
Target os: 'WebAssembly'
|
Target os: 'WebAssembly'
|
||||||
Compiler: 'GCC'
|
Compiler: 'GCC'
|
||||||
Features: ['Sccache', 'TestOnly']
|
Features: ['Sccache', 'TestOnly', 'InsignificantTests', 'DoNotAbortTestingOnFirstFailure']
|
||||||
Platform dependency: 'webassembly-linux-thread-asyncify-new'
|
Platform dependency: 'webassembly-linux-thread-asyncify-new'
|
||||||
|
|||||||
@@ -2,67 +2,67 @@ Version: 2
|
|||||||
Module only: True
|
Module only: True
|
||||||
Configurations:
|
Configurations:
|
||||||
-
|
-
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-54'
|
||||||
Compiler: 'Yocto'
|
Compiler: 'Yocto'
|
||||||
Features: ['Packaging']
|
Features: ['Packaging']
|
||||||
Target arch: 'TARGET1'
|
Target arch: 'TARGET1'
|
||||||
-
|
-
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-54'
|
||||||
Compiler: 'Yocto'
|
Compiler: 'Yocto'
|
||||||
Features: ['Packaging']
|
Features: ['Packaging']
|
||||||
Target arch: 'TARGET2'
|
Target arch: 'TARGET2'
|
||||||
-
|
-
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-54'
|
||||||
Compiler: 'Yocto'
|
Compiler: 'Yocto'
|
||||||
Features: ['Packaging']
|
Features: ['Packaging']
|
||||||
Target arch: 'TARGET3'
|
Target arch: 'TARGET3'
|
||||||
-
|
-
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-54'
|
||||||
Compiler: 'Yocto'
|
Compiler: 'Yocto'
|
||||||
Features: ['Packaging']
|
Features: ['Packaging']
|
||||||
Target arch: 'TARGET4'
|
Target arch: 'TARGET4'
|
||||||
-
|
-
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-54'
|
||||||
Compiler: 'Yocto'
|
Compiler: 'Yocto'
|
||||||
Features: ['Packaging']
|
Features: ['Packaging']
|
||||||
Target arch: 'TARGET5'
|
Target arch: 'TARGET5'
|
||||||
-
|
-
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-54'
|
||||||
Compiler: 'Yocto'
|
Compiler: 'Yocto'
|
||||||
Features: ['Packaging']
|
Features: ['Packaging']
|
||||||
Target arch: 'TARGET6'
|
Target arch: 'TARGET6'
|
||||||
-
|
-
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-54'
|
||||||
Compiler: 'Yocto'
|
Compiler: 'Yocto'
|
||||||
Features: ['Packaging']
|
Features: ['Packaging']
|
||||||
Target arch: 'TARGET7'
|
Target arch: 'TARGET7'
|
||||||
-
|
-
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-54'
|
||||||
Compiler: 'Yocto'
|
Compiler: 'Yocto'
|
||||||
Features: ['Packaging']
|
Features: ['Packaging']
|
||||||
Target arch: 'TARGET8'
|
Target arch: 'TARGET8'
|
||||||
-
|
-
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-54'
|
||||||
Compiler: 'Yocto'
|
Compiler: 'Yocto'
|
||||||
Features: ['Packaging']
|
Features: ['Packaging']
|
||||||
Target arch: 'TARGET9'
|
Target arch: 'TARGET9'
|
||||||
-
|
-
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-54'
|
||||||
Compiler: 'Yocto'
|
Compiler: 'Yocto'
|
||||||
Features: ['Packaging']
|
Features: ['Packaging']
|
||||||
Target arch: 'TARGET10'
|
Target arch: 'TARGET10'
|
||||||
-
|
-
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-54'
|
||||||
Compiler: 'Yocto'
|
Compiler: 'Yocto'
|
||||||
Features: ['Insignificant']
|
Features: ['Insignificant']
|
||||||
Target arch: 'INSIGNIFICANT_TARGET1'
|
Target arch: 'INSIGNIFICANT_TARGET1'
|
||||||
-
|
-
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-54'
|
||||||
Compiler: 'Yocto'
|
Compiler: 'Yocto'
|
||||||
Features: ['Insignificant']
|
Features: ['Insignificant']
|
||||||
Target arch: 'INSIGNIFICANT_TARGET2'
|
Target arch: 'INSIGNIFICANT_TARGET2'
|
||||||
-
|
-
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
Template: 'qtci-linux-Ubuntu-24.04-x86_64-54'
|
||||||
Compiler: 'Yocto'
|
Compiler: 'Yocto'
|
||||||
Features: ['Insignificant']
|
Features: ['Insignificant']
|
||||||
Target arch: 'INSIGNIFICANT_TARGET3'
|
Target arch: 'INSIGNIFICANT_TARGET3'
|
||||||
|
|||||||
13
coin/pre-provisioning/qtci-linux-RHEL-10.0-x86_64/01-disable-automounting.sh
Executable file
13
coin/pre-provisioning/qtci-linux-RHEL-10.0-x86_64/01-disable-automounting.sh
Executable file
@@ -0,0 +1,13 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
# Copyright (C) 2026 The Qt Company Ltd.
|
||||||
|
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||||
|
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
sudo tee -a /etc/dconf/db/local.d/00-media-automount <<"EOF"
|
||||||
|
[org/gnome/desktop/media-handling]
|
||||||
|
automount=false
|
||||||
|
automount-open=false
|
||||||
|
EOF
|
||||||
|
|
||||||
|
sudo dconf update
|
||||||
@@ -0,0 +1,88 @@
|
|||||||
|
### RHEL 10.0 ###
|
||||||
|
Hard Disk: 500G
|
||||||
|
Network: CI
|
||||||
|
Video Card: Total Video Memory: 64MB
|
||||||
|
Boot options/Firmware: BIOS
|
||||||
|
Language: English (United States)
|
||||||
|
Keyboard: English (US), Norwegian (Windows), Finnish (Windows)
|
||||||
|
Time & Date: Etc/Coordinated Universal Time
|
||||||
|
Software Selection: Server with GUI
|
||||||
|
Installation Destination: Automatic partitioning selected
|
||||||
|
Root Passowrd: Set
|
||||||
|
Network & Host..: Connected
|
||||||
|
KDUMP enabled: Memory Reservation: automatic
|
||||||
|
Begin Installation
|
||||||
|
Reboot
|
||||||
|
# Configure Settings
|
||||||
|
Notifications:
|
||||||
|
* Lock Screen Notifications: OFF
|
||||||
|
* Applications: Set notification off
|
||||||
|
* Do Not Disturb: on
|
||||||
|
Applications:
|
||||||
|
* Disable notifications from all applications
|
||||||
|
Privacy:
|
||||||
|
* Blank Screen Delay: Never
|
||||||
|
* Screen Lock: OFF
|
||||||
|
Power:
|
||||||
|
* Blank screen: Never
|
||||||
|
Displays:
|
||||||
|
* Resolution: 1280 x 800
|
||||||
|
Users:
|
||||||
|
* Automatic login on
|
||||||
|
# Add user to sudoers
|
||||||
|
Add 'qt ALL=NOPASSWD: ALL' to /etc/sudoers.d/qt
|
||||||
|
Add 'GRUB_GFXMODE=1280x800' to /etc/default/grub
|
||||||
|
sudo grub2-mkconfig -o /etc/grub2.cfg
|
||||||
|
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
|
||||||
|
# Add support for virtio driver
|
||||||
|
su
|
||||||
|
echo "add_drivers+=\" virtio-blk \"" >> /etc/dracut.conf.d/virtio.conf
|
||||||
|
dracut -f
|
||||||
|
|
||||||
|
# NOTE!
|
||||||
|
# - RHEL uses 'sudo subscription-manager release --set=10.0' in provisioning
|
||||||
|
# - Do not update Tier 1 via GUI without using this same --set before provisioning
|
||||||
|
# - To avoid System to have newer packages than RPMS which will cause update issues
|
||||||
|
|
||||||
|
# Register RHEL before it's possible to install qemu-guest-agent
|
||||||
|
subscription-manager register
|
||||||
|
|
||||||
|
yum -y install qemu-guest-agent
|
||||||
|
|
||||||
|
# Do these from Opennebula UI!
|
||||||
|
|
||||||
|
# Enable network connection from right upper corner
|
||||||
|
This is done when the VM is launched as persistent in OpenNebula.
|
||||||
|
# Fetch and run coin-setup
|
||||||
|
Download http://coin/coin/binary/linux_amd64/coin-setup
|
||||||
|
# run as qt user
|
||||||
|
run './coin-setup'
|
||||||
|
# Switch to use GNOME Classic user interface
|
||||||
|
# GNOME Classic was selected because there's an issue with Standard (wayland display server).
|
||||||
|
# Autotest start failing because terminal session remains in Activities Overview.
|
||||||
|
# https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3854
|
||||||
|
First execute script ./01-disable-automounting.sh (dconf update crash in GNOME Classic)
|
||||||
|
logout -> Select user (without it the drop down menu won't appear) -> switch to 'GNOME Classic' -desktop session from drop down menu in login screen
|
||||||
|
|
||||||
|
# If gear icon is not seen, check is 'GNOME Classic' -desktop session installed, and install if it's missing
|
||||||
|
ls /usr/share/xsessions/
|
||||||
|
# This should list something like these if it's installed
|
||||||
|
gnome-classic.desktop
|
||||||
|
gnome.desktop
|
||||||
|
|
||||||
|
# To install GNOME Classic if it's missing
|
||||||
|
sudo dnf reinstall gnome-classic-session
|
||||||
|
|
||||||
|
# In RHEL 10.0 even with 'GNOME Classic' -desktop the Activities Overview is still in use
|
||||||
|
# It can be bypassed via 'No Overview' -GNOME extension:
|
||||||
|
# - https://extensions.gnome.org/extension/4099/no-overview/
|
||||||
|
# - Select GNOME Shell version 47 to download
|
||||||
|
# - Unpack extension from tar.gz
|
||||||
|
sudo mv <extension_folder> /usr/share/gnome-shell/extensions/no-overview@fthx
|
||||||
|
sudo chown -R root: /usr/share/gnome-shell/extensions/no-overview@fthx
|
||||||
|
sudo chmod 755 -R /usr/share/gnome-shell/extensions/no-overview@fthx
|
||||||
|
sudo reboot
|
||||||
|
gnome-extensions list
|
||||||
|
gnome-extensions enable no-overview@fthx
|
||||||
|
|
||||||
|
Reboot
|
||||||
0
coin/pre-provisioning/qtci-linux-RHEL-9.2-x86_64/01-disable-automounting.sh
Normal file → Executable file
0
coin/pre-provisioning/qtci-linux-RHEL-9.2-x86_64/01-disable-automounting.sh
Normal file → Executable file
0
coin/pre-provisioning/qtci-linux-RHEL-9.4-x86_64/01-disable-automounting.sh
Normal file → Executable file
0
coin/pre-provisioning/qtci-linux-RHEL-9.4-x86_64/01-disable-automounting.sh
Normal file → Executable file
0
coin/pre-provisioning/qtci-linux-RHEL-9.6-x86_64/01-disable-automounting.sh
Normal file → Executable file
0
coin/pre-provisioning/qtci-linux-RHEL-9.6-x86_64/01-disable-automounting.sh
Normal file → Executable file
@@ -53,6 +53,17 @@ run 'sudo ufw disable'
|
|||||||
|
|
||||||
run 'sudo apt install qemu-guest-agent'
|
run 'sudo apt install qemu-guest-agent'
|
||||||
|
|
||||||
|
# Install no-overview gnome extension to prevent desktop overview at boot (QTBUG-132070)
|
||||||
|
# - https://extensions.gnome.org/extension/4099/no-overview/
|
||||||
|
# - Select GNOME Shell version 46 to download
|
||||||
|
# - Unpack extension to (mkdir): /usr/share/gnome-shell/extensions/no-overview@fthx
|
||||||
|
sudo chown -R root /usr/share/gnome-shell/extensions/no-overview@fthx
|
||||||
|
sudo chmod 755 -R /usr/share/gnome-shell/extensions/no-overview@fthx
|
||||||
|
sudo reboot
|
||||||
|
gnome-extensions list
|
||||||
|
gnome-extensions enable no-overview@fthx
|
||||||
|
gnome-extensions info no-overview@fthx # Check for "Active"
|
||||||
|
|
||||||
# Fetch and run coin-setup (in Opennebula)
|
# Fetch and run coin-setup (in Opennebula)
|
||||||
Download http://coin/coin/binary/linux_amd64/coin-setup
|
Download http://coin/coin/binary/linux_amd64/coin-setup
|
||||||
run 'chmod +x ./coin-setup' to make it executable
|
run 'chmod +x ./coin-setup' to make it executable
|
||||||
|
|||||||
@@ -1,12 +1,7 @@
|
|||||||
*.iml
|
*.iml
|
||||||
.gradle
|
.gradle
|
||||||
|
.idea
|
||||||
/local.properties
|
/local.properties
|
||||||
/.idea/caches
|
|
||||||
/.idea/libraries
|
|
||||||
/.idea/modules.xml
|
|
||||||
/.idea/workspace.xml
|
|
||||||
/.idea/navEditor.xml
|
|
||||||
/.idea/assetWizardSettings.xml
|
|
||||||
.DS_Store
|
.DS_Store
|
||||||
/build
|
/build
|
||||||
/captures
|
/captures
|
||||||
|
|||||||
@@ -4,19 +4,19 @@ plugins {
|
|||||||
|
|
||||||
android {
|
android {
|
||||||
namespace 'com.example.gradle_project'
|
namespace 'com.example.gradle_project'
|
||||||
compileSdk 35
|
compileSdk 36
|
||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
applicationId "com.example.gradle_project"
|
applicationId "com.example.gradle_project"
|
||||||
minSdk 28
|
minSdk 28
|
||||||
targetSdk 35
|
targetSdk 36
|
||||||
versionCode 1
|
versionCode 1
|
||||||
versionName "1.0"
|
versionName "1.0"
|
||||||
}
|
}
|
||||||
|
|
||||||
compileOptions {
|
compileOptions {
|
||||||
sourceCompatibility JavaVersion.VERSION_1_8
|
sourceCompatibility JavaVersion.VERSION_17
|
||||||
targetCompatibility JavaVersion.VERSION_1_8
|
targetCompatibility JavaVersion.VERSION_17
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
android:allowBackup="true"
|
android:allowBackup="true"
|
||||||
android:label="gradle_project"
|
android:label="gradle_project"
|
||||||
android:supportsRtl="true"
|
android:supportsRtl="true"
|
||||||
tools:targetApi="35">
|
tools:targetApi="36">
|
||||||
<activity
|
<activity
|
||||||
android:name=".MainActivity"
|
android:name=".MainActivity"
|
||||||
android:exported="true">
|
android:exported="true">
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
[versions]
|
[versions]
|
||||||
agp = "8.10.1"
|
agp = "9.0.0"
|
||||||
core = "1.16.0"
|
core = "1.17.0"
|
||||||
appcompat = "1.7.1"
|
appcompat = "1.7.1"
|
||||||
material = "1.12.0"
|
material = "1.13.0"
|
||||||
constraintlayout = "2.2.1"
|
constraintlayout = "2.2.1"
|
||||||
|
|
||||||
[libraries]
|
[libraries]
|
||||||
|
|||||||
@@ -25,8 +25,8 @@ basePath="http://ci-files01-hki.ci.qt.io/input/android"
|
|||||||
toolsVersion="19.0"
|
toolsVersion="19.0"
|
||||||
toolsFile="commandlinetools-linux-13114758_latest.zip"
|
toolsFile="commandlinetools-linux-13114758_latest.zip"
|
||||||
toolsBackupUrl="https://dl.google.com/android/repository/$toolsFile"
|
toolsBackupUrl="https://dl.google.com/android/repository/$toolsFile"
|
||||||
sdkBuildToolsVersion="35.0.1"
|
sdkBuildToolsVersion="36.0.0"
|
||||||
sdkApiLevel="android-35"
|
sdkApiLevel="android-36"
|
||||||
toolsSha1="5fdcc763663eefb86a5b8879697aa6088b041e70"
|
toolsSha1="5fdcc763663eefb86a5b8879697aa6088b041e70"
|
||||||
|
|
||||||
ndkVersionLatest="r27c"
|
ndkVersionLatest="r27c"
|
||||||
@@ -232,12 +232,16 @@ cp "${scripts_dir_name}/../unix/${emulator_script_filename}" "${HOME}"
|
|||||||
ANDROID_EMULATOR_RUNNER="${HOME}/${emulator_script_filename}"
|
ANDROID_EMULATOR_RUNNER="${HOME}/${emulator_script_filename}"
|
||||||
SetEnvVar "ANDROID_EMULATOR_RUNNER" "$ANDROID_EMULATOR_RUNNER"
|
SetEnvVar "ANDROID_EMULATOR_RUNNER" "$ANDROID_EMULATOR_RUNNER"
|
||||||
|
|
||||||
|
SetEnvVar "PATH" "\$PATH:$sdkTargetFolder/emulator"
|
||||||
|
SetEnvVar "PATH" "\$PATH:$sdkTargetFolder/platform-tools"
|
||||||
|
SetEnvVar "PATH" "\$PATH:$sdkTargetFolder/cmdline-tools/latest/bin"
|
||||||
|
|
||||||
# Gradle Caching
|
# Gradle Caching
|
||||||
cp -r "${scripts_dir_name}/android/gradle_project" /tmp/gradle_project
|
cp -r "${scripts_dir_name}/android/gradle_project" /tmp/gradle_project
|
||||||
cd /tmp/gradle_project
|
cd /tmp/gradle_project
|
||||||
# Get Gradle files from qtbase
|
# Get Gradle files from qtbase
|
||||||
qtbaseGradleUrl="https://code.qt.io/cgit/qt/qtbase.git/plain/src/3rdparty/gradle"
|
qtbaseGradleUrl="https://code.qt.io/cgit/qt/qtbase.git/plain/src/3rdparty/gradle"
|
||||||
commit_sha="bb12c984b2c838bdb06169ef7d659384c02c8b82"
|
commit_sha="b775c756f019d067c491bad7816f3a0cc8ea8b31"
|
||||||
curl "$qtbaseGradleUrl/gradle.properties?h=$commit_sha" > gradle.properties
|
curl "$qtbaseGradleUrl/gradle.properties?h=$commit_sha" > gradle.properties
|
||||||
curl "$qtbaseGradleUrl/gradlew?h=$commit_sha" > gradlew
|
curl "$qtbaseGradleUrl/gradlew?h=$commit_sha" > gradlew
|
||||||
curl "$qtbaseGradleUrl/gradlew.bat?h=$commit_sha" > gradlew.bat
|
curl "$qtbaseGradleUrl/gradlew.bat?h=$commit_sha" > gradlew.bat
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
},
|
},
|
||||||
"directory": "../work/qt/$(env:TESTED_MODULE_COIN)",
|
"directory": "../work/qt/$(env:TESTED_MODULE_COIN)",
|
||||||
"ir": "$(env:IRNAME)",
|
"ir": "$(env:IRNAME)",
|
||||||
"name": "qt_$(env:PACKAGE)_$(env:MODULE)_(env:TESTED_MODULE_BRANCH_COIN)_$(env:TARGET_OS_COIN)"
|
"name": "qt_$(env:PACKAGE)_$(env:MODULE)_$(env:TESTED_MODULE_BRANCH_COIN)_$(env:TARGET_OS_COIN)"
|
||||||
},
|
},
|
||||||
"VCSIntegration": {
|
"VCSIntegration": {
|
||||||
"vcs_mapping": {
|
"vcs_mapping": {
|
||||||
|
|||||||
0
coin/provisioning/common/linux/fix-bitbake-apparmor.sh
Normal file → Executable file
0
coin/provisioning/common/linux/fix-bitbake-apparmor.sh
Normal file → Executable file
0
coin/provisioning/common/linux/fix-bwrap-apparmor.sh
Normal file → Executable file
0
coin/provisioning/common/linux/fix-bwrap-apparmor.sh
Normal file → Executable file
0
coin/provisioning/common/linux/install-dummy-alsa-device.sh
Normal file → Executable file
0
coin/provisioning/common/linux/install-dummy-alsa-device.sh
Normal file → Executable file
@@ -3,6 +3,10 @@
|
|||||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||||
|
|
||||||
# This script builds and installs FFmpeg static or shared (default) libs
|
# This script builds and installs FFmpeg static or shared (default) libs
|
||||||
|
# It can take an optional output parameter for installation:
|
||||||
|
#
|
||||||
|
# install-ffmpeg-linx.sh shared ~/my/install/path
|
||||||
|
|
||||||
set -ex
|
set -ex
|
||||||
|
|
||||||
source "${BASH_SOURCE%/*}/../unix/ffmpeg-installation-utils.sh"
|
source "${BASH_SOURCE%/*}/../unix/ffmpeg-installation-utils.sh"
|
||||||
@@ -12,17 +16,18 @@ build_type=$(get_ffmpeg_build_type "$1")
|
|||||||
ffmpeg_source_dir=$(download_ffmpeg)
|
ffmpeg_source_dir=$(download_ffmpeg)
|
||||||
ffmpeg_name=$(basename "$ffmpeg_source_dir")
|
ffmpeg_name=$(basename "$ffmpeg_source_dir")
|
||||||
ffmpeg_config_options=$(get_ffmpeg_config_options "$build_type")
|
ffmpeg_config_options=$(get_ffmpeg_config_options "$build_type")
|
||||||
prefix="/usr/local/$ffmpeg_name"
|
default_prefix="/usr/local/$ffmpeg_name"
|
||||||
|
prefix="${2:-$default_prefix}"
|
||||||
pkgconfig_path="$PKG_CONFIG_PATH"
|
pkgconfig_path="$PKG_CONFIG_PATH"
|
||||||
|
|
||||||
install_ff_nvcodec_headers() {
|
install_ff_nvcodec_headers() {
|
||||||
local nv_codec_version="11.1" # use 11.1 to ensure compatibility with 470 nvidia drivers; might be upated to 12.0
|
local nv_codec_version="11.1.5.3" # use 11.x.x.x to ensure compatibility with 470 nvidia drivers; might be upated to 12.0
|
||||||
local nv_codec_url_public="https://github.com/FFmpeg/nv-codec-headers/archive/refs/heads/sdk/$nv_codec_version.zip"
|
local nv_codec_url_public="https://github.com/FFmpeg/nv-codec-headers/archive/refs/tags/n$nv_codec_version.zip"
|
||||||
local nv_codec_url_cached="http://ci-files01-hki.ci.qt.io/input/ffmpeg/nv-codec-headers/nv-codec-headers-sdk-$nv_codec_version.zip"
|
local nv_codec_url_cached="http://ci-files01-hki.ci.qt.io/input/ffmpeg/nv-codec-headers/nv-codec-headers-$nv_codec_version.zip"
|
||||||
local nv_codec_sha1="ceb4966ab01b2e41f02074675a8ac5b331bf603e"
|
local nv_codec_sha1="78715d521de102362e553dc92577bbe81905a321"
|
||||||
#nv_codec_sha1="4f30539f8dd31945da4c3da32e66022f9ca59c08" // 12.0
|
#nv_codec_sha1="4f30539f8dd31945da4c3da32e66022f9ca59c08" // 12.0
|
||||||
local target_dir="$HOME"
|
local target_dir="$HOME"
|
||||||
local nv_codec_dir="$target_dir/nv-codec-headers-sdk-$nv_codec_version"
|
local nv_codec_dir="$target_dir/nv-codec-headers-n$nv_codec_version"
|
||||||
|
|
||||||
if [ ! -d "$nv_codec_dir" ]; then
|
if [ ! -d "$nv_codec_dir" ]; then
|
||||||
source "${BASH_SOURCE%/*}/../unix/InstallFromCompressedFileFromURL.sh"
|
source "${BASH_SOURCE%/*}/../unix/InstallFromCompressedFileFromURL.sh"
|
||||||
@@ -95,5 +100,6 @@ if [ "$build_type" == "shared" ]; then
|
|||||||
"$fix_dependencies" "$output_dir"
|
"$fix_dependencies" "$output_dir"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
sudo mv "$output_dir" "/usr/local"
|
sudo mkdir -p "$prefix"
|
||||||
|
sudo mv "$output_dir"/* "$prefix"
|
||||||
set_ffmpeg_dir_env_var "FFMPEG_DIR" "$prefix"
|
set_ffmpeg_dir_env_var "FFMPEG_DIR" "$prefix"
|
||||||
|
|||||||
@@ -15,18 +15,20 @@ case "$uname_m" in
|
|||||||
x86_64|amd64)
|
x86_64|amd64)
|
||||||
sha256="6f98805688d19672bd699fbbfa2c2cf0fc054ac3df1f0e6a47664d963d530255"
|
sha256="6f98805688d19672bd699fbbfa2c2cf0fc054ac3df1f0e6a47664d963d530255"
|
||||||
pkgname="ninja-$version-linux-x64.zip"
|
pkgname="ninja-$version-linux-x64.zip"
|
||||||
|
pkgnameExt="ninja-linux.zip"
|
||||||
dirname="ninja-$version-linux-x64"
|
dirname="ninja-$version-linux-x64"
|
||||||
;;
|
;;
|
||||||
arm64|aarch64)
|
arm64|aarch64)
|
||||||
sha256="5c25c6570b0155e95fce5918cb95f1ad9870df5768653afe128db822301a05a1"
|
sha256="5c25c6570b0155e95fce5918cb95f1ad9870df5768653afe128db822301a05a1"
|
||||||
pkgname="ninja-$version-linux-arm64.zip"
|
pkgname="ninja-$version-linux-arm64.zip"
|
||||||
|
pkgnameExt="ninja-linux-aarch64.zip"
|
||||||
dirname="ninja-$version-linux-arm64"
|
dirname="ninja-$version-linux-arm64"
|
||||||
;;
|
;;
|
||||||
*) fatal "Unknown architecture in uname: $uname_m" 43 ;;
|
*) fatal "Unknown architecture in uname: $uname_m" 43 ;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
internalUrl="http://ci-files01-hki.ci.qt.io/input/ninja/$pkgname"
|
internalUrl="http://ci-files01-hki.ci.qt.io/input/ninja/$pkgname"
|
||||||
externalUrl="https://github.com/ninja-build/ninja/releases/download/v$version/$pkgname"
|
externalUrl="https://github.com/ninja-build/ninja/releases/download/v$version/$pkgnameExt"
|
||||||
|
|
||||||
targetFile="$HOME/$pkgname"
|
targetFile="$HOME/$pkgname"
|
||||||
DownloadURL "$internalUrl" "$externalUrl" "$sha256" "$targetFile"
|
DownloadURL "$internalUrl" "$externalUrl" "$sha256" "$targetFile"
|
||||||
|
|||||||
@@ -4,9 +4,7 @@
|
|||||||
|
|
||||||
echo "Installing vcpkg android ports"
|
echo "Installing vcpkg android ports"
|
||||||
|
|
||||||
pushd "${BASH_SOURCE%/*}/vcpkg" || exit
|
pushd "${BASH_SOURCE%/*}/../shared/vcpkg" || exit
|
||||||
cp "${BASH_SOURCE%/*}/../shared/vcpkg-configuration.json" .
|
|
||||||
|
|
||||||
"$VCPKG_ROOT/vcpkg" install --triplet x86-android-qt --x-install-root x86-android-qt-tmp --debug
|
"$VCPKG_ROOT/vcpkg" install --triplet x86-android-qt --x-install-root x86-android-qt-tmp --debug
|
||||||
"$VCPKG_ROOT/vcpkg" install --triplet x86_64-android-qt --x-install-root x86_64-android-qt-tmp --debug
|
"$VCPKG_ROOT/vcpkg" install --triplet x86_64-android-qt --x-install-root x86_64-android-qt-tmp --debug
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ QEMU_VER="8.2.3"
|
|||||||
PrimaryUrl="http://ci-files01-hki.ci.qt.io/input/qemu/qemu-$QEMU_VER.tar.xz"
|
PrimaryUrl="http://ci-files01-hki.ci.qt.io/input/qemu/qemu-$QEMU_VER.tar.xz"
|
||||||
AltUrl="https://download.qemu.org/qemu-$QEMU_VER.tar.xz"
|
AltUrl="https://download.qemu.org/qemu-$QEMU_VER.tar.xz"
|
||||||
SHA1="1b29c8105cf8d15b9e7fb6f8e85170b6c54a1788"
|
SHA1="1b29c8105cf8d15b9e7fb6f8e85170b6c54a1788"
|
||||||
InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "/tmp" "$appPrefix"
|
InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "/tmp" ""
|
||||||
|
|
||||||
targetFolder=/tmp/qemu-${QEMU_VER}
|
targetFolder=/tmp/qemu-${QEMU_VER}
|
||||||
mkdir -p "$targetFolder/build"
|
mkdir -p "$targetFolder/build"
|
||||||
|
|||||||
@@ -41,9 +41,11 @@ ndkSha1Preview="09be4f8fb626a9c93415198ea8e75d8d82f528fa"
|
|||||||
|
|
||||||
ndkVersionNightly1=$ndkVersionLatest # Set as same version as latest = skip NDK install in provisioning
|
ndkVersionNightly1=$ndkVersionLatest # Set as same version as latest = skip NDK install in provisioning
|
||||||
ndkSha1Nightly1=$ndkSha1Latest
|
ndkSha1Nightly1=$ndkSha1Latest
|
||||||
|
|
||||||
ndkVersionNightly2=$ndkVersionLatest
|
ndkVersionNightly2=$ndkVersionLatest
|
||||||
ndkSha1Nightly2=$ndkSha1Latest
|
ndkSha1Nightly2=$ndkSha1Latest
|
||||||
|
sdkBuildToolsVersion="36.0.0"
|
||||||
|
# this is compile sdk version
|
||||||
|
sdkApiLevel="android-36"
|
||||||
|
|
||||||
toolsTargetFile="/tmp/$toolsFile"
|
toolsTargetFile="/tmp/$toolsFile"
|
||||||
toolsSourceFile="$basePath/$toolsFile"
|
toolsSourceFile="$basePath/$toolsFile"
|
||||||
|
|||||||
8
coin/provisioning/common/macos/disable-dock-autohide.sh
Executable file
8
coin/provisioning/common/macos/disable-dock-autohide.sh
Executable file
@@ -0,0 +1,8 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
# Copyright (C) 2026 The Qt Company Ltd.
|
||||||
|
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||||
|
|
||||||
|
# Dock autohide interfers with window sizes and mouse cursor/focus
|
||||||
|
|
||||||
|
set -e
|
||||||
|
sudo defaults write com.apple.dock autohide -bool false; killall Dock
|
||||||
303
coin/provisioning/common/macos/install-ffmpeg-ios.sh
Executable file
303
coin/provisioning/common/macos/install-ffmpeg-ios.sh
Executable file
@@ -0,0 +1,303 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
# Copyright (C) 2024 The Qt Company Ltd.
|
||||||
|
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||||
|
|
||||||
|
# This script will build and install FFmpeg shared libraries.
|
||||||
|
#
|
||||||
|
# The script will package iOS and iOS-simulator binaries into one
|
||||||
|
# single .xcframework. This .xcframework cannot contain .dylibs
|
||||||
|
# directly. It must contain .framework files. Unlike macOS, binaries
|
||||||
|
# should NOT be lipoed together.
|
||||||
|
#
|
||||||
|
# From https://developer.apple.com/documentation/xcode/creating-a-multi-platform-binary-framework-bundle
|
||||||
|
# "Avoid using dynamic library files (.dylib files) for dynamic
|
||||||
|
# linking. An XCFramework can include dynamic library files, but only
|
||||||
|
# macOS supports these libraries for dynamic linking. Dynamic linking
|
||||||
|
# on iOS, iPadOS, tvOS, visionOS, and watchOS requires the XCFramework
|
||||||
|
# to contain .framework bundles."
|
||||||
|
#
|
||||||
|
# This script can take an optional final parameter to control
|
||||||
|
# installation directory.
|
||||||
|
set -eoux pipefail
|
||||||
|
|
||||||
|
# Must match or be lower than the minimum iOS version supported by the version of Qt that is
|
||||||
|
# is currently being built.
|
||||||
|
readonly MINIMUM_IOS_VERSION="16.0"
|
||||||
|
|
||||||
|
source "${BASH_SOURCE%/*}/../unix/ffmpeg-installation-utils.sh"
|
||||||
|
|
||||||
|
ffmpeg_source_dir=$(download_ffmpeg)
|
||||||
|
ffmpeg_version="n$(<"${ffmpeg_source_dir}/RELEASE")"
|
||||||
|
if [ ! -n "$ffmpeg_version" ]; then
|
||||||
|
echo "Error. Unable to determine FFmpeg version."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
ffmpeg_config_options=$(get_ffmpeg_config_options "shared")
|
||||||
|
default_prefix="/usr/local/ios/ffmpeg"
|
||||||
|
prefix="${1:-$default_prefix}"
|
||||||
|
|
||||||
|
# Qt doesn't utilize all FFmpeg components. This is a list of the ones
|
||||||
|
# we care about
|
||||||
|
ffmpeg_components="libavcodec libavformat libavutil libswresample libswscale"
|
||||||
|
|
||||||
|
target_platform_to_sdk() {
|
||||||
|
local target_platform="$1"
|
||||||
|
if [[ "$target_platform" == "arm64-simulator" ]] \
|
||||||
|
|| [[ "$target_platform" == "x86_64-simulator" ]]; then
|
||||||
|
echo "iphonesimulator"
|
||||||
|
elif [ "$target_platform" == "arm64-iphoneos" ]; then
|
||||||
|
echo "iphoneos"
|
||||||
|
else
|
||||||
|
echo "Error finding corresponding iOS SDK for target platform: ${target_platform}"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
build_ffmpeg_ios() {
|
||||||
|
local target_platform="$1"
|
||||||
|
local target_cpu_arch=""
|
||||||
|
local target_sdk;
|
||||||
|
target_sdk="$(target_platform_to_sdk "${target_platform}")"
|
||||||
|
|
||||||
|
if [ "$target_platform" == "arm64-simulator" ]; then
|
||||||
|
target_cpu_arch="arm64"
|
||||||
|
minos="-mios-simulator-version-min=$MINIMUM_IOS_VERSION"
|
||||||
|
elif [ "$target_platform" == "x86_64-simulator" ]; then
|
||||||
|
target_cpu_arch="x86_64"
|
||||||
|
minos="-mios-simulator-version-min=$MINIMUM_IOS_VERSION"
|
||||||
|
elif [ "$target_platform" == "arm64-iphoneos" ]; then
|
||||||
|
target_cpu_arch="arm64"
|
||||||
|
minos="-miphoneos-version-min=$MINIMUM_IOS_VERSION"
|
||||||
|
else
|
||||||
|
echo "Error when building FFmpeg for iOS. Unknown parameter given for target_platform: '${target_platform}'"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
local build_dir="$ffmpeg_source_dir/build_ios/$target_platform"
|
||||||
|
sudo mkdir -p "$build_dir"
|
||||||
|
pushd "$build_dir"
|
||||||
|
|
||||||
|
local sysroot;
|
||||||
|
sysroot="$(xcrun --sdk "${target_sdk}" --show-sdk-path)"
|
||||||
|
local cc;
|
||||||
|
cc="$(xcrun -f --sdk ${target_sdk} clang)"
|
||||||
|
local cxx;
|
||||||
|
cxx="$(xcrun -f --sdk ${target_sdk} clang++)"
|
||||||
|
|
||||||
|
# We add -g so we get debug symbols.
|
||||||
|
local common_arch_flags="${minos} -arch ${target_cpu_arch} -g"
|
||||||
|
|
||||||
|
local config_parameters=(
|
||||||
|
$ffmpeg_config_options
|
||||||
|
--sysroot="${sysroot}"
|
||||||
|
--enable-cross-compile
|
||||||
|
--enable-optimizations
|
||||||
|
--prefix="$prefix"
|
||||||
|
--arch="$target_cpu_arch"
|
||||||
|
--cc="$cc"
|
||||||
|
--cxx="$cxx"
|
||||||
|
--extra-cflags="${common_arch_flags}"
|
||||||
|
--extra-cxxflags="${common_arch_flags}"
|
||||||
|
--extra-ldflags="${common_arch_flags}"
|
||||||
|
--target-os=darwin
|
||||||
|
--enable-shared
|
||||||
|
--disable-static
|
||||||
|
--install-name-dir="@rpath"
|
||||||
|
--disable-audiotoolbox
|
||||||
|
|
||||||
|
# We perform manual stripping after generating dSYMs.
|
||||||
|
# Make sure to skip it during FFmpeg compilation.
|
||||||
|
--disable-stripping
|
||||||
|
)
|
||||||
|
sudo "$ffmpeg_source_dir/configure" "${config_parameters[@]}"
|
||||||
|
|
||||||
|
sudo make install DESTDIR="$build_dir/installed" -j4
|
||||||
|
popd
|
||||||
|
}
|
||||||
|
|
||||||
|
build_info_plist() {
|
||||||
|
local file_path="$1"
|
||||||
|
local framework_name="$2"
|
||||||
|
local framework_id="$3"
|
||||||
|
|
||||||
|
# Apple plist format has a strict requirement that the version string
|
||||||
|
# contains up to 3 numerics separated by a dot. Meanwhile, FFmpeg versioning
|
||||||
|
# tends to use an 'n' prefix in their versioning. We use a regex to convert
|
||||||
|
# and verify the version string.
|
||||||
|
#
|
||||||
|
# https://developer.apple.com/documentation/bundleresources/information-property-list/cfbundleversion
|
||||||
|
local formatted_ffmpeg_version
|
||||||
|
if [[ $ffmpeg_version =~ ([0-9]+(\.[0-9]+){0,2}) ]]; then
|
||||||
|
formatted_ffmpeg_version="${BASH_REMATCH[1]}"
|
||||||
|
else
|
||||||
|
echo "Unable to format FFmpeg version string '$ffmpeg_version' into corresponding Apple Info.plist format"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
local minimum_version_key="MinimumOSVersion"
|
||||||
|
local supported_platforms="iPhoneOS"
|
||||||
|
|
||||||
|
info_plist="<?xml version=\"1.0\" encoding=\"UTF-8\"?>
|
||||||
|
<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">
|
||||||
|
<plist version=\"1.0\">
|
||||||
|
<dict>
|
||||||
|
<key>CFBundleDevelopmentRegion</key>
|
||||||
|
<string>en</string>
|
||||||
|
<key>CFBundleExecutable</key>
|
||||||
|
<string>${framework_name}</string>
|
||||||
|
<key>CFBundleIdentifier</key>
|
||||||
|
<string>${framework_id}</string>
|
||||||
|
<key>CFBundleInfoDictionaryVersion</key>
|
||||||
|
<string>6.0</string>
|
||||||
|
<key>CFBundleName</key>
|
||||||
|
<string>${framework_name}</string>
|
||||||
|
<key>CFBundlePackageType</key>
|
||||||
|
<string>FMWK</string>
|
||||||
|
<key>CFBundleShortVersionString</key>
|
||||||
|
<string>${formatted_ffmpeg_version}</string>
|
||||||
|
<key>CFBundleVersion</key>
|
||||||
|
<string>${formatted_ffmpeg_version}</string>
|
||||||
|
<key>CFBundleSignature</key>
|
||||||
|
<string>????</string>
|
||||||
|
<key>${minimum_version_key}</key>
|
||||||
|
<string>${MINIMUM_IOS_VERSION}</string>
|
||||||
|
<key>CFBundleSupportedPlatforms</key>
|
||||||
|
<array>
|
||||||
|
<string>${supported_platforms}</string>
|
||||||
|
</array>
|
||||||
|
<key>NSPrincipalClass</key>
|
||||||
|
<string></string>
|
||||||
|
</dict>
|
||||||
|
</plist>"
|
||||||
|
echo $info_plist | sudo tee ${file_path} 1>/dev/null
|
||||||
|
}
|
||||||
|
|
||||||
|
# Create a 'traditional' framework from the corresponding dylib.
|
||||||
|
# This includes creating a folder for it, and inserting Info.plist
|
||||||
|
# and dylib. We also patch runpaths in the dylib to match the
|
||||||
|
# frameworks directory structure.
|
||||||
|
#
|
||||||
|
# There is no command-line tool for generating .framework
|
||||||
|
# files. By inspecting .frameworks generated through Xcode, we
|
||||||
|
# have found they are primarily a directory with a very specific
|
||||||
|
# layout. The code below generates a matching layout.
|
||||||
|
#
|
||||||
|
# See https://developer.apple.com/library/archive/documentation/MacOSX/Conceptual/BPFrameworks/Frameworks.html
|
||||||
|
create_framework() {
|
||||||
|
local ffmpeg_component_name="$1"
|
||||||
|
local platform="$2"
|
||||||
|
|
||||||
|
local ffmpeg_build_path="${ffmpeg_source_dir}/build_ios/${platform}/installed/${prefix}"
|
||||||
|
local ffmpeg_component_src_dylib="${ffmpeg_build_path}/lib/${ffmpeg_component_name}.dylib"
|
||||||
|
local ffmpeg_component_framework="${ffmpeg_build_path}/framework/${ffmpeg_component_name}.framework"
|
||||||
|
local ffmpeg_component_target_dylib="${ffmpeg_component_framework}/${ffmpeg_component_name}"
|
||||||
|
|
||||||
|
# Make directory for the .framework
|
||||||
|
sudo mkdir -p "${ffmpeg_component_framework}"
|
||||||
|
|
||||||
|
# Inser the Info.plist
|
||||||
|
build_info_plist \
|
||||||
|
"${ffmpeg_component_framework}/Info.plist" \
|
||||||
|
"${ffmpeg_component_name}" \
|
||||||
|
"io.qt.ffmpegkit.${ffmpeg_component_name}"
|
||||||
|
|
||||||
|
# Copy in the dylib
|
||||||
|
sudo cp \
|
||||||
|
"${ffmpeg_component_src_dylib}" \
|
||||||
|
"${ffmpeg_component_target_dylib}"
|
||||||
|
|
||||||
|
# By default, runpaths will look for FFmpeg dependencies in
|
||||||
|
# '@rpath/libavcodec.xx.yy.dylib'. We want this path to be in the form
|
||||||
|
# '@rpath/libavcodec.framework/libavcodec.dylib'.
|
||||||
|
|
||||||
|
# Set the dylibs self-identity
|
||||||
|
sudo install_name_tool \
|
||||||
|
-id "@rpath/${ffmpeg_component_name}.framework/${ffmpeg_component_name}" \
|
||||||
|
"${ffmpeg_component_target_dylib}"
|
||||||
|
|
||||||
|
# Update the runpaths for each FFmpeg dependency entry
|
||||||
|
otool -L "$ffmpeg_component_target_dylib" \
|
||||||
|
| tail -n +2 \
|
||||||
|
| awk '{print $1}' \
|
||||||
|
| while read -r dep; do
|
||||||
|
# Go through all dependency entries of this .dylib,
|
||||||
|
# see if they point to a FFmpeg component. If it does,
|
||||||
|
# modify the entry to match the final
|
||||||
|
# directory structure.
|
||||||
|
for ffdep in $ffmpeg_components; do
|
||||||
|
if [[ "$dep" == */${ffdep}.* ]]; then
|
||||||
|
echo "Rewriting dependency: $dep -> @rpath/${ffdep}.framework/${ffdep}"
|
||||||
|
sudo install_name_tool -change \
|
||||||
|
"$dep" \
|
||||||
|
"@rpath/${ffdep}.framework/${ffdep}" \
|
||||||
|
"$ffmpeg_component_target_dylib"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
# dSYM symbols must be generated manually, these are required for
|
||||||
|
# App Store deployment. We generate them from the .dylibs inside
|
||||||
|
# our .frameworks. This has to be done after patching the runpaths.
|
||||||
|
# At the end, we strip the dylib.
|
||||||
|
create_dsym() {
|
||||||
|
local ffmpeg_component_name="$1"
|
||||||
|
local platform="$2"
|
||||||
|
|
||||||
|
local ffmpeg_build_path="${ffmpeg_source_dir}/build_ios/${platform}/installed/${prefix}"
|
||||||
|
local target_dylib="${ffmpeg_build_path}/framework/${ffmpeg_component_name}.framework/${ffmpeg_component_name}"
|
||||||
|
|
||||||
|
sudo dsymutil "${target_dylib}" \
|
||||||
|
-o "${ffmpeg_build_path}/framework/${ffmpeg_component_name}.framework.dSYM"
|
||||||
|
|
||||||
|
local target_sdk;
|
||||||
|
target_sdk=$(target_platform_to_sdk "${platform}")
|
||||||
|
|
||||||
|
local strip;
|
||||||
|
strip="$(xcrun -f --sdk ${target_sdk} strip)"
|
||||||
|
sudo ${strip} -x "${target_dylib}"
|
||||||
|
}
|
||||||
|
|
||||||
|
create_xcframework() {
|
||||||
|
# Create 'traditional' framework from the corresponding dylib,
|
||||||
|
# also creating
|
||||||
|
local framework_name="$1"
|
||||||
|
local target_platform_a="$2"
|
||||||
|
local target_platform_b="$3"
|
||||||
|
|
||||||
|
local platform_a_build="${ffmpeg_source_dir}/build_ios/${target_platform_a}/installed/${prefix}"
|
||||||
|
local fw_a="${platform_a_build}/framework/${framework_name}.framework"
|
||||||
|
local dsym_a="${fw_a}.dSYM"
|
||||||
|
|
||||||
|
local platform_b_build="${ffmpeg_source_dir}/build_ios/${target_platform_b}/installed/${prefix}"
|
||||||
|
local fw_b="${platform_b_build}/framework/${framework_name}.framework"
|
||||||
|
local dsym_b="${fw_b}.dSYM"
|
||||||
|
|
||||||
|
sudo mkdir -p "$prefix/lib/"
|
||||||
|
sudo xcodebuild -create-xcframework \
|
||||||
|
-framework "$fw_a" -debug-symbols "$dsym_a" \
|
||||||
|
-framework $fw_b -debug-symbols "$dsym_b" \
|
||||||
|
-output "${prefix}/lib/${framework_name}.xcframework"
|
||||||
|
}
|
||||||
|
|
||||||
|
build_ffmpeg_ios "arm64-iphoneos"
|
||||||
|
build_ffmpeg_ios "x86_64-simulator"
|
||||||
|
|
||||||
|
for name in $ffmpeg_components; do
|
||||||
|
create_framework "$name" "arm64-iphoneos"
|
||||||
|
create_framework "$name" "x86_64-simulator"
|
||||||
|
|
||||||
|
create_dsym "$name" "arm64-iphoneos"
|
||||||
|
create_dsym "$name" "x86_64-simulator"
|
||||||
|
done
|
||||||
|
|
||||||
|
# Create corresponding xcframeworks containing both arm64 and x86_64-simulator frameworks:
|
||||||
|
for name in $ffmpeg_components; do
|
||||||
|
create_xcframework "$name" "arm64-iphoneos" "x86_64-simulator"
|
||||||
|
done
|
||||||
|
|
||||||
|
# xcframeworks are already installed directly into the target output directory.
|
||||||
|
# We need to install headers
|
||||||
|
sudo cp -r "${ffmpeg_source_dir}/build_ios/arm64-iphoneos/installed/${prefix}/include" "$prefix"
|
||||||
|
|
||||||
|
set_ffmpeg_dir_env_var "FFMPEG_DIR_IOS" "$prefix"
|
||||||
3
coin/provisioning/common/macos/install-lipomerge.sh
Executable file
3
coin/provisioning/common/macos/install-lipomerge.sh
Executable file
@@ -0,0 +1,3 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
pip3 install --user lipomerge
|
||||||
@@ -9,12 +9,12 @@ set -ex
|
|||||||
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
|
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
|
||||||
|
|
||||||
echo "Installing Java Development Kit"
|
echo "Installing Java Development Kit"
|
||||||
version=17.0.12
|
version=21.0.9
|
||||||
targetFile=jdk-${version}_macos-x64_bin.dmg
|
targetFile=jdk-${version}_macos-x64_bin.dmg
|
||||||
expectedHash="6fba2fbe5d181bd2ef7fd79e0335278c13f611cb"
|
expectedHash="3df8761bfba8d6a4633ecc92f1eff0a58d79c304"
|
||||||
|
|
||||||
url=ci-files01-hki.ci.qt.io:/hdd/www/input/mac
|
url=ci-files01-hki.ci.qt.io:/hdd/www/input/mac
|
||||||
# url_alt=https://www.oracle.com/java/technologies/downloads/#jdk17-mac
|
# url_alt=https://download.oracle.com/java/21/archive/jdk-21.0.8_macos-x64_bin.dmg
|
||||||
|
|
||||||
echo "Mounting $targetFile"
|
echo "Mounting $targetFile"
|
||||||
sudo mkdir -p /Volumes/files
|
sudo mkdir -p /Volumes/files
|
||||||
|
|||||||
@@ -8,10 +8,10 @@ set -ex
|
|||||||
|
|
||||||
echo "Installing Java Development Kit"
|
echo "Installing Java Development Kit"
|
||||||
|
|
||||||
targetFile=zulu17.54.21-ca-jdk17.0.13-macosx_aarch64.dmg
|
targetFile=zulu21.46.19-ca-jdk21.0.9-macosx_aarch64.dmg
|
||||||
|
|
||||||
url=ci-files01-hki.ci.qt.io:/hdd/www/input/mac
|
url=ci-files01-hki.ci.qt.io:/hdd/www/input/mac
|
||||||
# url_alt=https://cdn.azul.com/zulu/bin/zulu17.54.21-ca-jdk17.0.13-macosx_aarch64.dmg
|
# url_alt=https://cdn.azul.com/zulu/bin/zulu21.46.19-ca-jdk21.0.9-macosx_aarch64.dmg
|
||||||
|
|
||||||
echo "Mounting $targetFile"
|
echo "Mounting $targetFile"
|
||||||
sudo mkdir -p /Volumes/files
|
sudo mkdir -p /Volumes/files
|
||||||
@@ -22,12 +22,12 @@ sudo umount /Volumes/files
|
|||||||
sudo hdiutil attach "/tmp/$targetFile"
|
sudo hdiutil attach "/tmp/$targetFile"
|
||||||
|
|
||||||
echo Installing JDK
|
echo Installing JDK
|
||||||
cd /Volumes/Azul\ Zulu\ JDK\ 17.54+21 && sudo installer -pkg Double-Click\ to\ Install\ Azul\ Zulu\ JDK\ 17.pkg -target /
|
cd /Volumes/Azul\ Zulu\ JDK\ 21.46+19 && sudo installer -pkg Double-Click\ to\ Install\ Azul\ Zulu\ JDK\ 21.pkg -target /
|
||||||
|
|
||||||
echo "Unmounting $targetFile"
|
echo "Unmounting $targetFile"
|
||||||
sudo hdiutil unmount /Volumes/Azul\ Zulu\ JDK\ 17.54+21 -force
|
sudo hdiutil unmount /Volumes/Azul\ Zulu\ JDK\ 21.46+19 -force
|
||||||
|
|
||||||
echo "Disable auto update"
|
echo "Disable auto update"
|
||||||
sudo defaults write /Library/Preferences/com.oracle.java.Java-Updater JavaAutoUpdateEnabled -bool false
|
sudo defaults write /Library/Preferences/com.oracle.java.Java-Updater JavaAutoUpdateEnabled -bool false
|
||||||
|
|
||||||
echo "JDK Version = 17.0.13" >> ~/versions.txt
|
echo "JDK Version = 21.0.9" >> ~/versions.txt
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ class Libiodbc < Formula
|
|||||||
|
|
||||||
def install
|
def install
|
||||||
if build.with? "universal"
|
if build.with? "universal"
|
||||||
ENV['CFLAGS'] = '-O -arch arm64 -arch x86_64 -mmacosx-version-min=10.9'
|
ENV['CFLAGS'] = '-O -arch arm64 -arch x86_64 -mmacosx-version-min=10.9 -std=gnu89'
|
||||||
end
|
end
|
||||||
system "./autogen.sh"
|
system "./autogen.sh"
|
||||||
system "./configure", "--disable-dependency-tracking", "--prefix=#{prefix}"
|
system "./configure", "--disable-dependency-tracking", "--prefix=#{prefix}"
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
# Mimer SQL is needed for Qt to be able to support Mimer SQL
|
# Mimer SQL is needed for Qt to be able to support Mimer SQL
|
||||||
|
|
||||||
set -ex
|
set -ex
|
||||||
os="$1"
|
|
||||||
|
|
||||||
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
|
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
|
||||||
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
|
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ set -euox pipefail
|
|||||||
lib_dir="$1/lib"
|
lib_dir="$1/lib"
|
||||||
additional_suffix="${2:-}"
|
additional_suffix="${2:-}"
|
||||||
set_rpath="${3:-yes}"
|
set_rpath="${3:-yes}"
|
||||||
|
page_size="${4:-}"
|
||||||
|
|
||||||
# readelf and patchelf are prerequisite tools for this script. Check
|
# readelf and patchelf are prerequisite tools for this script. Check
|
||||||
# that they are available.
|
# that they are available.
|
||||||
@@ -81,7 +82,12 @@ for lib_name in "${ffmpeg_libs[@]}"; do
|
|||||||
stub_name="${stub_name%%.*}${additional_suffix}.${stub_name#*.}" # Add additional_suffix
|
stub_name="${stub_name%%.*}${additional_suffix}.${stub_name#*.}" # Add additional_suffix
|
||||||
fi
|
fi
|
||||||
|
|
||||||
patchelf --replace-needed "${BASH_REMATCH[1]}" "${stub_name}" "$lib_path"
|
additional_command_args=""
|
||||||
|
if [ -n "$page_size" ]; then
|
||||||
|
additional_command_args+="--page-size ${page_size}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
patchelf ${additional_command_args} --replace-needed "${BASH_REMATCH[1]}" "${stub_name}" "$lib_path"
|
||||||
fi
|
fi
|
||||||
done <<< "$(read_needed_deps)"
|
done <<< "$(read_needed_deps)"
|
||||||
|
|
||||||
|
|||||||
@@ -4,4 +4,5 @@ ntia-conformance-checker ; python_version >= '3.9'
|
|||||||
sbomaudit ; python_version >= '3.9'
|
sbomaudit ; python_version >= '3.9'
|
||||||
sbom2doc ; python_version >= '3.9'
|
sbom2doc ; python_version >= '3.9'
|
||||||
reuse<=5.1.1 ; python_version >= '3.9'
|
reuse<=5.1.1 ; python_version >= '3.9'
|
||||||
cyclonedx-python-lib==11.0.0 ; python_version >= '3.9'
|
cyclonedx-python-lib==11.5.0 ; python_version >= '3.9'
|
||||||
|
jsonschema>=4.20 ; python_version >= '3.12'
|
||||||
|
|||||||
@@ -1,5 +1,10 @@
|
|||||||
FROM ubuntu:16.04
|
FROM ubuntu:16.04
|
||||||
ARG COIN_RUNS_IN_QT_COMPANY
|
ARG COIN_RUNS_IN_QT_COMPANY
|
||||||
RUN test x"$COIN_RUNS_IN_QT_COMPANY" = xtrue \
|
RUN test x"$COIN_RUNS_IN_QT_COMPANY" = xtrue \
|
||||||
&& sed -i 's;\(archive\|security\)\.ubuntu\.com;repo-clones.ci.qt.io/apt-mirror/mirror;' /etc/apt/sources.list \
|
&& { printf '%s\n' \
|
||||||
|| echo "Internal package repository not found. Using public repositories."
|
'deb [arch=amd64 trusted=yes] http://repo-clones-apt.ci.qt.io:8080 xenial-amd64 main restricted universe multiverse' \
|
||||||
|
'deb [arch=amd64 trusted=yes] http://repo-clones-apt.ci.qt.io:8080 xenial-updates-amd64 main restricted universe multiverse' \
|
||||||
|
'deb [arch=amd64 trusted=yes] http://repo-clones-apt.ci.qt.io:8080 xenial-backports-amd64 main restricted universe' \
|
||||||
|
'deb [arch=amd64 trusted=yes] http://repo-clones-apt.ci.qt.io:8080 xenial-security-amd64 main restricted universe multiverse' \
|
||||||
|
> /etc/apt/sources.list; \
|
||||||
|
} \
|
||||||
|
|||||||
@@ -1,5 +1,10 @@
|
|||||||
FROM ubuntu:18.04
|
FROM ubuntu:18.04
|
||||||
ARG COIN_RUNS_IN_QT_COMPANY
|
ARG COIN_RUNS_IN_QT_COMPANY
|
||||||
RUN test x"$COIN_RUNS_IN_QT_COMPANY" = xtrue \
|
RUN test x"$COIN_RUNS_IN_QT_COMPANY" = xtrue \
|
||||||
&& sed -i 's;\(archive\|security\)\.ubuntu\.com;repo-clones.ci.qt.io/apt-mirror/mirror;' /etc/apt/sources.list \
|
&& { printf '%s\n' \
|
||||||
|| echo "Internal package repository not found. Using public repositories."
|
'deb [arch=amd64 trusted=yes] http://repo-clones-apt.ci.qt.io:8080 bionic-amd64 main restricted universe multiverse' \
|
||||||
|
'deb [arch=amd64 trusted=yes] http://repo-clones-apt.ci.qt.io:8080 bionic-updates-amd64 main restricted universe multiverse' \
|
||||||
|
'deb [arch=amd64 trusted=yes] http://repo-clones-apt.ci.qt.io:8080 bionic-backports-amd64 main restricted universe' \
|
||||||
|
'deb [arch=amd64 trusted=yes] http://repo-clones-apt.ci.qt.io:8080 bionic-security-amd64 main restricted universe multiverse' \
|
||||||
|
> /etc/apt/sources.list; \
|
||||||
|
} \
|
||||||
|
|||||||
13
coin/provisioning/common/shared/triplets/arm64-osx-qt.cmake
Normal file
13
coin/provisioning/common/shared/triplets/arm64-osx-qt.cmake
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
set(VCPKG_CMAKE_SYSTEM_NAME Darwin)
|
||||||
|
set(VCPKG_OSX_ARCHITECTURES arm64)
|
||||||
|
set(VCPKG_TARGET_ARCHITECTURE arm64)
|
||||||
|
|
||||||
|
# Default settings of the triplet from the official vcpkg registry
|
||||||
|
set(VCPKG_CRT_LINKAGE dynamic)
|
||||||
|
set(VCPKG_LIBRARY_LINKAGE static)
|
||||||
|
|
||||||
|
# Qt custom per-port customizations
|
||||||
|
if(PORT MATCHES "openssl")
|
||||||
|
set(VCPKG_LIBRARY_LINKAGE dynamic)
|
||||||
|
set(VCPKG_FIXUP_ELF_RPATH ON)
|
||||||
|
endif()
|
||||||
13
coin/provisioning/common/shared/triplets/x64-osx-qt.cmake
Normal file
13
coin/provisioning/common/shared/triplets/x64-osx-qt.cmake
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
set(VCPKG_CMAKE_SYSTEM_NAME Darwin)
|
||||||
|
set(VCPKG_OSX_ARCHITECTURES x86_64)
|
||||||
|
set(VCPKG_TARGET_ARCHITECTURE x64)
|
||||||
|
|
||||||
|
# Default settings of the triplet from the official vcpkg registry
|
||||||
|
set(VCPKG_CRT_LINKAGE dynamic)
|
||||||
|
set(VCPKG_LIBRARY_LINKAGE static)
|
||||||
|
|
||||||
|
# Qt custom per-port customizations
|
||||||
|
if(PORT MATCHES "openssl")
|
||||||
|
set(VCPKG_LIBRARY_LINKAGE dynamic)
|
||||||
|
set(VCPKG_FIXUP_ELF_RPATH ON)
|
||||||
|
endif()
|
||||||
@@ -5,5 +5,5 @@
|
|||||||
"repository": "https://git.qt.io/aledelev/vcpkg",
|
"repository": "https://git.qt.io/aledelev/vcpkg",
|
||||||
"baseline": "9c5c2a0ab75aff5bcd08142525f6ff7f6f7ddeee"
|
"baseline": "9c5c2a0ab75aff5bcd08142525f6ff7f6f7ddeee"
|
||||||
},
|
},
|
||||||
"overlay-triplets": [ "./../../shared/triplets" ]
|
"overlay-triplets": [ "./../triplets" ]
|
||||||
}
|
}
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
vcpkg_tool_release_tag=2025-09-03
|
vcpkg_tool_release_tag=2025-09-03
|
||||||
windows_x64_checksum=4523B5B2CE77BD0F6DCA55140D831EA6EB03046D5F4496C85DF94AC1A7EFAB01
|
windows_x64_checksum=4523B5B2CE77BD0F6DCA55140D831EA6EB03046D5F4496C85DF94AC1A7EFAB01
|
||||||
windows_arm64_checksum=1E8653243C0E7D73FF1F0F3F25A55C8154888F331510F9545AD200EDD3CCB962
|
windows_arm64_checksum=1E8653243C0E7D73FF1F0F3F25A55C8154888F331510F9545AD200EDD3CCB962
|
||||||
linux_checksum=f0c4b30afc2f7baa9cc4372ac325042418251343e0192dbfac94c4f602e9d3ed
|
unix_checksum=f0c4b30afc2f7baa9cc4372ac325042418251343e0192dbfac94c4f602e9d3ed
|
||||||
|
|||||||
@@ -116,7 +116,7 @@ set_common_environment () {
|
|||||||
CMD_INSTALL="sudo install"
|
CMD_INSTALL="sudo install"
|
||||||
|
|
||||||
COIN_RUNS_IN_QT_COMPANY=false
|
COIN_RUNS_IN_QT_COMPANY=false
|
||||||
if ping -c1 repo-clones.ci.qt.io >/dev/null 2>&1
|
if ping -c1 repo-clones-apt.ci.qt.io >/dev/null 2>&1
|
||||||
then
|
then
|
||||||
COIN_RUNS_IN_QT_COMPANY=true
|
COIN_RUNS_IN_QT_COMPANY=true
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -2,13 +2,9 @@
|
|||||||
# Copyright (C) 2024 The Qt Company Ltd.
|
# Copyright (C) 2024 The Qt Company Ltd.
|
||||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||||
|
|
||||||
ffmpeg_version_default() {
|
|
||||||
echo "n7.1.2"
|
|
||||||
}
|
|
||||||
|
|
||||||
download_ffmpeg() {
|
download_ffmpeg() {
|
||||||
local version="${1:-$(ffmpeg_version_default)}"
|
local version="${1:-"n7.1.3"}"
|
||||||
local sha1="${2:-1e4e937facdbde15943dd093121836bf69f27c7c}"
|
local sha1="${2:-27051817deec88bed3b9652d49f9127d22268d83}"
|
||||||
|
|
||||||
local ffmpeg_name="FFmpeg-$version"
|
local ffmpeg_name="FFmpeg-$version"
|
||||||
local target_dir="$HOME"
|
local target_dir="$HOME"
|
||||||
|
|||||||
@@ -24,43 +24,46 @@ assert_envvar_is_populated_dir() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
build_ffmpeg_android() {
|
build_ffmpeg_android() {
|
||||||
local target_arch=$1
|
local target_dir=$1
|
||||||
local target_dir=$2
|
local ndk_root=$2
|
||||||
local ndk_root=$3
|
local openssl_android_path=$3
|
||||||
local openssl_android_path=$4
|
|
||||||
|
|
||||||
sudo mkdir -p "$target_dir"
|
sudo mkdir -p "$target_dir"
|
||||||
|
|
||||||
local openssl_include="$openssl_android_path/include"
|
local openssl_include="$openssl_android_path/include"
|
||||||
|
local target_arch
|
||||||
local openssl_libs
|
local openssl_libs
|
||||||
local libs_prefix
|
local libs_prefix
|
||||||
local target_cpu
|
local target_cpu
|
||||||
local target_toolchain_arch
|
local target_toolchain_arch
|
||||||
|
|
||||||
if [ "$target_arch" == "x86_64" ]; then
|
if [ "$os" == "android-x86" ]; then
|
||||||
target_toolchain_arch="x86_64-linux-android"
|
|
||||||
target_arch=x86_64
|
|
||||||
target_cpu=x86-64
|
|
||||||
openssl_libs="$openssl_android_path/x86_64"
|
|
||||||
libs_prefix="_x86_64"
|
|
||||||
elif [ "$target_arch" == "x86" ]; then
|
|
||||||
target_toolchain_arch="i686-linux-android"
|
target_toolchain_arch="i686-linux-android"
|
||||||
target_arch=x86
|
target_arch=x86
|
||||||
target_cpu=i686
|
target_cpu=i686
|
||||||
openssl_libs="$openssl_android_path/x86"
|
openssl_libs="$openssl_android_path/x86"
|
||||||
libs_prefix="_x86"
|
libs_prefix="_x86"
|
||||||
elif [ "$target_arch" == "arm32" ]; then
|
elif [ "$os" == "android-x86_64" ]; then
|
||||||
|
target_toolchain_arch="x86_64-linux-android"
|
||||||
|
target_arch=x86_64
|
||||||
|
target_cpu=x86-64
|
||||||
|
openssl_libs="$openssl_android_path/x86_64"
|
||||||
|
libs_prefix="_x86_64"
|
||||||
|
elif [ "$os" == "android-arm32" ]; then
|
||||||
target_toolchain_arch="armv7a-linux-androideabi"
|
target_toolchain_arch="armv7a-linux-androideabi"
|
||||||
target_arch=arm
|
target_arch=arm
|
||||||
target_cpu=armv7-a
|
target_cpu=armv7-a
|
||||||
openssl_libs="$openssl_android_path/armeabi-v7a"
|
openssl_libs="$openssl_android_path/armeabi-v7a"
|
||||||
libs_prefix="_arm32-v7a"
|
libs_prefix="_arm32-v7a"
|
||||||
elif [ "$target_arch" == "arm64" ]; then
|
elif [ "$os" == "android-arm64" ]; then
|
||||||
target_toolchain_arch="aarch64-linux-android"
|
target_toolchain_arch="aarch64-linux-android"
|
||||||
target_arch=aarch64
|
target_arch=aarch64
|
||||||
target_cpu=armv8-a
|
target_cpu=armv8-a
|
||||||
openssl_libs="$openssl_android_path/arm64-v8a"
|
openssl_libs="$openssl_android_path/arm64-v8a"
|
||||||
libs_prefix="_arm64-v8a"
|
libs_prefix="_arm64-v8a"
|
||||||
|
else
|
||||||
|
>&2 echo "Unhandled android os param: $os"
|
||||||
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
ln -Ffs "${openssl_libs}/libcrypto_3.so" "${openssl_libs}/libcrypto.so"
|
ln -Ffs "${openssl_libs}/libcrypto_3.so" "${openssl_libs}/libcrypto.so"
|
||||||
@@ -82,12 +85,13 @@ build_ffmpeg_android() {
|
|||||||
local cc=${toolchain_bin}/${target_toolchain_arch}${api_version}-clang
|
local cc=${toolchain_bin}/${target_toolchain_arch}${api_version}-clang
|
||||||
local ar=${toolchain_bin}/llvm-ar
|
local ar=${toolchain_bin}/llvm-ar
|
||||||
local ranlib=${toolchain_bin}/llvm-ranlib
|
local ranlib=${toolchain_bin}/llvm-ranlib
|
||||||
|
local strip=${toolchain_bin}/llvm-strip
|
||||||
local ffmpeg_config_options
|
local ffmpeg_config_options
|
||||||
|
|
||||||
ffmpeg_config_options=$(get_ffmpeg_config_options $build_type)
|
ffmpeg_config_options=$(get_ffmpeg_config_options $build_type)
|
||||||
ffmpeg_config_options+=" --enable-cross-compile --target-os=android --enable-jni --enable-mediacodec --enable-openssl --enable-pthreads --enable-neon --disable-asm --disable-indev=android_camera"
|
ffmpeg_config_options+=" --enable-cross-compile --target-os=android --enable-jni --enable-mediacodec --enable-openssl --enable-pthreads --enable-neon --disable-asm --disable-indev=android_camera"
|
||||||
ffmpeg_config_options+=" --arch=$target_arch --cpu=${target_cpu} --sysroot=${sysroot} --sysinclude=${sysroot}/usr/include/"
|
ffmpeg_config_options+=" --arch=$target_arch --cpu=${target_cpu} --sysroot=${sysroot} --sysinclude=${sysroot}/usr/include/"
|
||||||
ffmpeg_config_options+=" --cc=${cc} --cxx=${cxx} --ar=${ar} --ranlib=${ranlib}"
|
ffmpeg_config_options+=" --cc=${cc} --cxx=${cxx} --ar=${ar} --ranlib=${ranlib} --strip=${strip}"
|
||||||
ffmpeg_config_options+=" --extra-cflags=-I${openssl_include} --extra-ldflags=-L${openssl_libs}"
|
ffmpeg_config_options+=" --extra-cflags=-I${openssl_include} --extra-ldflags=-L${openssl_libs}"
|
||||||
if [ $page_size == "use_16kb_page_size" ]; then
|
if [ $page_size == "use_16kb_page_size" ]; then
|
||||||
ffmpeg_config_options+=" --extra-ldflags=-Wl,-z,max-page-size=16384"
|
ffmpeg_config_options+=" --extra-ldflags=-Wl,-z,max-page-size=16384"
|
||||||
@@ -115,33 +119,35 @@ build_ffmpeg_android() {
|
|||||||
|
|
||||||
if [[ "$build_type" == "shared" ]]; then
|
if [[ "$build_type" == "shared" ]]; then
|
||||||
local fix_dependencies="${BASH_SOURCE%/*}/../shared/fix_ffmpeg_dependencies.sh"
|
local fix_dependencies="${BASH_SOURCE%/*}/../shared/fix_ffmpeg_dependencies.sh"
|
||||||
sudo "${fix_dependencies}" "${target_dir}" "${libs_prefix}" "no"
|
|
||||||
|
local page_size_arg=""
|
||||||
|
if [ $page_size == "use_16kb_page_size" ]; then
|
||||||
|
page_size_arg="16384"
|
||||||
|
fi
|
||||||
|
|
||||||
|
sudo "${fix_dependencies}" "${target_dir}" "${libs_prefix}" "no" "$page_size_arg"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
if [ "$os" == "android-x86" ]; then
|
if [ "$os" == "android-x86" ]; then
|
||||||
target_arch=x86
|
|
||||||
target_dir="/usr/local/android/ffmpeg-x86"
|
target_dir="/usr/local/android/ffmpeg-x86"
|
||||||
envvar_latest="FFMPEG_DIR_ANDROID_X86_NDK_LATEST"
|
envvar_latest="FFMPEG_DIR_ANDROID_X86_NDK_LATEST"
|
||||||
envvar_nightly1="FFMPEG_DIR_ANDROID_X86_NDK_NIGHTLY1"
|
envvar_nightly1="FFMPEG_DIR_ANDROID_X86_NDK_NIGHTLY1"
|
||||||
envvar_nightly2="FFMPEG_DIR_ANDROID_X86_NDK_NIGHTLY2"
|
envvar_nightly2="FFMPEG_DIR_ANDROID_X86_NDK_NIGHTLY2"
|
||||||
envvar_preview="FFMPEG_DIR_ANDROID_X86_NDK_PREVIEW"
|
envvar_preview="FFMPEG_DIR_ANDROID_X86_NDK_PREVIEW"
|
||||||
elif [ "$os" == "android-x86_64" ]; then
|
elif [ "$os" == "android-x86_64" ]; then
|
||||||
target_arch=x86_64
|
|
||||||
target_dir="/usr/local/android/ffmpeg-x86_64"
|
target_dir="/usr/local/android/ffmpeg-x86_64"
|
||||||
envvar_latest="FFMPEG_DIR_ANDROID_X86_64_NDK_LATEST"
|
envvar_latest="FFMPEG_DIR_ANDROID_X86_64_NDK_LATEST"
|
||||||
envvar_nightly1="FFMPEG_DIR_ANDROID_X86_64_NDK_NIGHTLY1"
|
envvar_nightly1="FFMPEG_DIR_ANDROID_X86_64_NDK_NIGHTLY1"
|
||||||
envvar_nightly2="FFMPEG_DIR_ANDROID_X86_64_NDK_NIGHTLY2"
|
envvar_nightly2="FFMPEG_DIR_ANDROID_X86_64_NDK_NIGHTLY2"
|
||||||
envvar_preview="FFMPEG_DIR_ANDROID_X86_64_NDK_PREVIEW"
|
envvar_preview="FFMPEG_DIR_ANDROID_X86_64_NDK_PREVIEW"
|
||||||
elif [ "$os" == "android-arm32" ]; then
|
elif [ "$os" == "android-arm32" ]; then
|
||||||
target_arch=arm32
|
|
||||||
target_dir="/usr/local/android/ffmpeg-arm32"
|
target_dir="/usr/local/android/ffmpeg-arm32"
|
||||||
envvar_latest="FFMPEG_DIR_ANDROID_ARM32_NDK_LATEST"
|
envvar_latest="FFMPEG_DIR_ANDROID_ARM32_NDK_LATEST"
|
||||||
envvar_nightly1="FFMPEG_DIR_ANDROID_ARM32_NDK_NIGHTLY1"
|
envvar_nightly1="FFMPEG_DIR_ANDROID_ARM32_NDK_NIGHTLY1"
|
||||||
envvar_nightly2="FFMPEG_DIR_ANDROID_ARM32_NDK_NIGHTLY2"
|
envvar_nightly2="FFMPEG_DIR_ANDROID_ARM32_NDK_NIGHTLY2"
|
||||||
envvar_preview="FFMPEG_DIR_ANDROID_ARM32_NDK_PREVIEW"
|
envvar_preview="FFMPEG_DIR_ANDROID_ARM32_NDK_PREVIEW"
|
||||||
elif [ "$os" == "android-arm64" ]; then
|
elif [ "$os" == "android-arm64" ]; then
|
||||||
target_arch=arm64
|
|
||||||
target_dir="/usr/local/android/ffmpeg-arm64"
|
target_dir="/usr/local/android/ffmpeg-arm64"
|
||||||
envvar_latest="FFMPEG_DIR_ANDROID_ARM64_NDK_LATEST"
|
envvar_latest="FFMPEG_DIR_ANDROID_ARM64_NDK_LATEST"
|
||||||
envvar_nightly1="FFMPEG_DIR_ANDROID_ARM64_NDK_NIGHTLY1"
|
envvar_nightly1="FFMPEG_DIR_ANDROID_ARM64_NDK_NIGHTLY1"
|
||||||
@@ -159,26 +165,26 @@ fi
|
|||||||
|
|
||||||
assert_envvar_is_populated_dir "ANDROID_NDK_ROOT_LATEST"
|
assert_envvar_is_populated_dir "ANDROID_NDK_ROOT_LATEST"
|
||||||
assert_envvar_is_populated_dir "OPENSSL_ANDROID_HOME_LATEST"
|
assert_envvar_is_populated_dir "OPENSSL_ANDROID_HOME_LATEST"
|
||||||
build_ffmpeg_android "$target_arch" "$target_dir/latest" "$ANDROID_NDK_ROOT_LATEST" "$OPENSSL_ANDROID_HOME_LATEST"
|
build_ffmpeg_android "$target_dir/latest" "$ANDROID_NDK_ROOT_LATEST" "$OPENSSL_ANDROID_HOME_LATEST"
|
||||||
set_ffmpeg_dir_env_var "$envvar_latest" "$target_dir/latest"
|
set_ffmpeg_dir_env_var "$envvar_latest" "$target_dir/latest"
|
||||||
|
|
||||||
if [ "${ANDROID_NDK_ROOT_PREVIEW}" ]; then
|
if [ "${ANDROID_NDK_ROOT_PREVIEW}" ]; then
|
||||||
assert_envvar_is_populated_dir "ANDROID_NDK_ROOT_PREVIEW"
|
assert_envvar_is_populated_dir "ANDROID_NDK_ROOT_PREVIEW"
|
||||||
assert_envvar_is_populated_dir "OPENSSL_ANDROID_HOME_PREVIEW"
|
assert_envvar_is_populated_dir "OPENSSL_ANDROID_HOME_PREVIEW"
|
||||||
build_ffmpeg_android "$target_arch" "$target_dir/preview" "$ANDROID_NDK_ROOT_PREVIEW" "$OPENSSL_ANDROID_HOME_PREVIEW"
|
build_ffmpeg_android "$target_dir/preview" "$ANDROID_NDK_ROOT_PREVIEW" "$OPENSSL_ANDROID_HOME_PREVIEW"
|
||||||
set_ffmpeg_dir_env_var "$envvar_preview" "$target_dir/preview"
|
set_ffmpeg_dir_env_var "$envvar_preview" "$target_dir/preview"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "${ANDROID_NDK_ROOT_NIGHTLY1}" ]; then
|
if [ "${ANDROID_NDK_ROOT_NIGHTLY1}" ]; then
|
||||||
assert_envvar_is_populated_dir "ANDROID_NDK_ROOT_NIGHTLY1"
|
assert_envvar_is_populated_dir "ANDROID_NDK_ROOT_NIGHTLY1"
|
||||||
assert_envvar_is_populated_dir "OPENSSL_ANDROID_HOME_NIGHTLY1"
|
assert_envvar_is_populated_dir "OPENSSL_ANDROID_HOME_NIGHTLY1"
|
||||||
build_ffmpeg_android "$target_arch" "$target_dir/nightly1" "$ANDROID_NDK_ROOT_NIGHTLY1" "$OPENSSL_ANDROID_HOME_NIGHTLY1"
|
build_ffmpeg_android "$target_dir/nightly1" "$ANDROID_NDK_ROOT_NIGHTLY1" "$OPENSSL_ANDROID_HOME_NIGHTLY1"
|
||||||
set_ffmpeg_dir_env_var "$envvar_nightly1" "$target_dir/nightly1"
|
set_ffmpeg_dir_env_var "$envvar_nightly1" "$target_dir/nightly1"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "${ANDROID_NDK_ROOT_NIGHTLY2}" ]; then
|
if [ "${ANDROID_NDK_ROOT_NIGHTLY2}" ]; then
|
||||||
assert_envvar_is_populated_dir "ANDROID_NDK_ROOT_NIGHTLY2"
|
assert_envvar_is_populated_dir "ANDROID_NDK_ROOT_NIGHTLY2"
|
||||||
assert_envvar_is_populated_dir "OPENSSL_ANDROID_HOME_NIGHTLY2"
|
assert_envvar_is_populated_dir "OPENSSL_ANDROID_HOME_NIGHTLY2"
|
||||||
build_ffmpeg_android "$target_arch" "$target_dir/nightly2" "$ANDROID_NDK_ROOT_NIGHTLY2" "$OPENSSL_ANDROID_HOME_NIGHTLY2"
|
build_ffmpeg_android "$target_dir/nightly2" "$ANDROID_NDK_ROOT_NIGHTLY2" "$OPENSSL_ANDROID_HOME_NIGHTLY2"
|
||||||
set_ffmpeg_dir_env_var "$envvar_nightly2" "$target_dir/nightly2"
|
set_ffmpeg_dir_env_var "$envvar_nightly2" "$target_dir/nightly2"
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -1,184 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
# Copyright (C) 2024 The Qt Company Ltd.
|
|
||||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
|
||||||
|
|
||||||
# This script will build and install FFmpeg static libs
|
|
||||||
# Can take an optional final parameter to control installation directory
|
|
||||||
set -ex
|
|
||||||
|
|
||||||
# Must match or be lower than the minimum iOS version supported by the version of Qt that is
|
|
||||||
# is currently being built.
|
|
||||||
readonly MINIMUM_IOS_VERSION="16.0"
|
|
||||||
|
|
||||||
source "${BASH_SOURCE%/*}/../unix/ffmpeg-installation-utils.sh"
|
|
||||||
|
|
||||||
ffmpeg_version=$(ffmpeg_version_default)
|
|
||||||
ffmpeg_source_dir=$(download_ffmpeg)
|
|
||||||
ffmpeg_config_options=$(get_ffmpeg_config_options "shared")
|
|
||||||
default_prefix="/usr/local/ios/ffmpeg"
|
|
||||||
prefix="${1:-$default_prefix}"
|
|
||||||
dylib_regex="^@rpath/.*\.dylib$"
|
|
||||||
|
|
||||||
build_ffmpeg_ios() {
|
|
||||||
local target_platform=$1
|
|
||||||
local target_cpu_arch=""
|
|
||||||
if [ "$target_platform" == "arm64-simulator" ]; then
|
|
||||||
target_sdk="iphonesimulator"
|
|
||||||
target_cpu_arch="arm64"
|
|
||||||
minos="-mios-simulator-version-min=$MINIMUM_IOS_VERSION"
|
|
||||||
elif [ "$target_platform" == "x86_64-simulator" ]; then
|
|
||||||
target_sdk="iphonesimulator"
|
|
||||||
target_cpu_arch="x86_64"
|
|
||||||
minos="-mios-simulator-version-min=$MINIMUM_IOS_VERSION"
|
|
||||||
elif [ "$target_platform" == "arm64-iphoneos" ]; then
|
|
||||||
target_sdk="iphoneos"
|
|
||||||
target_cpu_arch="arm64"
|
|
||||||
minos="-miphoneos-version-min=$MINIMUM_IOS_VERSION"
|
|
||||||
else
|
|
||||||
echo "Error when building FFmpeg for iOS. Unknown parameter given for target_platform: '${target_platform}'"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
local build_dir="$ffmpeg_source_dir/build_ios/$target_platform"
|
|
||||||
sudo mkdir -p "$build_dir"
|
|
||||||
pushd "$build_dir"
|
|
||||||
|
|
||||||
# shellcheck disable=SC2086
|
|
||||||
sudo "$ffmpeg_source_dir/configure" $ffmpeg_config_options \
|
|
||||||
--sysroot="$(xcrun --sdk "$target_sdk" --show-sdk-path)" \
|
|
||||||
--enable-cross-compile \
|
|
||||||
--enable-optimizations \
|
|
||||||
--prefix=$prefix \
|
|
||||||
--arch=$target_cpu_arch \
|
|
||||||
--cc="xcrun --sdk ${target_sdk} clang -arch $target_cpu_arch" \
|
|
||||||
--cxx="xcrun --sdk ${target_sdk} clang++ -arch $target_cpu_arch" \
|
|
||||||
--target-os=darwin \
|
|
||||||
--extra-ldflags="$minos" \
|
|
||||||
--enable-shared \
|
|
||||||
--disable-static \
|
|
||||||
--install-name-dir='@rpath' \
|
|
||||||
--disable-audiotoolbox
|
|
||||||
|
|
||||||
sudo make install DESTDIR="$build_dir/installed" -j4
|
|
||||||
popd
|
|
||||||
}
|
|
||||||
|
|
||||||
build_info_plist() {
|
|
||||||
local file_path="$1"
|
|
||||||
local framework_name="$2"
|
|
||||||
local framework_id="$3"
|
|
||||||
|
|
||||||
# Apple plist format has a strict requirement that the version string
|
|
||||||
# contains up to 3 numerics separated by a dot. Meanwhile, FFmpeg versioning
|
|
||||||
# tends to use an 'n' prefix in their versioning. We use a regex to convert
|
|
||||||
# and verify the version string.
|
|
||||||
#
|
|
||||||
# https://developer.apple.com/documentation/bundleresources/information-property-list/cfbundleversion
|
|
||||||
local formatted_ffmpeg_version
|
|
||||||
if [[ $ffmpeg_version =~ ([0-9]+(\.[0-9]+){0,2}) ]]; then
|
|
||||||
formatted_ffmpeg_version="${BASH_REMATCH[1]}"
|
|
||||||
else
|
|
||||||
echo "Unable to format FFmpeg version string '$ffmpeg_version' into corresponding Apple Info.plist format"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
local minimum_version_key="MinimumOSVersion"
|
|
||||||
local supported_platforms="iPhoneOS"
|
|
||||||
|
|
||||||
info_plist="<?xml version=\"1.0\" encoding=\"UTF-8\"?>
|
|
||||||
<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">
|
|
||||||
<plist version=\"1.0\">
|
|
||||||
<dict>
|
|
||||||
<key>CFBundleDevelopmentRegion</key>
|
|
||||||
<string>en</string>
|
|
||||||
<key>CFBundleExecutable</key>
|
|
||||||
<string>${framework_name}</string>
|
|
||||||
<key>CFBundleIdentifier</key>
|
|
||||||
<string>${framework_id}</string>
|
|
||||||
<key>CFBundleInfoDictionaryVersion</key>
|
|
||||||
<string>6.0</string>
|
|
||||||
<key>CFBundleName</key>
|
|
||||||
<string>${framework_name}</string>
|
|
||||||
<key>CFBundlePackageType</key>
|
|
||||||
<string>FMWK</string>
|
|
||||||
<key>CFBundleShortVersionString</key>
|
|
||||||
<string>${formatted_ffmpeg_version}</string>
|
|
||||||
<key>CFBundleVersion</key>
|
|
||||||
<string>${formatted_ffmpeg_version}</string>
|
|
||||||
<key>CFBundleSignature</key>
|
|
||||||
<string>????</string>
|
|
||||||
<key>${minimum_version_key}</key>
|
|
||||||
<string>${MINIMUM_IOS_VERSION}</string>
|
|
||||||
<key>CFBundleSupportedPlatforms</key>
|
|
||||||
<array>
|
|
||||||
<string>${supported_platforms}</string>
|
|
||||||
</array>
|
|
||||||
<key>NSPrincipalClass</key>
|
|
||||||
<string></string>
|
|
||||||
</dict>
|
|
||||||
</plist>"
|
|
||||||
echo $info_plist | sudo tee ${file_path} 1>/dev/null
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
create_framework() {
|
|
||||||
# Create a 'traditional' framework from the corresponding dylib.
|
|
||||||
local framework_name="$1"
|
|
||||||
local platform="$2" # For now it's either arm64, x86_64-simulator, see below.
|
|
||||||
local ffmpeg_library_path="$ffmpeg_source_dir/build_ios/${platform}/installed$prefix"
|
|
||||||
local framework_complete_path="${ffmpeg_library_path}/framework/${framework_name}.framework/${framework_name}"
|
|
||||||
|
|
||||||
sudo mkdir -p "${ffmpeg_library_path}/framework/${framework_name}.framework"
|
|
||||||
sudo cp "${ffmpeg_library_path}/lib/${framework_name}.dylib" "${ffmpeg_library_path}/framework/${framework_name}.framework/${framework_name}"
|
|
||||||
|
|
||||||
# Fix LC_ID_DYLIB (to be libavcodec.framework/libavcodec instead of @rpath/libavcodec.xx.yy.dylib
|
|
||||||
sudo install_name_tool -id @rpath/${framework_name}.framework/${framework_name} "${framework_complete_path}"
|
|
||||||
|
|
||||||
build_info_plist "${ffmpeg_library_path}/framework/${framework_name}.framework/Info.plist" "${framework_name}" "io.qt.ffmpegkit."${framework_name}
|
|
||||||
|
|
||||||
# Fix all FFmpeg-related LC_LOAD_DYLIB, similar to how we fixed LC_ID_DYLIB above:
|
|
||||||
otool -L "$framework_complete_path" | awk '/\t/ {print $1}' | egrep "$dylib_regex" | while read -r dependency_path; do
|
|
||||||
found_name=$(tmp=${dependency_path/*\/}; echo ${tmp/\.*})
|
|
||||||
if [ "$found_name" != "$framework_name" ]
|
|
||||||
then
|
|
||||||
sudo install_name_tool -change "$dependency_path" @rpath/${found_name}.framework/${found_name} "${framework_complete_path}"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
#sudo mkdir -p "$prefix/framework/"
|
|
||||||
#sudo cp -r "${ffmpeg_library_path}/framework/${framework_name}.framework" "$prefix/framework/"
|
|
||||||
}
|
|
||||||
|
|
||||||
create_xcframework() {
|
|
||||||
# Create 'traditional' framework from the corresponding dylib,
|
|
||||||
# also creating
|
|
||||||
local framework_name="$1"
|
|
||||||
local target_platform_a="$2"
|
|
||||||
local target_platform_b="$3"
|
|
||||||
|
|
||||||
local fw_a="$ffmpeg_source_dir/build_ios/${target_platform_a}/installed$prefix/framework/${framework_name}.framework"
|
|
||||||
local fw_b="$ffmpeg_source_dir/build_ios/${target_platform_b}/installed$prefix/framework/${framework_name}.framework"
|
|
||||||
|
|
||||||
sudo mkdir -p "$prefix/lib/"
|
|
||||||
sudo xcodebuild -create-xcframework -framework $fw_a -framework $fw_b -output "${prefix}/lib/${framework_name}.xcframework"
|
|
||||||
}
|
|
||||||
|
|
||||||
build_ffmpeg_ios "x86_64-simulator"
|
|
||||||
build_ffmpeg_ios "arm64-iphoneos"
|
|
||||||
|
|
||||||
ffmpeg_libs="libavcodec libavformat libavutil libswresample libswscale"
|
|
||||||
|
|
||||||
for name in $ffmpeg_libs; do
|
|
||||||
create_framework $name "arm64-iphoneos"
|
|
||||||
create_framework $name "x86_64-simulator"
|
|
||||||
done
|
|
||||||
|
|
||||||
# Create corresponding (xc)frameworks containing both arm64 and arm64-simulator frameworks:
|
|
||||||
for name in $ffmpeg_libs; do
|
|
||||||
create_xcframework $name "arm64-iphoneos" "x86_64-simulator"
|
|
||||||
done
|
|
||||||
|
|
||||||
# xcframeworks are already installed directly into the target output directory.
|
|
||||||
# We need to install headers
|
|
||||||
sudo cp -r "$ffmpeg_source_dir/build_ios/arm64-iphoneos/installed$prefix/include" $prefix
|
|
||||||
|
|
||||||
set_ffmpeg_dir_env_var "FFMPEG_DIR_IOS" $prefix
|
|
||||||
@@ -1,13 +1,13 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
# Copyright (C) 2022 The Qt Company Ltd.
|
# Copyright (C) 2025 The Qt Company Ltd.
|
||||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||||
|
|
||||||
# This script install OpenSSL from sources.
|
# This script install OpenSSL from sources.
|
||||||
# Requires GCC and Perl to be in PATH.
|
# Requires GCC and Perl to be in PATH.
|
||||||
set -ex
|
set -ex
|
||||||
os="$1"
|
os="$1"
|
||||||
version=${2:-"3.0.7"}
|
version=${2:-"3.5.4"}
|
||||||
sha=${3:-"f20736d6aae36bcbfa9aba0d358c71601833bf27"}
|
sha=${3:-"b75daac8e10f189abe28a076ba5905d363e4801f"}
|
||||||
|
|
||||||
SCRIPT_DIR="$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
|
SCRIPT_DIR="$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
|
||||||
# shellcheck source=../unix/DownloadURL.sh
|
# shellcheck source=../unix/DownloadURL.sh
|
||||||
@@ -37,6 +37,7 @@ if [[ "$os" == "linux" ]]; then
|
|||||||
make && make install_sw install_ssldirs
|
make && make install_sw install_ssldirs
|
||||||
SetEnvVar "OPENSSL_HOME" "$opensslHome"
|
SetEnvVar "OPENSSL_HOME" "$opensslHome"
|
||||||
SetEnvVar "PATH" "\"$opensslHome/bin:\$PATH\""
|
SetEnvVar "PATH" "\"$opensslHome/bin:\$PATH\""
|
||||||
|
SetEnvVar "PKG_CONFIG_PATH" "\"$opensslHome/lib64/pkgconfig:\$PKG_CONFIG_PATH\""
|
||||||
if uname -a |grep -q "Debian"; then
|
if uname -a |grep -q "Debian"; then
|
||||||
SetEnvVar "LD_LIBRARY_PATH" "\"$opensslHome/lib:$LD_LIBRARY_PATH\""
|
SetEnvVar "LD_LIBRARY_PATH" "\"$opensslHome/lib:$LD_LIBRARY_PATH\""
|
||||||
else
|
else
|
||||||
@@ -103,6 +104,18 @@ elif [ "$os" == "macos" ] || [ "$os" == "macos-universal" ]; then
|
|||||||
SetEnvVar "OPENSSL_INCLUDE" "\"$openssl_install_dir/include\""
|
SetEnvVar "OPENSSL_INCLUDE" "\"$openssl_install_dir/include\""
|
||||||
SetEnvVar "OPENSSL_LIB" "\"$openssl_install_dir/lib\""
|
SetEnvVar "OPENSSL_LIB" "\"$openssl_install_dir/lib\""
|
||||||
|
|
||||||
|
# Set runtime loader (dyld) and OpenSSL providers for SSL tests (QTBUG-142392)
|
||||||
|
SetEnvVar "DYLD_LIBRARY_PATH" "\"$opensslTargetLocation/lib:\$DYLD_LIBRARY_PATH\""
|
||||||
|
SetEnvVar "OPENSSL_MODULES" "\"$opensslTargetLocation/lib/ossl-modules\""
|
||||||
|
# Check that the versioned dylibs exists and ML-DSA is available
|
||||||
|
test -f "$opensslTargetLocation/lib/libcrypto.3.dylib"
|
||||||
|
test -f "$opensslTargetLocation/lib/libssl.3.dylib"
|
||||||
|
test -d "$opensslTargetLocation/lib/ossl-modules"
|
||||||
|
|
||||||
|
OPENSSL_MODULES="$opensslTargetLocation/lib/ossl-modules" \
|
||||||
|
"$opensslTargetLocation/bin/openssl" list -signature-algorithms | \
|
||||||
|
grep -q -i 'ML-DSA' || { echo "ML-DSA not available"; exit 1; }
|
||||||
|
|
||||||
security find-certificate -a -p /Library/Keychains/System.keychain | sudo tee -a "$opensslTargetLocation/ssl/cert.pem" > /dev/null
|
security find-certificate -a -p /Library/Keychains/System.keychain | sudo tee -a "$opensslTargetLocation/ssl/cert.pem" > /dev/null
|
||||||
security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain | sudo tee -a "$opensslTargetLocation/ssl/cert.pem" > /dev/null
|
security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain | sudo tee -a "$opensslTargetLocation/ssl/cert.pem" > /dev/null
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -7,12 +7,12 @@ source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
|
|||||||
|
|
||||||
echo "Installing vcpkg ports"
|
echo "Installing vcpkg ports"
|
||||||
|
|
||||||
pushd "${BASH_SOURCE%/*}/vcpkg" || exit
|
pushd "${BASH_SOURCE%/*}/../shared/vcpkg" || exit
|
||||||
cp "${BASH_SOURCE%/*}/../shared/vcpkg-configuration.json" .
|
|
||||||
|
|
||||||
install_root=x64-linux-qt-tmp
|
install_root=$1-tmp
|
||||||
|
vcpkg_extra_args=$2
|
||||||
|
|
||||||
"$VCPKG_ROOT/vcpkg" install --triplet x64-linux-qt --x-install-root $install_root --debug
|
"$VCPKG_ROOT/vcpkg" install --triplet $1 --x-install-root $install_root --debug $vcpkg_extra_args
|
||||||
|
|
||||||
cmake "-DVCPKG_EXECUTABLE=$VCPKG_ROOT/vcpkg"\
|
cmake "-DVCPKG_EXECUTABLE=$VCPKG_ROOT/vcpkg"\
|
||||||
"-DVCPKG_INSTALL_ROOT=$PWD/$install_root"\
|
"-DVCPKG_INSTALL_ROOT=$PWD/$install_root"\
|
||||||
@@ -34,7 +34,7 @@ do
|
|||||||
"vcpkg_tool_release_tag")
|
"vcpkg_tool_release_tag")
|
||||||
vcpkgToolReleaseTag=${keyValue[1]}
|
vcpkgToolReleaseTag=${keyValue[1]}
|
||||||
;;
|
;;
|
||||||
"linux_checksum")
|
"unix_checksum")
|
||||||
vcpkgToolChecksum=${keyValue[1]}
|
vcpkgToolChecksum=${keyValue[1]}
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
@@ -86,7 +86,7 @@ SetEnvVar "VCPKG_ROOT" "$vcpkgRoot"
|
|||||||
export VCPKG_ROOT="$vcpkgRoot"
|
export VCPKG_ROOT="$vcpkgRoot"
|
||||||
|
|
||||||
# Set a source for vcpkg Binary and Asset Cache
|
# Set a source for vcpkg Binary and Asset Cache
|
||||||
# The `coin/provisioning/common/linux/mount-vcpkg-cache-drive.sh` script is
|
# The `coin/provisioning/common/<platform>/mount-vcpkg-cache-drive.sh` script is
|
||||||
# mounting the SMB share located in `vcpkg-server.ci.qt.io/vcpkg` to
|
# mounting the SMB share located in `vcpkg-server.ci.qt.io/vcpkg` to
|
||||||
# $HOME/vcpkg-cache/
|
# $HOME/vcpkg-cache/
|
||||||
export VCPKG_BINARY_SOURCES="files,$HOME/vcpkg-cache/binaries,readwrite"
|
export VCPKG_BINARY_SOURCES="files,$HOME/vcpkg-cache/binaries,readwrite"
|
||||||
@@ -63,6 +63,7 @@ cmake "$targetDir" -G"Ninja Multi-Config" \
|
|||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
||||||
-DCMAKE_CONFIGURATION_TYPES="Release;Debug;RelWithDebugInfo" \
|
-DCMAKE_CONFIGURATION_TYPES="Release;Debug;RelWithDebugInfo" \
|
||||||
-DCMAKE_INSTALL_PREFIX="$installPrefix" \
|
-DCMAKE_INSTALL_PREFIX="$installPrefix" \
|
||||||
|
-DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
|
||||||
"${extraCMakeArgs[@]}" \
|
"${extraCMakeArgs[@]}" \
|
||||||
"$extraOpenSslArg" \
|
"$extraOpenSslArg" \
|
||||||
-DgRPC_BUILD_TESTS=OFF \
|
-DgRPC_BUILD_TESTS=OFF \
|
||||||
|
|||||||
@@ -8,10 +8,10 @@
|
|||||||
source "${BASH_SOURCE%/*}/DownloadURL.sh"
|
source "${BASH_SOURCE%/*}/DownloadURL.sh"
|
||||||
source "${BASH_SOURCE%/*}/SetEnvVar.sh"
|
source "${BASH_SOURCE%/*}/SetEnvVar.sh"
|
||||||
|
|
||||||
version="7.15.0"
|
version="7.18.0"
|
||||||
PrimaryUrl="http://ci-files01-hki.ci.qt.io/input/qtopenapi/openapi_client_generators/openapi-generator-cli-$version.jar"
|
PrimaryUrl="http://ci-files01-hki.ci.qt.io/input/qtopenapi/openapi_client_generators/openapi-generator-cli-$version.jar"
|
||||||
AltUrl="https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/$version/openapi-generator-cli-$version.jar"
|
AltUrl="https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/$version/openapi-generator-cli-$version.jar"
|
||||||
SHA1="bb58e257f724fb46b7f2b309a9fa98e63fd7199f"
|
SHA1="8bd615a50b15ebf5be30e612af112526a6e81ac4"
|
||||||
targetFolder="/opt/qt-openapi/"
|
targetFolder="/opt/qt-openapi/"
|
||||||
targetFile="openapi-generator-cli.jar"
|
targetFile="openapi-generator-cli.jar"
|
||||||
|
|
||||||
|
|||||||
@@ -16,6 +16,7 @@ source "${BASH_SOURCE%/*}/SetEnvVar.sh"
|
|||||||
# shellcheck source=./DownloadURL.sh
|
# shellcheck source=./DownloadURL.sh
|
||||||
source "${BASH_SOURCE%/*}/DownloadURL.sh"
|
source "${BASH_SOURCE%/*}/DownloadURL.sh"
|
||||||
|
|
||||||
|
zswitch=$1 # Since 7z 25.01 multi-hop symbolic links are restricted with -snl switch levels
|
||||||
version="20.1.3"
|
version="20.1.3"
|
||||||
baseUrl="https://download.qt.io/development_releases/prebuilt/libclang"
|
baseUrl="https://download.qt.io/development_releases/prebuilt/libclang"
|
||||||
cachedUrl="http://ci-files01-hki.ci.qt.io/input/libclang/dynamic"
|
cachedUrl="http://ci-files01-hki.ci.qt.io/input/libclang/dynamic"
|
||||||
@@ -40,7 +41,7 @@ DownloadURL "$url_cached" "$url" "$sha1" "$zip"
|
|||||||
if command -v 7zr &> /dev/null; then
|
if command -v 7zr &> /dev/null; then
|
||||||
sudo 7zr x $zip -o/usr/local/
|
sudo 7zr x $zip -o/usr/local/
|
||||||
else
|
else
|
||||||
sudo 7z x $zip -o/usr/local/
|
sudo 7z x $zswitch $zip -o/usr/local/
|
||||||
fi
|
fi
|
||||||
sudo mv /usr/local/libclang "$destination"
|
sudo mv /usr/local/libclang "$destination"
|
||||||
rm -rf $zip
|
rm -rf $zip
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ PROVISIONING_DIR="$(dirname "$0")/../../"
|
|||||||
# shellcheck source=./common.sourced.sh
|
# shellcheck source=./common.sourced.sh
|
||||||
source "$PROVISIONING_DIR"/common/unix/common.sourced.sh
|
source "$PROVISIONING_DIR"/common/unix/common.sourced.sh
|
||||||
|
|
||||||
|
zswitch=$1 # Since 7z 25.01 multi-hop symbolic links are restricted with -snl switch levels
|
||||||
libclang_version="20.1.0"
|
libclang_version="20.1.0"
|
||||||
|
|
||||||
if uname -a |grep -q Darwin; then
|
if uname -a |grep -q Darwin; then
|
||||||
@@ -61,7 +62,7 @@ DownloadURL $url_cached $url $sha1 $zip
|
|||||||
if command -v 7zr &> /dev/null; then
|
if command -v 7zr &> /dev/null; then
|
||||||
sudo 7zr x $zip -o/usr/local/
|
sudo 7zr x $zip -o/usr/local/
|
||||||
else
|
else
|
||||||
sudo 7z x $zip -o/usr/local/
|
sudo 7z x $zswitch $zip -o/usr/local/
|
||||||
fi
|
fi
|
||||||
sudo mv /usr/local/libclang "$destination"
|
sudo mv /usr/local/libclang "$destination"
|
||||||
rm -rf $zip
|
rm -rf $zip
|
||||||
|
|||||||
@@ -5,95 +5,154 @@
|
|||||||
# This script install prebuilt OpenSSL which was built against Android NDK 25.
|
# This script install prebuilt OpenSSL which was built against Android NDK 25.
|
||||||
# OpenSSL build will fail with Android NDK 22, because it's missing platforms and sysroot directories
|
# OpenSSL build will fail with Android NDK 22, because it's missing platforms and sysroot directories
|
||||||
|
|
||||||
set -ex
|
set -eux
|
||||||
# shellcheck source=../unix/DownloadURL.sh
|
# shellcheck source=../unix/DownloadURL.sh
|
||||||
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
|
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
|
||||||
# shellcheck source=../unix/SetEnvVar.sh
|
# shellcheck source=../unix/SetEnvVar.sh
|
||||||
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
|
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
|
||||||
|
|
||||||
sslVersionForLatest="3.0.7"
|
outputPathBase="${HOME}"
|
||||||
ndkVersionLatest="r27c"
|
|
||||||
prebuiltOpensslShaLatest="2cc15dd990460c2c7157ab257a47071fbd9e0ac8"
|
|
||||||
|
|
||||||
sslVersionForPreview="3.0.7"
|
sslVersionForLatest="3.5.4"
|
||||||
|
ndkVersionLatest="r27c"
|
||||||
|
featureSuffixLatest="_16kb_fixed_symversions"
|
||||||
|
prebuiltOpensslShaLatest="b9dc30ed77bfd26e526e81d558d6964585b27283"
|
||||||
|
|
||||||
|
sslVersionForPreview="3.5.4"
|
||||||
ndkVersionPreview="r29-beta2"
|
ndkVersionPreview="r29-beta2"
|
||||||
prebuiltOpensslShaPreview="76c9788216440111be97ea1a63c4d8cd807baacd"
|
featureSuffixPreview="_16kb_fixed_symversions"
|
||||||
|
prebuiltOpensslShaPreview="89b6692e983c7e9678dcd9fc03da623fb75593d3"
|
||||||
|
|
||||||
ndkVersionNightly1=$ndkVersionLatest
|
ndkVersionNightly1=$ndkVersionLatest
|
||||||
sslVersionForNightly1=$sslVersionForLatest
|
sslVersionForNightly1=$sslVersionForLatest
|
||||||
|
featureSuffixNightly1=""
|
||||||
prebuiltOpensslShaNightly1=$prebuiltOpensslShaLatest
|
prebuiltOpensslShaNightly1=$prebuiltOpensslShaLatest
|
||||||
|
|
||||||
ndkVersionNightly2=$ndkVersionLatest
|
ndkVersionNightly2=$ndkVersionLatest
|
||||||
sslVersionForNightly2=$sslVersionForLatest
|
sslVersionForNightly2=$sslVersionForLatest
|
||||||
|
featureSuffixNightly2=""
|
||||||
prebuiltOpensslShaNightly2=$prebuiltOpensslShaLatest
|
prebuiltOpensslShaNightly2=$prebuiltOpensslShaLatest
|
||||||
|
|
||||||
: <<'EOB' SOURCE BUILD INSTRUCTIONS - Openssl prebuilt was made using Android NDK r29-beta2
|
: <<'EOB' SOURCE BUILD INSTRUCTIONS
|
||||||
# Source built requires GCC and Perl to be in PATH. Rhel "requires yum install perl-IPC-Cmd"
|
Openssl 3.5.4 prebuilt was made using Android NDK r27c Revision 27.2.12479018
|
||||||
exports_file="/tmp/export.sh"
|
and r29-beta2 Revision 29.0.13599879
|
||||||
# source previously made environmental variables.
|
|
||||||
if uname -a |grep -q "Ubuntu"; then
|
|
||||||
# shellcheck disable=SC1090
|
|
||||||
grep -e "^export" "$HOME/.profile" > $exports_file && source $exports_file
|
|
||||||
rm -rf "$exports_file"
|
|
||||||
else
|
|
||||||
# shellcheck disable=SC1090
|
|
||||||
grep -e "^export" "$HOME/.bashrc" > $exports_file && source $exports_file
|
|
||||||
rm -rf "$exports_file"
|
|
||||||
fi
|
|
||||||
|
|
||||||
officialUrl="https://www.openssl.org/source/openssl-$sslVersionForLatest.tar.gz"
|
By using a helpful (build_ssl.sh) script from:
|
||||||
cachedUrl="http://ci-files01-hki.ci.qt.io/input/openssl/openssl-$sslVersionForLatest.tar.gz"
|
Android OpenSSL support for Qt
|
||||||
targetFile="/tmp/openssl-$sslVersionForLatest.tar.gz"
|
https://github.com/KDAB/android_openssl/commit/b71f1470962019bd89534a2919f5925f93bc5779
|
||||||
sha="f20736d6aae36bcbfa9aba0d358c71601833bf27"
|
|
||||||
opensslHome="${HOME}/openssl/android/openssl-${sslVersionForLatest}"
|
Download the same NDK version that the Qt branch supports
|
||||||
DownloadURL "$cachedUrl" "$officialUrl" "$sha" "$targetFile"
|
https://developer.android.com/ndk/downloads
|
||||||
mkdir -p "${HOME}/openssl/android/"
|
|
||||||
tar -xzf "$targetFile" -C "${HOME}/openssl/android/"
|
Modify the script to your liking: set a path to NDK root, set OpenSSL version
|
||||||
if uname -a |grep -q "Darwin"; then
|
(script will download needed OpenSSL packages)
|
||||||
TOOLCHAIN=${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/darwin-x86_64/bin
|
Set ANDROID_API to the lowest version of Android which will be used.
|
||||||
else
|
|
||||||
TOOLCHAIN=${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/linux-x86_64/bin
|
|
||||||
fi
|
|
||||||
cd "$opensslHome"
|
|
||||||
PATH=$TOOLCHAIN:$PATH CC=clang ./Configure android-arm
|
|
||||||
PATH=$TOOLCHAIN:$PATH CC=clang make build_generated
|
|
||||||
EOB
|
EOB
|
||||||
|
|
||||||
|
function BuildOutputPath() {
|
||||||
|
local ndkVersion="$1"
|
||||||
|
local suffix="$2"
|
||||||
|
local sslVersion="$3"
|
||||||
|
|
||||||
|
echo "${outputPathBase}/prebuilt-openssl-${sslVersion}-for-android-ndk-${ndkVersion}${suffix}"
|
||||||
|
}
|
||||||
|
|
||||||
function InstallPrebuiltOpenssl() {
|
function InstallPrebuiltOpenssl() {
|
||||||
|
local ndkVersion="$1"
|
||||||
|
local suffix="$2"
|
||||||
|
local sha="$3"
|
||||||
|
local sslVersion="$4"
|
||||||
|
local output_dir="$5"
|
||||||
|
|
||||||
ndkVersion=$1
|
local prebuiltUrl="http://ci-files01-hki.ci.qt.io/input/openssl/prebuilt-openssl-${sslVersion}-for-android-ndk-${ndkVersion}${suffix}.zip"
|
||||||
sha=$2
|
local targetFile="/tmp/prebuilt-openssl-${sslVersion}-for-android-ndk-${ndkVersion}${suffix}.zip"
|
||||||
sslVersion=$3
|
|
||||||
|
|
||||||
opensslHome="${HOME}/prebuilt-openssl-${sslVersion}-for-android-ndk-${ndkVersion}_16kb"
|
DownloadURL "$prebuiltUrl" "$prebuiltUrl" "$sha" "$targetFile"
|
||||||
if [[ ! -d ${opensslHome} ]]; then
|
|
||||||
prebuiltUrl="http://ci-files01-hki.ci.qt.io/input/openssl/prebuilt-openssl-${sslVersion}-for-android-ndk-${ndkVersion}_16kb.zip"
|
|
||||||
targetFile="/tmp/prebuilt-openssl-${sslVersion}-for-android-ndk-${ndkVersion}_16kb.zip"
|
|
||||||
|
|
||||||
DownloadURL "$prebuiltUrl" "$prebuiltUrl" "$sha" "$targetFile"
|
local tmp_extract
|
||||||
unzip -o "$targetFile" -d "${HOME}"
|
tmp_extract="$(mktemp -d "${TMPDIR:-/tmp}/openssl-extract.XXXXXX")"
|
||||||
sudo rm -f "$targetFile"
|
unzip -q -o "$targetFile" -d "$tmp_extract"
|
||||||
|
rm -f "$targetFile"
|
||||||
|
|
||||||
|
# We assume there is only one top-level directory in the openssl zip
|
||||||
|
local temp_openssl_root
|
||||||
|
temp_openssl_root="$(find "$tmp_extract" -mindepth 1 -maxdepth 1 -type d | head -n 1)"
|
||||||
|
if [[ -z "$temp_openssl_root" ]]; then
|
||||||
|
echo "ERROR: Expected a single top-level directory in the archive, but none was found." >&2
|
||||||
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
mv "$temp_openssl_root" "$output_dir"
|
||||||
|
rm -rf "$tmp_extract"
|
||||||
|
|
||||||
|
# There have been cases where necessary symlinks are lost when unarchiving.
|
||||||
|
# Force-create them now.
|
||||||
|
local abi_list="arm64-v8a armeabi-v7a x86 x86_64"
|
||||||
|
for abi in $abi_list; do
|
||||||
|
ln -fs "${output_dir}/include" "${output_dir}/${abi}/include"
|
||||||
|
ln -fs "${output_dir}/${abi}/libcrypto_3.so" "${output_dir}/${abi}/libcrypto.so"
|
||||||
|
ln -fs "${output_dir}/${abi}/libssl_3.so" "${output_dir}/${abi}/libssl.so"
|
||||||
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
if [ "$ndkVersionNightly1" != "$ndkVersionLatest" ]; then
|
if [ "$ndkVersionNightly1" != "$ndkVersionLatest" ]; then
|
||||||
InstallPrebuiltOpenssl $ndkVersionNightly1 $prebuiltOpensslShaNightly1 $sslVersionForNightly1
|
outputDirNightly1=$(BuildOutputPath \
|
||||||
SetEnvVar "OPENSSL_ANDROID_HOME_NIGHTLY1" "$opensslHome"
|
"$ndkVersionNightly1" \
|
||||||
echo "OpenSSL for Android $ndkVersionNightly1 = $sslVersionForNightly1" >> ~/versions.txt
|
"$featureSuffixNightly1" \
|
||||||
|
"$sslVersionForNightly1")
|
||||||
|
|
||||||
|
InstallPrebuiltOpenssl \
|
||||||
|
"$ndkVersionNightly1" \
|
||||||
|
"$featureSuffixNightly1" \
|
||||||
|
"$prebuiltOpensslShaNightly1" \
|
||||||
|
"$sslVersionForNightly1" \
|
||||||
|
"$outputDirNightly1"
|
||||||
|
SetEnvVar "OPENSSL_ANDROID_HOME_NIGHTLY1" "$outputDirNightly1"
|
||||||
|
echo "OpenSSL for Android ${ndkVersionNightly1} = ${sslVersionForNightly1}" >> ~/versions.txt
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$ndkVersionNightly2" != "$ndkVersionLatest" ]; then
|
if [ "$ndkVersionNightly2" != "$ndkVersionLatest" ]; then
|
||||||
InstallPrebuiltOpenssl $ndkVersionNightly2 $prebuiltOpensslShaNightly2 $sslVersionForNightly2
|
outputDirNightly2=$(BuildOutputPath \
|
||||||
SetEnvVar "OPENSSL_ANDROID_HOME_NIGHTLY2" "$opensslHome"
|
"$ndkVersionNightly2" \
|
||||||
echo "OpenSSL for Android $ndkVersionNightly2 = $sslVersionForNightly2" >> ~/versions.txt
|
"$featureSuffixNightly2" \
|
||||||
|
"$sslVersionForNightly2")
|
||||||
|
|
||||||
|
InstallPrebuiltOpenssl \
|
||||||
|
"$ndkVersionNightly2" \
|
||||||
|
"$featureSuffixNightly2" \
|
||||||
|
"$prebuiltOpensslShaNightly2" \
|
||||||
|
"$sslVersionForNightly2" \
|
||||||
|
"$outputDirNightly2"
|
||||||
|
SetEnvVar "OPENSSL_ANDROID_HOME_NIGHTLY1" "$outputDirNightly2"
|
||||||
|
echo "OpenSSL for Android ${ndkVersionNightly2} = ${sslVersionForNightly2}" >> ~/versions.txt
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$ndkVersionPreview" != "$ndkVersionLatest" ]; then
|
if [ "$ndkVersionPreview" != "$ndkVersionLatest" ]; then
|
||||||
InstallPrebuiltOpenssl $ndkVersionPreview $prebuiltOpensslShaPreview $sslVersionForPreview
|
outputDirPreview="$(BuildOutputPath \
|
||||||
SetEnvVar "OPENSSL_ANDROID_HOME_PREVIEW" "$opensslHome"
|
"$ndkVersionPreview" \
|
||||||
echo "OpenSSL for Android $ndkVersionPreview = $sslVersionForPreview" >> ~/versions.txt
|
"$featureSuffixPreview" \
|
||||||
|
"$sslVersionForPreview")"
|
||||||
|
|
||||||
|
InstallPrebuiltOpenssl \
|
||||||
|
"$ndkVersionPreview" \
|
||||||
|
"$featureSuffixPreview" \
|
||||||
|
"$prebuiltOpensslShaPreview" \
|
||||||
|
"$sslVersionForPreview" \
|
||||||
|
"$outputDirPreview"
|
||||||
|
SetEnvVar "OPENSSL_ANDROID_HOME_PREVIEW" "$outputDirPreview"
|
||||||
|
echo "OpenSSL for Android ${ndkVersionPreview} = ${sslVersionForPreview}" >> ~/versions.txt
|
||||||
fi
|
fi
|
||||||
|
|
||||||
InstallPrebuiltOpenssl $ndkVersionLatest $prebuiltOpensslShaLatest $sslVersionForLatest
|
outputDirLatest="$(BuildOutputPath \
|
||||||
SetEnvVar "OPENSSL_ANDROID_HOME_LATEST" "$opensslHome"
|
"$ndkVersionLatest" \
|
||||||
echo "OpenSSL for Android $ndkVersionLatest = $sslVersionForLatest" >> ~/versions.txt
|
"$featureSuffixLatest" \
|
||||||
|
"$sslVersionForLatest")"
|
||||||
|
|
||||||
|
InstallPrebuiltOpenssl \
|
||||||
|
"$ndkVersionLatest" \
|
||||||
|
"$featureSuffixLatest" \
|
||||||
|
"$prebuiltOpensslShaLatest" \
|
||||||
|
"$sslVersionForLatest" \
|
||||||
|
"$outputDirLatest"
|
||||||
|
SetEnvVar "OPENSSL_ANDROID_HOME_LATEST" "$outputDirLatest"
|
||||||
|
echo "OpenSSL for Android ${ndkVersionLatest} = ${sslVersionForLatest}" >> ~/versions.txt
|
||||||
|
|||||||
@@ -1,104 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
# Copyright (C) 2020 The Qt Company Ltd.
|
|
||||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
|
||||||
|
|
||||||
PROVISIONING_DIR="$(dirname "$0")/../../"
|
|
||||||
source "${BASH_SOURCE%/*}/DownloadURL.sh"
|
|
||||||
source "$PROVISIONING_DIR"/common/unix/common.sourced.sh
|
|
||||||
|
|
||||||
set -ex
|
|
||||||
|
|
||||||
# This script will fetch and extract pre-buildt squish package for Linux and Mac.
|
|
||||||
# Squish is need by Release Test Automation (RTA)
|
|
||||||
|
|
||||||
version="8.1.0"
|
|
||||||
qtBranch="68x"
|
|
||||||
installFolder="/opt"
|
|
||||||
squishFolder="$installFolder/squish"
|
|
||||||
preBuildCacheUrl="ci-files01-hki.ci.qt.io:/hdd/www/input/squish/jenkins_build/stable"
|
|
||||||
licenseFile=".squish-license"
|
|
||||||
licenseBranch="squish_license"
|
|
||||||
licenseUrl="http://ci-files01-hki.ci.qt.io/input/squish/coin/$licenseBranch/$licenseFile"
|
|
||||||
licenseSHA="e84b499a2011f9bb1a6eefc7b2338d7ae770927a"
|
|
||||||
testSuiteUrl="ci-files01-hki.ci.qt.io:/hdd/www/input/squish/coin/suite_test_squish"
|
|
||||||
testSuiteLocal="/tmp/squish_test_suite"
|
|
||||||
if uname -a |grep -q Darwin; then
|
|
||||||
compressedFolder="prebuild-squish-$version-$qtBranch-mac-x64.tar.gz"
|
|
||||||
sha1="03a0c713d0d328667df2e7804f2e4d507707b849"
|
|
||||||
else
|
|
||||||
if [ "$PROVISIONING_ARCH" = arm64 ] ; then
|
|
||||||
compressedFolder="prebuild-squish-$version-$qtBranch-linux-arm64.tar.gz"
|
|
||||||
sha1="f6a2eb69faed64f13b164fb8d056182c41d2952c"
|
|
||||||
else
|
|
||||||
compressedFolder="prebuild-squish-$version-$qtBranch-linux-x64.tar.gz"
|
|
||||||
sha1="b798417ddf4b668306cb90d551df906828644152"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
mountFolder="/tmp/squish"
|
|
||||||
sudo mkdir "$mountFolder"
|
|
||||||
sudo mkdir "$testSuiteLocal"
|
|
||||||
|
|
||||||
# Check which platform
|
|
||||||
if uname -a |grep -q Darwin; then
|
|
||||||
usersGroup="staff"
|
|
||||||
elif uname -a |grep -q "el7"; then
|
|
||||||
usersGroup="qt"
|
|
||||||
elif uname -a |grep -q "Ubuntu"; then
|
|
||||||
usersGroup="users"
|
|
||||||
else
|
|
||||||
usersGroup="users"
|
|
||||||
fi
|
|
||||||
|
|
||||||
targetFileMount="$mountFolder"/"$compressedFolder"
|
|
||||||
|
|
||||||
echo "Mounting Squish packages from $preBuildCacheUrl to $mountFolder"
|
|
||||||
echo "Mounting Squish test suite from $testSuiteUrl to $testSuiteLocal"
|
|
||||||
if uname -a |grep -q Darwin; then
|
|
||||||
sudo mount -o locallocks "$preBuildCacheUrl" "$mountFolder"
|
|
||||||
sudo mount -o locallocks "$testSuiteUrl" "$testSuiteLocal"
|
|
||||||
else
|
|
||||||
sudo mount "$preBuildCacheUrl" "$mountFolder"
|
|
||||||
sudo mount "$testSuiteUrl" "$testSuiteLocal"
|
|
||||||
fi
|
|
||||||
echo "Create $installFolder if needed"
|
|
||||||
if [ ! -d "$installFolder" ]; then
|
|
||||||
sudo mkdir "$installFolder"
|
|
||||||
fi
|
|
||||||
|
|
||||||
VerifyHash "$targetFileMount" "$sha1"
|
|
||||||
|
|
||||||
echo "Uncompress $compressedFolder"
|
|
||||||
sudo tar -xzf "$targetFileMount" --directory "$installFolder"
|
|
||||||
|
|
||||||
if uname -a |grep -q Darwin; then
|
|
||||||
sudo xattr -r -c "$squishFolder"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Download Squish license"
|
|
||||||
DownloadURL "$licenseUrl" "$licenseUrl" "$licenseSHA" "$HOME/$licenseFile"
|
|
||||||
|
|
||||||
echo "Changing ownerships"
|
|
||||||
sudo chown -R qt:$usersGroup "$squishFolder"
|
|
||||||
sudo chown qt:$usersGroup "$HOME/$licenseFile"
|
|
||||||
|
|
||||||
|
|
||||||
echo "Verifying Squish, available installations:"
|
|
||||||
ls -la $squishFolder
|
|
||||||
cd $squishFolder
|
|
||||||
|
|
||||||
for squishInstallation in */ ; do
|
|
||||||
if "$squishInstallation/bin/squishrunner" --testsuite "$testSuiteLocal" | grep "Squish test run successfully" ; then
|
|
||||||
echo "Squish in $squishInstallation tested successfully"
|
|
||||||
else
|
|
||||||
echo "Testing Squish in $squishInstallation failed! Squish wasn't installed correctly."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
echo "Clean up installation temp dirs"
|
|
||||||
echo "- Unmounting $mountFolder"
|
|
||||||
sudo diskutil unmount force "$mountFolder" || sudo umount -f "$mountFolder" || true
|
|
||||||
|
|
||||||
echo "- Unmounting $testSuiteLocal"
|
|
||||||
sudo diskutil unmount force "$testSuiteLocal" || sudo umount -f "$testSuiteLocal" || true
|
|
||||||
@@ -15,15 +15,15 @@ if (Is64BitWinHost) {
|
|||||||
# Msys need to be installed to target machine
|
# Msys need to be installed to target machine
|
||||||
# More info and building instructions can be found from http://doc.qt.io/qt-5/opensslsupport.html
|
# More info and building instructions can be found from http://doc.qt.io/qt-5/opensslsupport.html
|
||||||
|
|
||||||
$openssl_version_latest = "3.0.7"
|
$openssl_version_latest = "3.5.4"
|
||||||
$ndk_version_latest = "r27c"
|
$ndk_version_latest = "r27c_16kb"
|
||||||
$prebuilt_ssl_sha1_latest = "733cff853b6ee7738e78b90f46b5f028c8490e1e"
|
$prebuilt_ssl_sha1_latest = "a76cd9ec719d4e71473dcf451d648a9766247081"
|
||||||
$openssl_sha1_latest = "f20736d6aae36bcbfa9aba0d358c71601833bf27"
|
$openssl_sha1_latest = "b75daac8e10f189abe28a076ba5905d363e4801f"
|
||||||
|
|
||||||
$openssl_version_preview = "3.0.7"
|
$openssl_version_preview = "3.5.4"
|
||||||
$ndk_version_preview = "r29-beta2"
|
$ndk_version_preview = "r29-beta2_16kb"
|
||||||
$prebuilt_ssl_sha1_preview = "c2cf8fabfb7e00b31abcc554e6e306dafd99ae1b"
|
$prebuilt_ssl_sha1_preview = "664bab8b4f5e01c8bb87ab0ea8333b2ef1af703d"
|
||||||
$openssl_sha1_preview = "f20736d6aae36bcbfa9aba0d358c71601833bf27"
|
$openssl_sha1_preview = "b75daac8e10f189abe28a076ba5905d363e4801f"
|
||||||
|
|
||||||
$openssl_version_nightly1 = $openssl_version_latest
|
$openssl_version_nightly1 = $openssl_version_latest
|
||||||
$ndk_version_nightly1 = $ndk_version_latest
|
$ndk_version_nightly1 = $ndk_version_latest
|
||||||
|
|||||||
@@ -41,8 +41,8 @@ $ndkOfficialUrlNightly2 = "https://dl.google.com/android/repository/android-ndk-
|
|||||||
$toolsVersion = "19.0"
|
$toolsVersion = "19.0"
|
||||||
$toolsFile = "commandlinetools-win-13114758_latest.zip"
|
$toolsFile = "commandlinetools-win-13114758_latest.zip"
|
||||||
$sdkApi = "ANDROID_API_VERSION"
|
$sdkApi = "ANDROID_API_VERSION"
|
||||||
$sdkApiLevel = "android-35"
|
$sdkApiLevel = "android-36"
|
||||||
$sdkBuildToolsVersion = "35.0.1"
|
$sdkBuildToolsVersion = "36.0.0"
|
||||||
$toolsCachedUrl= "\\ci-files01-hki.ci.qt.io\provisioning\android\$toolsFile"
|
$toolsCachedUrl= "\\ci-files01-hki.ci.qt.io\provisioning\android\$toolsFile"
|
||||||
$toolsOfficialUrl = "https://dl.google.com/android/repository/$toolsFile"
|
$toolsOfficialUrl = "https://dl.google.com/android/repository/$toolsFile"
|
||||||
$toolsChecksum = "54a582f3bf73e04253602f2d1c80bd5868aac115"
|
$toolsChecksum = "54a582f3bf73e04253602f2d1c80bd5868aac115"
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ $sdkChecksumSha1 = "8fe98c00fde0f524760bb9021f438bd7d9304a69"
|
|||||||
$package_path = "C:\Windows\Temp\$package"
|
$package_path = "C:\Windows\Temp\$package"
|
||||||
|
|
||||||
Download $officialUrl $cachedUrl $package_path
|
Download $officialUrl $cachedUrl $package_path
|
||||||
Verify-Checksum $package_path $sdkChecksumSha1 sha1
|
Verify-Checksum $package_path $sdkChecksumSha1
|
||||||
Write-Host "Installing DirectX SDK"
|
Write-Host "Installing DirectX SDK"
|
||||||
Run-Executable $package_path "/u"
|
Run-Executable $package_path "/u"
|
||||||
|
|
||||||
|
|||||||
@@ -49,6 +49,7 @@ function build-install-grpc {
|
|||||||
"-DgRPC_SSL_PROVIDER=package"
|
"-DgRPC_SSL_PROVIDER=package"
|
||||||
# protobuf
|
# protobuf
|
||||||
"-DProtobuf_USE_STATIC_LIBS=ON"
|
"-DProtobuf_USE_STATIC_LIBS=ON"
|
||||||
|
"-DCMAKE_POLICY_VERSION_MINIMUM=3.5"
|
||||||
"-DCMAKE_PREFIX_PATH=$protobufRoot"
|
"-DCMAKE_PREFIX_PATH=$protobufRoot"
|
||||||
)
|
)
|
||||||
cmake .. -G"Ninja Multi-Config" -DCMAKE_CONFIGURATION_TYPES="$BuildType" -DCMAKE_INSTALL_PREFIX="$installPath" $extraCMakeArgs $configureOptions
|
cmake .. -G"Ninja Multi-Config" -DCMAKE_CONFIGURATION_TYPES="$BuildType" -DCMAKE_INSTALL_PREFIX="$installPath" $extraCMakeArgs $configureOptions
|
||||||
|
|||||||
@@ -2,16 +2,20 @@ function Verify-Checksum
|
|||||||
{
|
{
|
||||||
Param (
|
Param (
|
||||||
[string]$File=$(throw("You must specify a filename to get the checksum of.")),
|
[string]$File=$(throw("You must specify a filename to get the checksum of.")),
|
||||||
[string]$Expected=$(throw("Checksum required")),
|
[string]$Expected=$(throw("Checksum required"))
|
||||||
[ValidateSet("sha256","sha1","md5")][string]$Algorithm="sha1"
|
|
||||||
)
|
)
|
||||||
|
switch ($Expected.Length) {
|
||||||
|
40 { $Algorithm = "SHA1" }
|
||||||
|
64 { $Algorithm = "SHA256" }
|
||||||
|
default { throw "Unknown hash length for: $Expected" }
|
||||||
|
}
|
||||||
Write-Host "Verifying checksum of $File"
|
Write-Host "Verifying checksum of $File"
|
||||||
$fs = new-object System.IO.FileStream $File, "Open"
|
$fs = new-object System.IO.FileStream $File, "Open"
|
||||||
$algo = [type]"System.Security.Cryptography.$Algorithm"
|
$algo = [type]"System.Security.Cryptography.$Algorithm"
|
||||||
$crypto = $algo::Create()
|
$crypto = $algo::Create()
|
||||||
$hash = [BitConverter]::ToString($crypto.ComputeHash($fs)).Replace("-", "")
|
$hash = [BitConverter]::ToString($crypto.ComputeHash($fs)).Replace("-", "")
|
||||||
$fs.Close()
|
$fs.Close()
|
||||||
if ($hash -ne $Expected) {
|
if ($hash -ine $Expected) {
|
||||||
throw "Checksum verification failed, got: '$hash' expected: '$Expected'"
|
throw "Checksum verification failed, got: '$hash' expected: '$Expected'"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,9 +7,9 @@
|
|||||||
# This script will install FFmpeg
|
# This script will install FFmpeg
|
||||||
$msys = "C:\Utils\msys64\usr\bin\bash"
|
$msys = "C:\Utils\msys64\usr\bin\bash"
|
||||||
|
|
||||||
$version="n7.1.2"
|
$version="n7.1.3"
|
||||||
$url_public="https://github.com/FFmpeg/FFmpeg/archive/refs/tags/$version.tar.gz"
|
$url_public="https://github.com/FFmpeg/FFmpeg/archive/refs/tags/$version.tar.gz"
|
||||||
$sha1="1e4e937facdbde15943dd093121836bf69f27c7c"
|
$sha1="27051817deec88bed3b9652d49f9127d22268d83"
|
||||||
$url_cached="http://ci-files01-hki.ci.qt.io/input/ffmpeg/$version.tar.gz"
|
$url_cached="http://ci-files01-hki.ci.qt.io/input/ffmpeg/$version.tar.gz"
|
||||||
$ffmpeg_name="FFmpeg-$version"
|
$ffmpeg_name="FFmpeg-$version"
|
||||||
|
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ $url_official = "https://go.dev/dl/go" + $version + ".windows-" + $arch + ".msi"
|
|||||||
|
|
||||||
Write-Host "Fetching Go $version..."
|
Write-Host "Fetching Go $version..."
|
||||||
Download $url_official $url_cache $goPackage
|
Download $url_official $url_cache $goPackage
|
||||||
Verify-Checksum $goPackage $sha256 sha256
|
Verify-Checksum $goPackage $sha256
|
||||||
Write-Host "Installing Go $version..."
|
Write-Host "Installing Go $version..."
|
||||||
Run-Executable "msiexec" "/quiet /i $goPackage"
|
Run-Executable "msiexec" "/quiet /i $goPackage"
|
||||||
Write-Output "Go = $version" >> ~\versions.txt
|
Write-Output "Go = $version" >> ~\versions.txt
|
||||||
|
|||||||
@@ -4,31 +4,31 @@
|
|||||||
. "$PSScriptRoot\helpers.ps1"
|
. "$PSScriptRoot\helpers.ps1"
|
||||||
|
|
||||||
# This script will install Java SE
|
# This script will install Java SE
|
||||||
# https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html
|
# https://www.oracle.com/java/technologies/javase/jdk21-archive-downloads.html
|
||||||
$version_major = "17"
|
$version_major = "21"
|
||||||
|
|
||||||
$cpu_arch = Get-CpuArchitecture
|
$cpu_arch = Get-CpuArchitecture
|
||||||
switch ($cpu_arch) {
|
switch ($cpu_arch) {
|
||||||
arm64 {
|
arm64 {
|
||||||
$version = "17.0.11"
|
$version = "21.0.9"
|
||||||
$arch = "aarch64"
|
$arch = "aarch64"
|
||||||
$sha1 = "1c5984a185778ad91498b746e677d84e153d5918"
|
$sha1 = "293cca7b76e3280573061f53dbe41ced527e3b4d"
|
||||||
# Using Microsoft build version of OpenJDK from: https://learn.microsoft.com/en-us/java/openjdk/download
|
# Using Microsoft build https://aka.ms/download-jdk/ - no .msi available
|
||||||
# as there are no available Windows ARM64 versions of JDK from Oracle
|
$url_official = "https://aka.ms/download-jdk/microsoft-jdk-${version}-windows-${arch}.exe"
|
||||||
$url_official = "https://aka.ms/download-jdk/microsoft-jdk-${version}-windows-${arch}.msi"
|
$url_cache = "\\ci-files01-hki.ci.qt.io\provisioning\windows\microsoft-jdk-${version}-windows-${arch}.exe"
|
||||||
$url_cache = "\\ci-files01-hki.ci.qt.io\provisioning\windows\microsoft-jdk-${version}-windows-${arch}.msi"
|
$javaPackage = "C:\Windows\Temp\jdk-$version.exe"
|
||||||
$javaPackage = "C:\Windows\Temp\jdk-$version.msi"
|
|
||||||
# Microsoft installer does not allow to override the installation path using the regular
|
# Microsoft installer does not allow to override the installation path using the regular
|
||||||
# TARGETDIR or INSTALLDIR properties, so just hardcode the path that it uses
|
# TARGETDIR or INSTALLDIR properties, so just hardcode the path that it uses
|
||||||
$installdir = "C:\Program Files\Microsoft\jdk-17.0.11.9-hotspot"
|
$installdir = "C:\Program Files\Microsoft\jdk-$version-hotspot"
|
||||||
Break
|
Break
|
||||||
}
|
}
|
||||||
x64 {
|
x64 {
|
||||||
$version = "17.0.10"
|
$version = "21.0.9"
|
||||||
$arch = "x64"
|
$arch = "x64"
|
||||||
$sha1 = "d573091930076c3ffa9f74273cb41cb5c75c5400"
|
$sha1 = "b4b10fd43993650053c41f377af37b37a2267b74"
|
||||||
$url_official = "https://download.oracle.com/java/17/archive/jdk-${version}_windows-${arch}_bin.exe"
|
# Downloading from https://aka.ms/download-jdk/microsoft-jdk-21.0.9-windows-x64.exe
|
||||||
$url_cache = "\\ci-files01-hki.ci.qt.io\provisioning\windows\jdk-$version-windows-$arch.exe"
|
$url_official = "https://aka.ms/download-jdk/microsoft-jdk-${version}_windows-${arch}.exe"
|
||||||
|
$url_cache = "\\ci-files01-hki.ci.qt.io\provisioning\windows\microsoft-jdk-$version-windows-$arch.exe"
|
||||||
$javaPackage = "C:\Windows\Temp\jdk-$version.exe"
|
$javaPackage = "C:\Windows\Temp\jdk-$version.exe"
|
||||||
$installdir = "C:\Program Files\Java\jdk-$version_major"
|
$installdir = "C:\Program Files\Java\jdk-$version_major"
|
||||||
Break
|
Break
|
||||||
@@ -44,7 +44,7 @@ Download $url_official $url_cache $javaPackage
|
|||||||
Verify-Checksum $javaPackage $sha1
|
Verify-Checksum $javaPackage $sha1
|
||||||
|
|
||||||
if ($javaPackage.EndsWith(".exe")) {
|
if ($javaPackage.EndsWith(".exe")) {
|
||||||
Run-Executable "$javaPackage" "/s SPONSORS=0"
|
Run-Executable "$javaPackage" "/SILENT /SUPPRESSMSGBOXES /ALLUSERS /DIR=`"$installdir`""
|
||||||
} else {
|
} else {
|
||||||
Run-Executable "msiexec" "/quiet /i $javaPackage"
|
Run-Executable "msiexec" "/quiet /i $javaPackage"
|
||||||
}
|
}
|
||||||
|
|||||||
20
coin/provisioning/common/windows/install-nuget.ps1
Normal file
20
coin/provisioning/common/windows/install-nuget.ps1
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
# Copyright (C) 2025 The Qt Company Ltd.
|
||||||
|
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||||
|
|
||||||
|
. "$PSScriptRoot\helpers.ps1"
|
||||||
|
|
||||||
|
$script:nugetVersion = "v6.11.0"
|
||||||
|
$script:nugetPackage = "nuget_$nugetVersion.exe"
|
||||||
|
$script:packageRoot = "C:\Utils\NuGet\"
|
||||||
|
|
||||||
|
$script:cachedUrl = "\\ci-files01-hki.ci.qt.io\provisioning\windows\nuget\$nugetPackage"
|
||||||
|
$script:officialUrl = "https://dist.nuget.org/win-x86-commandline/$nugetVersion/nuget.exe"
|
||||||
|
$script:sdkChecksumSha1 = "5443887cfb5283da5021388d146ebb5febdc82e9"
|
||||||
|
$script:package_path = "$packageRoot\\$nugetPackage"
|
||||||
|
|
||||||
|
New-Item -ItemType Directory -Path "$packageRoot"
|
||||||
|
Download $officialUrl $cachedUrl $package_path
|
||||||
|
Verify-Checksum $package_path $sdkChecksumSha1
|
||||||
|
Write-Host "Installing Nuget"
|
||||||
|
|
||||||
|
Set-EnvironmentVariable "NUGET_EXE_PATH" "$package_path"
|
||||||
@@ -10,17 +10,17 @@ $temp = "$env:tmp"
|
|||||||
$cpu_arch = Get-CpuArchitecture
|
$cpu_arch = Get-CpuArchitecture
|
||||||
switch ($cpu_arch) {
|
switch ($cpu_arch) {
|
||||||
arm64 {
|
arm64 {
|
||||||
$zipPackage = "OpenSSH-ARM64"
|
$base_file_name = "OpenSSH-ARM64"
|
||||||
$sha1 = "ca3e8f44a550b7ae71c8e122acd4ed905d66feb0"
|
$sha1 = "ca3e8f44a550b7ae71c8e122acd4ed905d66feb0"
|
||||||
Break
|
Break
|
||||||
}
|
}
|
||||||
x64 {
|
x64 {
|
||||||
$zipPackage = "OpenSSH-Win64"
|
$base_file_name = "OpenSSH-Win64"
|
||||||
$sha1 = "1397d40d789ae0911b3cc818b9dcd9321fed529b"
|
$sha1 = "1397d40d789ae0911b3cc818b9dcd9321fed529b"
|
||||||
Break
|
Break
|
||||||
}
|
}
|
||||||
x86 {
|
x86 {
|
||||||
$zipPackage = "OpenSSH-Win32"
|
$base_file_name = "OpenSSH-Win32"
|
||||||
$sha1 = "4642C62F72C108C411E27CE282A863791B63329B"
|
$sha1 = "4642C62F72C108C411E27CE282A863791B63329B"
|
||||||
Break
|
Break
|
||||||
}
|
}
|
||||||
@@ -29,20 +29,27 @@ switch ($cpu_arch) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Write-Host "Fetching $zipPackage $version..."
|
Write-Host "Fetching $base_file_name $version..."
|
||||||
$url_cache = "http://ci-files01-hki.ci.qt.io/input/windows/openssh/" + $version + "/" + $zipPackage + ".zip"
|
$url_cache = "http://ci-files01-hki.ci.qt.io/input/windows/openssh/$version/$base_file_name.zip"
|
||||||
$url_official = "https://github.com/PowerShell/Win32-OpenSSH/releases/download/" + $version + "/" + $zipPackage + ".zip"
|
$url_official = "https://github.com/PowerShell/Win32-OpenSSH/releases/download/$version/$base_file_name.zip"
|
||||||
Download $url_official $url_cache "$temp\$zipPackage"
|
$output_zip_file = "$temp\$base_file_name.zip"
|
||||||
Verify-Checksum "$temp\$zipPackage" $sha1
|
Download $url_official $url_cache $output_zip_file
|
||||||
|
Verify-Checksum $output_zip_file $sha1
|
||||||
|
|
||||||
Write-Host "Extracting the package"
|
Write-Host "Extracting the package"
|
||||||
Extract-7Zip "$temp\$zipPackage" C:\"Program Files"
|
Extract-7Zip $output_zip_file "C:\Program Files"
|
||||||
|
# We assume the incoming zip contains exactly one directory, named the same
|
||||||
|
# as the base file name of th zip.
|
||||||
|
$output_dir = "C:\Program Files\$base_file_name"
|
||||||
|
if (-not (Test-Path $output_dir -PathType Container)) {
|
||||||
|
throw "Error. Expected output directory '$output_dir' does not exist."
|
||||||
|
}
|
||||||
|
|
||||||
Write-Host "Installing $zipPackage $version..."
|
Write-Host "Installing $base_file_name $version..."
|
||||||
$path = "C:\Program Files\" + $zipPackage + "\install-sshd.ps1"
|
$install_script = "$output_dir\install-sshd.ps1"
|
||||||
|
|
||||||
# Installation done as shown at https://github.com/PowerShell/Win32-OpenSSH/wiki/Install-Win32-OpenSSH
|
# Installation done as shown at https://github.com/PowerShell/Win32-OpenSSH/wiki/Install-Win32-OpenSSH
|
||||||
powershell.exe -ExecutionPolicy Bypass -File $path
|
powershell.exe -ExecutionPolicy Bypass -File $install_script
|
||||||
netsh advfirewall firewall add rule name=sshd dir=in action=allow protocol=TCP localport=22
|
netsh advfirewall firewall add rule name=sshd dir=in action=allow protocol=TCP localport=22
|
||||||
net start sshd
|
net start sshd
|
||||||
Set-Service sshd -StartupType Automatic
|
Set-Service sshd -StartupType Automatic
|
||||||
|
|||||||
@@ -17,9 +17,9 @@ $install_location = "c:\Utils\$prog"
|
|||||||
|
|
||||||
$tmp_location = "c:\users\qt\downloads"
|
$tmp_location = "c:\users\qt\downloads"
|
||||||
Download $cached_url $cached_url "$tmp_location\$pkg"
|
Download $cached_url $cached_url "$tmp_location\$pkg"
|
||||||
Verify-Checksum "$tmp_location\$pkg" $sha1 sha1
|
Verify-Checksum "$tmp_location\$pkg" $sha1
|
||||||
Download $dep_cached_url $dep_cached_url "$tmp_location\$dep_pkg"
|
Download $dep_cached_url $dep_cached_url "$tmp_location\$dep_pkg"
|
||||||
Verify-Checksum "$tmp_location\$dep_pkg" $dep_sha1 sha1
|
Verify-Checksum "$tmp_location\$dep_pkg" $dep_sha1
|
||||||
|
|
||||||
Extract-7Zip "$tmp_location\$pkg" $install_location
|
Extract-7Zip "$tmp_location\$pkg" $install_location
|
||||||
Extract-7Zip "$tmp_location\$dep_pkg" $install_location
|
Extract-7Zip "$tmp_location\$dep_pkg" $install_location
|
||||||
|
|||||||
@@ -7,9 +7,7 @@ $vcpkgExe = "$env:VCPKG_ROOT\vcpkg.exe"
|
|||||||
$vcpkgRoot = "$env:VCPKG_ROOT"
|
$vcpkgRoot = "$env:VCPKG_ROOT"
|
||||||
$vcpkgInstallRoot = "armeabi-v7a-android-qt-tmp"
|
$vcpkgInstallRoot = "armeabi-v7a-android-qt-tmp"
|
||||||
|
|
||||||
Set-Location -Path "$PSScriptRoot\vcpkg"
|
Set-Location -Path "$PSScriptRoot\..\shared\vcpkg"
|
||||||
Copy-Item "$PSScriptRoot\..\shared\vcpkg-configuration.json" -Destination "$PSScriptRoot\vcpkg"
|
|
||||||
|
|
||||||
Run-Executable "$vcpkgExe" "install --triplet armeabi-v7a-android-qt --x-install-root $vcpkgInstallRoot --debug"
|
Run-Executable "$vcpkgExe" "install --triplet armeabi-v7a-android-qt --x-install-root $vcpkgInstallRoot --debug"
|
||||||
|
|
||||||
New-Item -Path "$vcpkgRoot" -Name "installed" -ItemType "directory" -Force
|
New-Item -Path "$vcpkgRoot" -Name "installed" -ItemType "directory" -Force
|
||||||
|
|||||||
@@ -10,9 +10,7 @@ $vcpkgExe = "$env:VCPKG_ROOT\vcpkg.exe"
|
|||||||
$vcpkgRoot = "$env:VCPKG_ROOT"
|
$vcpkgRoot = "$env:VCPKG_ROOT"
|
||||||
$vcpkgInstallRoot = "$arch-windows-qt-tmp"
|
$vcpkgInstallRoot = "$arch-windows-qt-tmp"
|
||||||
|
|
||||||
Set-Location -Path "$PSScriptRoot\vcpkg"
|
Set-Location -Path "$PSScriptRoot\..\shared\vcpkg"
|
||||||
Copy-Item "$PSScriptRoot\..\shared\vcpkg-configuration.json" -Destination "$PSScriptRoot\vcpkg"
|
|
||||||
|
|
||||||
Run-Executable "$vcpkgExe" "install --triplet $arch-windows-qt --x-install-root $vcpkginstallroot --debug"
|
Run-Executable "$vcpkgExe" "install --triplet $arch-windows-qt --x-install-root $vcpkginstallroot --debug"
|
||||||
|
|
||||||
New-Item -Path "$vcpkgRoot" -Name "installed" -ItemType "directory" -Force
|
New-Item -Path "$vcpkgRoot" -Name "installed" -ItemType "directory" -Force
|
||||||
|
|||||||
@@ -60,7 +60,7 @@ $vcpkgExeCacheUrl = "\\ci-files01-hki.ci.qt.io\provisioning\vcpkg\vcpkg-$nonDott
|
|||||||
$vcpkgExe = "C:\Windows\Temp\vcpkg.exe"
|
$vcpkgExe = "C:\Windows\Temp\vcpkg.exe"
|
||||||
|
|
||||||
Download "$vcpkgExeOfficialUrl" "$vcpkgExeCacheUrl" "$vcpkgExe"
|
Download "$vcpkgExeOfficialUrl" "$vcpkgExeCacheUrl" "$vcpkgExe"
|
||||||
Verify-Checksum $vcpkgExe $vcpkgExechecksum "sha256"
|
Verify-Checksum $vcpkgExe $vcpkgExechecksum
|
||||||
Move-Item "$vcpkgExe" -Destination "$vcpkgRoot" -Force
|
Move-Item "$vcpkgExe" -Destination "$vcpkgRoot" -Force
|
||||||
|
|
||||||
if(![System.IO.File]::Exists("$vcpkgRoot\vcpkg.exe")){
|
if(![System.IO.File]::Exists("$vcpkgRoot\vcpkg.exe")){
|
||||||
|
|||||||
89
coin/provisioning/common/windows/install_configure_vcam.ps1
Normal file
89
coin/provisioning/common/windows/install_configure_vcam.ps1
Normal file
@@ -0,0 +1,89 @@
|
|||||||
|
# Copyright (C) 2025 The Qt Company Ltd.
|
||||||
|
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||||
|
|
||||||
|
. "$PSScriptRoot\helpers.ps1"
|
||||||
|
|
||||||
|
$script:commitSha = "1ede7be543c1fb1e230a733d43f5ee042c72d030"
|
||||||
|
$script:repoUrl = "https://git.qt.io/qtmultimedia/WindowsVirtualCamera/-/archive/$commitSha/WindowsVirtualCamera-$commitSha.zip"
|
||||||
|
$script:unzip_location = "C:\Utils\WindowsVirtualCamera"
|
||||||
|
$script:download_location = "C:\Windows\Temp\WindowsVirtualCamera.zip"
|
||||||
|
|
||||||
|
$script:nuget = [System.Environment]::GetEnvironmentVariable('NUGET_EXE_PATH', [System.EnvironmentVariableTarget]::Machine)
|
||||||
|
|
||||||
|
$script:localPath = "$unzip_location\WindowsVirtualCamera-$commitSha"
|
||||||
|
$script:solutionFile = "VCamManager.sln"
|
||||||
|
$script:buildConfig = "Release"
|
||||||
|
$script:targetPlatform = "x64"
|
||||||
|
$script:dllPath = "$localPath\$targetPlatform\$buildConfig\VCamSampleSource.dll"
|
||||||
|
|
||||||
|
# Save the current location to return later
|
||||||
|
$previousLocation = Get-Location
|
||||||
|
|
||||||
|
Write-Host "Downloading from $repoUrl to $download_location"
|
||||||
|
Invoke-WebRequest -Uri $repoUrl -OutFile $download_location
|
||||||
|
Write-Host "Extracting $download_location to $unzip_location"
|
||||||
|
Expand-Archive -Path $download_location -DestinationPath $unzip_location
|
||||||
|
Remove-Item $download_location
|
||||||
|
|
||||||
|
# Ensure we're inside repo folder
|
||||||
|
Set-Location $localPath
|
||||||
|
|
||||||
|
$hostArch = Get-CpuArchitecture
|
||||||
|
$arch = $hostArch
|
||||||
|
$result = EnterVSDevShell -HostArch $hostArch -Arch $arch
|
||||||
|
if (-Not $result) {
|
||||||
|
return $false
|
||||||
|
}
|
||||||
|
|
||||||
|
Write-Host "Locating MSBuild"
|
||||||
|
$vswhere = "${Env:ProgramFiles(x86)}\Microsoft Visual Studio\Installer\vswhere.exe"
|
||||||
|
|
||||||
|
if (-not (Test-Path $vswhere)) {
|
||||||
|
throw "vswhere.exe not found! Path: $vswhere"
|
||||||
|
}
|
||||||
|
|
||||||
|
$msbuildPath = & $vswhere `
|
||||||
|
-latest `
|
||||||
|
-products * `
|
||||||
|
-requires Microsoft.Component.MSBuild `
|
||||||
|
-requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64 `
|
||||||
|
-find "MSBuild\**\Bin\MSBuild.exe" `
|
||||||
|
|
||||||
|
if ($LASTEXITCODE -ne 0 -or -not (Test-Path $msbuildPath)) {
|
||||||
|
throw "MSBuild NOT found. Make sure VS Build Tools are installed."
|
||||||
|
}
|
||||||
|
Write-Host "MSBuild found: $msbuildPath"
|
||||||
|
|
||||||
|
Write-Host "Restoring NuGet packages"
|
||||||
|
& $nuget restore $solutionFile
|
||||||
|
|
||||||
|
Write-Host "Building solution $solutionFile"
|
||||||
|
& "$msbuildPath" $solutionFile `
|
||||||
|
/t:Build `
|
||||||
|
/p:Configuration=$buildConfig `
|
||||||
|
/p:Platform=$targetPlatform `
|
||||||
|
/p:RestorePackagesConfig=true `
|
||||||
|
/m
|
||||||
|
|
||||||
|
if ($LASTEXITCODE -eq 0) {
|
||||||
|
Write-Host "Build succeeded"
|
||||||
|
} else {
|
||||||
|
Write-Host " Build failed with exit code $LASTEXITCODE"
|
||||||
|
exit $LASTEXITCODE
|
||||||
|
}
|
||||||
|
|
||||||
|
Write-Host "Registering the Virtual Camera dll"
|
||||||
|
regsvr32 /s "$dllPath"
|
||||||
|
|
||||||
|
if ($LASTEXITCODE -eq 0) {
|
||||||
|
Write-Host "Register succeeded"
|
||||||
|
} else {
|
||||||
|
Write-Host "Register failed with exit code $LASTEXITCODE"
|
||||||
|
exit $LASTEXITCODE
|
||||||
|
}
|
||||||
|
|
||||||
|
Set-EnvironmentVariable "VCAM_PATH" "$localPath\$targetPlatform\$buildConfig"
|
||||||
|
Write-Host "Environment variable VCAM_PATH set to $localPath\$targetPlatform\$buildConfig"
|
||||||
|
|
||||||
|
# Return to previous location
|
||||||
|
Set-Location $previousLocation
|
||||||
@@ -43,7 +43,7 @@ $tempfile = "C:\Windows\Temp\" + $filename_zip
|
|||||||
|
|
||||||
Write-Host "Fetching Telegraf $version..."
|
Write-Host "Fetching Telegraf $version..."
|
||||||
Download $url_official $url_cache $tempfile
|
Download $url_official $url_cache $tempfile
|
||||||
Verify-Checksum $tempfile $sha256 sha256
|
Verify-Checksum $tempfile $sha256
|
||||||
|
|
||||||
Write-Host "Installing telegraf.exe under C:\Utils\telegraf"
|
Write-Host "Installing telegraf.exe under C:\Utils\telegraf"
|
||||||
|
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ $internalUrl = "http://ci-files01-hki.ci.qt.io/input/windows/node-v$version-win-
|
|||||||
|
|
||||||
Write-Host "Installing Node.js"
|
Write-Host "Installing Node.js"
|
||||||
Download $externalUrl $internalUrl $package
|
Download $externalUrl $internalUrl $package
|
||||||
Verify-Checksum $package $sha256 "sha256"
|
Verify-Checksum $package $sha256
|
||||||
Extract-7Zip $package $targetFolder
|
Extract-7Zip $package $targetFolder
|
||||||
Add-Path $installFolder
|
Add-Path $installFolder
|
||||||
Remove $package
|
Remove $package
|
||||||
|
|||||||
@@ -1,31 +1,28 @@
|
|||||||
# Copyright (C) 2022 The Qt Company Ltd.
|
# Copyright (C) 2025 The Qt Company Ltd.
|
||||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||||
|
|
||||||
. "$PSScriptRoot\helpers.ps1"
|
. "$PSScriptRoot\helpers.ps1"
|
||||||
|
|
||||||
# This script installs OpenSSL ARM64 $version.
|
# This script installs OpenSSL ARM64 (debug version)
|
||||||
|
|
||||||
##### OpenSSL ARM64 has been pre-built with following commands #####
|
##### OpenSSL ARM64 and x64-arm64 has been pre-built with following commands #####
|
||||||
# Two different builds were done to the same folder C:\openssl_arm64\. One with '--debug' and one with '--release' parameter
|
# From Visual studio 'C++ Universal Windows Platform support for v143 build tools' and 'Windows Universal C Runtime' were installed
|
||||||
# From Visual studio 'C++ Universal Windows Platform support for v142 build tools (ARM64)' and 'Windows Universal C Runtime' were installed
|
# cd C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Auxiliary\Build
|
||||||
# cd C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Auxiliary\Build
|
# call vcvarsamd64_arm64 (or vcvarsarm64 in Windows 11 arm64 OS)
|
||||||
# call vcvarsamd64_arm64
|
# curl -o C:\Utils\openssl-3.5.4.zip http://ci-files01-hki.ci.qt.io/input/openssl/openssl-3.5.4.zip
|
||||||
# curl -o C:\Utils\openssl-3.0.7.zip http://ci-files01-hki.ci.qt.io/input/openssl/openssl-3.0.7.zip
|
# (or https://github.com/openssl/openssl/releases/download/openssl-3.5.4/openssl-3.5.4.tar.gz)
|
||||||
# cd C:\Utils
|
# cd C:\Utils
|
||||||
# C:\Utils\sevenzip\7z.exe x C:\Utils\openssl-3.0.7.zip
|
# C:\Utils\sevenzip\7z.exe x C:\Utils\openssl-3.5.4.zip
|
||||||
# cd C:\Utils\openssl-3.0.7
|
# cd C:\Utils\openssl-3.5.4
|
||||||
# perl Configure no-asm VC-WIN64-ARM --debug --prefix=C:\openssl_arm64\ --openssldir=C:\openssl_arm64\
|
# perl Configure no-asm VC-WIN64-ARM --debug --prefix=C:\openssl_arm64\
|
||||||
# nmake
|
# nmake
|
||||||
# nmake install
|
# nmake install
|
||||||
#
|
##################################################################################
|
||||||
# perl Configure no-asm VC-WIN64-ARM --release --prefix=C:\openssl_arm64\ --openssldir=C:\openssl_arm64\
|
|
||||||
# nmake
|
|
||||||
# nmake install
|
|
||||||
#################################################################################################################################################
|
|
||||||
|
|
||||||
$version = "3_0_7"
|
$version = "3.5.4"
|
||||||
$url = "\\ci-files01-hki.ci.qt.io\provisioning\openssl\openssl-$version-arm64.zip"
|
|
||||||
$sha1 = "19be15069d981b4a96f5715f039df7aaa7456d52"
|
$url = "https://ci-files01-hki.ci.qt.io/input/openssl/openssl-$version-prebuild-windows-msvc2022-arm64.zip"
|
||||||
|
$sha1 = "e5fdf5c565e7c275fdfe877f31b387eb48da5d96"
|
||||||
$installFolder = "C:\openssl_arm64"
|
$installFolder = "C:\openssl_arm64"
|
||||||
$zip_package = "C:\Windows\Temp\$version.zip"
|
$zip_package = "C:\Windows\Temp\$version.zip"
|
||||||
|
|
||||||
@@ -38,9 +35,8 @@ Remove $zip_package
|
|||||||
$cpu_arch = Get-CpuArchitecture
|
$cpu_arch = Get-CpuArchitecture
|
||||||
switch ($cpu_arch) {
|
switch ($cpu_arch) {
|
||||||
arm64 {
|
arm64 {
|
||||||
# For native arm64
|
# Native arm64
|
||||||
Set-EnvironmentVariable "OPENSSL_ROOT_DIR_arm64" "$installFolder"
|
Set-EnvironmentVariable "OPENSSL_ROOT_DIR_arm64" "$installFolder"
|
||||||
Set-EnvironmentVariable "OPENSSL_CONF_arm64" "$installFolder\bin\openssl.cfg"
|
|
||||||
Set-EnvironmentVariable "OPENSSL_INCLUDE_arm64" "$installFolder\include"
|
Set-EnvironmentVariable "OPENSSL_INCLUDE_arm64" "$installFolder\include"
|
||||||
Set-EnvironmentVariable "OPENSSL_LIB_arm64" "$installFolder\lib"
|
Set-EnvironmentVariable "OPENSSL_LIB_arm64" "$installFolder\lib"
|
||||||
Break
|
Break
|
||||||
@@ -48,7 +44,6 @@ switch ($cpu_arch) {
|
|||||||
x64 {
|
x64 {
|
||||||
# For cross-compiling x64_arm64
|
# For cross-compiling x64_arm64
|
||||||
Set-EnvironmentVariable "OPENSSL_ROOT_DIR_x64_arm64" "$installFolder"
|
Set-EnvironmentVariable "OPENSSL_ROOT_DIR_x64_arm64" "$installFolder"
|
||||||
Set-EnvironmentVariable "OPENSSL_CONF_x64_arm64" "$installFolder\bin\openssl.cfg"
|
|
||||||
Set-EnvironmentVariable "OPENSSL_INCLUDE_x64_arm64" "$installFolder\include"
|
Set-EnvironmentVariable "OPENSSL_INCLUDE_x64_arm64" "$installFolder\include"
|
||||||
Set-EnvironmentVariable "OPENSSL_LIB_x64_arm64" "$installFolder\lib"
|
Set-EnvironmentVariable "OPENSSL_LIB_x64_arm64" "$installFolder\lib"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,64 +1,44 @@
|
|||||||
# Copyright (C) 2022 The Qt Company Ltd.
|
# Copyright (C) 2025 The Qt Company Ltd.
|
||||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||||
|
|
||||||
. "$PSScriptRoot\helpers.ps1"
|
. "$PSScriptRoot\helpers.ps1"
|
||||||
|
|
||||||
# This script installs OpenSSL $version.
|
# This script installs OpenSSL x86_64 (debug version)
|
||||||
# Both x86 and x64 versions needed when x86 integrations are done on x64 machine
|
|
||||||
|
|
||||||
$version = "3_0_7"
|
##### OpenSSL has been pre-built with following commands #####
|
||||||
$packagex64 = "C:\Windows\Temp\Win64OpenSSL-$version.exe"
|
# cd C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Auxiliary\Build
|
||||||
$packagex86 = "C:\Windows\Temp\Win32OpenSSL-$version.exe"
|
# call vcvarsamd64
|
||||||
|
# curl -o C:\Utils\openssl-3.5.4.zip http://ci-files01-hki.ci.qt.io/input/openssl/openssl-3.5.4.zip
|
||||||
|
# cd C:\Utils
|
||||||
|
# C:\Utils\sevenzip\7z.exe x C:\Utils\openssl-3.5.4.zip
|
||||||
|
# cd C:\Utils\openssl-3.5.4
|
||||||
|
# perl Configure VC-WIN64A --debug --prefix=C:\openssl_x64\
|
||||||
|
# nmake
|
||||||
|
# nmake install
|
||||||
|
####################################################################################################
|
||||||
|
|
||||||
if (Is64BitWinHost) {
|
$version = "3.5.4"
|
||||||
|
$url = "https://ci-files01-hki.ci.qt.io/input/openssl/openssl-$version-prebuild-windows-msvc2022-x64.zip"
|
||||||
# Install x64 bit version
|
$sha1 = "a028caa10ade0c1d39ad60d06201345908dfaaf2"
|
||||||
$architecture = "x64"
|
$installFolder = "C:\openssl_x64"
|
||||||
$installFolder = "C:\openssl"
|
$zip_package = "C:\Windows\Temp\$version.zip"
|
||||||
$externalUrl = "https://slproweb.com/download/Win64OpenSSL-$version.exe"
|
|
||||||
$internalUrl = "\\ci-files01-hki.ci.qt.io\provisioning\openssl\Win64OpenSSL-$version.exe"
|
|
||||||
$sha1 = "2fb73f233bc565939312782b8157bebc26a5e17b"
|
|
||||||
|
|
||||||
Write-Host "Fetching from URL ..."
|
|
||||||
Download $externalUrl $internalUrl $packagex64
|
|
||||||
Verify-Checksum $packagex64 $sha1
|
|
||||||
Write-Host "Installing $packagex64 ..."
|
|
||||||
Run-Executable "$packagex64" "/SP- /SILENT /LOG /SUPPRESSMSGBOXES /NORESTART /DIR=$installFolder"
|
|
||||||
|
|
||||||
Write-Host "Remove downloaded $packagex64 ..."
|
|
||||||
Remove "$packagex64"
|
|
||||||
|
|
||||||
Set-EnvironmentVariable "OPENSSL_CONF_x64" "$installFolder\bin\openssl.cfg"
|
|
||||||
Set-EnvironmentVariable "OPENSSL_INCLUDE_x64" "$installFolder\include"
|
|
||||||
Set-EnvironmentVariable "OPENSSL_LIB_x64" "$installFolder\lib"
|
|
||||||
Prepend-Path "$installFolder\bin"
|
|
||||||
}
|
|
||||||
|
|
||||||
# Install x86 bit version
|
|
||||||
$architecture = "x86"
|
|
||||||
|
|
||||||
if (Is64BitWinHost) {
|
|
||||||
$installFolder = "C:\openssl$architecture"
|
|
||||||
} else {
|
|
||||||
$installFolder = "C:\openssl"
|
|
||||||
}
|
|
||||||
|
|
||||||
$externalUrl = "https://slproweb.com/download/Win32OpenSSL-$version.exe"
|
|
||||||
$internalUrl = "\\ci-files01-hki.ci.qt.io\provisioning\openssl\Win32OpenSSL-$version.exe"
|
|
||||||
$sha1 = "ddead693fa279ad6b1baf123b3af51a9ef289dc1"
|
|
||||||
|
|
||||||
Write-Host "Fetching from URL ..."
|
Write-Host "Fetching from URL ..."
|
||||||
Download $externalUrl $internalUrl $packagex86
|
Download $url $url $zip_package
|
||||||
Verify-Checksum $packagex86 $sha1
|
Verify-Checksum $zip_package $sha1
|
||||||
Write-Host "Installing $packagex86 ..."
|
Extract-7Zip $zip_package C:\
|
||||||
Run-Executable "$packagex86" "/SP- /SILENT /LOG /SUPPRESSMSGBOXES /NORESTART /DIR=$installFolder"
|
Remove $zip_package
|
||||||
|
|
||||||
Write-Host "Remove downloaded $packagex86 ..."
|
Set-EnvironmentVariable "OPENSSL_ROOT_DIR_x64" "$installFolder"
|
||||||
Remove "$packagex86"
|
Set-EnvironmentVariable "OPENSSL_INCLUDE_x64" "$installFolder\include"
|
||||||
|
Set-EnvironmentVariable "OPENSSL_LIB_x64" "$installFolder\lib"
|
||||||
|
|
||||||
Set-EnvironmentVariable "OPENSSL_CONF_x86" "$installFolder\bin\openssl.cfg"
|
# Set envvars for builds in provisoning e.g. grpc
|
||||||
Set-EnvironmentVariable "OPENSSL_INCLUDE_x86" "$installFolder\include"
|
Set-EnvironmentVariable "OPENSSL_ROOT_DIR" "$installFolder"
|
||||||
Set-EnvironmentVariable "OPENSSL_LIB_x86" "$installFolder\lib"
|
Set-EnvironmentVariable "OPENSSL_INCLUDE" "$installFolder\include"
|
||||||
|
Set-EnvironmentVariable "OPENSSL_LIB" "$installFolder\lib"
|
||||||
|
|
||||||
|
Prepend-Path "$installFolder\bin"
|
||||||
|
|
||||||
# Store version information to ~/versions.txt, which is used to print version information to provision log.
|
# Store version information to ~/versions.txt, which is used to print version information to provision log.
|
||||||
Write-Output "OpenSSL = $version" >> ~/versions.txt
|
Write-Output "OpenSSL x64= $version" >> ~/versions.txt
|
||||||
|
|||||||
@@ -1,52 +0,0 @@
|
|||||||
# Copyright (C) 2021 The Qt Company Ltd.
|
|
||||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
|
||||||
|
|
||||||
. "$PSScriptRoot\helpers.ps1"
|
|
||||||
|
|
||||||
# This script will pre-installed squish package for Windows.
|
|
||||||
# Squish is need by Release Test Automation (RTA)
|
|
||||||
|
|
||||||
$version = "8.1.0"
|
|
||||||
$qtBranch = "68x"
|
|
||||||
$targetDir = "C:\Utils\squish"
|
|
||||||
$squishPackage = "C:\Utils\rta_squish"
|
|
||||||
$squishUrl = "\\ci-files01-hki.ci.qt.io\provisioning\squish\jenkins_build\stable"
|
|
||||||
$licenseBranch="squish_license"
|
|
||||||
$licenseUrl = "\\ci-files01-hki.ci.qt.io\provisioning\squish\coin\$licenseBranch"
|
|
||||||
$testSuiteUrl="\\ci-files01-hki.ci.qt.io\provisioning\squish\coin\suite_test_squish"
|
|
||||||
|
|
||||||
# Squish license
|
|
||||||
$licensePackage = ".squish-license"
|
|
||||||
|
|
||||||
Write-Host "Installing Squish license to home directory"
|
|
||||||
Copy-Item $licenseUrl\$licensePackage ~\$licensePackage
|
|
||||||
|
|
||||||
if (Is64BitWinHost) {
|
|
||||||
$arch = "x64"
|
|
||||||
} else {
|
|
||||||
$arch = "x86"
|
|
||||||
}
|
|
||||||
|
|
||||||
$OSVersion = (get-itemproperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion" -Name ProductName).ProductName
|
|
||||||
|
|
||||||
if (($OSVersion -eq "Windows 10 Enterprise") -or ($OSVersion -eq "Windows 10 Pro")) {
|
|
||||||
# In Windows 11 case $OSVersion is 'Windows 10 Pro'
|
|
||||||
$winVersion = "win10"
|
|
||||||
if (Is64BitWinHost) {
|
|
||||||
$sha1 = "e7497b925b9a0aa17628344dbdacd6b3acd41c3b"
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
$winVersion = "n/a"
|
|
||||||
}
|
|
||||||
$squishArchive = "prebuild-squish-$version-$qtBranch-$winVersion-$arch.zip"
|
|
||||||
|
|
||||||
Copy-Item "$squishUrl\$squishArchive" "C:\Utils"
|
|
||||||
Copy-Item -Recurse "$testSuiteUrl" "C:\Utils"
|
|
||||||
Verify-Checksum "C:\Utils\$squishArchive" $sha1
|
|
||||||
Extract-7Zip "C:\Utils\$squishArchive" "C:\Utils"
|
|
||||||
|
|
||||||
Remove-Item "C:\Utils\prebuild*"
|
|
||||||
|
|
||||||
Write-Host "Verifying Squish Installation for following targets:"
|
|
||||||
get-childitem "$targetDir" -Filter squishrunner.exe -Recurse | % { $_.FullName }
|
|
||||||
get-childitem "$targetDir" -Filter squishrunner.exe -Recurse | % { if (cmd /c $_.FullName --testsuite "C:\Utils\suite_test_squish" |Select-String -Pattern "Squish test run successfully") { Write-Host "Squish tested successfully"} else { [Environment]::Exit(1) } }
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
{
|
|
||||||
"overrides": [
|
|
||||||
{
|
|
||||||
"name": "openssl",
|
|
||||||
"version": "3.0.7",
|
|
||||||
"port-version": 2
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"dependencies": [
|
|
||||||
"openssl",
|
|
||||||
"protobuf",
|
|
||||||
"grpc"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,20 +1,14 @@
|
|||||||
|
# Copyright (C) 2025 The Qt Company Ltd.
|
||||||
|
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||||
|
|
||||||
. "$PSScriptRoot\helpers.ps1"
|
. "$PSScriptRoot\helpers.ps1"
|
||||||
|
|
||||||
# This script installs Windows App SDK
|
# This script installs Windows App SDK
|
||||||
|
|
||||||
$script:nugetVersion = "v6.11.0"
|
|
||||||
$script:nugetPackage = "nuget_$nugetVersion.exe"
|
|
||||||
$script:packageRoot = "C:\Utils\WindowsAppSdk\"
|
$script:packageRoot = "C:\Utils\WindowsAppSdk\"
|
||||||
|
|
||||||
$script:cachedUrl = "\\ci-files01-hki.ci.qt.io\provisioning\windows\nuget\$nugetPackage"
|
$script:package_path = [System.Environment]::GetEnvironmentVariable('NUGET_EXE_PATH', [System.EnvironmentVariableTarget]::Machine)
|
||||||
$script:officialUrl = "https://dist.nuget.org/win-x86-commandline/$nugetVersion/nuget.exe"
|
|
||||||
$script:sdkChecksumSha1 = "5443887cfb5283da5021388d146ebb5febdc82e9"
|
|
||||||
$script:package_path = "$packageRoot\\$nugetPackage"
|
|
||||||
|
|
||||||
New-Item -ItemType Directory -Path "$packageRoot"
|
|
||||||
Download $officialUrl $cachedUrl $package_path
|
|
||||||
Verify-Checksum $package_path $sdkChecksumSha1 sha1
|
|
||||||
Write-Host "Installing Nuget"
|
|
||||||
Run-Executable "$package_path" "install Microsoft.WindowsAppSDK -OutputDirectory $packageRoot"
|
Run-Executable "$package_path" "install Microsoft.WindowsAppSDK -OutputDirectory $packageRoot"
|
||||||
|
|
||||||
$script:cpuarch = Get-CpuArchitecture
|
$script:cpuarch = Get-CpuArchitecture
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user