mirror of
https://github.com/chromebrew/chromebrew.git
synced 2026-01-09 23:48:01 -05:00
icu4c => 73.1, plus {py3_}libxml2 => 2.11.3 (#8269)
* weston => 12 * add unifdef * cleanup icu4c * add filelists and sort * initial webkit2gtk and webkitgtk rework * update webkitgtk_6 * add evolution_data_server build * add builds for qtwebengine and jellyfin_media_player * cleanup packages * lint * rebuild icu4c * update gdbm * cleanup libxml2 * cleanup * updates * rebuild libdb with update patches * add binaries * add old ver for comparison
This commit is contained in:
committed by
GitHub
parent
c51b5b19f2
commit
1d3db536d5
179
packages/webkitgtk_6.rb
Normal file
179
packages/webkitgtk_6.rb
Normal file
@@ -0,0 +1,179 @@
|
||||
class Webkitgtk_6 < Package
|
||||
description 'Web content engine for GTK'
|
||||
homepage 'https://webkitgtk.org'
|
||||
version '2.40.1'
|
||||
license 'LGPL-2+ and BSD-2'
|
||||
compatibility 'x86_64'
|
||||
source_url 'https://webkitgtk.org/releases/webkitgtk-2.40.1.tar.xz'
|
||||
source_sha256 '64e526984f8cd2161ef03ae949af99c002ff333d615e6386b460164a3c1b7ef6'
|
||||
|
||||
binary_url({
|
||||
x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/webkitgtk_6/2.40.1_x86_64/webkitgtk_6-2.40.1-chromeos-x86_64.tar.zst'
|
||||
})
|
||||
binary_sha256({
|
||||
x86_64: '6f1f6309d27d15ba2040a6f0753c9c36e40ae213f9324dcfc4486e613c671bf7'
|
||||
})
|
||||
|
||||
depends_on 'at_spi2_core' # R
|
||||
depends_on 'cairo'
|
||||
# depends_on 'ccache' => :build
|
||||
depends_on 'dav1d'
|
||||
depends_on 'enchant' # R
|
||||
depends_on 'fontconfig'
|
||||
depends_on 'freetype' # R
|
||||
depends_on 'gcc10' => :build
|
||||
depends_on 'gcc' # R
|
||||
depends_on 'gdk_pixbuf' # R
|
||||
depends_on 'glibc' # R
|
||||
depends_on 'glib' # R
|
||||
depends_on 'gobject_introspection' => :build
|
||||
depends_on 'graphene' # R
|
||||
depends_on 'gstreamer' # R
|
||||
depends_on 'gtk3' # R
|
||||
depends_on 'gtk4' # R
|
||||
depends_on 'gtk_doc' => :build
|
||||
depends_on 'harfbuzz' # R
|
||||
depends_on 'hyphen' # R
|
||||
depends_on 'icu4c' # R
|
||||
depends_on 'lcms' # R
|
||||
depends_on 'libavif' # R
|
||||
depends_on 'libdrm' # R
|
||||
depends_on 'libepoxy' # R
|
||||
depends_on 'libgcrypt' # R
|
||||
depends_on 'libglvnd' # R
|
||||
depends_on 'libgpgerror' # R
|
||||
depends_on 'libjpeg' # R
|
||||
depends_on 'libjxl' # R
|
||||
depends_on 'libnotify'
|
||||
depends_on 'libpng' # R
|
||||
depends_on 'libsecret' # R
|
||||
depends_on 'libsoup'
|
||||
depends_on 'libsoup2' # R
|
||||
depends_on 'libtasn1' # R
|
||||
depends_on 'libwebp' # R
|
||||
depends_on 'libwpe' # R
|
||||
depends_on 'libx11' # R
|
||||
depends_on 'libxcomposite' # R
|
||||
depends_on 'libxdamage' # R
|
||||
depends_on 'libxml2' # R
|
||||
depends_on 'libxrender' # R
|
||||
depends_on 'libxslt' # R
|
||||
depends_on 'libxt' # R
|
||||
depends_on 'mesa' # R
|
||||
depends_on 'openjpeg' # R
|
||||
depends_on 'pango' # R
|
||||
depends_on 'py3_gi_docgen' => :build
|
||||
depends_on 'py3_smartypants' => :build
|
||||
depends_on 'sqlite' # R
|
||||
depends_on 'unifdef' => :build
|
||||
depends_on 'valgrind' => :build
|
||||
depends_on 'vulkan_headers' => :build
|
||||
depends_on 'vulkan_icd_loader'
|
||||
depends_on 'wayland' # R
|
||||
depends_on 'woff2' # R
|
||||
depends_on 'wpebackend_fdo' # R
|
||||
depends_on 'zlibpkg' # R
|
||||
|
||||
no_env_options
|
||||
|
||||
def self.patch
|
||||
system "sed -i 's,/usr/bin,/usr/local/bin,g' Source/JavaScriptCore/inspector/scripts/codegen/preprocess.pl"
|
||||
@arch_flags = ''
|
||||
@gcc_ver = ''
|
||||
if ARCH == 'armv7l' || ARCH == 'aarch64'
|
||||
## Patch from https://bugs.webkit.org/show_bug.cgi?id=226557#c27 to
|
||||
## handle issue with gcc > 11.
|
||||
# @gcc_patch = <<~'GCCEOF'
|
||||
# diff --git a/Source/cmake/WebKitCompilerFlags.cmake b/Source/cmake/WebKitCompilerFlags.cmake
|
||||
# index 77ebb802ebb03450b5e96629a47b6819a68672c6..d49d6e43d7eeb6673c624e00eadf3edfca0674eb 100644
|
||||
#--- a/Source/cmake/WebKitCompilerFlags.cmake
|
||||
#+++ b/Source/cmake/WebKitCompilerFlags.cmake
|
||||
# @@ -143,6 +143,13 @@ if (COMPILER_IS_GCC_OR_CLANG)
|
||||
# WEBKIT_PREPEND_GLOBAL_CXX_FLAGS(-Wno-nonnull)
|
||||
# endif ()
|
||||
|
||||
#+ # This triggers warnings in wtf/Packed.h, a header that is included in many places. It does not
|
||||
#+ # respect ignore warning pragmas and we cannot easily suppress it for all affected files.
|
||||
#+ # https://bugs.webkit.org/show_bug.cgi?id=226557
|
||||
#+ if (CMAKE_CXX_COMPILER_ID MATCHES "GNU" AND ${CMAKE_CXX_COMPILER_VERSION} VERSION_GREATER_EQUAL "11.0")
|
||||
#+ WEBKIT_PREPEND_GLOBAL_CXX_FLAGS(-Wno-stringop-overread)
|
||||
#+ endif ()
|
||||
#+
|
||||
## -Wexpansion-to-defined produces false positives with GCC but not Clang
|
||||
## https://bugs.webkit.org/show_bug.cgi?id=167643#c13
|
||||
# if (CMAKE_CXX_COMPILER_ID MATCHES "GNU")
|
||||
# GCCEOF
|
||||
# File.write('gcc.patch', @gcc_patch)
|
||||
# system 'patch -Np1 -F 10 -i gcc.patch'
|
||||
# Patch from https://github.com/WebKit/WebKit/pull/1233
|
||||
# downloader 'https://patch-diff.githubusercontent.com/raw/WebKit/WebKit/pull/1233.diff',
|
||||
# '70c990ced72c5551b01c9d7c72da7900d609d0f7891e7b99ab132ac1b4aa33ea'
|
||||
# system "sed -i 's,data.pixels->bytes(),data.pixels->data(),' 1233.diff"
|
||||
# system 'patch -Np1 -F 10 -i 1233.diff'
|
||||
# Patch from https://github.com/WebKit/WebKit/pull/2926
|
||||
# downloader 'https://patch-diff.githubusercontent.com/raw/WebKit/WebKit/pull/2926.diff',
|
||||
# '26a8d5a9dd9d61865645158681b766e13cf05b3ed07f30bebb79ff73259d0664'
|
||||
# system "sed -i '22,63d' 2926.diff"
|
||||
# system 'patch -Np1 -F 10 -i 2926.diff'
|
||||
# @arch_flags = '-mtune=cortex-a15 -mfloat-abi=hard -mfpu=neon -mtls-dialect=gnu -marm -mlibarch=armv8-a+crc+simd -march=armv8-a+crc+simd'
|
||||
@arch_flags = '-mfloat-abi=hard -mtls-dialect=gnu -mthumb -mfpu=vfpv3-d16 -mlibarch=armv7-a+fp -march=armv7-a+fp'
|
||||
end
|
||||
@gcc_ver = '-10'
|
||||
@new_gcc = <<~NEW_GCCEOF
|
||||
#!/bin/bash
|
||||
gcc#{@gcc_ver} #{@arch_flags} $@
|
||||
NEW_GCCEOF
|
||||
@new_gpp = <<~NEW_GPPEOF
|
||||
#!/bin/bash
|
||||
g++#{@gcc_ver} #{@arch_flags} $@
|
||||
NEW_GPPEOF
|
||||
FileUtils.mkdir_p 'bin'
|
||||
File.write('bin/gcc', @new_gcc)
|
||||
FileUtils.chmod 0o755, 'bin/gcc'
|
||||
File.write('bin/g++', @new_gpp)
|
||||
FileUtils.chmod 0o755, 'bin/g++'
|
||||
end
|
||||
|
||||
def self.build
|
||||
# This builds webkit2gtk5 (which uses gtk4, but not libsoup2)
|
||||
@workdir = `pwd`.chomp
|
||||
# Bubblewrap sandbox breaks on epiphany with
|
||||
# bwrap: Can't make symlink at /var/run: File exists
|
||||
# LDFLAGS from debian: -Wl,--no-keep-memory
|
||||
unless File.file?('build.ninja')
|
||||
@arch_linker_flags = ARCH == 'x86_64' ? '' : '-Wl,--no-keep-memory'
|
||||
system "CREW_LINKER_FLAGS='#{@arch_linker_flags}' CC='#{@workdir}/bin/gcc' CXX='#{@workdir}/bin/g++' \
|
||||
cmake -B builddir -G Ninja \
|
||||
#{CREW_CMAKE_FNO_LTO_OPTIONS.gsub('mold', 'gold').sub('-pipe', '-pipe -Wno-error').gsub('-fno-lto', '')} \
|
||||
-DCMAKE_BUILD_WITH_INSTALL_RPATH=ON \
|
||||
-DENABLE_BUBBLEWRAP_SANDBOX=OFF \
|
||||
-DENABLE_DOCUMENTATION=OFF \
|
||||
-DENABLE_GLES2=OFF \
|
||||
-DENABLE_JOURNALD_LOG=OFF \
|
||||
-DENABLE_GAMEPAD=OFF \
|
||||
-DENABLE_MINIBROWSER=ON \
|
||||
-DUSE_SYSTEM_MALLOC=ON \
|
||||
-DPORT=GTK \
|
||||
-DUSE_GTK4=ON \
|
||||
-DUSE_JPEGXL=ON \
|
||||
-DUSE_SOUP2=OFF \
|
||||
-DPYTHON_EXECUTABLE=`which python` \
|
||||
-DUSER_AGENT_BRANDING='Chromebrew'"
|
||||
end
|
||||
@counter = 1
|
||||
@counter_max = 5
|
||||
loop do
|
||||
break if Kernel.system "#{CREW_NINJA} -C builddir -j #{CREW_NPROC}"
|
||||
|
||||
puts "Make iteration #{@counter} of #{@counter_max}...".orange
|
||||
|
||||
@counter += 1
|
||||
break if @counter > @counter_max
|
||||
end
|
||||
end
|
||||
|
||||
def self.install
|
||||
system "DESTDIR=/usr/local/tmp/crew/dest #{CREW_NINJA} -C builddir install"
|
||||
FileUtils.mv "#{CREW_DEST_PREFIX}/bin/WebKitWebDriver", "#{CREW_DEST_PREFIX}/bin/WebKitWebDriver_6"
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user