mirror of
https://github.com/chromebrew/chromebrew.git
synced 2026-01-07 22:54:11 -05:00
* Rename CREW_OPTIONS to CREW_CONFIGURE_OPTIONS * Rename build_extras and install_extras to configure_build_extras and configure_install_extras
86 lines
2.4 KiB
Ruby
86 lines
2.4 KiB
Ruby
require 'package'
|
|
|
|
class Cras < Package
|
|
description 'ChromeOS Audio Server'
|
|
homepage 'https://www.chromium.org/chromium-os/chromiumos-design-docs/cras-chromeos-audio-server'
|
|
version 'stabilize-13654.B'
|
|
license 'BSD-Google'
|
|
compatibility 'x86_64 aarch64 armv7l'
|
|
source_url "https://chromium.googlesource.com/chromiumos/third_party/adhd/+/refs/heads/#{version}/cras/README.md"
|
|
source_sha256 '355514e78ba4d1736f53c427c329bdfad327afc052a1b78d543cb4840d199b4e'
|
|
binary_compression 'tar.xz'
|
|
|
|
binary_sha256({
|
|
aarch64: '586a93c5359b39c91a576904a212dde5926581d603263874d71feef6ef6cf1e2',
|
|
armv7l: '586a93c5359b39c91a576904a212dde5926581d603263874d71feef6ef6cf1e2',
|
|
x86_64: '1f53ed96948e29f71d42f1b437e7e4637f6e08a4e573966ec139bb3437ed0d21'
|
|
})
|
|
|
|
depends_on 'alsa_lib' # R
|
|
depends_on 'dbus' # R
|
|
depends_on 'eudev' # R
|
|
depends_on 'gtest' => :build
|
|
depends_on 'iniparser' # R
|
|
depends_on 'ladspa'
|
|
depends_on 'llvm18_dev' => :build
|
|
depends_on 'rust' => :build
|
|
depends_on 'sbc' # R
|
|
depends_on 'speexdsp' # R
|
|
|
|
def self.build
|
|
system 'git', 'clone', 'https://chromium.googlesource.com/chromiumos/third_party/adhd', '-b', version, '.'
|
|
Dir.chdir('cras') do
|
|
system 'cat << _EOF_ > 10-cras.conf
|
|
pcm.cras {
|
|
type cras
|
|
hint {
|
|
show on
|
|
description "Chromium OS Audio Server"
|
|
}
|
|
}
|
|
ctl.cras {
|
|
type cras
|
|
}
|
|
# Default: route all audio through the CRAS plugin.
|
|
pcm.!default {
|
|
type cras
|
|
hint {
|
|
show on
|
|
description "Default ALSA Output (currently Chromium OS Audio Server)"
|
|
}
|
|
}
|
|
ctl.!default {
|
|
type cras
|
|
}
|
|
_EOF_'
|
|
system './git_prepare.sh'
|
|
if ARCH == 'i686'
|
|
system "CFLAGS='-fuse-ld=lld -msse2' ./configure #{CREW_CONFIGURE_OPTIONS} \
|
|
--disable-alsa-plugin \
|
|
--disable-webrtc-apm \
|
|
--enable-sse42 \
|
|
--enable-avx \
|
|
--enable-avx2
|
|
--enable-fma"
|
|
else
|
|
system "CFLAGS='-fuse-ld=lld' ./configure #{CREW_CONFIGURE_OPTIONS} \
|
|
--disable-alsa-plugin \
|
|
--disable-webrtc-apm \
|
|
--enable-sse42 \
|
|
--enable-avx \
|
|
--enable-avx2 \
|
|
--enable-fma"
|
|
end
|
|
system 'make'
|
|
end
|
|
end
|
|
|
|
def self.install
|
|
Dir.chdir('cras') do
|
|
system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install'
|
|
FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/share/alsa/alsa.conf.d/"
|
|
FileUtils.install '10-cras.conf', "#{CREW_DEST_PREFIX}/share/alsa/alsa.conf.d/"
|
|
end
|
|
end
|
|
end
|