Commit 3720a29b authored by Damian Montero's avatar Damian Montero Committed by GitHub

Merge branch 'master' into add-pre-built-binaries-c-l

parents a753b392 0e9f5878
......@@ -101,21 +101,42 @@ class Package
end
def self.system(*args)
# add "-j#{CREW_NPROC}" argument to "make" at only compile-time
# add "-j#" argument to "make" at compile-time, if necessary
# Order of precendence to assign the number of processors:
# 1. The value of '-j#' from the package make argument
# 2. The value of ENV["CREW_NPROC"]
# 3. The value of `nproc`.strip
# See lib/const.rb for more details
if @in_build == true
nproc = ''
nproc_opt = ''
args.each do |arg|
params = arg.split(/\W+/)
params.each do |param|
if param.match(/j(\d)+/)
nproc_opt = param
break
end
end
end
nproc = "#{CREW_NPROC}" if nproc_opt == ''
if args[0] == "make"
# modify ["make", "args", ...] into ["make", "-j#{CREW_NPROC}", "args", ...]
# modify ["make", "args", ...] into ["make", "-j#{nproc}", "args", ...]
args.insert(1, "-j#{nproc}") if nproc != ''
if @opt_verbose then
args.insert(1, "-j#{CREW_NPROC}", "V=1")
args.insert(1, "V=1")
else
args.insert(1, "-j#{CREW_NPROC}", "V=0")
args.insert(1, "V=0")
end
elsif args.length == 1
# modify ["make args..."] into ["make -j#{CREW_NPROC} args..."]
# modify ["make args..."] into ["make -j#{nproc} args..."]
args[0].gsub!(/^make /, "make -j#{nproc} ") if nproc != ''
if @opt_verbose then
args[0].gsub!(/^make /, "make -j#{CREW_NPROC} V=1 ")
args[0].gsub!(/^make /, "make V=1 ")
else
args[0].gsub!(/^make /, "make -j#{CREW_NPROC} V=0 ")
args[0].gsub!(/^make /, "make V=0 ")
end
end
end
......
require 'package'
class Gradle < Package
description 'From mobile apps to microservices, from small startups to big enterprises, Gradle helps teams build, automate and deliver better software, faster.'
homepage 'https://gradle.org/'
version '4.4.1'
source_url 'https://services.gradle.org/distributions/gradle-4.4.1-bin.zip'
source_sha256 'e7cf7d1853dfc30c1c44f571d3919eeeedef002823b66b6a988d27e919686389'
binary_url ({
})
binary_sha256 ({
})
depends_on 'unzip' => :build
depends_on 'jdk8'
def self.install
system "mkdir -p #{CREW_DEST_PREFIX}/bin"
system "mkdir -p #{CREW_DEST_PREFIX}/share/gradle"
system "cp -r . #{CREW_DEST_PREFIX}/share/gradle"
system "ln -s #{CREW_PREFIX}/share/gradle/bin/gradle #{CREW_DEST_PREFIX}/bin"
end
end
require 'package'
class Gsl < Package
description 'The GNU Scientific Library (GSL) is a numerical library for C and C++ programmers.'
homepage 'https://www.gnu.org/software/gsl/'
version '2.4'
source_url 'https://ftpmirror.gnu.org/gsl/gsl-2.4.tar.gz'
source_sha256 '4d46d07b946e7b31c19bbf33dda6204d7bedc2f5462a1bae1d4013426cd1ce9b'
binary_url ({
})
binary_sha256 ({
})
def self.build
system './configure',
"--prefix=#{CREW_PREFIX}",
"--libdir=#{CREW_LIB_PREFIX}",
'--disable-maintainer-mode'
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
end
require 'package'
class Libaio < Package
description 'Linux-native asynchronous I/O access library'
homepage 'https://pagure.io/libaio'
version '0.3.110-2'
source_url 'http://libaio.sourcearchive.com/downloads/0.3.110-2/libaio_0.3.110.orig.tar.gz'
source_sha256 'e019028e631725729376250e32b473012f7cb68e1f7275bfc1bbcdd0f8745f7e'
def self.build
system "sed -i 's,prefix=/usr,prefix=#{CREW_DEST_PREFIX},' Makefile"
system "sed -i 's,libdir=\$(prefix)/lib,libdir=#{CREW_DEST_LIB_PREFIX},' Makefile"
system "make"
end
def self.install
system "make install"
end
end
require 'package'
class Maven < Package
description 'Apache Maven is a software project management and comprehension tool.'
homepage 'https://maven.apache.org/'
version '3.5.2'
source_url 'http://mirror.csclub.uwaterloo.ca/apache/maven/maven-3/3.5.2/binaries/apache-maven-3.5.2-bin.tar.gz'
source_sha256 '707b1f6e390a65bde4af4cdaf2a24d45fc19a6ded00fff02e91626e3e42ceaff'
binary_url ({
})
binary_sha256 ({
})
depends_on 'jdk8'
def self.install
system "mkdir -p #{CREW_DEST_PREFIX}/bin"
system "mkdir -p #{CREW_DEST_PREFIX}/share/apache-maven"
system "cp -r . #{CREW_DEST_PREFIX}/share/apache-maven"
system "ln -s #{CREW_PREFIX}/share/apache-maven/bin/mvn #{CREW_DEST_PREFIX}/bin"
end
end
......@@ -3,25 +3,20 @@ require 'package'
class Slang < Package
description 'S-Lang is a multi-platform programmer\'s library designed to allow a developer to create robust multi-platform software.'
homepage 'http://www.jedsoft.org/slang/'
version '2.3.1a'
version '2.3.1a-1'
source_url 'http://www.jedsoft.org/releases/slang/slang-2.3.1a.tar.bz2'
source_sha256 '54f0c3007fde918039c058965dffdfd6c5aec0bad0f4227192cc486021f08c36'
binary_url ({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/slang-2.3.1a-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/slang-2.3.1a-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/slang-2.3.1a-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/slang-2.3.1a-chromeos-x86_64.tar.xz',
})
binary_sha256 ({
aarch64: '1cee3907eef94f5e66b3281fb98379cb28676dc5c4793cf74daddf10a06a4e2e',
armv7l: '1cee3907eef94f5e66b3281fb98379cb28676dc5c4793cf74daddf10a06a4e2e',
i686: 'd82831ed4874164413d878edcbe11603681dd2bd56ada9e005ae20917f4bbaf6',
x86_64: '0212b1d29926d39861ceee0003041a0b9fff11f2128558aafcffed894f6caff7',
})
def self.build
system "./configure", "--prefix=/usr/local", "--without-x"
system './configure',
"--prefix=#{CREW_PREFIX}",
"--libdir=#{CREW_LIB_PREFIX}",
'--without-x'
# force to compile in sequential since slang Makefile doesn't work in parallel
system "make", "-j1"
......
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