diff options
Diffstat (limited to 'package/firefox')
4 files changed, 116 insertions, 0 deletions
diff --git a/package/firefox/Makefile b/package/firefox/Makefile new file mode 100644 index 000000000..93a0199cb --- /dev/null +++ b/package/firefox/Makefile @@ -0,0 +1,56 @@ +# This file is part of the OpenADK project. OpenADK is copyrighted +# material, please see the LICENCE file in the top-level directory. + +include $(ADK_TOPDIR)/rules.mk + +PKG_NAME:= firefox +PKG_VERSION:= 129.0.2 +PKG_RELEASE:= 1 +PKG_HASH:= 35a1da121af474833d013ecbc1f77aa55bb35678fe06d438842d320dfab3f344 +PKG_DESCR:= www browser +PKG_SECTION:= app/browser +PKG_DEPENDS:= pango libfreetype fontconfig libxcomposite libxcursor +PKG_DEPENDS+= libgtk3 dbus-glib alsa-lib libatk harfbuzz +PKG_BUILDDEP:= python3-host nodejs-host pango freetype fontconfig libXcomposite +PKG_BUILDDEP+= libXcursor libgtk3 dbus-glib alsa-lib atk harfbuzz +PKG_SITES:= https://ftp.mozilla.org/pub/firefox/releases/$(PKG_VERSION)/source/ + +PKG_ARCH_DEPENDS:= aarch64 + +DISTFILES:= $(PKG_NAME)-$(PKG_VERSION).source.tar.xz + +include $(ADK_TOPDIR)/mk/package.mk + +$(eval $(call PKG_template,FIREFOX,firefox,$(PKG_VERSION)-$(PKG_RELEASE),$(PKG_DEPENDS),$(PKG_DESCR),$(PKG_SECTION))) + +WRKBUILD= $(WRKDIR)/$(PKG_NAME)-obj + +ifeq ($(ADK_TARGET_ARCH),aarch64) +TARGET_NAME:= aarch64-linux-gnu +endif + +CONFIG_STYLE:= minimal +CONFIGURE_ENV+= CROSS_COMPILE=1 \ + BINDGEN_CFLAGS="--sysroot /usr/$(TARGET_NAME)" \ + AS="$(GNU_TARGET_NAME)-gcc" +CONFIGURE_ARGS+= --prefix=/usr \ + --target=$(TARGET_NAME) \ + --with-toolchain-prefix=$(GNU_TARGET_NAME)- \ + --enable-application=browser \ + --enable-official-branding \ + --disable-audio-backends \ + --without-wasm-sandboxed-libraries \ + --disable-profiling \ + --disable-crashreporter \ + --with-clang-path=/usr/bin/clang-18 \ + --with-libclang-path=/usr/lib/llvm-18/lib + +firefox-install: + $(INSTALL_DIR) $(IDIR_FIREFOX)/usr/bin + $(INSTALL_DIR) $(IDIR_FIREFOX)/usr/lib/firefox + $(CP) $(WRKINST)/usr/bin/firefox \ + $(IDIR_FIREFOX)/usr/bin + $(CP) $(WRKINST)/usr/lib/firefox/* \ + $(IDIR_FIREFOX)/usr/lib/firefox + +include $(ADK_TOPDIR)/mk/pkg-bottom.mk diff --git a/package/firefox/patches/patch-build_moz_configure_flags_configure b/package/firefox/patches/patch-build_moz_configure_flags_configure new file mode 100644 index 000000000..c0ac77a7c --- /dev/null +++ b/package/firefox/patches/patch-build_moz_configure_flags_configure @@ -0,0 +1,13 @@ +--- firefox-129.0.2.orig/build/moz.configure/flags.configure 2024-08-19 21:21:42.000000000 +0200 ++++ firefox-129.0.2/build/moz.configure/flags.configure 2024-09-08 06:27:20.661198142 +0200 +@@ -72,10 +72,6 @@ def link_libstdcxx_statically( + ) + + +-@depends(when=link_libstdcxx_statically) +-def check_libstdcxx_linkage(): +- die("Firefox does not support linking statically with libstdc++") +- + + check_and_add_flag( + "-mieee", diff --git a/package/firefox/patches/patch-servo_components_style_traits_values_rs b/package/firefox/patches/patch-servo_components_style_traits_values_rs new file mode 100644 index 000000000..cc02de658 --- /dev/null +++ b/package/firefox/patches/patch-servo_components_style_traits_values_rs @@ -0,0 +1,37 @@ +--- firefox-129.0.2.orig/servo/components/style_traits/values.rs 2024-08-19 21:21:51.000000000 +0200 ++++ firefox-129.0.2/servo/components/style_traits/values.rs 2024-09-08 06:18:31.271680673 +0200 +@@ -388,11 +388,11 @@ impl Separator for Space { + where + F: for<'tt> FnMut(&mut Parser<'i, 'tt>) -> Result<T, ParseError<'i, E>>, + { +- input.skip_whitespace(); // Unnecessary for correctness, but may help try() rewind less. ++ input.skip_whitespace(); // Unnecessary for correctness, but may help try_parse() rewind less. + let mut results = vec![parse_one(input)?]; + loop { +- input.skip_whitespace(); // Unnecessary for correctness, but may help try() rewind less. +- if let Ok(item) = input.try(&mut parse_one) { ++ input.skip_whitespace(); // Unnecessary for correctness, but may help try_parse() rewind less. ++ if let Ok(item) = input.try_parse(&mut parse_one) { + results.push(item); + } else { + return Ok(results); +@@ -413,14 +413,14 @@ impl Separator for CommaWithSpace { + where + F: for<'tt> FnMut(&mut Parser<'i, 'tt>) -> Result<T, ParseError<'i, E>>, + { +- input.skip_whitespace(); // Unnecessary for correctness, but may help try() rewind less. ++ input.skip_whitespace(); // Unnecessary for correctness, but may help try_parse() rewind less. + let mut results = vec![parse_one(input)?]; + loop { +- input.skip_whitespace(); // Unnecessary for correctness, but may help try() rewind less. ++ input.skip_whitespace(); // Unnecessary for correctness, but may help try_parse() rewind less. + let comma_location = input.current_source_location(); +- let comma = input.try(|i| i.expect_comma()).is_ok(); +- input.skip_whitespace(); // Unnecessary for correctness, but may help try() rewind less. +- if let Ok(item) = input.try(&mut parse_one) { ++ let comma = input.try_parse(|i| i.expect_comma()).is_ok(); ++ input.skip_whitespace(); // Unnecessary for correctness, but may help try_parse() rewind less. ++ if let Ok(item) = input.try_parse(&mut parse_one) { + results.push(item); + } else if comma { + return Err(comma_location.new_unexpected_token_error(Token::Comma)); diff --git a/package/firefox/patches/patch-servo_ports_geckolib_cbindgen_toml b/package/firefox/patches/patch-servo_ports_geckolib_cbindgen_toml new file mode 100644 index 000000000..7cf9a3d17 --- /dev/null +++ b/package/firefox/patches/patch-servo_ports_geckolib_cbindgen_toml @@ -0,0 +1,10 @@ +--- firefox-129.0.2.orig/servo/ports/geckolib/cbindgen.toml 2024-08-19 21:21:52.000000000 +0200 ++++ firefox-129.0.2/servo/ports/geckolib/cbindgen.toml 2024-09-08 06:18:31.275680774 +0200 +@@ -360,7 +360,6 @@ renaming_overrides_prefixing = true + "Keyframe" = "Keyframe" + "nsChangeHint" = "nsChangeHint" + "ServoElementSnapshotTable" = "ServoElementSnapshotTable" +-"Keyframe" = "Keyframe" + "ComputedKeyframeValues" = "ComputedKeyframeValues" + "OriginFlags" = "OriginFlags" + "ServoTraversalFlags" = "ServoTraversalFlags" |