Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added environment variable to override WebRTC ICE servers. #1769

Open
wants to merge 22 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
dfea8da
Added environment variable to override WebRTC ICE servers.
namark Mar 14, 2024
876c90c
Disabled verbose WebRTC logging.
namark Mar 21, 2024
bb74c73
Rudimentary debug logging levels for WebRTC data channels.
namark Mar 27, 2024
8c198d1
Removed nsis override in GHA windows PR build.
namark May 25, 2024
c6da280
Updated bootstrapped vcpkg to latest release.
namark May 25, 2024
34cfcaa
Temporarily disabled installer logs in GHA windows PR build.
namark May 25, 2024
6d9e8de
Updated spirv-tools vcpkg port to latest release.
namark May 25, 2024
9d520ea
Downgraded spirv-tools vcpkg port.
namark May 25, 2024
e31804e
spirv-tools port form latest vcpkg release.
namark May 26, 2024
c52f25d
Fixed new spirv-tools vcpkg port skipping executables.
namark May 26, 2024
70fc188
These were important.
namark May 26, 2024
2077b19
Restored installer log output step in GHA windows PR build.
namark May 26, 2024
35b419a
Downgrade NSIS in GHA windows PR build.
namark May 27, 2024
7121ef0
Downgrade NSIS in GHA windows master build.
namark May 27, 2024
9699b7e
Merge branch 'gha-windows-remove-nsis-override' into webrtc_ice_serve…
namark May 27, 2024
c970360
Disabled WebRTC debug logs.
namark May 27, 2024
7a70320
Updated glslang and spirv-corss vcpkg ports.
namark May 28, 2024
9445625
Merge branch 'gha-windows-remove-nsis-override' into webrtc_ice_serve…
namark May 28, 2024
2ea74e9
Fixed shadergen script on Windows.
namark May 29, 2024
68d7ed5
Fixed shadergen script on Windows.
namark May 29, 2024
13267b3
Fixed glslang vcpkg port on Windows.
namark May 29, 2024
3e78fcd
Merge branch 'gha-windows-remove-nsis-override' into webrtc_ice_serve…
namark May 29, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/master_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -189,7 +189,7 @@ jobs:
- name: Override NSIS
shell: pwsh
if: startsWith(matrix.os, 'windows')
run: choco install nsis --version=3.06.1
run: choco install nsis --version=3.06.1 --allow-downgrade

- name: Install Python modules
if: startsWith(matrix.os, 'windows') || startsWith(matrix.os, 'macOS')
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/pr_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -212,7 +212,7 @@ jobs:
- name: Override NSIS
shell: pwsh
if: startsWith(matrix.os, 'windows')
run: choco install nsis --version=3.06.1
run: choco install nsis --version=3.06.1 --allow-downgrade

- name: Create Build Environment
shell: bash
Expand Down
3 changes: 0 additions & 3 deletions cmake/ports/glslang/CONTROL

This file was deleted.

35 changes: 0 additions & 35 deletions cmake/ports/glslang/copyright

This file was deleted.

63 changes: 46 additions & 17 deletions cmake/ports/glslang/portfile.cmake
Original file line number Diff line number Diff line change
@@ -1,26 +1,55 @@
include(vcpkg_common_functions)

vcpkg_check_linkage(ONLY_STATIC_LIBRARY)

vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO KhronosGroup/glslang
REF untagged-048c4dbc7f021224a933
SHA512 e3097dd2db88320982d7da1ddce138839daf3251935909c3998a114aeadd408760b26b2d7c7ee547fb0519895ac1853a45c23df2eecf61135849b080252e9dec
HEAD_REF master
OUT_SOURCE_PATH SOURCE_PATH
REPO KhronosGroup/glslang
REF "${VERSION}"
SHA512 45ec1a23a390319b9270761cf8befb832ac8b4bc215b211c41a543553a97e5ccf17c134c34d8fdbed6efe887a9a7c2f0a955d1bfe1add9e04cc3e95b12e1973a
HEAD_REF master
)

vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
FEATURES
opt ENABLE_OPT
opt ALLOW_EXTERNAL_SPIRV_TOOLS
tools ENABLE_GLSLANG_BINARIES
rtti ENABLE_RTTI
)

if (ENABLE_GLSLANG_BINARIES)
vcpkg_find_acquire_program(PYTHON3)
get_filename_component(PYTHON_PATH ${PYTHON3} DIRECTORY)
vcpkg_add_to_path("${PYTHON_PATH}")
endif ()

vcpkg_cmake_configure(
SOURCE_PATH "${SOURCE_PATH}"
OPTIONS
-DBUILD_EXTERNAL=OFF
-DGLSLANG_TESTS=OFF
${FEATURE_OPTIONS}
)

vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
OPTIONS -DCMAKE_DEBUG_POSTFIX=d
vcpkg_cmake_install()
vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/glslang DO_NOT_DELETE_PARENT_CONFIG_PATH)
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/${PORT}/glslang-config.cmake"
[[${PACKAGE_PREFIX_DIR}/lib/cmake/glslang/glslang-targets.cmake]]
[[${CMAKE_CURRENT_LIST_DIR}/glslang-targets.cmake]]
)
file(REMOVE_RECURSE CONFIG_PATH "${CURRENT_PACKAGES_DIR}/lib/cmake" "${CURRENT_PACKAGES_DIR}/debug/lib/cmake")

if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/glslang/Public/ShaderLang.h" "ifdef GLSLANG_IS_SHARED_LIBRARY" "if 1")
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/glslang/Include/glslang_c_interface.h" "ifdef GLSLANG_IS_SHARED_LIBRARY" "if 1")
endif()

vcpkg_copy_pdbs()

vcpkg_install_cmake()
if (ENABLE_GLSLANG_BINARIES)
vcpkg_copy_tools(TOOL_NAMES glslang spirv-remap AUTO_CLEAN)
endif ()

file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
file(RENAME "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/tools")
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/bin")
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")

# Handle copyright
file(COPY ${CMAKE_CURRENT_LIST_DIR}/copyright DESTINATION ${CURRENT_PACKAGES_DIR}/share/glslang)
file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE.txt")
4 changes: 4 additions & 0 deletions cmake/ports/glslang/usage
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
glslang provides CMake targets:

find_package(glslang CONFIG REQUIRED)
target_link_libraries(main PRIVATE glslang::glslang glslang::glslang-default-resource-limits glslang::SPIRV glslang::SPVRemapper)
32 changes: 32 additions & 0 deletions cmake/ports/glslang/vcpkg.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
{
"name": "glslang",
"version": "14.0.0",
"description": "Khronos-reference front end for GLSL/ESSL, partial front end for HLSL, and a SPIR-V generator.",
"homepage": "https://github.com/KhronosGroup/glslang",
"license": "Apache-2.0 AND BSD-3-Clause AND MIT AND GPL-3.0-or-later",
"dependencies": [
{
"name": "vcpkg-cmake",
"host": true
},
{
"name": "vcpkg-cmake-config",
"host": true
}
],
"features": {
"opt": {
"description": "Build with spirv-opt capability",
"dependencies": [
"spirv-tools"
]
},
"rtti": {
"description": "Build with dynamic typeinfo"
},
"tools": {
"description": "Build the glslangValidator and spirv-remap binaries",
"supports": "!ios"
}
}
}
2 changes: 1 addition & 1 deletion cmake/ports/hifi-host-tools/CONTROL
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Source: hifi-host-tools
Version: 0
Description: Host build system compatible tools for building High Fidelity applications
Build-Depends: hifi-scribe, glslang, spirv-cross, spirv-tools
Build-Depends: hifi-scribe, glslang[opt,tools], spirv-cross, spirv-tools
3 changes: 0 additions & 3 deletions cmake/ports/spirv-cross/CONTROL

This file was deleted.

49 changes: 31 additions & 18 deletions cmake/ports/spirv-cross/portfile.cmake
Original file line number Diff line number Diff line change
@@ -1,33 +1,46 @@
include(vcpkg_common_functions)

vcpkg_check_linkage(ONLY_STATIC_LIBRARY)

vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO KhronosGroup/SPIRV-Cross
REF 2018-08-07
SHA512 1ac6ee6b2864d950199d4e856ae1576f9435827501baa5d53821a973cd68aaa03ec428094bf74c570784997baac5b2e3802ddc7f02844e2ee546741fa726bf91
REF vulkan-sdk-${VERSION}
SHA512 56172ce2a766ea83a04701a3253a17fb611c66e25303448d7ca34d507b0476f4d14420021066b382ae6f35a1b1ee4b35443e2e0475b468552f3bd1ad3413e3af
HEAD_REF master
)

vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
OPTIONS -DSPIRV_CROSS_EXCEPTIONS_TO_ASSERTIONS=OFF
)
if(VCPKG_TARGET_IS_IOS)
message(STATUS "Using iOS triplet. Executables won't be created...")
set(BUILD_CLI OFF)
else()
set(BUILD_CLI ON)
endif()

vcpkg_install_cmake()
vcpkg_cmake_configure(
SOURCE_PATH "${SOURCE_PATH}"
OPTIONS
-DSPIRV_CROSS_EXCEPTIONS_TO_ASSERTIONS=OFF
-DSPIRV_CROSS_CLI=${BUILD_CLI}
-DSPIRV_CROSS_SKIP_INSTALL=OFF
-DSPIRV_CROSS_ENABLE_C_API=ON
)
vcpkg_cmake_install()
vcpkg_copy_pdbs()
vcpkg_fixup_pkgconfig()

foreach(COMPONENT core cpp glsl hlsl msl reflect util)
vcpkg_fixup_cmake_targets(CONFIG_PATH share/spirv_cross_${COMPONENT}/cmake TARGET_PATH share/spirv_cross_${COMPONENT})
foreach(COMPONENT core c cpp glsl hlsl msl reflect util)
vcpkg_cmake_config_fixup(CONFIG_PATH share/spirv_cross_${COMPONENT}/cmake PACKAGE_NAME spirv_cross_${COMPONENT})
endforeach()

if(BUILD_CLI)
vcpkg_copy_tools(TOOL_NAMES spirv-cross AUTO_CLEAN)
endif()

file(REMOVE_RECURSE
"${CURRENT_PACKAGES_DIR}/debug/include"
"${CURRENT_PACKAGES_DIR}/debug/share"
)

vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE")

file(GLOB EXES "${CURRENT_PACKAGES_DIR}/bin/*")
file(COPY ${EXES} DESTINATION ${CURRENT_PACKAGES_DIR}/tools)

# cleanup
configure_file(${SOURCE_PATH}/LICENSE ${CURRENT_PACKAGES_DIR}/share/spirv-cross/copyright COPYONLY)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin)
17 changes: 17 additions & 0 deletions cmake/ports/spirv-cross/vcpkg.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{
"name": "spirv-cross",
"version": "1.3.280.0",
"description": "SPIRV-Cross is a practical tool and library for performing reflection on SPIR-V and disassembling SPIR-V back to high level languages.",
"homepage": "https://github.com/KhronosGroup/SPIRV-Cross",
"dependencies": [
"spirv-headers",
{
"name": "vcpkg-cmake",
"host": true
},
{
"name": "vcpkg-cmake-config",
"host": true
}
]
}
20 changes: 20 additions & 0 deletions cmake/ports/spirv-headers/portfile.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@

vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO KhronosGroup/SPIRV-Headers
REF "vulkan-sdk-${VERSION}"
SHA512 6c20022df343e900793370cb30ccea6f4e64f42f4f7c495a0fbb9d3c5fcf3c15a173b93fe883e407d40f8c6dd9d0a6853d8a6907e3df5aa61ad48ae8485019e8
HEAD_REF master
)

vcpkg_cmake_configure(
SOURCE_PATH "${SOURCE_PATH}"
)
vcpkg_cmake_install()
vcpkg_copy_pdbs()

file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug")

vcpkg_fixup_pkgconfig()

vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE")
16 changes: 16 additions & 0 deletions cmake/ports/spirv-headers/vcpkg.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
{
"name": "spirv-headers",
"version": "1.3.280.0",
"description": "Machine-readable files for the SPIR-V Registry",
"homepage": "https://github.com/KhronosGroup/SPIRV-Headers",
"dependencies": [
{
"name": "vcpkg-cmake",
"host": true
},
{
"name": "vcpkg-cmake-config",
"host": true
}
]
}
3 changes: 0 additions & 3 deletions cmake/ports/spirv-tools/CONTROL

This file was deleted.

13 changes: 13 additions & 0 deletions cmake/ports/spirv-tools/cmake-config-dir.diff
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 75830b44..367fe889 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -270,7 +270,7 @@ else()
endif()

if(ENABLE_SPIRV_TOOLS_INSTALL)
- if(WIN32 AND NOT MINGW)
+ if(0)
macro(spvtools_config_package_dir TARGET PATH)
set(${PATH} ${TARGET}/cmake)
endmacro()
18 changes: 18 additions & 0 deletions cmake/ports/spirv-tools/fix-tool-deps.diff
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 75830b44..9c9e7ba8 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -281,8 +281,13 @@ if(ENABLE_SPIRV_TOOLS_INSTALL)
endif()

macro(spvtools_generate_config_file TARGET)
+ set(sgcf_find_extra "")
+ if(NOT "${TARGET}" STREQUAL "SPIRV-Tools-opt")
+ set(sgcf_find_extra "find_dependency(SPIRV-Tools-opt)\n")
+ endif()
file(WRITE ${CMAKE_BINARY_DIR}/${TARGET}Config.cmake
"include(CMakeFindDependencyMacro)\n"
+ ${sgcf_find_extra}
"find_dependency(${SPIRV_TOOLS})\n"
"include(\${CMAKE_CURRENT_LIST_DIR}/${TARGET}Targets.cmake)\n"
"set(${TARGET}_LIBRARIES ${TARGET})\n"
Loading
Loading