mirror of
https://github.com/chromebrew/chromebrew.git
synced 2026-01-08 23:18:10 -05:00
* Add binary_compression value to each package * Remove binary_url values and arrays * Handle packages with empty binary_sha256 arrays (either missing binaries or not compiled by us)
52 lines
1.7 KiB
Ruby
52 lines
1.7 KiB
Ruby
require 'package'
|
|
|
|
class Musl < Package
|
|
description 'A modern, simple, and fast C library implementation that strives to be lightweight, fast, simple, free, and correct in the sense of standards-conformance and safety.'
|
|
homepage 'https://musl.libc.org/'
|
|
version '1.2.2'
|
|
license 'MIT, LGPL-2 and GPL-2'
|
|
compatibility 'all'
|
|
source_url "https://musl.libc.org/releases/musl-#{version}.tar.gz"
|
|
source_sha256 '9b969322012d796dc23dda27a35866034fa67d8fb67e0e2c45c913c3d43219dd'
|
|
binary_compression 'tar.xz'
|
|
|
|
binary_sha256({
|
|
aarch64: '3ed631095e644fc8477a73c26b29970af21fea79ee65380ede17bb1d9b8116d3',
|
|
armv7l: '3ed631095e644fc8477a73c26b29970af21fea79ee65380ede17bb1d9b8116d3',
|
|
i686: 'eaff89a590abbcf849bc427a9629f389fee5d3ece2173272c2e4d1e858ec2008',
|
|
x86_64: 'aad8afc109cc3946c1d9b0bd079fe1973f8b28decc79f19b10dc7acc9a44f797'
|
|
})
|
|
|
|
def self.build
|
|
if (ARCH == 'armv7l') || (ARCH == 'aarch64')
|
|
abi = 'eabihf'
|
|
arch = 'armv7l'
|
|
else
|
|
abi = ''
|
|
arch = ARCH
|
|
end
|
|
system 'env',
|
|
'CC=cc',
|
|
'./configure',
|
|
'--disable-debug',
|
|
'--enable-warnings',
|
|
"--bindir=#{CREW_PREFIX}/bin",
|
|
"--host=#{arch}-cros-linux-musl#{abi}",
|
|
"--syslibdir=#{CREW_PREFIX}/lib",
|
|
"--prefix=#{CREW_PREFIX}/#{ARCH}-cros-linux-musl#{abi}"
|
|
system "sed -i '/CROSS_COMPILE/d' config.mak"
|
|
system 'make'
|
|
end
|
|
|
|
def self.install
|
|
system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install'
|
|
end
|
|
|
|
def self.postinstall
|
|
puts
|
|
puts 'To use the Musl C library, use the `musl-gcc` compiler.'.lightblue
|
|
puts '`musl-gcc` takes the same arguments as `cc`.'.lightblue
|
|
puts
|
|
end
|
|
end
|