diff --git a/doc/Building.md b/doc/Building.md index 5a4d66be6a..831e5502bc 100644 --- a/doc/Building.md +++ b/doc/Building.md @@ -95,7 +95,6 @@ Read the [Fuzzer](Fuzzer.md) documentation for detailed information. Builds a Xcode project for the mediasoup-worker subproject. - ### `make lint` Validates mediasoup-worker C++ files using [clang-format](https://clang.llvm.org/docs/ClangFormat.html) and rules in `worker/.clang-format`. diff --git a/worker/Makefile b/worker/Makefile index ec5607e8ff..5a6aecad2b 100644 --- a/worker/Makefile +++ b/worker/Makefile @@ -2,10 +2,13 @@ # make tasks for mediasoup-worker. # -# Best effort to get Python 2 executable and also allow custom PYTHON -# environment variable set by the user. -PYTHON ?= $(shell command -v python2 2> /dev/null || echo python) +PYTHON ?= python +LCOV = ./deps/lcov/bin/lcov GULP = ../node_modules/.bin/gulp +BEAR ?= bear +JQ ?= jq +SED ?= sed +DOCKER ?= docker MEDIASOUP_BUILDTYPE ?= Release .PHONY: \ @@ -22,7 +25,7 @@ test: ifeq ($(MEDIASOUP_WORKER_BIN),) $(PYTHON) ./scripts/configure.py -R mediasoup-worker-test $(MAKE) BUILDTYPE=$(MEDIASOUP_BUILDTYPE) -C out - ./deps/lcov/bin/lcov --directory ./ --zerocounters + $(LCOV) --directory ./ --zerocounters ./out/$(MEDIASOUP_BUILDTYPE)/mediasoup-worker-test --invisibles --use-colour=yes $(MEDIASOUP_TEST_TAGS) endif @@ -43,13 +46,13 @@ format: bear: $(MAKE) clean - bear -o compile_commands_template.tmp.json $(MAKE) - jq 'del(.[] | select(.file == "$(PWD)/src/Utils/IP.cpp"))' compile_commands_template.tmp.json > compile_commands_template.json - rm compile_commands_template.tmp.json - sed -i "s|$(PWD)|PATH|g" compile_commands_template.json + $(BEAR) -o compile_commands_template.tmp.json $(MAKE) + $(JQ) 'del(.[] | select(.file == "$(PWD)/src/Utils/IP.cpp"))' compile_commands_template.tmp.json > compile_commands_template.json + $(RM) -f compile_commands_template.tmp.json + $(SED) -i "s|$(PWD)|PATH|g" compile_commands_template.json tidy: - sed "s|PATH|$(PWD)|g" compile_commands_template.json > compile_commands.json + $(SED) "s|PATH|$(PWD)|g" compile_commands_template.json > compile_commands.json $(PYTHON) ./scripts/clang-tidy.py \ -clang-tidy-binary=../node_modules/.bin/clang-tidy \ -clang-apply-replacements-binary=../node_modules/.bin/clang-apply-replacements \ @@ -81,13 +84,13 @@ clean-all: docker-build: ifeq ($(DOCKER_NO_CACHE),true) - docker build -f Dockerfile --no-cache --tag mediasoup/docker:latest . + $(DOCKER) build -f Dockerfile --no-cache --tag mediasoup/docker:latest . else - docker build -f Dockerfile --tag mediasoup/docker:latest . + $(DOCKER) build -f Dockerfile --tag mediasoup/docker:latest . endif docker-run: - docker run \ + $(DOCKER) run \ --name=mediasoupDocker -it --rm \ --cap-add SYS_PTRACE \ -v $(shell pwd)/../:/mediasoup \ diff --git a/worker/deps/gyp/pylib/gyp/xcode_emulation.py b/worker/deps/gyp/pylib/gyp/xcode_emulation.py index 4c875de3a0..ee03816d32 100644 --- a/worker/deps/gyp/pylib/gyp/xcode_emulation.py +++ b/worker/deps/gyp/pylib/gyp/xcode_emulation.py @@ -526,7 +526,7 @@ def _XcodeSdkPath(self, sdk_root): XcodeSettings._sdk_path_cache[sdk_root] = sdk_path if sdk_root: XcodeSettings._sdk_root_cache[sdk_path] = sdk_root - return XcodeSettings._sdk_path_cache[sdk_root] + return XcodeSettings._sdk_path_cache[sdk_root].decode() def _AppendPlatformVersionMinFlags(self, lst): self._Appendf(lst, 'MACOSX_DEPLOYMENT_TARGET', '-mmacosx-version-min=%s') @@ -1413,7 +1413,7 @@ def XcodeVersion(): version = version_list[0] build = version_list[-1] # Be careful to convert "4.2" to "0420": - version = version.split()[-1].replace('.', '') + version = version.split()[-1].decode().replace('.', '') version = (version + '0' * (3 - len(version))).zfill(4) if build: build = build.split()[-1] @@ -1450,9 +1450,9 @@ def GetStdout(cmdlist): job = subprocess.Popen(cmdlist, stdout=subprocess.PIPE) out = job.communicate()[0] if job.returncode != 0: - sys.stderr.write(out + '\n') + sys.stderr.write(out + b'\n') raise GypError('Error %d running %s' % (job.returncode, cmdlist[0])) - return out.rstrip('\n') + return out.rstrip(b'\n') def MergeGlobalXcodeSettingsToSpec(global_dict, spec): diff --git a/worker/scripts/configure.py b/worker/scripts/configure.py index f75035e7f5..962186b0d7 100755 --- a/worker/scripts/configure.py +++ b/worker/scripts/configure.py @@ -10,11 +10,6 @@ import subprocess import sys -version = sys.version_info[0] - -if version != 2: - raise RuntimeError('gyp requires Python 2, but this is Python ' + str(version) + ', ensure your python2 or python command points to the Python 2 executable') - CC = os.environ.get('CC', 'cc') script_dir = os.path.dirname(__file__) root = os.path.normpath(os.path.join(script_dir, '..'))