Index: Mk/Uses/gecko.mk =================================================================== --- Mk/Uses/gecko.mk +++ Mk/Uses/gecko.mk @@ -22,12 +22,12 @@ .if ${gecko_ARGS:Mfirefox} _GECKO_DEFAULT_VERSION= 60 -_GECKO_VERSIONS= 60 62 +_GECKO_VERSIONS= 60 63 _GECKO_TYPE= firefox # Dependence lines for different Firefox versions 60_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:www/firefox-esr -62_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:www/firefox +63_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:www/firefox .if exists(${LOCALBASE}/bin/firefox) _GECKO_INSTALLED_VER!= ${PKG_QUERY} %v firefox firefox-esr Index: Mk/bsd.gecko.mk =================================================================== --- Mk/bsd.gecko.mk +++ Mk/bsd.gecko.mk @@ -112,6 +112,11 @@ MOZ_EXPORT+= PYTHON3="${LOCALBASE}/bin/python${PYTHON3_DEFAULT}" .endif +.if ${MOZILLA_VER:R:R} >= 63 +BUILD_DEPENDS+= rust-cbindgen>=0.6.2:devel/rust-cbindgen \ + node:www/node +.endif + .if ${OPSYS} == FreeBSD && ${OSREL} == 11.1 && ${MOZILLA_VER:R:R} < 49 LLD_UNSAFE= yes .endif @@ -379,7 +384,7 @@ .endif .if ${PORT_OPTIONS:MRUST} || ${MOZILLA_VER:R:R} >= 54 -BUILD_DEPENDS+= ${RUST_PORT:T}>=1.24:${RUST_PORT} +BUILD_DEPENDS+= ${RUST_PORT:T}>=1.27:${RUST_PORT} # 1.28 but see files/patch-rust-1.27 RUST_PORT?= lang/rust . if ${MOZILLA_VER:R:R} < 54 MOZ_OPTIONS+= --enable-rust Index: www/firefox-i18n/Makefile =================================================================== --- www/firefox-i18n/Makefile +++ www/firefox-i18n/Makefile @@ -2,11 +2,10 @@ # $FreeBSD$ PORTNAME= firefox-i18n -PORTVERSION= 62.0 -PORTREVISION= 1 +PORTVERSION= 63.0b2 CATEGORIES= www -MASTER_SITES= MOZILLA/${PORTNAME:S|-i18n||}/releases/${DISTVERSION}/linux-i686/xpi \ - MOZILLA/${PORTNAME:S|-i18n||}/candidates/${DISTVERSION}-candidates/build2/linux-i686/xpi +MASTER_SITES= MOZILLA/devedition/releases/${DISTVERSION}/linux-i686/xpi \ + MOZILLA/devedition/candidates/${DISTVERSION}-candidates/build1/linux-i686/xpi PKGNAMEPREFIX= DISTFILES= ${FIREFOX_I18N_:S/$/.xpi/} DIST_SUBDIR= xpi/${DISTNAME} @@ -16,7 +15,7 @@ EXTRACT_DEPENDS= zip:archivers/zip -USES= zip:infozip gecko:firefox,62,build +USES= zip:infozip gecko:firefox,63,build USE_XPI= firefox NO_ARCH= yes @@ -81,7 +80,7 @@ ${XARGS} -0L1 ${REINPLACE_CMD} -i '' -e '/=3.38:security/nss \ icu>=59.1,1:devel/icu \ libevent>=2.1.8:devel/libevent \ - harfbuzz>=1.7.6:print/harfbuzz \ - graphite2>=1.3.11:graphics/graphite2 \ + harfbuzz>=1.8.8:print/harfbuzz \ + graphite2>=1.3.12:graphics/graphite2 \ png>=1.6.34:graphics/png \ libvorbis>=1.3.6,3:audio/libvorbis \ libvpx>=1.5.0:multimedia/libvpx \ @@ -49,6 +49,8 @@ .include "${.CURDIR}/../../www/firefox/Makefile.options" post-patch: + @${REINPLACE_CMD} -e '/AM_PATH_NSS/s/3\.39/3.38/' \ + ${WRKSRC}/old-configure.in @${REINPLACE_CMD} -e 's/%u/%U/' -e '/X-MultipleArgs/d' \ -e '/^Icon/s/=.*/=${FIREFOX_ICON:R}/' \ ${FIREFOX_DESKTOP} Index: www/firefox/distinfo =================================================================== --- www/firefox/distinfo +++ www/firefox/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1535647501 -SHA256 (firefox-62.0.source.tar.xz) = b3f850581f7d89655a05d5dc26ba010783934d86aa920399237f79dedd5daec9 -SIZE (firefox-62.0.source.tar.xz) = 258026884 +TIMESTAMP = 1535641391 +SHA256 (firefox-63.0b2.source.tar.xz) = fc185ebb7e298c513d8821aa018234878d184adfaeb5d82f1f1e4175165eb87e +SIZE (firefox-63.0b2.source.tar.xz) = 265443140 Index: www/firefox/files/patch-bug1288587 =================================================================== --- www/firefox/files/patch-bug1288587 +++ www/firefox/files/patch-bug1288587 @@ -43,13 +43,13 @@ topobjdir = topobjdir[:-7] with LineIO(lambda l: log.info(l)) as out: -@@ -219,17 +226,20 @@ def virtualenv_python(env_python, build_env, mozconfig, help): +@@ -255,17 +262,20 @@ def virtualenv_python(env_python, build_env, mozconfig log.info('Creating Python environment') manager.build(python) python = normsep(manager.python_path) - if python != normsep(sys.executable): + if not normsep(sys.executable).startswith(normsep(virtualenvs_root)): log.info('Reexecuting in the virtualenv') if env_python: - del os.environ['PYTHON'] Index: www/firefox/files/patch-bug1448770 =================================================================== --- www/firefox/files/patch-bug1448770 +++ /dev/null @@ -1,27 +0,0 @@ -Disable GL_EXT_debug_marker due to crashes on x86 with Mesa drivers. - -diff --git gfx/webrender/src/query.rs gfx/webrender/src/query.rs -index 999abc749115..68850ef025e4 100644 ---- gfx/webrender/src/query.rs -+++ gfx/webrender/src/query.rs -@@ -274,17 +274,20 @@ pub struct GpuMarker { - - impl GpuMarker { - fn new(gl: &Rc, message: &str) -> Self { -+#[cfg(not(target_arch = "x86"))] - gl.push_group_marker_ext(message); - GpuMarker { gl: Rc::clone(gl) } - } - - fn fire(gl: &Rc, message: &str) { -+#[cfg(not(target_arch = "x86"))] - gl.insert_event_marker_ext(message); - } - } - - impl Drop for GpuMarker { - fn drop(&mut self) { -+#[cfg(not(target_arch = "x86"))] - self.gl.pop_group_marker_ext(); - } - } Index: www/firefox/files/patch-bug847568 =================================================================== --- www/firefox/files/patch-bug847568 +++ www/firefox/files/patch-bug847568 @@ -4,8 +4,8 @@ index 7620b4d00623..09d3db5ca8c0 100644 --- config/system-headers.mozbuild +++ config/system-headers.mozbuild -@@ -1312,6 +1312,19 @@ if not CONFIG['MOZ_TREE_PIXMAN']: - 'pixman.h', +@@ -1300,6 +1300,19 @@ if CONFIG['MOZ_ENABLE_CONTENTMANAGER']: + 'SelectSingleContentItemPage.h', ] +if CONFIG['MOZ_SYSTEM_GRAPHITE2']: @@ -28,7 +28,7 @@ index 8e19020315ae..2fcdbb6f7b42 100644 --- dom/base/moz.build +++ dom/base/moz.build -@@ -470,6 +470,9 @@ if CONFIG['MOZ_BUILD_APP'] in ['browser', 'mobile/android', 'xulrunner']: +@@ -495,6 +495,9 @@ if CONFIG['MOZ_BUILD_APP'] in ['browser', 'mobile/android', 'xulrunner']: if CONFIG['MOZ_X11']: CXXFLAGS += CONFIG['TK_CFLAGS'] @@ -72,10 +72,10 @@ index 22c76a7df020..a01490bd49ee 100644 --- gfx/harfbuzz/README-mozilla +++ gfx/harfbuzz/README-mozilla -@@ -19,3 +19,8 @@ the mozilla tree. +@@ -15,3 +15,8 @@ from within the gfx/harfbuzz directory. If the collection of source files changes, manual updates to moz.build may be - needed, as we don't use the upstream makefiles. + needed as we don't use the upstream makefiles. + +The in-tree copy may be omitted during build by --with-system-harfbuzz. +Make sure to keep pkg-config version check within toolkit/moz.configure in sync @@ -111,7 +111,7 @@ index e06ae3457a47..93faa61594a3 100755 --- gfx/skia/generate_mozbuild.py +++ gfx/skia/generate_mozbuild.py -@@ -135,6 +135,9 @@ if CONFIG['CLANG_CXX'] or CONFIG['CLANG_CL']: +@@ -148,6 +148,9 @@ if CONFIG['CC_TYPE'] in ('clang', 'clang-cl'): '-Wno-unused-private-field', ] @@ -125,7 +125,7 @@ index 2118677ca3a8..e4978b413784 100644 --- gfx/skia/moz.build +++ gfx/skia/moz.build -@@ -780,6 +780,9 @@ if CONFIG['CLANG_CXX'] or CONFIG['CLANG_CL']: +@@ -822,6 +822,9 @@ if CONFIG['CC_TYPE'] in ('clang', 'clang-cl'): '-Wno-unused-private-field', ] @@ -139,7 +139,7 @@ index 56f1b9fe3f4b..0ac1100b0df3 100644 --- gfx/thebes/moz.build +++ gfx/thebes/moz.build -@@ -267,7 +267,13 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk2', 'gtk3'): +@@ -288,7 +288,13 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gtk3': LOCAL_INCLUDES += CONFIG['SKIA_INCLUDES'] @@ -170,7 +170,7 @@ index 79c26e3e7001..c4d93bc5f7dc 100644 --- netwerk/dns/moz.build +++ netwerk/dns/moz.build -@@ -73,3 +73,6 @@ USE_LIBS += ['icu'] +@@ -76,3 +76,6 @@ USE_LIBS += ['icu'] if CONFIG['CC_TYPE'] in ('clang', 'gcc'): CXXFLAGS += ['-Wno-error=shadow'] @@ -181,7 +181,7 @@ index 95a58b634593..b614eef85c89 100644 --- old-configure.in +++ old-configure.in -@@ -4333,6 +4333,27 @@ dnl ======================================================== +@@ -3951,6 +3951,27 @@ dnl ======================================================== AC_SUBST(MOZ_LINUX_32_SSE2_STARTUP_ERROR) @@ -198,7 +198,7 @@ + * 100 + GR2_VERSION_BUGFIX >= \ + (major) * 10000 + (minor) * 100 + (bugfix) ) + ], [ -+ #if !GR2_VERSION_REQUIRE(1,3,10) ++ #if !GR2_VERSION_REQUIRE(1,3,12) + #error "Insufficient graphite2 version." + #endif + ], [], @@ -213,7 +213,7 @@ index 24f940e1ed7e..079a575adec3 100644 --- toolkit/library/moz.build +++ toolkit/library/moz.build -@@ -238,6 +238,12 @@ if CONFIG['MOZ_SYSTEM_JPEG']: +@@ -223,6 +223,12 @@ if CONFIG['MOZ_SYSTEM_JPEG']: if CONFIG['MOZ_SYSTEM_PNG']: OS_LIBS += CONFIG['MOZ_PNG_LIBS'] @@ -230,7 +230,7 @@ index 9297e4d6f501..d8e273887e4b 100644 --- toolkit/moz.configure +++ toolkit/moz.configure -@@ -1065,6 +1065,26 @@ add_old_configure_assignment('FT2_LIBS', +@@ -883,6 +883,26 @@ add_old_configure_assignment('FT2_LIBS', add_old_configure_assignment('FT2_CFLAGS', ft2_info.cflags) @@ -249,7 +249,7 @@ +option('--with-system-harfbuzz', + help="Use system harfbuzz (located with pkgconfig)") + -+system_harfbuzz = pkg_check_modules('MOZ_HARFBUZZ', 'harfbuzz >= 1.7.4', ++system_harfbuzz = pkg_check_modules('MOZ_HARFBUZZ', 'harfbuzz >= 1.8.8', + when='--with-system-harfbuzz') + +set_config('MOZ_SYSTEM_HARFBUZZ', depends_if(system_harfbuzz)(lambda _: True)) Index: www/firefox/files/patch-lmdb_robust =================================================================== --- /dev/null +++ www/firefox/files/patch-lmdb_robust @@ -0,0 +1,36 @@ +- NetBSD has fdatasync(2), see https://github.com/NetBSD/src/commit/e963c41c6fb9 +- OpenBSD has fdatasync(3), see https://github.com/openbsd/src/commit/aa96fc3dc04f +- FreeBSD 11.0 has robust mutexes (see base r300043) and 11.1 has fdatasync(2) (see base r304977) + +diff --git third_party/rust/lmdb-sys/.cargo-checksum.json third_party/rust/lmdb-sys/.cargo-checksum.json +index d488bd55a0d3c..1596f98c081f6 100644 +--- third_party/rust/lmdb-sys/.cargo-checksum.json ++++ third_party/rust/lmdb-sys/.cargo-checksum.json +@@ -1 +1 @@ +-{"files":{"Cargo.toml":"f934ea681a6ab7338d4fee18c0d7c2915321c3087e82e373484b3e586ad367ee","build.rs":"4204dd0891e2eca08cb7cbcccfb36d1bdac137651c383f4a36368478fd836402","lmdb/libraries/liblmdb/CHANGES":"d58e7fbdac22b7001c141df2f48b9d192770de52c9b4a0348552dcd4056ebbf7","lmdb/libraries/liblmdb/COPYRIGHT":"ce2436e2ab324485500b6fec5764b788ba082ac902ed00290f527d0170d8c90e","lmdb/libraries/liblmdb/Doxyfile":"5545f6b049040ce58e6d1a603eaea6b7fb8ae92459f2ab8d3bcbacabcce1014d","lmdb/libraries/liblmdb/LICENSE":"310fe25c858a9515fc8c8d7d1f24a67c9496f84a91e0a0e41ea9975b1371e569","lmdb/libraries/liblmdb/Makefile":"60b5f574e6642602f692a95956da61c588a265ad50b8059960c230b9e6aaf4fd","lmdb/libraries/liblmdb/intro.doc":"c7c2d970e7c277dc1f45bb3824c054fb73cf8d1666aa826e83c6a9a6a378839d","lmdb/libraries/liblmdb/lmdb.h":"c06ce42284b7544657e7b2d6b1f34cedd85234c193e673167b5d4b86372142ca","lmdb/libraries/liblmdb/mdb.c":"f7840eb8efaba2b55f7980dcecf9c0109b33db6261c07ae6dc1fea4f40789db4","lmdb/libraries/liblmdb/mdb_copy.1":"c01f113a295d3c76b60f432896f24862cb0d2dadb14e26d72c6de9b55a254e2f","lmdb/libraries/liblmdb/mdb_copy.c":"b75a4d9b18aea89b8910bff44938244587a1a5863d1d609134298b1b5f019bfe","lmdb/libraries/liblmdb/mdb_dump.1":"adf51a57167bc6a64e0e6635e28ad2175924754f25eb1e9d89278b543c5e78d3","lmdb/libraries/liblmdb/mdb_dump.c":"7a67fa80539cb976cedd2bf7c56082366c33e07c9eac409e47efabaf4e31b62f","lmdb/libraries/liblmdb/mdb_load.1":"c1f7369d12b84fc92908256d3c1e422fa05576bde378fc84aca272d5aa2f4102","lmdb/libraries/liblmdb/mdb_load.c":"136169ce000cf254149ac00a0d9d4b12e9548649e7cdc9f6d6bd0943c16c11ea","lmdb/libraries/liblmdb/mdb_stat.1":"9c531fa57f1a528fa4bc4da4351b2332bff2e34bbd6f76dd0c1bbd915888cbfd","lmdb/libraries/liblmdb/mdb_stat.c":"235b872ae85aff627dbf27ae495c66cf3ed80eeca2188fe90d27d0486c03d0fa","lmdb/libraries/liblmdb/midl.c":"4877d6421f114a18a7074076b5b56c68567c0ba1a8328018af788cf5bb5c4f87","lmdb/libraries/liblmdb/midl.h":"853fc3115d2b827d6b53afcb03d39e0dcab6be108108955e549990ee5ece5c8a","lmdb/libraries/liblmdb/mtest.c":"4fd58e1ab4e445a73a6c655275f2c84523c128d34afa958a98b128c1d5f7ec24","lmdb/libraries/liblmdb/mtest2.c":"4b5711048ecbc255e3393c2fab589630b78fc3fc423cc98281629c7e45e78b4b","lmdb/libraries/liblmdb/mtest3.c":"b8e895e093a9d5bacbfde677d8f8e0aca9f0b9d8c2f4392bb47ff227b9c6a08d","lmdb/libraries/liblmdb/mtest4.c":"6e1fd62ca1036795dbadd1306fae4e48c34f00576805c0ac1dd73114ec58f85c","lmdb/libraries/liblmdb/mtest5.c":"24906ec930c259be3c2af5250fe1cb06dbb0f40ce3bad3c9f4991f681642e1e9","lmdb/libraries/liblmdb/mtest6.c":"f5c40dc672e5946874fe8a6a2d10fe8da2f509ffe48c73bdd4199b2d6756031c","lmdb/libraries/liblmdb/sample-bdb.txt":"7692f24c5f909328856008ed90e48cf224de1eb466d1f7623ffb7f32148eb3d9","lmdb/libraries/liblmdb/sample-mdb.txt":"40902b2560d72d348d19a23711244c59e3d684871a4262071312cc5a67e5ecae","lmdb/libraries/liblmdb/tooltag":"4734c6dc1fa7aec8c2e9646bd04bc5218ef6a03ad83a3b18de2ac4069eb94120","src/constants.rs":"af67740b5acccdc71b2267ec051bb60e5433c4f0313fe16dc0627376a52dcdff","src/ffi.rs":"caa9bbfb3868a7a9e9ad822d775e60ffa8c8c2f2450ac4ed403a93ddb7547899","src/lib.rs":"93504d2712ee68182bb59d5c6ad440b42892c221ecf014e77c325f2bb5cdddf1"},"package":"d5b392838cfe8858e86fac37cf97a0e8c55cc60ba0a18365cadc33092f128ce9"} +\ No newline at end of file ++{"files":{"Cargo.toml":"f934ea681a6ab7338d4fee18c0d7c2915321c3087e82e373484b3e586ad367ee","build.rs":"4204dd0891e2eca08cb7cbcccfb36d1bdac137651c383f4a36368478fd836402","lmdb/libraries/liblmdb/CHANGES":"d58e7fbdac22b7001c141df2f48b9d192770de52c9b4a0348552dcd4056ebbf7","lmdb/libraries/liblmdb/COPYRIGHT":"ce2436e2ab324485500b6fec5764b788ba082ac902ed00290f527d0170d8c90e","lmdb/libraries/liblmdb/Doxyfile":"5545f6b049040ce58e6d1a603eaea6b7fb8ae92459f2ab8d3bcbacabcce1014d","lmdb/libraries/liblmdb/LICENSE":"310fe25c858a9515fc8c8d7d1f24a67c9496f84a91e0a0e41ea9975b1371e569","lmdb/libraries/liblmdb/Makefile":"60b5f574e6642602f692a95956da61c588a265ad50b8059960c230b9e6aaf4fd","lmdb/libraries/liblmdb/intro.doc":"c7c2d970e7c277dc1f45bb3824c054fb73cf8d1666aa826e83c6a9a6a378839d","lmdb/libraries/liblmdb/lmdb.h":"c06ce42284b7544657e7b2d6b1f34cedd85234c193e673167b5d4b86372142ca","lmdb/libraries/liblmdb/mdb.c":"027ab0d674b98bddc02c5cd229a6c762d35fe87c58c45432b5e1282cc7f59c43","lmdb/libraries/liblmdb/mdb_copy.1":"c01f113a295d3c76b60f432896f24862cb0d2dadb14e26d72c6de9b55a254e2f","lmdb/libraries/liblmdb/mdb_copy.c":"b75a4d9b18aea89b8910bff44938244587a1a5863d1d609134298b1b5f019bfe","lmdb/libraries/liblmdb/mdb_dump.1":"adf51a57167bc6a64e0e6635e28ad2175924754f25eb1e9d89278b543c5e78d3","lmdb/libraries/liblmdb/mdb_dump.c":"7a67fa80539cb976cedd2bf7c56082366c33e07c9eac409e47efabaf4e31b62f","lmdb/libraries/liblmdb/mdb_load.1":"c1f7369d12b84fc92908256d3c1e422fa05576bde378fc84aca272d5aa2f4102","lmdb/libraries/liblmdb/mdb_load.c":"136169ce000cf254149ac00a0d9d4b12e9548649e7cdc9f6d6bd0943c16c11ea","lmdb/libraries/liblmdb/mdb_stat.1":"9c531fa57f1a528fa4bc4da4351b2332bff2e34bbd6f76dd0c1bbd915888cbfd","lmdb/libraries/liblmdb/mdb_stat.c":"235b872ae85aff627dbf27ae495c66cf3ed80eeca2188fe90d27d0486c03d0fa","lmdb/libraries/liblmdb/midl.c":"4877d6421f114a18a7074076b5b56c68567c0ba1a8328018af788cf5bb5c4f87","lmdb/libraries/liblmdb/midl.h":"853fc3115d2b827d6b53afcb03d39e0dcab6be108108955e549990ee5ece5c8a","lmdb/libraries/liblmdb/mtest.c":"4fd58e1ab4e445a73a6c655275f2c84523c128d34afa958a98b128c1d5f7ec24","lmdb/libraries/liblmdb/mtest2.c":"4b5711048ecbc255e3393c2fab589630b78fc3fc423cc98281629c7e45e78b4b","lmdb/libraries/liblmdb/mtest3.c":"b8e895e093a9d5bacbfde677d8f8e0aca9f0b9d8c2f4392bb47ff227b9c6a08d","lmdb/libraries/liblmdb/mtest4.c":"6e1fd62ca1036795dbadd1306fae4e48c34f00576805c0ac1dd73114ec58f85c","lmdb/libraries/liblmdb/mtest5.c":"24906ec930c259be3c2af5250fe1cb06dbb0f40ce3bad3c9f4991f681642e1e9","lmdb/libraries/liblmdb/mtest6.c":"f5c40dc672e5946874fe8a6a2d10fe8da2f509ffe48c73bdd4199b2d6756031c","lmdb/libraries/liblmdb/sample-bdb.txt":"7692f24c5f909328856008ed90e48cf224de1eb466d1f7623ffb7f32148eb3d9","lmdb/libraries/liblmdb/sample-mdb.txt":"40902b2560d72d348d19a23711244c59e3d684871a4262071312cc5a67e5ecae","lmdb/libraries/liblmdb/tooltag":"4734c6dc1fa7aec8c2e9646bd04bc5218ef6a03ad83a3b18de2ac4069eb94120","src/constants.rs":"af67740b5acccdc71b2267ec051bb60e5433c4f0313fe16dc0627376a52dcdff","src/ffi.rs":"caa9bbfb3868a7a9e9ad822d775e60ffa8c8c2f2450ac4ed403a93ddb7547899","src/lib.rs":"93504d2712ee68182bb59d5c6ad440b42892c221ecf014e77c325f2bb5cdddf1"},"package":"d5b392838cfe8858e86fac37cf97a0e8c55cc60ba0a18365cadc33092f128ce9"} +\ No newline at end of file +diff --git third_party/rust/lmdb-sys/lmdb/libraries/liblmdb/mdb.c third_party/rust/lmdb-sys/lmdb/libraries/liblmdb/mdb.c +index 90ac99f2d849c..a9cbc6300d587 100644 +--- third_party/rust/lmdb-sys/lmdb/libraries/liblmdb/mdb.c ++++ third_party/rust/lmdb-sys/lmdb/libraries/liblmdb/mdb.c +@@ -120,13 +120,14 @@ typedef SSIZE_T ssize_t; + #include /* defines BYTE_ORDER on HPUX and Solaris */ + #endif + +-#if defined(__APPLE__) || defined (BSD) || defined(__FreeBSD_kernel__) +-# define MDB_USE_POSIX_SEM 1 +-# define MDB_FDATASYNC fsync +-#elif defined(ANDROID) ++#if defined(__APPLE__) || defined(ANDROID) || defined(__DragonFly__) || (defined(__FreeBSD__) && __FreeBSD__ < 11) + # define MDB_FDATASYNC fsync + #endif + ++#if defined(__APPLE__) || defined(__DragonFly__) || defined(__NetBSD__) || defined(__OpenBSD__) || (defined(__FreeBSD__) && __FreeBSD__ < 11) ++# define MDB_USE_POSIX_SEM 1 ++#endif ++ + #ifndef _WIN32 + #include + #include Index: www/firefox/files/patch-rust-1.27 =================================================================== --- /dev/null +++ www/firefox/files/patch-rust-1.27 @@ -0,0 +1,15 @@ +Downgrade Rust as it still builds fine with 1.27 + +diff --git build/moz.configure/rust.configure build/moz.configure/rust.configure +index 80c316c7bfb3d..bf680f714046b 100644 +--- build/moz.configure/rust.configure ++++ build/moz.configure/rust.configure +@@ -72,7 +72,7 @@ + You can install rust by running './mach bootstrap' + or by directly running the installer from https://rustup.rs/ + ''')) +- rustc_min_version = Version('1.28.0') ++ rustc_min_version = Version('1.27.0') + cargo_min_version = rustc_min_version + + version = rustc_info.version