mirror of
https://github.com/chromebrew/chromebrew.git
synced 2026-01-10 07:57:59 -05:00
104 lines
3.0 KiB
Ruby
104 lines
3.0 KiB
Ruby
require 'package'
|
|
|
|
class Wxwidgets < Package
|
|
description 'wxWidgets is a C++ library that lets developers create applications for Windows, macOS, Linux and other platforms with a single code base.'
|
|
homepage 'https://www.wxwidgets.org/'
|
|
@_ver = '3.2.3-rc1'
|
|
version @_ver.to_s
|
|
license 'GPL-2'
|
|
compatibility 'x86_64 aarch64 armv7l'
|
|
source_url 'https://github.com/wxWidgets/wxWidgets.git'
|
|
git_hashtag "v#{@_ver}"
|
|
binary_compression 'tar.zst'
|
|
|
|
binary_sha256({
|
|
aarch64: '8968dafc0c235cdf0bc0bb56d3a4f0e28f60bbf5b3f5f1de4e60c1bc3059c235',
|
|
armv7l: '8968dafc0c235cdf0bc0bb56d3a4f0e28f60bbf5b3f5f1de4e60c1bc3059c235',
|
|
x86_64: '64330626a415de673b6f71627d1d3d4250ddac9850d16a812b0d18fa999d4c2f'
|
|
})
|
|
|
|
depends_on 'at_spi2_core' # R
|
|
depends_on 'cairo' # R
|
|
depends_on 'curl' # R
|
|
depends_on 'enchant' # R
|
|
depends_on 'expat' # R
|
|
depends_on 'fontconfig'
|
|
depends_on 'freetype' # R
|
|
depends_on 'gcc_lib' # R
|
|
depends_on 'gdk_pixbuf' # R
|
|
depends_on 'glibc' # R
|
|
depends_on 'glib' # R
|
|
depends_on 'gspell' # R
|
|
depends_on 'gstreamer' # R
|
|
depends_on 'gtk3' # R
|
|
depends_on 'harfbuzz' # R
|
|
depends_on 'jbigkit' # R
|
|
depends_on 'libglu' # R
|
|
depends_on 'libglvnd' # R
|
|
depends_on 'libice' # R
|
|
depends_on 'libjpeg_turbo' # R
|
|
depends_on 'libnotify' # R
|
|
depends_on 'libpng' # R
|
|
depends_on 'libsdl2' # R
|
|
depends_on 'libsdl' => :build
|
|
depends_on 'libsecret' # R
|
|
depends_on 'libsm' # R
|
|
depends_on 'libsoup2' # R
|
|
depends_on 'libsoup' # R
|
|
depends_on 'libtiff' # R
|
|
depends_on 'libx11' # R
|
|
depends_on 'libxext' # R
|
|
depends_on 'libxkbcommon' # R
|
|
depends_on 'libxtst' # R
|
|
depends_on 'libxxf86vm' # R
|
|
depends_on 'mesa' # R
|
|
depends_on 'pango' # R
|
|
depends_on 'pcre2' # R
|
|
depends_on 'wayland' # R
|
|
depends_on 'webkit2gtk_4_1' # R
|
|
depends_on 'zlib' # R
|
|
|
|
def self.preflight
|
|
%w[wxwidgets30 wxwidgets31].each do |wxw|
|
|
next unless File.exist? "#{CREW_PREFIX}/etc/crew/meta/#{wxw}.filelist"
|
|
|
|
puts "#{wxw} installed and conflicts with this version.".orange
|
|
puts 'To install this version, execute the following:'.lightblue
|
|
abort "crew remove #{wxw} && crew install wxwidgets".lightblue
|
|
end
|
|
end
|
|
|
|
def self.build
|
|
system "./configure #{CREW_OPTIONS} \
|
|
--with-gtk=3 \
|
|
--with-opengl \
|
|
--enable-unicode \
|
|
--enable-graphics_ctx \
|
|
--enable-mediactrl \
|
|
--enable-webview \
|
|
--with-regex=builtin \
|
|
--with-libpng=builtin \
|
|
--with-libjpeg=sys \
|
|
--with-libtiff=sys \
|
|
--without-gnomevfs \
|
|
--disable-precomp-headers"
|
|
@counter = 1
|
|
@counter_max = 20
|
|
loop do
|
|
break if Kernel.system "make -j #{CREW_NPROC}"
|
|
|
|
puts "Make iteration #{@counter} of #{@counter_max}...".orange
|
|
|
|
@counter += 1
|
|
break if @counter > @counter_max
|
|
end
|
|
end
|
|
|
|
def self.install
|
|
system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install'
|
|
Dir.chdir "#{CREW_DEST_PREFIX}/bin" do
|
|
FileUtils.ln_sf "#{CREW_LIB_PREFIX}/wx/config/gtk3-unicode-3.2", 'wx-config'
|
|
end
|
|
end
|
|
end
|