Commit b96d2b90 authored by Ed Reel's avatar Ed Reel Committed by GitHub

Merge pull request #5376 from satmandu/ffmpeg_deps

Ffmpeg deps
parents fffb19bf f7a59192
require 'package'
class Avisynthplus < Package
description 'An improved version of the AviSynth frameserver'
homepage 'https://avs-plus.net/'
version '3.7.0'
compatibility 'all'
source_url 'https://github.com/AviSynth/AviSynthPlus/archive/v3.7.0/avisynthplus-3.7.0.tar.gz'
source_sha256 '8906d9e46dc90a194413d69b710e3106c0aafddc0c5c62004885d0c3beb79862'
binary_url({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/avisynthplus-3.7.0-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/avisynthplus-3.7.0-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/avisynthplus-3.7.0-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/avisynthplus-3.7.0-chromeos-x86_64.tar.xz'
})
binary_sha256({
aarch64: '041ab6c783a42f1ffa0ecbb27b5fee4b49a1e5083b00a48454fc5a29069264ef',
armv7l: '041ab6c783a42f1ffa0ecbb27b5fee4b49a1e5083b00a48454fc5a29069264ef',
i686: 'a94ac5f71b9dba1fb0175d828effe302603fa7b72efa09683660ddc9e992d2cd',
x86_64: '84f41b0ea157e9f53267f9e9212c9ad5eea5ee31d2cb1dc7cd516475e10e04ba'
})
depends_on 'devil' => ':build'
def self.build
Dir.mkdir 'builddir'
Dir.chdir 'builddir' do
system "env CFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto -I#{CREW_PREFIX}/include/harfbuzz' \
CXXFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
LDFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
cmake \
-G Ninja \
#{CREW_CMAKE_OPTIONS} \
-DBUILD_SHARED_LIBS=ON \
.."
end
system 'ninja -C builddir'
end
def self.install
system "DESTDIR=#{CREW_DEST_DIR} ninja -C builddir install"
end
end
require 'package'
class Devil < Package
description 'Library for reading several different image formats'
homepage 'http://openil.sourceforge.net/'
version '1.8.0-e342'
compatibility 'all'
source_url 'https://github.com/DentonW/DevIL/archive/e34284a7e07763769f671a74b4fec718174ad862.zip'
source_sha256 '73728ff9f877b9247728ae46148866eea81092ccefb538a28640fe31b73d74ac'
binary_url({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/devil-1.8.0-e342-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/devil-1.8.0-e342-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/devil-1.8.0-e342-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/devil-1.8.0-e342-chromeos-x86_64.tar.xz'
})
binary_sha256({
aarch64: 'b20edfe23152ce8c1de0dc78ce1098dc5844ba23377108f93c5222101099c51c',
armv7l: 'b20edfe23152ce8c1de0dc78ce1098dc5844ba23377108f93c5222101099c51c',
i686: 'cd64e331c519a10550c774af9d9c304fa80811d482304e5889f3d0d6136489c8',
x86_64: '1762d8d08c4d21a8b892864e2d18871b2f15a99a59a543faa42682e7921293f7'
})
depends_on 'libpng'
depends_on 'jasper'
depends_on 'lcms'
depends_on 'libjpeg_turbo'
def self.patch
system "find -type f -exec sed -i 's,DESTINATION lib,DESTINATION lib#{CREW_LIB_SUFFIX},g' {} +"
end
def self.build
Dir.mkdir 'DevIL/builddir'
Dir.chdir 'DevIL/builddir' do
system "env CFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto -I#{CREW_PREFIX}/include/harfbuzz' \
CXXFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
LDFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
cmake \
-G Ninja \
#{CREW_CMAKE_OPTIONS.sub(/--build=.*/, '')} \
-DBUILD_SHARED_LIBS=ON \
.."
end
system 'ninja -C DevIL/builddir'
end
def self.install
system "DESTDIR=#{CREW_DEST_DIR} ninja -C DevIL/builddir install"
end
end
require 'package'
class Gmmlib < Package
description 'The Intel(R) Graphics Memory Management Library provides device specific and buffer management for the Intel(R) Graphics Compute Runtime for OpenCL(TM) and the Intel(R) Media Driver for VAAPI.'
homepage 'https://github.com/intel/gmmlib/'
@_ver = '20.4.1'
version @_ver
compatibility 'i686 x86_64'
case ARCH
when 'i686', 'x86_64'
source_url "https://github.com/intel/gmmlib/archive/intel-gmmlib-#{@_ver}.tar.gz"
source_sha256 'd54d547f9f9e74196dead6a338923039ea10c859f1f693f33f10be1562b81d6d'
depends_on 'libva'
end
binary_url({
i686: 'https://dl.bintray.com/chromebrew/chromebrew/gmmlib-20.4.1-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/gmmlib-20.4.1-chromeos-x86_64.tar.xz'
})
binary_sha256({
i686: '216f1914cffe386625f78bc930046afa0d04f5254c555bd17fb433e70d161f17',
x86_64: '7d846916ab47e45d4d85dc41c08c718d0c4e4e774769886f8b452af8b041de92'
})
def self.patch
system "find . -type f -exec sed -e 's,LD_LIBRARY_PATH=,LD_LIBRARY_PATH=#{CREW_LIB_PREFIX}:,g' \
-e 's,-fstack-protector,-fno-stack-protector,g' -i {} +"
end
def self.build
FileUtils.mkdir('builddir')
Dir.chdir('builddir') do
system "env CFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto -fuse-ld=gold' \
CXXFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto -fuse-ld=gold' \
LDFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
cmake #{CREW_CMAKE_OPTIONS} ../ -G Ninja"
end
system 'ninja -C builddir'
end
def self.install
system "DESTDIR=#{CREW_DEST_DIR} ninja -C builddir install"
end
end
require 'package'
class Gsm < Package
description 'Shared libraries for GSM 06.10 lossy speech compression'
homepage 'http://www.quut.com/gsm/'
@_ver = '1.0.19'
version @_ver
compatibility 'all'
source_url "http://www.quut.com/gsm/gsm-#{@_ver}.tar.gz"
source_sha256 '4903652f68a8c04d0041f0d19b1eb713ddcd2aa011c5e595b3b8bca2755270f6'
binary_url({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/gsm-1.0.19-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/gsm-1.0.19-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/gsm-1.0.19-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/gsm-1.0.19-chromeos-x86_64.tar.xz'
})
binary_sha256({
aarch64: '4dc9c3426864671b7c61c08d846ff40fd524bf341163997c8e5caddab90c229d',
armv7l: '4dc9c3426864671b7c61c08d846ff40fd524bf341163997c8e5caddab90c229d',
i686: 'e5756a9fe38d9dc52bcdfe74dcaee3edc20eb702cd3c8f6e4b7ddd725166d1ad',
x86_64: '791c1a029c92f1839398617a1b1633e960a21c58ac45b19ad057b0ef0d3ddcfe'
})
def self.patch
# Patch from https://github.com/archlinux/svntogit-packages/blob/master/gsm/trunk/gsm-shared.patch
system 'curl -Ls https://github.com/archlinux/svntogit-packages/raw/c5a7dd7fe79daea817539ae8315a7cd8eb9cced7/gsm/trunk/gsm-shared.patch | patch -b'
end
def self.build
system "env CXXFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
LDFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
make CCFLAGS='-c -fPIC -pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto'"
end
def self.install
# Prepare directories
@dirs = ['bin', 'lib', 'include/gsm', 'share/gsm', 'share/man/man1', 'share/man/man3']
@dirs.each do |i|
FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/#{i}"
end
system "make -j1 INSTALL_ROOT=#{CREW_DEST_PREFIX} \
GSM_INSTALL_INC=#{CREW_DEST_PREFIX}/include/gsm \
GSM_INSTALL_MAN=#{CREW_DEST_MAN_PREFIX}/man3 \
TOAST_INSTALL_MAN=#{CREW_DEST_MAN_PREFIX}/man1 \
install"
FileUtils.mv "#{CREW_DEST_PREFIX}/lib", "#{CREW_DEST_PREFIX}/lib64" if ARCH == 'x86_64'
end
end
require 'package'
class Intel_media_driver < Package
description 'The Intel(R) Media Driver for VAAPI is a new VA-API (Video Acceleration API) user mode driver supporting hardware accelerated decoding, encoding, and video post processing for GEN based graphics hardware.'
homepage 'https://github.com/intel/media-driver'
@_ver = '20.4.5'
version @_ver
compatibility 'x86_64'
case ARCH
when 'x86_64'
source_url "https://github.com/intel/media-driver/archive/intel-media-#{@_ver}.tar.gz"
source_sha256 '3d856a963127ddd6690fc6dac521d7674947675d5f20452f1e6f45c0fc83f9e6'
depends_on 'gmmlib'
depends_on 'libva'
end
binary_url({
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/intel_media_driver-20.4.5-chromeos-x86_64.tar.xz'
})
binary_sha256({
x86_64: '0710ad9dd76b97b62849cfe6179dae0e884e56c475332b03f889d5eaa121ffff'
})
def self.preflight
abort 'Not an Intel processor, aborting.'.lightred unless `grep -c 'GenuineIntel' /proc/cpuinfo`.to_i.positive?
end
def self.patch
system "find . -type f -exec sed -e 's,LD_LIBRARY_PATH=,LD_LIBRARY_PATH=#{CREW_LIB_PREFIX}:,g' \
-e 's,-fstack-protector-all,-fno-stack-protector,g' \
-e 's,-fstack-protector,-fno-stack-protector,g' -i {} +"
end
def self.build
FileUtils.mkdir('builddir')
Dir.chdir('builddir') do
system "env CFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto -fuse-ld=gold' \
CXXFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto -fuse-ld=gold' \
LDFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
cmake #{CREW_CMAKE_OPTIONS} ../ -G Ninja"
end
system 'ninja -C builddir'
end
def self.install
system "DESTDIR=#{CREW_DEST_DIR} ninja -C builddir install"
end
def self.postinstall
@_str = 'export LIBVA_DRIVER_NAME=iHD'
if `grep -c '#{@_str}' #{HOME}/.bashrc`.to_i.zero?
puts 'Performing env-setup...'
system "echo '#{@_str}' >> #{HOME}/.bashrc"
puts
puts 'To complete the installation, execute the following:'.lightblue
puts 'source ~/.bashrc'.lightblue
puts
end
end
end
require 'package'
class Intel_media_sdk < Package
description 'API to access hardware-accelerated video on Intel Gen graphics hardware platforms'
homepage 'https://software.intel.com/en-us/media-sdk/'
version '20.5.1'
compatibility 'x86_64'
if ARCH == 'x86_64'
source_url 'https://github.com/Intel-Media-SDK/MediaSDK/archive/intel-mediasdk-20.5.1.tar.gz'
source_sha256 '047986646f185313df2159fd44bccd870e173bb1cae9c2501ac6b9774bfd424b'
depends_on 'intel_media_driver'
depends_on 'libdrm'
depends_on 'libva'
depends_on 'wayland'
end
binary_url({
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/intel_media_sdk-20.5.1-chromeos-x86_64.tar.xz'
})
binary_sha256({
x86_64: '89aac36a221473846222f7550109055c674927aff2273fd1e1f807d046c8046b'
})
def self.build
Dir.mkdir 'builddir'
Dir.chdir 'builddir' do
system "env CFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
CXXFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
LDFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
cmake \
-G Ninja \
#{CREW_CMAKE_OPTIONS} \
-DBUILD_SHARED_LIBS=ON \
-DBUILD_ALL:BOOL='ON' \
-DBUILD_TOOLS:BOOL='ON' \
-DENABLE_ITT:BOOL='OFF' \
-DENABLE_OPENCL:BOOL='ON' \
-DENABLE_WAYLAND:BOOL='ON' \
-DENABLE_X11_DRI3:BOOL='ON' \
-Wno-dev \
.."
end
system 'ninja -C builddir'
end
def self.install
system "DESTDIR=#{CREW_DEST_DIR} ninja -C builddir install"
end
end
require 'package'
class L_smash < Package
description 'MP4 muxer and other tools'
homepage 'https://github.com/l-smash/l-smash'
@_ver = '2.14.5'
version @_ver
compatibility 'all'
source_url "https://github.com/l-smash/l-smash/archive/v#{@_ver}.tar.gz"
source_sha256 'e6f7c31de684f4b89ee27e5cd6262bf96f2a5b117ba938d2d606cf6220f05935'
binary_url({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/l_smash-2.14.5-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/l_smash-2.14.5-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/l_smash-2.14.5-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/l_smash-2.14.5-chromeos-x86_64.tar.xz'
})
binary_sha256({
aarch64: '5df042cdee6dc70e3670053f5f83a714865227aa4975fb0e655f0c7287a4066e',
armv7l: '5df042cdee6dc70e3670053f5f83a714865227aa4975fb0e655f0c7287a4066e',
i686: '822763691f4c3ddeb88d1192154cb53e41afbeb6547b3f1fbd78c666febbe9cc',
x86_64: 'e6378ac95e629bbc67ee8aa30fa82b0c857e07b5a3e423cb7bee3dcaf31fef30'
})
def self.build
system '[ -x configure ] || ./autogen.sh'
system "./configure #{CREW_OPTIONS.sub(/--mandir=.*/, '')} \
--enable-shared \
--extra-cflags='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
--extra-ldflags='-fno-stack-protector -U_FORTIFY_SOURCE -flto=auto'"
system 'make'
end
def self.install
system "make DESTDIR=#{CREW_DEST_DIR} install"
end
end
require 'package'
class Leptonica < Package
description 'Software that is broadly useful for image processing and image analysis applications'
homepage 'http://www.leptonica.com/'
@_ver = '1.80.0'
version @_ver
compatibility 'all'
source_url "https://github.com/DanBloomberg/leptonica/archive/#{@_ver}.tar.gz"
source_sha256 '3952b974ec057d24267aae48c54bca68ead8275604bf084a73a4b953ff79196e'
binary_url({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/leptonica-1.80.0-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/leptonica-1.80.0-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/leptonica-1.80.0-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/leptonica-1.80.0-chromeos-x86_64.tar.xz'
})
binary_sha256({
aarch64: '92169fedf2fdf6eeecfbcf91046c672827a14293e25eb4529b305fca5e844100',
armv7l: '92169fedf2fdf6eeecfbcf91046c672827a14293e25eb4529b305fca5e844100',
i686: '0983780d91e159289d9c0efc81390cf7b3b8f666c62848744d7c327005b3d080',
x86_64: '9125c52e3bd232009858d406bf37099e0089a543900246f7710b34dbc6b1d7a1'
})
depends_on 'giflib'
depends_on 'libjpeg_turbo'
depends_on 'libpng'
depends_on 'libtiff'
depends_on 'libwebp'
def self.build
system '[ -x configure ] || ./autogen.sh'
system "[ -f Makefile ] || env CFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
CXXFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
LDFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
./configure #{CREW_OPTIONS}"
system 'make'
end
def self.install
system "make DESTDIR=#{CREW_DEST_DIR} install"
end
end
require 'package'
class Libiec61883 < Package
description 'A higher level API for streaming DV, MPEG-2 and audio over Linux IEEE 1394'
homepage 'https://www.kernel.org/pub/linux/libs/ieee1394/'
version '1.2.0'
compatibility 'all'
source_url 'https://www.kernel.org/pub/linux/libs/ieee1394/libiec61883-1.2.0.tar.xz'
source_sha256 'd1e02c7e276fac37313a2f8c1c33d7a9e19282ff16f32e72435428ff5121f09e'
binary_url({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/libiec61883-1.2.0-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/libiec61883-1.2.0-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/libiec61883-1.2.0-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/libiec61883-1.2.0-chromeos-x86_64.tar.xz'
})
binary_sha256({
aarch64: 'dac204a81221d75bf4ef10ffd80da9dd1a2c7622f22c3d581585e6676ca15837',
armv7l: 'dac204a81221d75bf4ef10ffd80da9dd1a2c7622f22c3d581585e6676ca15837',
i686: '00e12728736b325440c2c32a64efb84c919d5494d213a6bd936e02047cb9f3d6',
x86_64: '5a056cfdf4e7b45a7e5a842897fc70daa3b78f9e66d09e8b8ec016bf647d3cd0'
})
depends_on 'libraw1394'
def self.build
system 'filefix'
system "env CFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto -I#{CREW_PREFIX}/include/harfbuzz' \
CXXFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
LDFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
./configure #{CREW_OPTIONS}"
system 'make'
end
def self.install
system "make DESTDIR=#{CREW_DEST_DIR} install"
end
end
require 'package'
class Libmfx < Package
description 'Intel Media SDK dispatcher library'
homepage 'https://github.com/lu-zero/mfx_dispatch/'
version '1.25'
compatibility 'x86_64 i686'
case ARCH
when 'i686', 'x86_64'
source_url 'https://github.com/lu-zero/mfx_dispatch/archive/1.25.tar.gz'
source_sha256 '853c4555c800a262fedacc580d06c234c520a919e4497b50e555291d87579a42'
depends_on 'libva'
end
binary_url({
i686: 'https://dl.bintray.com/chromebrew/chromebrew/libmfx-1.25-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/libmfx-1.25-chromeos-x86_64.tar.xz'
})
binary_sha256({
i686: '3eab119d8be510a2786d31419c20c551a0629f3b8d8d4fa58a2fb31b3f66a960',
x86_64: '65246a1f81384d7b241800f406013a7e13920c82d9d136beb74a4edfd924dd59'
})
def self.build
system 'autoreconf -i'
system "env CFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
CXXFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
LDFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
./configure #{CREW_OPTIONS} \
--enable-shared='yes' \
--with-libva_drm='yes' \
--with-libva_x11='yes' \
--with-pic"
system 'make'
end
def self.install
system "make DESTDIR=#{CREW_DEST_DIR} install"
# fix version in pkg-config file"
system "sed -i /Version:/s/[0-9]\.[0-9]\{2\}/1.25/ #{CREW_DEST_LIB_PREFIX}/pkgconfig/libmfx.pc"
end
end
require 'package'
class Libmodplug < Package
description 'A MOD playing library'
homepage 'http://modplug-xmms.sourceforge.net/'
version '0.8.9.0'
compatibility 'all'
source_url 'https://downloads.sourceforge.net/modplug-xmms/libmodplug-0.8.9.0.tar.gz'
source_sha256 '457ca5a6c179656d66c01505c0d95fafaead4329b9dbaa0f997d00a3508ad9de'
binary_url({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/libmodplug-0.8.9.0-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/libmodplug-0.8.9.0-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/libmodplug-0.8.9.0-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/libmodplug-0.8.9.0-chromeos-x86_64.tar.xz'
})
binary_sha256({
aarch64: 'bc64a7b24b9d2fbfb92026b77566d8c8f2bb404ee5a2afefa808891f878e1760',
armv7l: 'bc64a7b24b9d2fbfb92026b77566d8c8f2bb404ee5a2afefa808891f878e1760',
i686: '6958758b7981730fe6f1fc9bc1f257b73364902d44322fc987de8f29180fe07a',
x86_64: '382325c8131ba25044af340d04d136c98cf101cffd2aa4dccc015b01afe84c38'
})
def self.build
system "env CFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
CXXFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
LDFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
./configure #{CREW_OPTIONS}"
system 'make'
end
def self.install
system "make DESTDIR=#{CREW_DEST_DIR} install"
end
end
require 'package'
class Libva_intel_driver_hybrid < Package
description 'VA-API implementation for Intel G45 and HD Graphics family'
version '2.4.1'
compatibility 'i686 x86_64'
if ARCH == 'i686', 'x86_64'
source_url 'https://github.com/intel/intel-vaapi-driver/archive/2.4.1.tar.gz'
source_sha256 '03cd7e16acc94f828b6e7f3087863d8ca06e99ffa3385588005b1984bdd56157'
depends_on 'igt_gpu_tools'
end
binary_url({
i686: 'https://dl.bintray.com/chromebrew/chromebrew/libva_intel_driver_hybrid-2.4.1-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/libva_intel_driver_hybrid-2.4.1-chromeos-x86_64.tar.xz'
})
binary_sha256({
i686: '44544381f5d72ee7a564d7d44a9857e42413f1337dc3f1e8e41d4d785644c981',
x86_64: '1573c67aeab4b6919a8979688962d4f2bbab0da8fd8497b9970424c10fe25aae'
})
def self.patch
# Only relevant if intel-gpu-tools is installed,
# since then the shaders will be recompiled
system "sed -i '1s/python\$/&2/' src/shaders/gpp.py"
end
def self.build
system "meson #{CREW_MESON_LTO_OPTIONS} \
-Denable_hybrid_codec=true builddir"
system 'meson configure builddir'
system 'ninja -C builddir'
end
def self.install
system "DESTDIR=#{CREW_DEST_DIR} ninja -C builddir install"
end
def self.postinstall
@_str = 'export LIBVA_DRIVER_NAME=i965'
if `grep -c '#{@_str}' #{HOME}/.bashrc`.to_i.zero?
puts 'Performing env-setup...'
system "echo '#{@_str}' >> #{HOME}/.bashrc"
puts
puts 'To complete the installation, execute the following:'.lightblue
puts 'source ~/.bashrc'.lightblue
puts
end
end
end
......@@ -3,40 +3,53 @@ require 'package'
class Libvpx < Package
description 'VP8/VP9 Codec SDK'
homepage 'http://www.webmproject.org/code/'
version '1.8.0'
@_ver = '1.10.0-rc1'
version @_ver
compatibility 'all'
source_url 'https://github.com/webmproject/libvpx/archive/v1.8.0.tar.gz'
source_sha256 '86df18c694e1c06cc8f83d2d816e9270747a0ce6abe316e93a4f4095689373f6'
source_url "https://github.com/webmproject/libvpx/archive/v#{@_ver}.tar.gz"
source_sha256 '8e55e04cdefeb1596968e70c5167e13d26132ca214d276292d5cda737a430af5'
binary_url ({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/libvpx-1.8.0-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/libvpx-1.8.0-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/libvpx-1.8.0-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/libvpx-1.8.0-chromeos-x86_64.tar.xz',
binary_url({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/libvpx-1.10.0-rc1-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/libvpx-1.10.0-rc1-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/libvpx-1.10.0-rc1-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/libvpx-1.10.0-rc1-chromeos-x86_64.tar.xz'
})
binary_sha256 ({
aarch64: '33b8d61c591e0f0dfb0770c4ad9227e4a8f8dbf608a68561ad99813063a6934a',
armv7l: '33b8d61c591e0f0dfb0770c4ad9227e4a8f8dbf608a68561ad99813063a6934a',
i686: 'afc67c6dbc8c12fa6bd2d7a91e34518119dce03e45e8e8554b4beb670a54b71b',
x86_64: '9d4aba4937495ec10fe02e6255689280019a30b8db4fbb11826be7c896e1e40c',
binary_sha256({
aarch64: '61583e4e5ac53ef7534c948bf05874381c9889cf8bb25771458d332c21caddff',
armv7l: '61583e4e5ac53ef7534c948bf05874381c9889cf8bb25771458d332c21caddff',
i686: 'dea476dc36f7afc6a41de73f16f94d62d353cc34504094c6f5bdc64f3a1d9e25',
x86_64: '2dd18189255d957cf67842b4f12aa040d4d5bec98665c8bb7c900422377716fe'
})
depends_on 'yasm' => :build
depends_on 'ccache' => :build
depends_on 'libyuv'
def self.build
Dir.chdir 'build' do
system '../configure',
"--prefix=#{CREW_PREFIX}",
"--libdir=#{CREW_LIB_PREFIX}",
'--enable-vp8',
'--enable-vp9',
'--enable-shared',
'--disable-static'
system "env CFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
CXXFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
LDFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
../configure #{CREW_OPTIONS.sub(/--mandir=.*/, '')} \
--disable-debug-libs \
--disable-install-docs \
--enable-ccache \
--enable-debug \
--enable-libyuv \
--enable-pic \
--enable-runtime-cpu-detect \
--enable-shared \
--enable-vp8 \
--enable-vp9 \
--enable-vp9-highbitdepth"
system 'make'
end
end
def self.install
Dir.chdir 'build' do
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
system "make DESTDIR=#{CREW_DEST_DIR} install"
end
end
end
......@@ -3,36 +3,44 @@ require 'package'
class Libx264 < Package
description 'x264 is a free software library and application for encoding video streams into the H.264/MPEG-4 AVC compression format.'
homepage 'http://www.videolan.org/developers/x264.html'
version '20171118-2245-stable'
version 'b86a'
compatibility 'all'
source_url 'http://ftp.videolan.org/pub/videolan/x264/snapshots/x264-snapshot-20171118-2245-stable.tar.bz2'
source_sha256 '22f29bbeba7087d9a92e0a50837e22c5729ba46b6c03392f149cae6ca3fa01ad'
source_url 'https://code.videolan.org/videolan/x264/-/archive/b86ae3c66f51ac9eab5ab7ad09a9d62e67961b8a/x264-b86ae3c66f51ac9eab5ab7ad09a9d62e67961b8a.tar.bz2'
source_sha256 '6d4eacd1e735f1670a84f56802023fce9a68f19a6186440281fff7757810297d'
binary_url ({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/libx264-20171118-2245-stable-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/libx264-20171118-2245-stable-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/libx264-20171118-2245-stable-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/libx264-20171118-2245-stable-chromeos-x86_64.tar.xz',
binary_url({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/libx264-b86a-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/libx264-b86a-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/libx264-b86a-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/libx264-b86a-chromeos-x86_64.tar.xz'
})
binary_sha256 ({
aarch64: 'a0790759e5686aa91e43b64ab0f5c64ee9dfc6b01e62af3dfb1a095976130939',
armv7l: 'a0790759e5686aa91e43b64ab0f5c64ee9dfc6b01e62af3dfb1a095976130939',
i686: '59488d66a03c91546359f616898a96c362113aa6af939dd9344d0c10cc2e39c0',
x86_64: '32b6a7a5f9557b066e633beeb3f3ff748dd90a2bef14ead31e292f984e5d226c',
binary_sha256({
aarch64: 'e212794830955a9f109c01000eae365580dc61568db24a4ae412f9f518932f3a',
armv7l: 'e212794830955a9f109c01000eae365580dc61568db24a4ae412f9f518932f3a',
i686: '57005b8eb98bbc08ddca26fcecce43ea58e7f489f493d89367512bdc0ffbbb30',
x86_64: '280d34bcb68b0ddf87e747b7f21bb63c9a881f3de6bb91ab6fca6a9d191a16a5'
})
depends_on 'yasm' => :build
depends_on 'nasm' => :build
depends_on 'l_smash'
@archflags = ARCH == 'aarch64' || ARCH == 'armv7l' ? '-march=armv7-a -mfpu=neon' : ''
def self.build
system "./configure \
--prefix=#{CREW_PREFIX} \
--libdir=#{CREW_LIB_PREFIX} \
--enable-shared \
--enable-static"
system "make"
system '[ -x configure ] || ./autogen.sh'
system "env CFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto #{@archflags}' \
CXXFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
LDFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
./configure #{CREW_OPTIONS} \
--enable-shared \
--enable-static \
--enable-pic \
--enable-lto \
--disable-avs"
system 'make'
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
system "make DESTDIR=#{CREW_DEST_DIR} install"
end
end
......@@ -3,38 +3,86 @@ require 'package'
class Libx265 < Package
description 'x265 is a H.265 / HEVC video encoder application library.'
homepage 'http://x265.org/'
version '2.6'
compatibility 'all'
source_url 'https://bitbucket.org/multicoreware/x265/downloads/x265_2.6.tar.gz'
source_sha256 '1bf0036415996af841884802161065b9e6be74f5f6808ac04831363e2549cdbf'
@_ver = '3.4'
version @_ver
compatibility 'x86_64 aarch64 armv7l'
unless ARCH == 'i686'
source_url "https://github.com/videolan/x265/archive/#{@_ver}.tar.gz"
source_sha256 '544d147bf146f8994a7bf8521ed878c93067ea1c7c6e93ab602389be3117eaaf'
depends_on 'nasm' => :build
end
binary_url ({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/libx265-2.6-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/libx265-2.6-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/libx265-2.6-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/libx265-2.6-chromeos-x86_64.tar.xz',
binary_url({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/libx265-3.4-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/libx265-3.4-chromeos-armv7l.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/libx265-3.4-chromeos-x86_64.tar.xz'
})
binary_sha256 ({
aarch64: '4ffe8a816ecc0350d749579f22278e3e9786cb52279829a1f8753205e1d1a03f',
armv7l: '4ffe8a816ecc0350d749579f22278e3e9786cb52279829a1f8753205e1d1a03f',
i686: '73a02413698d13621385cb9f5bc553bc154622e907ed4aa25a51ae54f0ee90c4',
x86_64: '4bd7fd7b202ab7f59f338e51ea832a5dbef00775af2cf7e7ae6ba6cacee93fac',
binary_sha256({
aarch64: 'cf7548c97fb5774a3fea30a580ba1719f7b4efdfb4e5f6db91fac20d651d8442',
armv7l: 'cf7548c97fb5774a3fea30a580ba1719f7b4efdfb4e5f6db91fac20d651d8442',
x86_64: 'fc7647ea5a73c0fdbc2cea1f2c842de8a4a72db11b1fce5907ed79669e598ab4'
})
depends_on 'cmake' => :build
depends_on 'yasm' => :build
def self.build
FileUtils.cd('build') do
system "cmake ../source -DCMAKE_INSTALL_PREFIX=#{CREW_PREFIX}"
system "sed -i 's,{CMAKE_INSTALL_PREFIX}/lib,{CMAKE_INSTALL_PREFIX}/lib64,g' cmake_install.cmake" if ARCH == 'x86_64'
system "make"
Dir.mkdir 'build-12'
Dir.chdir 'build-12' do
system "env CFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
CXXFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
LDFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
cmake \
-G Ninja \
#{CREW_CMAKE_OPTIONS} \
-DLIB_INSTALL_DIR=lib#{CREW_LIB_SUFFIX} \
-DHIGH_BIT_DEPTH=TRUE \
-DMAIN12=TRUE \
-DEXPORT_C_API=FALSE \
-DENABLE_CLI=FALSE \
-DENABLE_SHARED=FALSE \
-Wno-dev \
../source"
end
system 'ninja -C build-12'
Dir.mkdir 'build-10'
Dir.chdir 'build-10' do
system "env CFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
CXXFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
LDFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
cmake \
-G Ninja \
#{CREW_CMAKE_OPTIONS} \
-DLIB_INSTALL_DIR=lib#{CREW_LIB_SUFFIX} \
-DHIGH_BIT_DEPTH=TRUE \
-DEXPORT_C_API=FALSE \
-DENABLE_CLI=FALSE \
-DENABLE_SHARED=FALSE \
-Wno-dev \
../source"
end
system 'ninja -C build-10'
Dir.mkdir 'builddir'
Dir.chdir 'builddir' do
system "env CFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
CXXFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
LDFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
cmake \
-G Ninja \
#{CREW_CMAKE_OPTIONS} \
-DENABLE_SHARED=TRUE \
-DLIB_INSTALL_DIR=lib#{CREW_LIB_SUFFIX} \
-DENABLE_HDR10_PLUS=TRUE \
-DEXTRA_LIB='x265_main10.a;x265_main12.a' \
-DEXTRA_LINK_FLAGS='-L .' \
-DLINKED_10BIT=TRUE \
-DLINKED_12BIT=TRUE \
-Wno-dev \
../source"
end
FileUtils.ln_s '../build-10/libx265.a', 'builddir/libx265_main10.a'
FileUtils.ln_s '../build-12/libx265.a', 'builddir/libx265_main12.a'
system 'ninja -C builddir'
end
def self.install
FileUtils.cd('build') do
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
system "DESTDIR=#{CREW_DEST_DIR} ninja -C builddir install"
end
end
require 'package'
class Openjpeg < Package
description 'OpenJPEG is an open-source JPEG 2000 codec written in C language.'
homepage 'https://github.com/uclouvain/openjpeg/'
version '2.3.1'
description 'An open source JPEG 2000 codec, written in C.'
homepage 'https://github.com/uclouvain/openjpeg'
version '2.4.0'
compatibility 'all'
source_url 'https://github.com/uclouvain/openjpeg/archive/v2.3.1.tar.gz'
source_sha256 '63f5a4713ecafc86de51bfad89cc07bb788e9bba24ebbf0c4ca637621aadb6a9'
source_url 'https://github.com/uclouvain/openjpeg/archive/v2.4.0.tar.gz'
source_sha256 '8702ba68b442657f11aaeb2b338443ca8d5fb95b0d845757968a7be31ef7f16d'
binary_url ({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/openjpeg-2.3.1-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/openjpeg-2.3.1-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/openjpeg-2.3.1-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/openjpeg-2.3.1-chromeos-x86_64.tar.xz',
binary_url({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/openjpeg-2.4.0-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/openjpeg-2.4.0-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/openjpeg-2.4.0-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/openjpeg-2.4.0-chromeos-x86_64.tar.xz'
})
binary_sha256 ({
aarch64: '5cbfa188b4ef0e9adb59280c0adfdbeae57751743000afbaca8574a9e3349b59',
armv7l: '5cbfa188b4ef0e9adb59280c0adfdbeae57751743000afbaca8574a9e3349b59',
i686: 'c63933b2976c97ebcaea35ced82598958377b6e8fa9e984c74eca40afdcd9c40',
x86_64: '921c73296cf057b4c5606470c3de038492de21177b82ed659213dd04348aef33',
binary_sha256({
aarch64: '595710bad9c20bb9cf549c4ac128c38a7b95d765482a4686f92e9a7c2436492c',
armv7l: '595710bad9c20bb9cf549c4ac128c38a7b95d765482a4686f92e9a7c2436492c',
i686: 'bab4acb957c546518cff701f1c004778351c7d973bb0c3f42bd4c5e89fd37f87',
x86_64: '490073608d724068424b594ef15e77bdef75bcb44beebe6c8fe09eb99f06bd0a'
})
def self.build
Dir.mkdir 'builddir'
Dir.chdir 'builddir' do
system 'cmake',
"-DCMAKE_INSTALL_PREFIX=#{CREW_PREFIX}",
"-DOPENJPEG_INSTALL_LIB_DIR=#{CREW_LIB_PREFIX}",
'-DCMAKE_BUILD_TYPE=Release',
'..'
system 'make'
system "env CFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
CXXFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
LDFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
cmake \
-G Ninja \
#{CREW_CMAKE_OPTIONS} \
-DBUILD_SHARED_LIBS=ON \
-DOPENJPEG_INSTALL_LIB_DIR='lib#{CREW_LIB_SUFFIX}' \
.."
end
system 'ninja -C builddir'
end
def self.install
Dir.chdir 'builddir' do
system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install'
end
system "DESTDIR=#{CREW_DEST_DIR} ninja -C builddir install"
end
end
require 'package'
class Srt < Package
description 'Secure Reliable Transport library'
homepage 'https://www.srtalliance.org/'
@_ver = '1.4.3-rc.0'
version @_ver
compatibility 'all'
source_url "https://github.com/Haivision/srt/archive/v#{@_ver}.tar.gz"
source_sha256 '50a05239602f2a402b4a96bc8b8e1ebf98808aa2966311c14f814ad477018a56'
binary_url({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/srt-1.4.3-rc.0-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/srt-1.4.3-rc.0-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/srt-1.4.3-rc.0-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/srt-1.4.3-rc.0-chromeos-x86_64.tar.xz'
})
binary_sha256({
aarch64: '9c47c8399de872fe28a96f0dd4d2fac9a8c55b2d009d19962ef3fd49e7ba772f',
armv7l: '9c47c8399de872fe28a96f0dd4d2fac9a8c55b2d009d19962ef3fd49e7ba772f',
i686: 'a0e793630412f6b3c936b5489b019f626e04ddf69226e767867624ad3fe5bef3',
x86_64: '7473da57136746f4f5c66af50bfc642fc81702b4e4975fd7fce016021136ba86'
})
def self.build
Dir.mkdir 'builddir'
Dir.chdir 'builddir' do
system "env CFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto -I#{CREW_PREFIX}/include/harfbuzz' \
CXXFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
LDFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
cmake \
-G Ninja \
#{CREW_CMAKE_OPTIONS} \
-DENABLE_STATIC=ON \
-DBUILD_SHARED_LIBS=ON \
-DNATIVE=OFF \
-DENABLE_TESTING=OFF \
.."
end
system 'ninja -C builddir'
end
def self.install
system "DESTDIR=#{CREW_DEST_DIR} ninja -C builddir install"
end
end
require 'package'
class Tesseract < Package
description 'A neural net (LSTM) based OCR engine which is focused on line recognition & an older OCR engine which recognizes character patterns.'
homepage 'https://github.com/tesseract-ocr/tesseract'
@_ver = '4.1.1'
version @_ver
compatibility 'all'
source_url "https://github.com/tesseract-ocr/tesseract/archive/#{@_ver}.tar.gz"
source_sha256 '2a66ff0d8595bff8f04032165e6c936389b1e5727c3ce5a27b3e059d218db1cb'
binary_url({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/tesseract-4.1.1-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/tesseract-4.1.1-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/tesseract-4.1.1-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/tesseract-4.1.1-chromeos-x86_64.tar.xz'
})
binary_sha256({
aarch64: '2784bfad438508abf959d5cf40c2cb7bad39ad30338cf94bc1b2cc2cdc4a4f5c',
armv7l: '2784bfad438508abf959d5cf40c2cb7bad39ad30338cf94bc1b2cc2cdc4a4f5c',
i686: '019d1cd38b1008e43e022b147a1b34ab11c11da1622733b7abea681215557ab3',
x86_64: '1661e2e92aeee9071cf37cee949a3c4d686fc379809e227be6e4b513b3a6b5f8'
})
depends_on 'libpng'
depends_on 'libtiff'
depends_on 'libjpeg_turbo'
depends_on 'giflib'
depends_on 'leptonica'
depends_on 'cairo' => ':build'
depends_on 'pango' => ':build'
depends_on 'asciidoc' => ':build'
def self.build
system '[ -x configure ] || ./autogen.sh'
system "[ -f Makefile ] || env CFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -fno-math-errno -flto=auto' \
CXXFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -fno-math-errno -flto=auto' \
LDFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
./configure #{CREW_OPTIONS}"
system 'make'
system 'make training'
end
def self.install
system "make DESTDIR=#{CREW_DEST_DIR} install"
system "make DESTDIR=#{CREW_DEST_DIR} training-install"
FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/share/tessdata"
system "curl -Ls https://github.com/tesseract-ocr/tessdata/raw/4767ea922bcc460e70b87b1d303ebdfed0897da8/eng.traineddata -o #{CREW_DEST_PREFIX}/share/tessdata/osd.traineddata"
end
end
......@@ -3,46 +3,43 @@ require 'package'
class V4l_utils < Package
description 'The v4l-utils are a series of packages for handling media devices.'
homepage 'https://www.linuxtv.org/wiki/index.php/V4l-utils'
version '1.18.0'
@_ver = '1.20.0'
version @_ver
compatibility 'all'
source_url 'https://linuxtv.org/downloads/v4l-utils/v4l-utils-1.18.0.tar.bz2'
source_sha256 '6cb60d822eeed20486a03cc23e0fc65956fbc1e85e0c1a7477f68bbd9802880d'
source_url "https://linuxtv.org/downloads/v4l-utils/v4l-utils-#{@_ver}.tar.bz2"
source_sha256 '956118713f7ccb405c55c7088a6a2490c32d54300dd9a30d8d5008c28d3726f7'
binary_url ({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/v4l_utils-1.18.0-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/v4l_utils-1.18.0-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/v4l_utils-1.18.0-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/v4l_utils-1.18.0-chromeos-x86_64.tar.xz',
binary_url({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/v4l_utils-1.20.0-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/v4l_utils-1.20.0-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/v4l_utils-1.20.0-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/v4l_utils-1.20.0-chromeos-x86_64.tar.xz'
})
binary_sha256 ({
aarch64: 'baf11b08999b753b4b874b5fd5eebecb85f78679f0912350bffc8a27c558dc08',
armv7l: 'baf11b08999b753b4b874b5fd5eebecb85f78679f0912350bffc8a27c558dc08',
i686: '8c12cad6c323d2448c6dcb9b8c68c6b1c5aea6889c1c99fdbeea616529e8d38a',
x86_64: '17414e347092d411b24c3caa5f306f881996b639435c82d1a7aac9d693aa64d2',
binary_sha256({
aarch64: '6020b0b0a9f4bf4659bca79749659210e2bbd30d5099260813847193f17841d3',
armv7l: '6020b0b0a9f4bf4659bca79749659210e2bbd30d5099260813847193f17841d3',
i686: '9c6050888763ad102c12647ae0a952db55b2f83074005c1ec5a705b3c8f99031',
x86_64: '16979812174393e579506611f0f84bf9fc7d26b6d4f3b124c6061c6db007cd7d'
})
depends_on 'sdl2_image'
depends_on 'libglu'
depends_on 'alsa_lib'
depends_on 'ld_default'
def self.patch
system "find . -name '*.pl' -exec sed -i 's,/usr/bin/perl,#{CREW_PREFIX}/bin/perl,g' {} +"
end
def self.build
puts 'Switch to the gold linker.'.orange
original_default = `ld_default g`.chomp
system "./configure",
"--disable-bpf",
"--disable-static",
"--prefix=#{CREW_PREFIX}",
"--libdir=#{CREW_LIB_PREFIX}"
system "env CFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto -fuse-ld=gold' \
CXXFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto -fuse-ld=gold' \
LDFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \
./configure #{CREW_OPTIONS} \
--disable-bpf"
system 'make'
system "ld_default #{original_default}"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install'
end
end
require 'package'
class Vmaf < Package
description 'Perceptual video quality assessment algorithm based on multi-method fusion'
homepage 'https://github.com/Netflix/vmaf/'
@_ver = '2.1.1'
version @_ver
compatibility 'all'
source_url "https://github.com/Netflix/vmaf/archive/v#{@_ver}.tar.gz"
source_sha256 'e7fc00ae1322a7eccfcf6d4f1cdf9c67eec8058709887c8c6c3795c617326f77'
binary_url({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/vmaf-2.1.1-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/vmaf-2.1.1-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/vmaf-2.1.1-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/vmaf-2.1.1-chromeos-x86_64.tar.xz'
})
binary_sha256({
aarch64: 'fd05f6c2ad4d9f6373d8136db11f858169c17e6c2937a1bcedf381e93408c6e2',
armv7l: 'fd05f6c2ad4d9f6373d8136db11f858169c17e6c2937a1bcedf381e93408c6e2',
i686: '2163726aef956a8267845bba4b139c693481030531a4d12d120230fdb4e40c12',
x86_64: '1453af3bc71ee46c7aef48dc8d402440d08a76518a4761fb185347694a8095d1'
})
depends_on 'nasm' => ':build'
def self.build
@avx512 = ARCH == 'x86_64' ? 'true' : 'false'
Dir.chdir 'libvmaf' do
system "meson #{CREW_MESON_LTO_OPTIONS} \
-Denable_docs=false \
-Denable_tests=false \
-Denable_avx512=#{@avx512} \
-Denable_float=true \
builddir"
end
system 'meson configure libvmaf/builddir'
system 'ninja -C libvmaf/builddir'
end
def self.install
system "DESTDIR=#{CREW_DEST_DIR} ninja -C libvmaf/builddir install"
end
end
require 'package'
class Zimg < Package
description 'Scaling, colorspace conversion, and dithering library'
homepage 'https://github.com/sekrit-twc/zimg'
@_ver = '3.0.1'
version @_ver
compatibility 'all'
source_url "https://github.com/sekrit-twc/zimg/archive/release-#{@_ver}.tar.gz"
source_sha256 'c50a0922f4adac4efad77427d13520ed89b8366eef0ef2fa379572951afcc73f'
binary_url({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/zimg-3.0.1-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/zimg-3.0.1-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/zimg-3.0.1-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/zimg-3.0.1-chromeos-x86_64.tar.xz'
})
binary_sha256({
aarch64: 'c94a5d596cdc50049c842d01603a1facb61eab365f359c260c1ea4a3b19635e6',
armv7l: 'c94a5d596cdc50049c842d01603a1facb61eab365f359c260c1ea4a3b19635e6',
i686: '3fa552e994ef9e26ed7668c90b5f7b6dcfac935530a4d219bb4f43f37e6ab43e',
x86_64: 'b9aac8627b714d48e9d46a63a674e173f53ee4f4e74834b3141fcdfe94cf0f84'
})
@lto = ARCH == 'i686' || ARCH == 'x86_64' ? '-flto=auto' : ''
def self.build
system '[ -x configure ] || ./autogen.sh'
system "env CFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE #{@lto}' \
CXXFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE #{@lto}' \
LDFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE #{@lto}' \
./configure #{CREW_OPTIONS}"
system 'make'
end
def self.install
system "make DESTDIR=#{CREW_DEST_DIR} install"
end
end
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment