From nobody Tue Feb 01 16:32:17 2022 X-Original-To: dev-commits-ports-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 38C4419A9A71; Tue, 1 Feb 2022 16:32:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Jp9Sj10tFz4cNx; Tue, 1 Feb 2022 16:32:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1643733141; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=j9LtMtVh/Bg7r/qxI02PiWZRnCEjlQBFI8C6lWTM990=; b=LZr6MQfz1TCleq1qnjC0FnQ7LRl6oMoDaqmoDNlwgTE/o49JPJfXDgwRRpSpy/m7MqFD// MxtvA1v/uapNxZ0xyIA3QXzAFIuPhlwEq+VDm4KEexq1Rf3UcCrzYFqABZ9NXaThvNYN33 c2BMOvBHZl/6YAt5cTtVaID/BEqaYRpMmrXLys0lWWoOIMGQB+0J3tTP+c5zSNJ3sxM1F5 TETbdPxlyCOzFeP4GmOVZ6WD4vP3Zmlrn61JgqddcNC484q9HDGxK1AfL1AJLvsj+KS5VP gO13Jmyjmg5qMSTaVpUYKNAgeqv2QGOVJpwyrHw+k2JTdIdiNBubB7BhYq3LDA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 026E8143A4; Tue, 1 Feb 2022 16:32:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 211GWKBC045127; Tue, 1 Feb 2022 16:32:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 211GWHGN045119; Tue, 1 Feb 2022 16:32:17 GMT (envelope-from git) Date: Tue, 1 Feb 2022 16:32:17 GMT Message-Id: <202202011632.211GWHGN045119@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Christoph Moench-Tegeder Subject: git: a012dd67b23d - main - www/firefox: update to 97.0 (rc1) List-Id: Commit messages for all branches of the ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-all@freebsd.org X-BeenThere: dev-commits-ports-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cmt X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a012dd67b23d35b6a44c8b8b3ecaf0f750bb9238 Auto-Submitted: auto-generated ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1643733141; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=j9LtMtVh/Bg7r/qxI02PiWZRnCEjlQBFI8C6lWTM990=; b=Anb6p+ZKFVdflaebbmbNjWsNZOxpSiuGWnL3BgGsjlR055Fheg7du0bcOpuXvCsk7mnDH0 zNiCBP/5i+WpZuS9W7ovBjRk71b4ZFzkpKEXIlhNPT5zoAs2cAiunLRBkahW95+vcJNoDj PGGvCe/Ome8jDp2nnCOJjJW3t3ZLYHnMhRQ2WIXgJe/0/M4zaEet0SuaGvGmq1NKr7BVfU th6xe++rqIWL+BJaigwidYLY6b5I0kGp8s5IVwMYoC+MERovFErnR99D+VN5Z9WeVAKur3 UOEihdAl6LGRiCL7SGlOtm36RmxAHluVY+B//a4rJ5NmNBXdD5E/UCh8bvuHfQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1643733141; a=rsa-sha256; cv=none; b=pZa8YqTaQCv+UGC86lfAMqM9jq18dZV9ihOVqCPrNGAzIBpa0UpojG81pd6ErKdYri9zeF p0O8tXkjoBdywNDIz4JM9nZUYgOCXquP8lZApt9Zqf648KvhWv3EFP1s7mrrtK4C6OXXSU W1s4LLxqY13CsDKwQyFHbjvDNlxy4L/tyGJBYD2gP1HCylkI2GgnvkltzVxACLSWj/i1+J CYFOSAerjvS24AqteZiFPlPtkUKCjCn/GmaTZDmmt4ZIQ19LomHtUA8acFLR1DSEvoaG4Y EMYulKn1b2vx4SRZy7bDqT0LhiXjvdN3BrXDXdi+1mH/jhJoVcX7dsvcZ4fsCQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by cmt: URL: https://cgit.FreeBSD.org/ports/commit/?id=a012dd67b23d35b6a44c8b8b3ecaf0f750bb9238 commit a012dd67b23d35b6a44c8b8b3ecaf0f750bb9238 Author: Evgeniy Khramtsov AuthorDate: 2022-02-01 00:30:08 +0000 Commit: Christoph Moench-Tegeder CommitDate: 2022-02-01 16:31:51 +0000 www/firefox: update to 97.0 (rc1) Release Notes (soon): https://www.mozilla.org/en-US/firefox/97.0/releasenotes/ PR: 261642 --- Mk/bsd.gecko.mk | 3 + www/firefox/Makefile | 4 +- www/firefox/distinfo | 6 +- www/firefox/files/patch-bug1640982 | 2 - www/firefox/files/patch-bug1664115 | 4 +- www/firefox/files/patch-bug1749604 | 249 + www/firefox/files/patch-bug847568 | 14 +- www/firefox/files/patch-libwebrtc-generate | 192 + www/firefox/files/patch-libwebrtc-generated | 19756 ++ .../files/patch-media_libcubeb_src_cubeb__oss.c | 385 +- www/firefox/files/patch-webrtc | 253107 ------------------ 11 files changed, 20249 insertions(+), 253473 deletions(-) diff --git a/Mk/bsd.gecko.mk b/Mk/bsd.gecko.mk index 0613d70a0272..380c1df518e1 100644 --- a/Mk/bsd.gecko.mk +++ b/Mk/bsd.gecko.mk @@ -167,6 +167,9 @@ pixman_MOZ_OPTIONS= --enable-system-pixman png_LIB_DEPENDS= libpng.so:graphics/png png_MOZ_OPTIONS= --with-system-png=${LOCALBASE} +.if ${MOZILLA_VER:R:R} >= 97 +png_MOZ_OPTIONS= --with-system-png +.endif sqlite_LIB_DEPENDS= libsqlite3.so:databases/sqlite3 sqlite_MOZ_OPTIONS= --enable-system-sqlite diff --git a/www/firefox/Makefile b/www/firefox/Makefile index 7b574b3473d5..6cef007bc48e 100644 --- a/www/firefox/Makefile +++ b/www/firefox/Makefile @@ -1,7 +1,7 @@ # Created by: Alan Eldridge PORTNAME= firefox -DISTVERSION= 96.0.3 +DISTVERSION= 97.0 PORTEPOCH= 2 CATEGORIES= www MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \ @@ -12,7 +12,7 @@ MAINTAINER= gecko@FreeBSD.org COMMENT= Web browser based on the browser portion of Mozilla BUILD_DEPENDS= nspr>=4.32:devel/nspr \ - nss>=3.73:security/nss \ + nss>=3.74:security/nss \ icu>=70.1:devel/icu \ libevent>=2.1.8:devel/libevent \ harfbuzz>=2.9.1:print/harfbuzz \ diff --git a/www/firefox/distinfo b/www/firefox/distinfo index 862c1dda9361..5f757d0d0e7f 100644 --- a/www/firefox/distinfo +++ b/www/firefox/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1643336011 -SHA256 (firefox-96.0.3.source.tar.xz) = 1a741d6fcf20e6833a90169f41d29141ea4610f58b848e06091a683af6304dea -SIZE (firefox-96.0.3.source.tar.xz) = 406721708 +TIMESTAMP = 1643713139 +SHA256 (firefox-97.0.source.tar.xz) = 7a98c83d552ffde2b858fa288778c6d44d0077c3a9488293280184ee856420ee +SIZE (firefox-97.0.source.tar.xz) = 487369236 diff --git a/www/firefox/files/patch-bug1640982 b/www/firefox/files/patch-bug1640982 index 15789b617616..5ad0fbad6c72 100644 --- a/www/firefox/files/patch-bug1640982 +++ b/www/firefox/files/patch-bug1640982 @@ -2,8 +2,6 @@ Unbreak build with Rust 1.45.0 error: options `-C embed-bitcode=no` and `-C lto` are incompatible ---- config/makefiles/rust.mk.orig 2020-05-12 09:36:22 UTC - diff --git config/makefiles/rust.mk config/makefiles/rust.mk index 75570d3..94ec33f 100644 --- config/makefiles/rust.mk diff --git a/www/firefox/files/patch-bug1664115 b/www/firefox/files/patch-bug1664115 index 8a6e82d59b1f..86898c765f08 100644 --- a/www/firefox/files/patch-bug1664115 +++ b/www/firefox/files/patch-bug1664115 @@ -10,10 +10,10 @@ created by libcubeb. #include "Tracing.h" #include "webaudio/blink/DenormalDisabler.h" -#include "AudioThreadRegistry.h" + #include "mozilla/StaticPrefs_media.h" // Use abort() instead of exception in SoundTouch. - #define ST_NO_EXCEPTION_HANDLING 1 -@@ -140,9 +139,7 @@ +@@ -141,9 +140,7 @@ AudioStream::AudioStream(DataSource& aSource) mTimeStretcher(nullptr), mState(INITIALIZED), mDataSource(aSource), diff --git a/www/firefox/files/patch-bug1749604 b/www/firefox/files/patch-bug1749604 new file mode 100644 index 000000000000..a0195b8d00c9 --- /dev/null +++ b/www/firefox/files/patch-bug1749604 @@ -0,0 +1,249 @@ +https://bugzilla.mozilla.org/show_bug.cgi?id=1749604 +https://hg.mozilla.org/mozilla-central/rev/f6031b5927f5 +https://hg.mozilla.org/mozilla-central/rev/c7440a6eb545 +https://github.com/mozilla/gecko-dev/commit/e6f459cd77e3 +(Avoid ~13 GB clone of moz-libwebrtc for libwebrtc regen) +(To be dropped for 98) + +Updated README.md to reflect simplified setup for generation. +Updated generate-gn-build-files.sh: + - remove dependencies on MOZ_LIBWEBRTC environment variable + - add checking for GN environment variable +--- + +diff --git a/dom/media/webrtc/third_party_build/gn-configs/README.md b/dom/media/webrtc/third_party_build/gn-configs/README.md +index bc54ba183d016..09dea1ae87833 100644 +--- dom/media/webrtc/third_party_build/gn-configs/README.md ++++ dom/media/webrtc/third_party_build/gn-configs/README.md +@@ -1,9 +1,10 @@ + # Generate new gn json files and moz.build files for building libwebrtc in our tree + +-1. If generating on macOS for Apple Silicon (cross-compiling), make sure to have at least +-[Xcode 12.2](https://download.developer.apple.com/Developer_Tools/Xcode_12.2/Xcode_12.2.xip). ++1. If generating on macOS for Apple Silicon (cross-compiling), make sure to have ++ at least [Xcode 12.2](https://download.developer.apple.com/Developer_Tools/Xcode_12.2/Xcode_12.2.xip). + +- In addition the aarch64 Rust target will need to be installed via: `rustup target add aarch64-apple-darwin` ++ The aarch64 Rust target will need to be installed via: ++ `rustup target add aarch64-apple-darwin` + + 2. If generating on Windows 10, Visual Studio 2019 is required. Please follow + the install instructions from [here](https://firefox-source-docs.mozilla.org/setup/windows_build.html) +@@ -14,86 +15,85 @@ + - MSVC v142 - VS2019 C++ ARM64 build tools + + "Debugging Tools for Windows" is also required. +- - Under `Settings -> Apps` search for "Windows Software Development Kit" with the version +- number 10.0.19041.685. ++ - Under `Settings -> Apps` search for "Windows Software Development Kit" with ++ the version number 10.0.19041.685. + - select Modify (and allow the installer to modify) + - select Change and then click Next + - select "Debugging Tools for Windows" and then click Change. + +- And the aarch64 Rust target will need to be installed via: `rustup target add aarch64-pc-windows-msvc` ++ The aarch64 Rust target will need to be installed via: ++ `rustup target add aarch64-pc-windows-msvc` + +-3. See information in `third_party/libwebrtc/README.mozilla` for the proper revision of libwebrtc ++3. See information in `third_party/libwebrtc/README.mozilla` for the proper ++ revision of libwebrtc + + libwebrtc updated from commit https://github.com/mozilla/libwebrtc/archive/149d693483e9055f574d9d65b01fe75a186b654b.tar.gz on 2020-11-30T15:48:48.472088. + third_party updated from commit https://chromium.googlesource.com/chromium/src/third_party/+archive/5dc5a4a45df9592baa8e8c5f896006d9193d8e45.tar.gz on 2020-11-30T17:00:15.612630. + +- In our current case, the revision is `149d693483e9055f574d9d65b01fe75a186b654b` which +- corresponds to: ++ In our current case, the revision is `149d693483e9055f574d9d65b01fe75a186b654b` ++ which corresponds to: + + mozilla-modifications-rel86 + +-4. Clone Mozilla's version of libwebrtc from [libwebrtc](https://github.com/mozilla/libwebrtc) ++ This commit was made on `Thu Nov 19 14:14:00 2020`. + +- git clone https://github.com/mozilla/libwebrtc moz-libwebrtc +- export MOZ_LIBWEBRTC=`pwd`/moz-libwebrtc +- (cd moz-libwebrtc ; git checkout mozilla-modifications-rel86) ++4. Download a version of the `gn` executable that corresponds to ++ `Thu Nov 19 14:14:00 2020`. In our case, that is version `1889 (8fe02009)`. ++ ++ - [Win](https://chrome-infra-packages.appspot.com/p/gn/gn/windows-amd64/+/e_UmTHedzuu4zJ2gdpW8jrFFNnzIhThljx3jn3RMlVsC) ++ - [Linux](https://chrome-infra-packages.appspot.com/p/gn/gn/linux-amd64/+/bvBFKgehaepiKy_YhFnbiOpF38CK26N2OyE1R1jXof0C) ++ - [macOS](https://chrome-infra-packages.appspot.com/p/gn/gn/mac-amd64/+/nXvMRpyJhLhisAcnRmU5s9UZqovzMAhKAvWjax-swioC) + +- Note that branch was made on `Thu Nov 19 14:14:00 2020` ++ Find the downloaded `.zip` file, unzip and export the location of the ++ executable: + +-5. Clone `depot_tools` from [depot_tools](https://chromium.googlesource.com/chromium/tools/depot_tools.git) ++ unzip gn-mac-amd64.zip && export GN=`pwd`/gn ++ unzip gn-windows-amd64.zip && export GN=`pwd`/gn.exe ++ unzip gn-linux-amd64.zip && export GN=`pwd`/gn + +- git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git +- export DEPOT_TOOLS=`pwd`/depot_tools ++ On platforms that don't have pre-built `gn` executables, `ninja` and `gn` can ++ be easily built: + +- If generating files on Windows, the following steps must be completed +- from a traditional Windows Cmd prompt (cmd.exe) launched from the start +- menu or search bar. This allows `gclient` to properly bootstrap the +- required python setup. ++ git clone https://github.com/ninja-build/ninja.git ++ git clone https://gn.googlesource.com/gn ++ (cd gn && git checkout 8fe02009) ++ (cd ninja && ./configure.py --bootstrap) ++ (export NINJA=`pwd`/ninja/ninja ; cd gn && python build/gen.py && $NINJA -C out) ++ export GN=`pwd`/gn/out/gn + +- cd {depot_tools directory} +- set PATH=%CD%;%PATH% +- set DEPOT_TOOLS_WIN_TOOLCHAIN=0 +- set vs2019_install="c:\Program Files (x86)\Microsoft Visual Studio\2019\Community" +- gclient +- exit ++ On OpenBSD, a slightly newer version of `gn` is needed in order to build: + +- Now, we need to checkout a revision of `depot_tools` that corresponds to the date of +- our libwebrtc branch. The closest `depot_tools` commit to `Thu Nov 19 14:14:00 2020` is +- `e7d1862b155ac3ccbef72c4d70629b5c88ffcb32`. There is additional information on how to +- more automatically determine this [here](https://chromium.googlesource.com/chromium/src/+/master/docs/building_old_revisions.md). ++ (cd gn && git checkout 31f2bba8) + +- (cd depot_tools ; git checkout e7d1862b155ac3ccbef72c4d70629b5c88ffcb32 ) ++5. Clone `depot_tools` from [depot_tools](https://chromium.googlesource.com/chromium/tools/depot_tools.git) + +-6. It is necessary to let `depot_tools` pull information into the `libwebrtc` tree as well. This can take a while. ++ git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git ++ export DEPOT_TOOLS=`pwd`/depot_tools + +- (cd moz-libwebrtc ; \ +- export PATH=$DEPOT_TOOLS:$PATH ; \ +- export DEPOT_TOOLS_UPDATE=0 ; \ +- export DEPOT_TOOLS_WIN_TOOLCHAIN=0 ; \ +- gclient config https://github.com/mozilla/libwebrtc && \ +- gclient sync -D --force --reset --with_branch_heads \ +- ) +- +- Note that if one uses `gclient` sync with a different output directory `$MOZ_LIBWEBRTC_GIT` +- must be set to the original clone directory, and `$MOZ_LIBWEBRTC` needs to be set to the +- directory created by `gclient sync`. ++ Now, we need to checkout a revision of `depot_tools` that corresponds to the ++ date of our libwebrtc branch. The closest `depot_tools` commit to ++ `Thu Nov 19 14:14:00 2020` is `e7d1862b155ac3ccbef72c4d70629b5c88ffcb32`. ++ There is additional information on how to more automatically determine this ++ [here](https://chromium.googlesource.com/chromium/src/+/master/docs/building_old_revisions.md). ++ ++ (cd depot_tools ; git checkout e7d1862b155ac3ccbef72c4d70629b5c88ffcb32 ) + +-7. Now it is time to generate the build files. The script should be run from the top +-directory of our firefox tree. ++6. It is time to generate the build files. The script should be run from the ++ top directory of our firefox tree. + +- ./dom/media/webrtc/third_party_build/gn-configs/generate-gn-build-files.sh ++ bash ./dom/media/webrtc/third_party_build/gn-configs/generate-gn-build-files.sh + +- Debugging the generate script itself may prove useful, and one can do this by setting the DEBUG_GEN environment +- variable to a non-empty value. This will print everything that the script executes. ++ Debugging the generate script itself may prove useful, and one can do this by ++ setting the DEBUG_GEN environment variable to a non-empty value. This will ++ print everything that the script executes. + +-8. Checkin all the generated/modified files and try your build! ++7. Checkin all the generated/modified files and try your build! + + # Adding new configurations to the build + +-- Each new platform/architecture will require 2 new mozconfig files, +- one for the debug build and one for the non-debug build. The +- filenames follow the same pattern as the generated json files, +- `a-b-c-d.mozconfig` where: ++- Each new platform/architecture will require 2 new mozconfig files, one for the ++ debug build and one for the non-debug build. The filenames follow the same ++ pattern as the generated json files, `a-b-c-d.mozconfig` where: + - a = generating cpu (example: x64) + - b = debug (True / False) + - c = target cpu (example: x64 / arm64) +@@ -103,9 +103,9 @@ directory of our firefox tree. + - The new configs must be added to the appropriate platform section in + `generate-gn-build-files.sh`. + +-**Note:** when adding new mozconfig files, especially for linux/android +-configs, it is important to include the `ac_add_options +---enable-bootstrap`. This ensures switching archtectures for +-"cross-compiled" generation works properly. For example, when generating +-`x86` or `arm64` linux json files, it would be necessary to install additional +-libraries in order for the configure step to complete. ++**Note:** when adding new mozconfig files, especially for linux/android configs, ++it is important to include the `ac_add_options --enable-bootstrap`. This ++ensures switching archtectures for "cross-compiled" generation works properly. ++For example, when generating `x86` or `arm64` linux json files, it would be ++necessary to install additional libraries in order for the configure step to ++complete. +diff --git a/dom/media/webrtc/third_party_build/gn-configs/generate-gn-build-files.sh b/dom/media/webrtc/third_party_build/gn-configs/generate-gn-build-files.sh +index 4452b0ce76aeb..8d1acbf783514 100755 +--- dom/media/webrtc/third_party_build/gn-configs/generate-gn-build-files.sh ++++ dom/media/webrtc/third_party_build/gn-configs/generate-gn-build-files.sh +@@ -8,33 +8,15 @@ if [ ! "x$DEBUG_GEN" = "x" ]; then + set -x + fi + +-if [ "x$MOZ_LIBWEBRTC" = "x" ]; then +- echo "MOZ_LIBWEBRTC is not defined, see README.md" ++if [ "x$GN" = "x" ]; then ++ echo "GN is not defined, see README.md" + exit + fi + +-if [ -d $MOZ_LIBWEBRTC ]; then +- echo "MOZ_LIBWEBRTC is $MOZ_LIBWEBRTC" ++if [ -f $GN ]; then ++ echo "GN is $GN" + else +- echo "Path $MOZ_LIBWEBRTC is not found, see README.md" +- exit +-fi +- +-# git clone and gclient checkout may be in different places +-if [ "x$MOZ_LIBWEBRTC_GIT" = "x" ]; then +- MOZ_LIBWEBRTC_GIT=$MOZ_LIBWEBRTC +-fi +- +-if [ ! -d $MOZ_LIBWEBRTC_GIT/.git ]; then +- echo "No .git directory is found in the libwebrtc checkout, see README.md" +- exit +-fi +- +-if [ ! -d $MOZ_LIBWEBRTC/src/buildtools ]; then +- echo "Path $MOZ_LIBWEBRTC/src/buildtools is not found, see README.md" +- echo "Please run the following commands from inside $MOZ_LIBWEBRTC:" +- echo "\tgclient config https://github.com/mozilla/libwebrtc" +- echo "\tgclient sync -D --force --reset --with_branch_heads # this make take a while" ++ echo "Path $GN is not found, see README.md" + exit + fi + +@@ -115,21 +97,6 @@ fi + export PATH=$DEPOT_TOOLS:$PATH + export DEPOT_TOOLS_UPDATE=0 + +-# Symlink in the buildtools and .git directories from our copy of libwebrtc. +-if [ -L ./third_party/libwebrtc/buildtools ]; then +- rm ./third_party/libwebrtc/buildtools +-elif [ -d ./third_party/libwebrtc/buildtools ]; then +- rm -rf ./third_party/libwebrtc/buildtools +-fi +-ln -s $MOZ_LIBWEBRTC/src/buildtools ./third_party/libwebrtc/ +- +-if [ -L ./third_party/libwebrtc/.git ]; then +- rm ./third_party/libwebrtc/.git +-elif [ -d ./third_party/libwebrtc/.git ]; then +- rm -rf ./third_party/libwebrtc/.git +-fi +-ln -s $MOZ_LIBWEBRTC_GIT/.git ./third_party/libwebrtc/ +- + CONFIG_DIR=dom/media/webrtc/third_party_build/gn-configs + echo "CONFIG_DIR is $CONFIG_DIR" + diff --git a/www/firefox/files/patch-bug847568 b/www/firefox/files/patch-bug847568 index c91cc9be17a9..3161dbb88d08 100644 --- a/www/firefox/files/patch-bug847568 +++ b/www/firefox/files/patch-bug847568 @@ -28,9 +28,9 @@ diff --git dom/base/moz.build dom/base/moz.build index d390adf..4508f19 100644 --- dom/base/moz.build +++ dom/base/moz.build -@@ -567,6 +567,9 @@ FINAL_LIBRARY = "xul" - if CONFIG["MOZ_X11"]: - CXXFLAGS += CONFIG["TK_CFLAGS"] +@@ -576,6 +576,9 @@ FINAL_LIBRARY = "xul" + if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk": + CXXFLAGS += CONFIG["MOZ_GTK3_CFLAGS"] +if CONFIG["MOZ_SYSTEM_HARFBUZZ"]: + CXXFLAGS += CONFIG["MOZ_HARFBUZZ_CFLAGS"] @@ -215,9 +215,9 @@ diff --git old-configure.in old-configure.in index d147957..d332b34 100644 --- old-configure.in +++ old-configure.in -@@ -2217,6 +2217,27 @@ dnl ======================================================== - - AC_SUBST(MOZ_LINUX_32_SSE2_STARTUP_ERROR) +@@ -1335,6 +1335,27 @@ fi + AC_DEFINE_UNQUOTED(MOZ_MACBUNDLE_ID,$MOZ_MACBUNDLE_ID) + AC_SUBST(MOZ_MACBUNDLE_ID) +dnl ======================================================== +dnl Check for graphite2 @@ -241,7 +241,7 @@ index d147957..d332b34 100644 +fi + dnl ======================================================== - dnl Check for pixman and cairo + dnl = Child Process Name for IPC dnl ======================================================== diff --git toolkit/library/moz.build toolkit/library/moz.build index 2c3f869..e8a9d23 100644 diff --git a/www/firefox/files/patch-libwebrtc-generate b/www/firefox/files/patch-libwebrtc-generate new file mode 100644 index 000000000000..fc8cd43d4686 --- /dev/null +++ b/www/firefox/files/patch-libwebrtc-generate @@ -0,0 +1,192 @@ +# Below are the changes needed for generate-gn-build-files.sh +# except for depot_tools +# https://bugzilla.mozilla.org/show_bug.cgi?id=1654448 + +diff --git dom/media/webrtc/third_party_build/gn-configs/arm64_False_arm64_freebsd.mozconfig dom/media/webrtc/third_party_build/gn-configs/arm64_False_arm64_freebsd.mozconfig +new file mode 100644 +index 0000000000..7c76576969 +--- /dev/null ++++ dom/media/webrtc/third_party_build/gn-configs/arm64_False_arm64_freebsd.mozconfig +@@ -0,0 +1,12 @@ ++export M4=/usr/local/bin/gm4 ++export CC=/usr/local/bin/clang13 ++export CXX=/usr/local/bin/clang++13 ++export CPP=/usr/local/bin/clang-cpp13 ++ac_add_options --prefix="/usr/local" ++ac_add_options --with-libclang-path="/usr/local/llvm13/lib" ++ac_add_options --with-wasi-sysroot="/usr/local/share/wasi-sysroot" ++ ++ac_add_options --target=aarch64 ++ac_add_options --enable-bootstrap ++ ++mk_add_options MOZ_OBJDIR=obj-arm64_False_arm64_freebsd +diff --git dom/media/webrtc/third_party_build/gn-configs/arm64_True_arm64_freebsd.mozconfig dom/media/webrtc/third_party_build/gn-configs/arm64_True_arm64_freebsd.mozconfig +new file mode 100644 +index 0000000000..d056686355 +--- /dev/null ++++ dom/media/webrtc/third_party_build/gn-configs/arm64_True_arm64_freebsd.mozconfig +@@ -0,0 +1,13 @@ ++export M4=/usr/local/bin/gm4 ++export CC=/usr/local/bin/clang13 ++export CXX=/usr/local/bin/clang++13 ++export CPP=/usr/local/bin/clang-cpp13 ++ac_add_options --prefix="/usr/local" ++ac_add_options --with-libclang-path="/usr/local/llvm13/lib" ++ac_add_options --with-wasi-sysroot="/usr/local/share/wasi-sysroot" ++ ++ac_add_options --target=aarch64 ++ac_add_options --enable-debug ++ac_add_options --enable-bootstrap ++ ++mk_add_options MOZ_OBJDIR=obj-arm64_True_arm64_freebsd +diff --git dom/media/webrtc/third_party_build/gn-configs/generate-gn-build-files.sh dom/media/webrtc/third_party_build/gn-configs/generate-gn-build-files.sh +index 4452b0ce76..34a8ddf28e 100755 +--- dom/media/webrtc/third_party_build/gn-configs/generate-gn-build-files.sh ++++ dom/media/webrtc/third_party_build/gn-configs/generate-gn-build-files.sh +@@ -57,17 +57,6 @@ set -eEuo pipefail + + SYS_NAME=`uname` + +-# Check for modified files and abort if present. +-MODIFIED_FILES=`hg status --modified --added --exclude "**/moz.build" --exclude "dom/media/webrtc/third_party_build/**.json"` +-if [ "x$MODIFIED_FILES" = "x" ]; then +- # Completely clean the mercurial checkout before proceeding +- hg update -C -r . +- hg purge +-else +- echo "There are modified files in the checkout. Cowardly aborting!" +- echo "$MODIFIED_FILES" +- exit 1 +-fi + + IS_WIN=0 + IS_DARWIN=0 +@@ -94,6 +83,10 @@ elif [ "x$SYS_NAME" = "xMINGW32_NT-6.2" ]; then + IS_WIN=1 + elif [ "x$SYS_NAME" = "xOpenBSD" ]; then + CONFIGS="x64_False_x64_openbsd x64_True_x64_openbsd" ++elif [ "x$SYS_NAME" = "xFreeBSD" ]; then ++ CONFIGS="x64_False_x64_freebsd x64_True_x64_freebsd" ++ CONFIGS="$CONFIGS x64_False_x86_freebsd x64_True_x86_freebsd" ++ #CONFIGS="arm64_False_arm64_freebsd arm64_True_arm64_freebsd" + else + # Ensure rust has the correct targets for building x86 and arm64. These + # operations succeed quickly if previously completed. +diff --git dom/media/webrtc/third_party_build/gn-configs/x64_False_x64_freebsd.mozconfig dom/media/webrtc/third_party_build/gn-configs/x64_False_x64_freebsd.mozconfig +new file mode 100644 +index 0000000000..37319939ba +--- /dev/null ++++ dom/media/webrtc/third_party_build/gn-configs/x64_False_x64_freebsd.mozconfig +@@ -0,0 +1,11 @@ ++export M4=/usr/local/bin/gm4 ++export CC=/usr/local/bin/clang13 ++export CXX=/usr/local/bin/clang++13 ++export CPP=/usr/local/bin/clang-cpp13 ++ac_add_options --prefix="/usr/local" ++ac_add_options --with-libclang-path="/usr/local/llvm13/lib" ++ac_add_options --with-wasi-sysroot="/usr/local/share/wasi-sysroot" ++ ++ac_add_options --enable-bootstrap ++ ++mk_add_options MOZ_OBJDIR=obj-x64_False_x64_freebsd +diff --git dom/media/webrtc/third_party_build/gn-configs/x64_False_x86_freebsd.mozconfig dom/media/webrtc/third_party_build/gn-configs/x64_False_x86_freebsd.mozconfig +new file mode 100644 +index 0000000000..4bcac5d797 +--- /dev/null ++++ dom/media/webrtc/third_party_build/gn-configs/x64_False_x86_freebsd.mozconfig +@@ -0,0 +1,12 @@ ++export M4=/usr/local/bin/gm4 ++export CC=/usr/local/bin/clang13 ++export CXX=/usr/local/bin/clang++13 ++export CPP=/usr/local/bin/clang-cpp13 ++ac_add_options --prefix="/usr/local" ++ac_add_options --with-libclang-path="/usr/local/llvm13/lib" ++ac_add_options --with-wasi-sysroot="/usr/local/share/wasi-sysroot" ++ ++ac_add_options --target=i686 ++ac_add_options --enable-bootstrap ++ ++mk_add_options MOZ_OBJDIR=obj-x64_False_x86_freebsd +diff --git dom/media/webrtc/third_party_build/gn-configs/x64_True_x64_freebsd.mozconfig dom/media/webrtc/third_party_build/gn-configs/x64_True_x64_freebsd.mozconfig +new file mode 100644 +index 0000000000..7c5ae25d67 +--- /dev/null ++++ dom/media/webrtc/third_party_build/gn-configs/x64_True_x64_freebsd.mozconfig +@@ -0,0 +1,12 @@ ++export M4=/usr/local/bin/gm4 ++export CC=/usr/local/bin/clang13 ++export CXX=/usr/local/bin/clang++13 ++export CPP=/usr/local/bin/clang-cpp13 ++ac_add_options --prefix="/usr/local" ++ac_add_options --with-libclang-path="/usr/local/llvm13/lib" ++ac_add_options --with-wasi-sysroot="/usr/local/share/wasi-sysroot" ++ ++ac_add_options --enable-debug ++ac_add_options --enable-bootstrap ++ ++mk_add_options MOZ_OBJDIR=obj-x64_True_x64_freebsd +diff --git dom/media/webrtc/third_party_build/gn-configs/x64_True_x86_freebsd.mozconfig dom/media/webrtc/third_party_build/gn-configs/x64_True_x86_freebsd.mozconfig +new file mode 100644 +index 0000000000..ee95c64a23 +--- /dev/null ++++ dom/media/webrtc/third_party_build/gn-configs/x64_True_x86_freebsd.mozconfig +@@ -0,0 +1,13 @@ ++export M4=/usr/local/bin/gm4 ++export CC=/usr/local/bin/clang13 ++export CXX=/usr/local/bin/clang++13 ++export CPP=/usr/local/bin/clang-cpp13 ++ac_add_options --prefix="/usr/local" ++ac_add_options --with-libclang-path="/usr/local/llvm13/lib" ++ac_add_options --with-wasi-sysroot="/usr/local/share/wasi-sysroot" ++ ++ac_add_options --target=i686 ++ac_add_options --enable-debug ++ac_add_options --enable-bootstrap ++ ++mk_add_options MOZ_OBJDIR=obj-x64_True_x86_freebsd +diff --git third_party/libwebrtc/build/config/BUILDCONFIG.gn third_party/libwebrtc/build/config/BUILDCONFIG.gn +index fe6f5b7d2a..1092f99c65 100644 +--- third_party/libwebrtc/build/config/BUILDCONFIG.gn ++++ third_party/libwebrtc/build/config/BUILDCONFIG.gn +@@ -131,10 +131,12 @@ declare_args() { + is_official_build = false + + # Whether we're a traditional desktop unix. +- is_desktop_linux = current_os == "linux" || current_os == "openbsd" ++ is_desktop_linux = current_os == "linux" || current_os == "openbsd" || ++ current_os == "freebsd" + + # Set to true when compiling with the Clang compiler. + is_clang = current_os != "linux" || current_os == "openbsd" || ++ current_os == "freebsd" || + (current_cpu != "s390x" && current_cpu != "s390" && + current_cpu != "ppc64" && current_cpu != "ppc" && + current_cpu != "mips" && current_cpu != "mips64") +@@ -186,7 +188,7 @@ if (host_toolchain == "") { + # TODO(dpranke): Add some sort of assert here that verifies that + # no toolchain omitted host_toolchain from its toolchain_args(). + +- if (host_os == "linux" || host_os == "openbsd") { ++ if (host_os == "linux" || host_os == "openbsd" || host_os == "freebsd" ) { + if (target_os != "linux") { + host_toolchain = "//build/toolchain/linux:clang_$host_cpu" + } else if (is_clang) { +@@ -224,7 +226,8 @@ if (target_os == "android") { + assert(host_os == "linux" || host_os == "mac", + "Android builds are only supported on Linux and Mac hosts.") + _default_toolchain = "//build/toolchain/android:android_clang_$target_cpu" +-} else if (target_os == "chromeos" || target_os == "linux" || target_os == "openbsd") { ++} else if (target_os == "chromeos" || target_os == "linux" || ++ target_os == "openbsd" || target_os == "freebsd") { + # See comments in build/toolchain/cros/BUILD.gn about board compiles. + if (is_clang) { + _default_toolchain = "//build/toolchain/linux:clang_$target_cpu" +@@ -289,7 +292,7 @@ is_chromeos = current_os == "chromeos" + is_fuchsia = current_os == "fuchsia" + is_ios = current_os == "ios" + is_linux = current_os == "chromeos" || current_os == "linux" +-is_bsd = current_os == "openbsd" ++is_bsd = current_os == "openbsd" || current_os == "freebsd" + is_mac = current_os == "mac" + is_nacl = current_os == "nacl" + is_win = current_os == "win" || current_os == "winuwp" diff --git a/www/firefox/files/patch-libwebrtc-generated b/www/firefox/files/patch-libwebrtc-generated new file mode 100644 index 000000000000..b51a927bddb0 --- /dev/null +++ b/www/firefox/files/patch-libwebrtc-generated @@ -0,0 +1,19756 @@ +diff --git third_party/libwebrtc/api/adaptation/resource_adaptation_api_gn/moz.build third_party/libwebrtc/api/adaptation/resource_adaptation_api_gn/moz.build +index 3dffbc4abb..aac5d092ef 100644 +--- third_party/libwebrtc/api/adaptation/resource_adaptation_api_gn/moz.build ++++ third_party/libwebrtc/api/adaptation/resource_adaptation_api_gn/moz.build +@@ -67,6 +67,17 @@ if CONFIG["OS_TARGET"] == "Darwin": + DEFINES["__STDC_CONSTANT_MACROS"] = True + DEFINES["__STDC_FORMAT_MACROS"] = True + ++if CONFIG["OS_TARGET"] == "FreeBSD": ++ ++ DEFINES["USE_GLIB"] = "1" ++ DEFINES["WEBRTC_BSD"] = True ++ DEFINES["WEBRTC_POSIX"] = True ++ DEFINES["_FILE_OFFSET_BITS"] = "64" ++ DEFINES["_LARGEFILE64_SOURCE"] = True ++ DEFINES["_LARGEFILE_SOURCE"] = True ++ DEFINES["__STDC_CONSTANT_MACROS"] = True ++ DEFINES["__STDC_FORMAT_MACROS"] = True ++ + if CONFIG["OS_TARGET"] == "Linux": + + DEFINES["USE_AURA"] = "1" +@@ -153,6 +164,10 @@ if not CONFIG["MOZ_DEBUG"] and CONFIG["OS_TARGET"] == "Darwin": + + DEFINES["_FORTIFY_SOURCE"] = "2" + ++if not CONFIG["MOZ_DEBUG"] and CONFIG["OS_TARGET"] == "FreeBSD": ++ ++ DEFINES["_FORTIFY_SOURCE"] = "2" ++ + if not CONFIG["MOZ_DEBUG"] and CONFIG["OS_TARGET"] == "Linux": + + DEFINES["_FORTIFY_SOURCE"] = "2" +@@ -169,6 +184,10 @@ if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "Darwin": + + DEFINES["_DEBUG"] = True + ++if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "FreeBSD": ++ ++ DEFINES["_DEBUG"] = True ++ + if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "Linux": + + DEFINES["_DEBUG"] = True +@@ -191,6 +210,12 @@ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android": + "android_support" + ] + ++if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "FreeBSD": ++ ++ CXXFLAGS += [ ++ "-msse2" ++ ] ++ + if CONFIG["CPU_ARCH"] == "aarch64" and CONFIG["OS_TARGET"] == "Linux": + + DEFINES["CR_SYSROOT_HASH"] = "ef67b6ca8fd6e2e51515a243d043d1ea4caf45e6" +diff --git third_party/libwebrtc/api/array_view_gn/moz.build third_party/libwebrtc/api/array_view_gn/moz.build +index aca9f59966..1ea31b6a5e 100644 +--- third_party/libwebrtc/api/array_view_gn/moz.build ++++ third_party/libwebrtc/api/array_view_gn/moz.build +@@ -63,6 +63,17 @@ if CONFIG["OS_TARGET"] == "Darwin": + DEFINES["__STDC_CONSTANT_MACROS"] = True + DEFINES["__STDC_FORMAT_MACROS"] = True + ++if CONFIG["OS_TARGET"] == "FreeBSD": ++ ++ DEFINES["USE_GLIB"] = "1" ++ DEFINES["WEBRTC_BSD"] = True ++ DEFINES["WEBRTC_POSIX"] = True ++ DEFINES["_FILE_OFFSET_BITS"] = "64" ++ DEFINES["_LARGEFILE64_SOURCE"] = True ++ DEFINES["_LARGEFILE_SOURCE"] = True ++ DEFINES["__STDC_CONSTANT_MACROS"] = True ++ DEFINES["__STDC_FORMAT_MACROS"] = True ++ + if CONFIG["OS_TARGET"] == "Linux": + + DEFINES["USE_AURA"] = "1" +@@ -141,6 +152,10 @@ if not CONFIG["MOZ_DEBUG"] and CONFIG["OS_TARGET"] == "Darwin": + + DEFINES["_FORTIFY_SOURCE"] = "2" + ++if not CONFIG["MOZ_DEBUG"] and CONFIG["OS_TARGET"] == "FreeBSD": ++ ++ DEFINES["_FORTIFY_SOURCE"] = "2" ++ + if not CONFIG["MOZ_DEBUG"] and CONFIG["OS_TARGET"] == "Linux": + + DEFINES["_FORTIFY_SOURCE"] = "2" +@@ -157,6 +172,10 @@ if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "Darwin": + + DEFINES["_DEBUG"] = True + ++if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "FreeBSD": ++ ++ DEFINES["_DEBUG"] = True ++ + if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "Linux": + + DEFINES["_DEBUG"] = True +diff --git third_party/libwebrtc/api/audio/aec3_config_gn/moz.build third_party/libwebrtc/api/audio/aec3_config_gn/moz.build +index 861233bfeb..c2f87155bb 100644 +--- third_party/libwebrtc/api/audio/aec3_config_gn/moz.build ++++ third_party/libwebrtc/api/audio/aec3_config_gn/moz.build +@@ -67,6 +67,17 @@ if CONFIG["OS_TARGET"] == "Darwin": + DEFINES["__STDC_CONSTANT_MACROS"] = True + DEFINES["__STDC_FORMAT_MACROS"] = True + ++if CONFIG["OS_TARGET"] == "FreeBSD": ++ ++ DEFINES["USE_GLIB"] = "1" ++ DEFINES["WEBRTC_BSD"] = True ++ DEFINES["WEBRTC_POSIX"] = True ++ DEFINES["_FILE_OFFSET_BITS"] = "64" ++ DEFINES["_LARGEFILE64_SOURCE"] = True ++ DEFINES["_LARGEFILE_SOURCE"] = True ++ DEFINES["__STDC_CONSTANT_MACROS"] = True ++ DEFINES["__STDC_FORMAT_MACROS"] = True ++ + if CONFIG["OS_TARGET"] == "Linux": + + DEFINES["USE_AURA"] = "1" +@@ -153,6 +164,10 @@ if not CONFIG["MOZ_DEBUG"] and CONFIG["OS_TARGET"] == "Darwin": + + DEFINES["_FORTIFY_SOURCE"] = "2" + ++if not CONFIG["MOZ_DEBUG"] and CONFIG["OS_TARGET"] == "FreeBSD": ++ ++ DEFINES["_FORTIFY_SOURCE"] = "2" ++ + if not CONFIG["MOZ_DEBUG"] and CONFIG["OS_TARGET"] == "Linux": + + DEFINES["_FORTIFY_SOURCE"] = "2" +@@ -169,6 +184,10 @@ if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "Darwin": + + DEFINES["_DEBUG"] = True + ++if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "FreeBSD": ++ ++ DEFINES["_DEBUG"] = True ++ + if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "Linux": + + DEFINES["_DEBUG"] = True +@@ -191,6 +210,12 @@ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android": + "android_support" + ] + ++if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "FreeBSD": ++ ++ CXXFLAGS += [ ++ "-msse2" ++ ] ++ + if CONFIG["CPU_ARCH"] == "aarch64" and CONFIG["OS_TARGET"] == "Linux": + + DEFINES["CR_SYSROOT_HASH"] = "ef67b6ca8fd6e2e51515a243d043d1ea4caf45e6" +diff --git third_party/libwebrtc/api/audio/aec3_factory_gn/moz.build third_party/libwebrtc/api/audio/aec3_factory_gn/moz.build +index 2421e514b6..6a6fc577a5 100644 +--- third_party/libwebrtc/api/audio/aec3_factory_gn/moz.build ++++ third_party/libwebrtc/api/audio/aec3_factory_gn/moz.build +@@ -68,6 +68,17 @@ if CONFIG["OS_TARGET"] == "Darwin": + DEFINES["__STDC_CONSTANT_MACROS"] = True + DEFINES["__STDC_FORMAT_MACROS"] = True + ++if CONFIG["OS_TARGET"] == "FreeBSD": ++ ++ DEFINES["USE_GLIB"] = "1" ++ DEFINES["WEBRTC_BSD"] = True ++ DEFINES["WEBRTC_POSIX"] = True ++ DEFINES["_FILE_OFFSET_BITS"] = "64" ++ DEFINES["_LARGEFILE64_SOURCE"] = True ++ DEFINES["_LARGEFILE_SOURCE"] = True ++ DEFINES["__STDC_CONSTANT_MACROS"] = True ++ DEFINES["__STDC_FORMAT_MACROS"] = True ++ + if CONFIG["OS_TARGET"] == "Linux": + + DEFINES["USE_AURA"] = "1" +@@ -161,6 +172,10 @@ if not CONFIG["MOZ_DEBUG"] and CONFIG["OS_TARGET"] == "Darwin": + + DEFINES["_FORTIFY_SOURCE"] = "2" + ++if not CONFIG["MOZ_DEBUG"] and CONFIG["OS_TARGET"] == "FreeBSD": ++ ++ DEFINES["_FORTIFY_SOURCE"] = "2" ++ + if not CONFIG["MOZ_DEBUG"] and CONFIG["OS_TARGET"] == "Linux": + + DEFINES["_FORTIFY_SOURCE"] = "2" +@@ -177,6 +192,10 @@ if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "Darwin": + + DEFINES["_DEBUG"] = True + ++if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "FreeBSD": ++ ++ DEFINES["_DEBUG"] = True ++ + if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "Linux": + + DEFINES["_DEBUG"] = True +@@ -199,6 +218,12 @@ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android": + "android_support" + ] + ++if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "FreeBSD": ++ ++ CXXFLAGS += [ ++ "-msse2" ++ ] ++ + if CONFIG["CPU_ARCH"] == "aarch64" and CONFIG["OS_TARGET"] == "Linux": + + DEFINES["CR_SYSROOT_HASH"] = "ef67b6ca8fd6e2e51515a243d043d1ea4caf45e6" +diff --git third_party/libwebrtc/api/audio/audio_frame_api_gn/moz.build third_party/libwebrtc/api/audio/audio_frame_api_gn/moz.build +index 48abf7cd40..26317d4cf5 100644 +--- third_party/libwebrtc/api/audio/audio_frame_api_gn/moz.build ++++ third_party/libwebrtc/api/audio/audio_frame_api_gn/moz.build +@@ -68,6 +68,17 @@ if CONFIG["OS_TARGET"] == "Darwin": + DEFINES["__STDC_CONSTANT_MACROS"] = True + DEFINES["__STDC_FORMAT_MACROS"] = True + ++if CONFIG["OS_TARGET"] == "FreeBSD": ++ ++ DEFINES["USE_GLIB"] = "1" ++ DEFINES["WEBRTC_BSD"] = True ++ DEFINES["WEBRTC_POSIX"] = True ++ DEFINES["_FILE_OFFSET_BITS"] = "64" ++ DEFINES["_LARGEFILE64_SOURCE"] = True ++ DEFINES["_LARGEFILE_SOURCE"] = True ++ DEFINES["__STDC_CONSTANT_MACROS"] = True ++ DEFINES["__STDC_FORMAT_MACROS"] = True ++ + if CONFIG["OS_TARGET"] == "Linux": + + DEFINES["USE_AURA"] = "1" +@@ -154,6 +165,10 @@ if not CONFIG["MOZ_DEBUG"] and CONFIG["OS_TARGET"] == "Darwin": + + DEFINES["_FORTIFY_SOURCE"] = "2" + ++if not CONFIG["MOZ_DEBUG"] and CONFIG["OS_TARGET"] == "FreeBSD": ++ ++ DEFINES["_FORTIFY_SOURCE"] = "2" ++ + if not CONFIG["MOZ_DEBUG"] and CONFIG["OS_TARGET"] == "Linux": + + DEFINES["_FORTIFY_SOURCE"] = "2" +@@ -170,6 +185,10 @@ if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "Darwin": + + DEFINES["_DEBUG"] = True + ++if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "FreeBSD": ++ ++ DEFINES["_DEBUG"] = True ++ + if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "Linux": + + DEFINES["_DEBUG"] = True +@@ -192,6 +211,12 @@ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android": + "android_support" + ] + ++if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "FreeBSD": ++ ++ CXXFLAGS += [ ++ "-msse2" ++ ] ++ + if CONFIG["CPU_ARCH"] == "aarch64" and CONFIG["OS_TARGET"] == "Linux": + + DEFINES["CR_SYSROOT_HASH"] = "ef67b6ca8fd6e2e51515a243d043d1ea4caf45e6" +diff --git third_party/libwebrtc/api/audio/audio_mixer_api_gn/moz.build third_party/libwebrtc/api/audio/audio_mixer_api_gn/moz.build +index 41222e1e06..5a75494c05 100644 +--- third_party/libwebrtc/api/audio/audio_mixer_api_gn/moz.build ++++ third_party/libwebrtc/api/audio/audio_mixer_api_gn/moz.build +@@ -63,6 +63,17 @@ if CONFIG["OS_TARGET"] == "Darwin": + DEFINES["__STDC_CONSTANT_MACROS"] = True + DEFINES["__STDC_FORMAT_MACROS"] = True + ++if CONFIG["OS_TARGET"] == "FreeBSD": ++ ++ DEFINES["USE_GLIB"] = "1" ++ DEFINES["WEBRTC_BSD"] = True ++ DEFINES["WEBRTC_POSIX"] = True ++ DEFINES["_FILE_OFFSET_BITS"] = "64" ++ DEFINES["_LARGEFILE64_SOURCE"] = True ++ DEFINES["_LARGEFILE_SOURCE"] = True ++ DEFINES["__STDC_CONSTANT_MACROS"] = True ++ DEFINES["__STDC_FORMAT_MACROS"] = True ++ + if CONFIG["OS_TARGET"] == "Linux": + + DEFINES["USE_AURA"] = "1" +@@ -145,6 +156,10 @@ if not CONFIG["MOZ_DEBUG"] and CONFIG["OS_TARGET"] == "Darwin": + + DEFINES["_FORTIFY_SOURCE"] = "2" + ++if not CONFIG["MOZ_DEBUG"] and CONFIG["OS_TARGET"] == "FreeBSD": ++ ++ DEFINES["_FORTIFY_SOURCE"] = "2" ++ + if not CONFIG["MOZ_DEBUG"] and CONFIG["OS_TARGET"] == "Linux": + + DEFINES["_FORTIFY_SOURCE"] = "2" +@@ -161,6 +176,10 @@ if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "Darwin": + + DEFINES["_DEBUG"] = True + ++if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "FreeBSD": ++ ++ DEFINES["_DEBUG"] = True ++ + if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "Linux": + + DEFINES["_DEBUG"] = True +diff --git third_party/libwebrtc/api/audio/echo_control_gn/moz.build third_party/libwebrtc/api/audio/echo_control_gn/moz.build +index 132b296b25..df28661dfb 100644 +--- third_party/libwebrtc/api/audio/echo_control_gn/moz.build ++++ third_party/libwebrtc/api/audio/echo_control_gn/moz.build +@@ -63,6 +63,17 @@ if CONFIG["OS_TARGET"] == "Darwin": + DEFINES["__STDC_CONSTANT_MACROS"] = True + DEFINES["__STDC_FORMAT_MACROS"] = True + ++if CONFIG["OS_TARGET"] == "FreeBSD": ++ ++ DEFINES["USE_GLIB"] = "1" ++ DEFINES["WEBRTC_BSD"] = True ++ DEFINES["WEBRTC_POSIX"] = True ++ DEFINES["_FILE_OFFSET_BITS"] = "64" ++ DEFINES["_LARGEFILE64_SOURCE"] = True ++ DEFINES["_LARGEFILE_SOURCE"] = True ++ DEFINES["__STDC_CONSTANT_MACROS"] = True ++ DEFINES["__STDC_FORMAT_MACROS"] = True ++ + if CONFIG["OS_TARGET"] == "Linux": + + DEFINES["USE_AURA"] = "1" +@@ -141,6 +152,10 @@ if not CONFIG["MOZ_DEBUG"] and CONFIG["OS_TARGET"] == "Darwin": + + DEFINES["_FORTIFY_SOURCE"] = "2" + ++if not CONFIG["MOZ_DEBUG"] and CONFIG["OS_TARGET"] == "FreeBSD": ++ ++ DEFINES["_FORTIFY_SOURCE"] = "2" ++ + if not CONFIG["MOZ_DEBUG"] and CONFIG["OS_TARGET"] == "Linux": + + DEFINES["_FORTIFY_SOURCE"] = "2" +@@ -157,6 +172,10 @@ if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "Darwin": + + DEFINES["_DEBUG"] = True + ++if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "FreeBSD": ++ ++ DEFINES["_DEBUG"] = True ++ + if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "Linux": + + DEFINES["_DEBUG"] = True +diff --git third_party/libwebrtc/api/audio_codecs/L16/audio_decoder_L16_gn/moz.build third_party/libwebrtc/api/audio_codecs/L16/audio_decoder_L16_gn/moz.build +index 8499f556e3..92d90abb2d 100644 +--- third_party/libwebrtc/api/audio_codecs/L16/audio_decoder_L16_gn/moz.build ++++ third_party/libwebrtc/api/audio_codecs/L16/audio_decoder_L16_gn/moz.build +@@ -67,6 +67,17 @@ if CONFIG["OS_TARGET"] == "Darwin": + DEFINES["__STDC_CONSTANT_MACROS"] = True + DEFINES["__STDC_FORMAT_MACROS"] = True + ++if CONFIG["OS_TARGET"] == "FreeBSD": ++ ++ DEFINES["USE_GLIB"] = "1" ++ DEFINES["WEBRTC_BSD"] = True ++ DEFINES["WEBRTC_POSIX"] = True ++ DEFINES["_FILE_OFFSET_BITS"] = "64" ++ DEFINES["_LARGEFILE64_SOURCE"] = True ++ DEFINES["_LARGEFILE_SOURCE"] = True ++ DEFINES["__STDC_CONSTANT_MACROS"] = True ++ DEFINES["__STDC_FORMAT_MACROS"] = True ++ + if CONFIG["OS_TARGET"] == "Linux": + + DEFINES["USE_AURA"] = "1" *** 272905 LINES SKIPPED ***