pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/mail/thunderbird
Module Name: pkgsrc
Committed By: ryoon
Date: Thu Aug 1 15:27:50 UTC 2024
Modified Files:
pkgsrc/mail/thunderbird: Makefile distinfo mozilla-common.mk
Added Files:
pkgsrc/mail/thunderbird/patches: patch-config_makefiles_rust.mk
patch-js_public_Utility.h patch-third__party_sqlite3_src_moz.build
Log Message:
mail/thunderbird: Update to 115.13.0
* Remove static_assert()s. This is not valid for NetBSD/i386 10 or later.
This may be inconsistency between stddef.h and GCC's assumption.
* Force Clto=thin to reduce memory usage during build.
* Import some other changes from www/firefox115.
Changelog:
115.13.0:
fixed After starting Thunderbird, the message list position was sometimes set to an incorrect position
fixed Security fixes
Security fixes:
Mozilla Foundation Security Advisory 2024-31
#CVE-2024-6600: Memory corruption in WebGL API
#CVE-2024-6601: Race condition in permission assignment
#CVE-2024-6602: Memory corruption in NSS
#CVE-2024-6603: Memory corruption in thread creation
#CVE-2024-6604: Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
Thunderbird 128, and Thunderbird 115.13
To generate a diff of this commit:
cvs rdiff -u -r1.319 -r1.320 pkgsrc/mail/thunderbird/Makefile
cvs rdiff -u -r1.268 -r1.269 pkgsrc/mail/thunderbird/distinfo
cvs rdiff -u -r1.17 -r1.18 pkgsrc/mail/thunderbird/mozilla-common.mk
cvs rdiff -u -r0 -r1.4 \
pkgsrc/mail/thunderbird/patches/patch-config_makefiles_rust.mk
cvs rdiff -u -r0 -r1.1 \
pkgsrc/mail/thunderbird/patches/patch-js_public_Utility.h \
pkgsrc/mail/thunderbird/patches/patch-third__party_sqlite3_src_moz.build
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: pkgsrc/mail/thunderbird/Makefile
diff -u pkgsrc/mail/thunderbird/Makefile:1.319 pkgsrc/mail/thunderbird/Makefile:1.320
--- pkgsrc/mail/thunderbird/Makefile:1.319 Fri Jun 28 13:46:52 2024
+++ pkgsrc/mail/thunderbird/Makefile Thu Aug 1 15:27:50 2024
@@ -1,8 +1,8 @@
-# $NetBSD: Makefile,v 1.319 2024/06/28 13:46:52 ryoon Exp $
+# $NetBSD: Makefile,v 1.320 2024/08/01 15:27:50 ryoon Exp $
DISTNAME= thunderbird-${TB_VER}.source
PKGNAME= thunderbird-${TB_VER}
-TB_VER= 115.12.2
+TB_VER= 115.13.0
CATEGORIES= mail
MASTER_SITES= ${MASTER_SITE_MOZILLA:=thunderbird/releases/${TB_VER}/source/}
EXTRACT_SUFX= .tar.xz
@@ -87,8 +87,8 @@ post-extract:
pre-configure:
cd ${WRKSRC} && mkdir -p ${OBJDIR}
- cd ${WRKSRC}${MOZILLA_DIR} && autoconf-2.13 old-configure.in > old-configure
- cd ${WRKSRC}${MOZILLA_DIR}/js/src && autoconf-2.13 old-configure.in > old-configure
+# cd ${WRKSRC}${MOZILLA_DIR} && autoconf-2.13 old-configure.in > old-configure
+# cd ${WRKSRC}${MOZILLA_DIR}/js/src && autoconf-2.13 old-configure.in > old-configure
touch ${WRKSRC}/.mozconfig
do-build:
Index: pkgsrc/mail/thunderbird/distinfo
diff -u pkgsrc/mail/thunderbird/distinfo:1.268 pkgsrc/mail/thunderbird/distinfo:1.269
--- pkgsrc/mail/thunderbird/distinfo:1.268 Fri Jun 28 13:46:52 2024
+++ pkgsrc/mail/thunderbird/distinfo Thu Aug 1 15:27:50 2024
@@ -1,14 +1,15 @@
-$NetBSD: distinfo,v 1.268 2024/06/28 13:46:52 ryoon Exp $
+$NetBSD: distinfo,v 1.269 2024/08/01 15:27:50 ryoon Exp $
-BLAKE2s (thunderbird-115.12.2.source.tar.xz) = 3419ba03cd15a2308183c5437d88ddf19b5fc508c46c59b0e8db95ed4804a66a
-SHA512 (thunderbird-115.12.2.source.tar.xz) = 182f35e8e5ece98d18dfefe106c73bc97fbc619f59772d9b3455b7c8af412021ecc5eae97a12515224e91deb814abb7a6ef7f538c450e9e77fdfd84078678038
-Size (thunderbird-115.12.2.source.tar.xz) = 529634488 bytes
+BLAKE2s (thunderbird-115.13.0.source.tar.xz) = af5411f26459fa5b097df53d7f969c331e246551a9d470e90f17fccc194fbb98
+SHA512 (thunderbird-115.13.0.source.tar.xz) = 98ee23f684aa7a166878459a6a217bf3bcc4ddd8fa8ebbd0a1d2d66392ec1ebff67dbad55d145cdd0771539f127d91c4137211cf4efc80e450e6a34c95e8529c
+Size (thunderbird-115.13.0.source.tar.xz) = 536438476 bytes
SHA1 (patch-browser_app_profile_firefox.js) = d53fae5544563888d030af7483f00283a712235c
SHA1 (patch-build_moz.configure_init.configure) = 07cb75fad7c2f354b3d1e02e3f6e49cca119f20a
SHA1 (patch-build_moz.configure_rust.configure) = 72c5fa2e9d1022325d038832cca2e35f7213116d
SHA1 (patch-comm_third__party_botan_configure.py) = 262f560c514d221d0df15a1906100b5e716bfdab
SHA1 (patch-comm_third__party_libgcrypt_configure) = c5ca8a8b44c485f81139b54d341ac044189d98d3
SHA1 (patch-config_gcc-stl-wrapper.template.h) = ec0afe1b7d97dc0c305f9f7c197f9a7d7c32e629
+SHA1 (patch-config_makefiles_rust.mk) = 7c3649060aec923a18196e9b1accb590660be710
SHA1 (patch-dom_base_nsAttrName.h) = 4e2326542d4dbba1ac2af5b33505267ee177b094
SHA1 (patch-dom_webtransport_api_WebTransportDatagramDuplexStream.cpp) = b8ea4e8382fb03be6e31b3943a52a95f1a767954
SHA1 (patch-gfx_angle_checkout_src_common_third__party_smhasher_src_PMurHash.cpp) = d08f170629dda585dc3e11706688527fe3dc0e78
@@ -18,6 +19,7 @@ SHA1 (patch-gfx_skia_skia_src_core_SkCpu
SHA1 (patch-ipc_chromium_src_base_message__pump__libevent.cc) = 9de765c6ba6ddf9db9161d10aac57ddbad20075c
SHA1 (patch-ipc_chromium_src_base_platform__thread__posix.cc) = 64475f51534ac683c5b42bcbbd767db87d0ef87b
SHA1 (patch-ipc_glue_GeckoChildProcessHost.cpp) = fa503231403a18e4ca6947fcd9985dcd28f83d0c
+SHA1 (patch-js_public_Utility.h) = 7e97b7feca65de88972286364aaa003ca690f4ad
SHA1 (patch-js_src_jsfriendapi.h) = e013337469254e2a9e598bd070528f0f654acccb
SHA1 (patch-js_src_util_NativeStack.cpp) = 338fdf6aa34101f6a41d07b303d4a8426c483d5b
SHA1 (patch-media_ffvpx_libavutil_arm_bswap.h) = 5a7ad4d38165d49d44862ade846cb79de026867e
@@ -29,6 +31,7 @@ SHA1 (patch-old-configure.in) = d59d2761
SHA1 (patch-security_nss_lib_freebl_mpi_mpi.c) = 0cbf185955c77c9438ced0c294fbc8e4824797bf
SHA1 (patch-third__party_libwebrtc_modules_video__capture_linux_device__info__v4l2.cc) = 8848fb05c1e8b45234f74db71602a8a84c0404a4
SHA1 (patch-third__party_rust_libc_src_unix_bsd_netbsdlike_netbsd_mod.rs) = e9378a3868ddb628213c3a37e2177257c2344bc3
+SHA1 (patch-third__party_sqlite3_src_moz.build) = b26856a4b87aa12211575d9982f62dc899474b52
SHA1 (patch-third__party_wasm2c_src_prebuilt_wasm2c__source__includes.cc) = 99d0db944f0c2d0c623460991efd423d9127c988
SHA1 (patch-toolkit_components_terminator_nsTerminator.cpp) = f80a0844ca37dda91a8cf38d6a542f152657901a
SHA1 (patch-toolkit_modules_subprocess_subprocess__shared__unix.js) = d718759e59910228cc3729e359f328b47aff5eb4
Index: pkgsrc/mail/thunderbird/mozilla-common.mk
diff -u pkgsrc/mail/thunderbird/mozilla-common.mk:1.17 pkgsrc/mail/thunderbird/mozilla-common.mk:1.18
--- pkgsrc/mail/thunderbird/mozilla-common.mk:1.17 Tue Jun 18 03:12:25 2024
+++ pkgsrc/mail/thunderbird/mozilla-common.mk Thu Aug 1 15:27:50 2024
@@ -1,19 +1,20 @@
-# $NetBSD: mozilla-common.mk,v 1.17 2024/06/18 03:12:25 ryoon Exp $
+# $NetBSD: mozilla-common.mk,v 1.18 2024/08/01 15:27:50 ryoon Exp $
#
# common Makefile fragment for mozilla packages based on gecko 2.0.
#
-# used by mail/thunderbird/Makefile
+# used by www/firefox/Makefile
.include "../../mk/bsd.prefs.mk"
-PYTHON_VERSIONS_INCOMPATIBLE= 27 312
-
+PYTHON_VERSIONS_INCOMPATIBLE= 27
PYTHON_FOR_BUILD_ONLY= tool
ALL_ENV+= PYTHON3=${PYTHONBIN}
+REPLACE_PYTHON= build/cargo-linker
+
HAS_CONFIGURE= yes
CONFIGURE_ARGS+= --prefix=${PREFIX}
-USE_TOOLS+= pkg-config perl gmake autoconf213 unzip zip
+USE_TOOLS+= pkg-config perl gmake gm4 unzip zip # autoconf213
UNLIMIT_RESOURCES+= datasize virtualsize
OVERRIDE_GNU_CONFIG_SCRIPTS= yes
@@ -21,15 +22,13 @@ OVERRIDE_DIRDEPTH= 4
USE_LANGUAGES+= c c++
-# ERROR: Only GCC 8.1 or newer is supported (found version 7.5.0).
+# XXX: As of 114.0.2
+# For nested constant initializer support in rlbox, requires 8.
GCC_REQD+= 8
-TOOL_DEPENDS+= cbindgen>=0.24.0:../../devel/cbindgen
-.if ${MACHINE_ARCH} == "sparc64"
-CONFIGURE_ARGS+= --disable-nodejs
-.else
+TOOL_DEPENDS+= cbindgen>=0.24.3:../../devel/cbindgen
+
TOOL_DEPENDS+= nodejs-[0-9]*:../../lang/nodejs
-.endif
# malloc_usable_size()
LDFLAGS.NetBSD+= -ljemalloc
@@ -37,6 +36,7 @@ LDFLAGS.NetBSD+= -ljemalloc
.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64"
TOOL_DEPENDS+= nasm>=2.14:../../devel/nasm
TOOL_DEPENDS+= yasm>=1.1:../../devel/yasm
+CFLAGS+= -msse2
.endif
# This is to work around build failures where an upstream configuration script
@@ -56,7 +56,7 @@ CONFIGURE_ARGS+= --host=${MACHINE_GNU_PL
CONFIGURE_ENV+= BINDGEN_CFLAGS="-isystem${PREFIX}/include/nspr \
-isystem${X11BASE}/include/pixman-1"
-test:
+do-test:
cd ${WRKSRC}/${OBJDIR}/dist/bin && \
./run-mozilla.sh ${WRKSRC}/mach check-spidermonkey
@@ -64,22 +64,22 @@ test:
.if ${OPSYS} == "OpenBSD"
TOOLS_PLATFORM.tar= ${TOOLS_PATH.bsdtar}
USE_TOOLS+= bsdtar
+.else
+USE_TOOLS+= tar
.endif
+
.if ${MACHINE_ARCH} == "i386"
# This is required for SSE2 code under i386.
-CFLAGS+= -mstackrealign
+CFLAGS+= -mstackrealign
.endif
-CHECK_PORTABILITY_SKIP+= ${MOZILLA_DIR}third_party/python/glean_parser/Makefile
-CHECK_PORTABILITY_SKIP+= ${MOZILLA_DIR}security/nss/tests/libpkix/libpkix.sh
-CHECK_PORTABILITY_SKIP+= ${MOZILLA_DIR}security/nss/tests/multinit/multinit.sh
+CHECK_PORTABILITY_SKIP+= ${MOZILLA_DIR}security/nss/tests/*/*.sh
CHECK_PORTABILITY_SKIP+= ${MOZILLA_DIR}js/src/tests/update-test262.sh
CHECK_PORTABILITY_SKIP+= ${MOZILLA_DIR}intl/icu/source/configure
CHECK_PORTABILITY_SKIP+= ${MOZILLA_DIR}browser/components/loop/run-all-loop-tests.sh
CHECK_PORTABILITY_SKIP+= ${MOZILLA_DIR}browser/extensions/loop/run-all-loop-tests.sh
-#CHECK_PORTABILITY_SKIP+= ${MOZILLA_DIR}modules/pdfium/update.sh
+CHECK_PORTABILITY_SKIP+= ${MOZILLA_DIR}third_party/libwebrtc/tools_webrtc/iwyu/apply-iwyu
-CONFIGURE_ARGS+= --enable-default-toolkit=cairo-gtk3
CONFIGURE_ARGS+= --enable-release
# Disable Rust SIMD option to fix build with lang/rust-1.33.0
# This should be enabled later again.
@@ -88,27 +88,29 @@ CONFIGURE_ARGS+= --disable-tests
# Mozilla Bug 1432751
#CONFIGURE_ARGS+= --enable-system-cairo
CONFIGURE_ARGS+= --enable-system-pixman
-# webrtc option requires internal libvpx
-#CONFIGURE_ARGS+= --with-system-libvpx
+CONFIGURE_ARGS+= --with-system-libvpx
CONFIGURE_ARGS+= --enable-system-ffi
-# icu-74.1 produces invalid timezone string.
-# https://unicode-org.atlassian.net/browse/ICU-22132
-CONFIGURE_ARGS+= --without-system-icu
+CONFIGURE_ARGS+= --with-system-icu
CONFIGURE_ARGS+= --with-system-nss
CONFIGURE_ARGS+= --with-system-nspr
#CONFIGURE_ARGS+= --with-system-jpeg
CONFIGURE_ARGS+= --with-system-zlib
CONFIGURE_ARGS+= --with-system-libevent
CONFIGURE_ARGS+= --disable-crashreporter
-#CONFIGURE_ARGS+= --disable-necko-wifi
-CONFIGURE_ARGS+= --enable-chrome-format=flat
+CONFIGURE_ARGS+= --enable-chrome-format=omni
CONFIGURE_ARGS+= --with-system-webp
#CONFIGURE_ARGS+= --enable-readline
CONFIGURE_ARGS+= --disable-icf
CONFIGURE_ARGS+= --disable-updater
-#CONFIGURE_ARGS+= --with-libclang-path=${PREFIX}/lib
+.include "../../mk/compiler.mk"
+
+.if empty(PKGSRC_COMPILER:Mclang)
+# Set path to "clang for cbindgen" when target compiler is not clang.
+CONFIGURE_ARGS+= --with-clang-path=${PREFIX}/bin/clang
+.endif
+CONFIGURE_ARGS+= --with-libclang-path=${PREFIX}/lib
# RLBox WASM sandbox
.if ${MACHINE_ARCH} == "x86_64" || ${MACHINE_ARCH} == "i386"
@@ -116,8 +118,6 @@ CONFIGURE_ARGS+= --disable-updater
TOOL_DEPENDS+= lld-[0-9]*:../../devel/lld
.include "../../lang/wasi-libc/buildlink3.mk"
.include "../../lang/wasi-libcxx/buildlink3.mk"
-# NB the exact versions of the clang and wasi-compiler-rt dependencies must
-# be kept in sync, or build failures will occur due to path mismatches.
.include "../../lang/wasi-compiler-rt/buildlink3.mk"
CONFIGURE_ARGS+= --with-wasi-sysroot=${PREFIX}/wasi
CONFIGURE_ENV+= WASM_CC=${PREFIX}/bin/clang
@@ -126,11 +126,44 @@ CONFIGURE_ENV+= WASM_CXX=${PREFIX}/bin/
CONFIGURE_ARGS+= --without-wasm-sandboxed-libraries
.endif
-SUBST_CLASSES+= fix-paths
-SUBST_STAGE.fix-paths= pre-configure
-SUBST_MESSAGE.fix-paths= Fixing absolute paths.
-SUBST_FILES.fix-paths+= ${MOZILLA_DIR}toolkit/xre/nsXREDirProvider.cpp
-SUBST_SED.fix-paths+= -e 's,/usr/lib/mozilla,${PREFIX}/lib/mozilla,g'
+.include "../../sysutils/pciutils/libname.mk"
+SUBST_CLASSES+= fix-libpci-soname
+SUBST_STAGE.fix-libpci-soname= pre-configure
+SUBST_MESSAGE.fix-libpci-soname= Fixing libpci soname
+SUBST_FILES.fix-libpci-soname+= ${MOZILLA_DIR}toolkit/xre/glxtest/glxtest.cpp
+SUBST_SED.fix-libpci-soname+= -e 's,"libpci.so, "lib${PCIUTILS_LIBNAME}.so,'
+
+.if !empty(MACHINE_PLATFORM:MNetBSD-*-i386)
+SQLITE3OPTFLAG= '-O0',
+.else
+SQLITE3OPTFLAG= # empty
+.endif
+SUBST_CLASSES+= sqlite3-opt
+SUBST_STAGE.sqlite3-opt= pre-configure
+SUBST_MESSAGE.sqlite3-opt= Fixing segfault in libmozsqlite3.so
+SUBST_FILES.sqlite3-opt+= ${MOZILLA_DIR}third_party/sqlite3/src/moz.build
+SUBST_VARS.sqlite3-opt+= SQLITE3OPTFLAG
+
+# Do not pass '-j1 -j1' for MAKE_JOBS=1 for NetBSD 9.3 or earlier.
+RUST_MAKE_JOBS= # empty by default
+.if ${OPSYS} == "NetBSD" && ${OPSYS_VERSION} < 090400
+. if defined(MAKE_JOBS) && !empty(MAKE_JOBS) && !(defined(MAKE_JOBS_SAFE) && ${MAKE_JOBS_SAFE:U:tl} == no)
+. if ${MAKE_JOBS} > 1
+RUST_MAKE_JOBS= -j1 # for MAKE_JOBS=1, RUST_MAKE_JOBS should be empty.
+. endif
+. endif
+.endif
+
+SUBST_CLASSES+= njobs
+SUBST_STAGE.njobs= pre-configure
+SUBST_MESSAGE.njobs= Setting MAKE_JOBS for cairo
+SUBST_FILES.njobs+= ${MOZILLA_DIR}config/makefiles/rust.mk
+SUBST_VARS.njobs+= RUST_MAKE_JOBS
+
+# Workaround for link of libxul.so as of 96.0.
+# There are too many -ldl under third_paty/libwebrtc.
+.include "../../mk/dlopen.buildlink3.mk"
+BUILDLINK_TRANSFORM+= opt:-ldl:${BUILDLINK_LDADD.dl:Q}
CONFIG_GUESS_OVERRIDE+= ${MOZILLA_DIR}build/autoconf/config.guess
CONFIG_GUESS_OVERRIDE+= ${MOZILLA_DIR}js/src/build/autoconf/config.guess
@@ -143,17 +176,22 @@ CONFIG_SUB_OVERRIDE+= ${MOZILLA_DIR}/js
CONFIGURE_ENV+= CPP=${CPP:Q}
ALL_ENV+= SHELL=${CONFIG_SHELL:Q}
+ALL_ENV+= MOZ_APP_NAME=${MOZILLA}
# Build outside ${WRKSRC}
# Try to avoid conflict with config/makefiles/xpidl/Makefile.in
+.if ${MAINTAINER_INTERNAL:Uno} == "yes"
+OBJDIR= ../no-node-build
+.else
OBJDIR= ../build
+.endif
CONFIGURE_DIRS= ${OBJDIR}
CONFIGURE_SCRIPT= ${WRKSRC}/configure
PLIST_VARS+= ffvpx
.if ${MACHINE_ARCH} == "aarch64" || \
- !empty(MACHINE_ARCH:M*arm*) || \
+ ${MACHINE_ARCH:M*arm*} || \
${MACHINE_ARCH} == "i386" || \
${MACHINE_ARCH} == "x86_64"
PLIST.ffvpx= yes # see media/ffvpx/ffvpxcommon.mozbuild
@@ -163,14 +201,6 @@ PLIST.ffvpx= yes # see media/ffvpx/ffvpx
# support is only available when the toolkit is cairo-cocoa.
CONFIGURE_ARGS.Darwin+= --disable-sandbox
-# See ${WRKSRC}/configure.in: It tries to use MacOS X 10.6 SDK by
-# default, which is not always possible.
-.if !empty(MACHINE_PLATFORM:MDarwin-8.*-*)
-CONFIGURE_ARGS+= --enable-macos-target=10.4
-.elif !empty(MACHINE_PLATFORM:MDarwin-9.*-*)
-CONFIGURE_ARGS+= --enable-macos-target=10.5
-.endif
-
# Makefiles sometimes call "rm -f" without more arguments. Kludge around ...
.PHONY: create-rm-wrapper
pre-configure: create-rm-wrapper
@@ -179,32 +209,21 @@ create-rm-wrapper:
${WRAPPER_DIR}/bin/rm
chmod +x ${WRAPPER_DIR}/bin/rm
-.PHONY: fix-clang-wrapper
-pre-configure: fix-clang-wrapper
-fix-clang-wrapper:
-.if empty(PKGSRC_COMPILER:M*clang*)
-# Firefox requires Clang during the build, even when building with GCC.
-# XXX: When using GCC, pkgsrc provides 'clang' wrappers that are actually gcc.
-# This breaks the build.
- ${LN} -sf ${PREFIX}/bin/clang ${WRKDIR}/.cwrapper/bin/clang
- ${LN} -sf ${PREFIX}/bin/clang++ ${WRKDIR}/.cwrapper/bin/clang++
- ${LN} -sf ${PREFIX}/bin/clang-cpp ${WRKDIR}/.cwrapper/bin/clang-cpp
-.endif
-
# The configure test for __thread succeeds, but later we end up with:
# dist/bin/libxul.so: undefined reference to `__tls_get_addr'
CONFIGURE_ENV.NetBSD+= ac_cv_thread_keyword=no
# In unspecified case, clock_gettime(CLOCK_MONOTONIC, ...) fails.
CONFIGURE_ENV.NetBSD+= ac_cv_clock_monotonic=
+.include "../../sysutils/pciutils/buildlink3.mk"
.include "../../mk/atomic64.mk"
BUILDLINK_API_DEPENDS.libevent+= libevent>=1.1
.include "../../devel/libevent/buildlink3.mk"
.include "../../devel/libffi/buildlink3.mk"
-BUILDLINK_API_DEPENDS.nspr+= nspr>=4.25
+BUILDLINK_API_DEPENDS.nspr+= nspr>=4.34
.include "../../devel/nspr/buildlink3.mk"
-#.include "../../textproc/icu/buildlink3.mk"
-BUILDLINK_API_DEPENDS.nss+= nss>=3.53
+.include "../../textproc/icu/buildlink3.mk"
+BUILDLINK_API_DEPENDS.nss+= nss>=3.90
.include "../../devel/nss/buildlink3.mk"
.include "../../devel/zlib/buildlink3.mk"
#.include "../../mk/jpeg.buildlink3.mk"
@@ -215,22 +234,25 @@ BUILDLINK_API_DEPENDS.libwebp+= libwebp>
.include "../../graphics/libwebp/buildlink3.mk"
BUILDLINK_DEPMETHOD.clang= build
.include "../../lang/clang/buildlink3.mk"
-RUST_REQ= 1.41.0
+RUST_REQ= 1.66.0
.include "../../lang/rust/rust.mk"
-# webrtc option requires internal libvpx
-#BUILDLINK_API_DEPENDS.libvpx+= libvpx>=1.3.0
-#.include "../../multimedia/libvpx/buildlink3.mk"
+.include "../../multimedia/libvpx/buildlink3.mk"
.include "../../net/libIDL/buildlink3.mk"
-# textproc/hunspell 1.3 is too old
+# TODO: check again, pkgsrc has hunspell 1.7
+# was: textproc/hunspell 1.3 is too old
#.include "../../textproc/hunspell/buildlink3.mk"
.include "../../multimedia/ffmpeg6/buildlink3.mk"
.include "../../x11/libXt/buildlink3.mk"
+.include "../../x11/libXtst/buildlink3.mk"
BUILDLINK_API_DEPENDS.pixman+= pixman>=0.25.2
.include "../../x11/pixman/buildlink3.mk"
.include "../../x11/gtk3/buildlink3.mk"
PLIST_VARS+= wayland
.if ${PKG_BUILD_OPTIONS.gtk3:Mwayland}
+CONFIGURE_ARGS+= --enable-default-toolkit=cairo-gtk3-x11-wayland
PLIST.wayland= yes
+.else
+CONFIGURE_ARGS+= --enable-default-toolkit=cairo-gtk3
.endif
.include "../../lang/python/batteries-included.mk"
-.include "../../lang/python/tool.mk"
+.include "../../lang/python/application.mk"
Added files:
Index: pkgsrc/mail/thunderbird/patches/patch-config_makefiles_rust.mk
diff -u /dev/null pkgsrc/mail/thunderbird/patches/patch-config_makefiles_rust.mk:1.4
--- /dev/null Thu Aug 1 15:27:50 2024
+++ pkgsrc/mail/thunderbird/patches/patch-config_makefiles_rust.mk Thu Aug 1 15:27:50 2024
@@ -0,0 +1,29 @@
+$NetBSD: patch-config_makefiles_rust.mk,v 1.4 2024/08/01 15:27:50 ryoon Exp $
+
+NetBSD doesn't get along with parallel rust builds (it causes issues
+with ld.so) which are the default. Force -j1.
+
+Use less memory to fix build under NetBSD/i386.
+From: https://bugzilla.mozilla.org/show_bug.cgi?id=1644409
+
+--- config/makefiles/rust.mk.orig 2023-06-22 21:19:03.000000000 +0000
++++ config/makefiles/rust.mk
+@@ -60,6 +60,9 @@ ifdef MOZ_TSAN
+ cargo_build_flags += -Zbuild-std=std,panic_abort
+ RUSTFLAGS += -Zsanitizer=thread
+ endif
++ifeq ($(OS_ARCH),NetBSD)
++cargo_build_flags += @RUST_MAKE_JOBS@
++endif
+
+ rustflags_sancov =
+ ifdef LIBFUZZER
+@@ -92,7 +95,7 @@ ifndef rustflags_sancov
+ # Never enable when coverage is enabled to work around https://github.com/rust-lang/rust/issues/90045.
+ ifndef MOZ_CODE_COVERAGE
+ ifeq (,$(findstring gkrust_gtest,$(RUST_LIBRARY_FILE)))
+-cargo_rustc_flags += -Clto$(if $(filter full,$(MOZ_LTO_RUST_CROSS)),=fat)
++cargo_rustc_flags += -Clto=thin
+ endif
+ # We need -Cembed-bitcode=yes for all crates when using -Clto.
+ RUSTFLAGS += -Cembed-bitcode=yes
Index: pkgsrc/mail/thunderbird/patches/patch-js_public_Utility.h
diff -u /dev/null pkgsrc/mail/thunderbird/patches/patch-js_public_Utility.h:1.1
--- /dev/null Thu Aug 1 15:27:50 2024
+++ pkgsrc/mail/thunderbird/patches/patch-js_public_Utility.h Thu Aug 1 15:27:50 2024
@@ -0,0 +1,24 @@
+$NetBSD: patch-js_public_Utility.h,v 1.1 2024/08/01 15:27:50 ryoon Exp $
+
+--- js/public/Utility.h.orig 2024-07-15 21:09:40.000000000 +0000
++++ js/public/Utility.h
+@@ -478,9 +478,6 @@ static inline void js_free(void* p) {
+ #define JS_DECLARE_NEW_METHODS(NEWNAME, ALLOCATOR, QUALIFIERS) \
+ template <class T, typename... Args> \
+ QUALIFIERS T* MOZ_HEAP_ALLOCATOR NEWNAME(Args&&... args) { \
+- static_assert( \
+- alignof(T) <= alignof(max_align_t), \
+- "over-aligned type is not supported by JS_DECLARE_NEW_METHODS"); \
+ void* memory = ALLOCATOR(sizeof(T)); \
+ return MOZ_LIKELY(memory) ? new (memory) T(std::forward<Args>(args)...) \
+ : nullptr; \
+@@ -497,9 +494,6 @@ static inline void js_free(void* p) {
+ #define JS_DECLARE_NEW_ARENA_METHODS(NEWNAME, ALLOCATOR, QUALIFIERS) \
+ template <class T, typename... Args> \
+ QUALIFIERS T* MOZ_HEAP_ALLOCATOR NEWNAME(arena_id_t arena, Args&&... args) { \
+- static_assert( \
+- alignof(T) <= alignof(max_align_t), \
+- "over-aligned type is not supported by JS_DECLARE_NEW_ARENA_METHODS"); \
+ void* memory = ALLOCATOR(arena, sizeof(T)); \
+ return MOZ_LIKELY(memory) ? new (memory) T(std::forward<Args>(args)...) \
+ : nullptr; \
Index: pkgsrc/mail/thunderbird/patches/patch-third__party_sqlite3_src_moz.build
diff -u /dev/null pkgsrc/mail/thunderbird/patches/patch-third__party_sqlite3_src_moz.build:1.1
--- /dev/null Thu Aug 1 15:27:50 2024
+++ pkgsrc/mail/thunderbird/patches/patch-third__party_sqlite3_src_moz.build Thu Aug 1 15:27:50 2024
@@ -0,0 +1,15 @@
+$NetBSD: patch-third__party_sqlite3_src_moz.build,v 1.1 2024/08/01 15:27:50 ryoon Exp $
+
+* Fix segfault under NetBSD/i386 9 and pkgsrc/lang/gcc8-8.5.0
+ For NetBSD/i386 9, @SQLITE3OPTFLAG@ will be replaced with "'-O0',".
+
+--- third_party/sqlite3/src/moz.build.orig 2023-06-22 21:19:22.000000000 +0000
++++ third_party/sqlite3/src/moz.build
+@@ -108,6 +108,7 @@ if CONFIG['CC_TYPE'] in ('clang', 'gcc')
+ CFLAGS += [
+ '-Wno-sign-compare',
+ '-Wno-type-limits',
++ @SQLITE3OPTFLAG@
+ ]
+
+ # Set a default journal size limit. Note an hot journal can grow over this
Home |
Main Index |
Thread Index |
Old Index