Files
chromebrew/packages/openjdk.rb
Maximilian Downey Twiss 659ae6eed6 Add pre-commit hooks (#9510)
2024-06-15 07:53:06 -04:00

63 lines
1.9 KiB
Ruby

require 'package'
Dir["#{CREW_PACKAGES_PATH}/openjdk*.rb"].each do |openjdk_file|
next unless openjdk_file =~ /openjdk(\d+).rb/
openjdk_name = File.basename(openjdk_file, '.rb')
require_relative openjdk_name
end
class Openjdk < Package
description 'The JDK is a development environment for building applications, applets, and components using the Java programming language.'
homepage 'https://openjdk.org/'
key = 1
@openjdk_versions = []
Dir["#{CREW_PACKAGES_PATH}/openjdk*.rb"].each do |openjdk_file|
next unless openjdk_file =~ /openjdk(\d+).rb/
openjdk_name = File.basename(openjdk_file, '.rb')
openjdk_ver = Object.const_get(openjdk_name.capitalize).version.to_s.gsub(/-(\d+)/, '')
@openjdk_versions.push [key, openjdk_name, openjdk_ver]
key += 1
end
versions = @openjdk_versions.map do |openjdk_ver|
openjdk_ver[2]
end
versions.sort!
version "#{versions.first}-#{versions.last}"
license 'GPL-2'
compatibility 'all'
is_fake
def self.preflight
if ARGV.include?('install')
puts "\n Select version:"
@openjdk_versions.each do |openjdk_ver|
option = " #{openjdk_ver[0]} = Openjdk #{openjdk_ver[2]}"
if File.file? "#{CREW_META_PATH}/#{openjdk_ver[1]}.filelist"
puts option.lightgreen
else
puts option
end
end
puts ' 0 = Cancel'
while (version = $stdin.gets.chomp.downcase.to_i)
version = 0 if version.negative? || version > @openjdk_versions.length
key = version - 1
case version
when @openjdk_versions[key][0]
if File.file? "#{CREW_META_PATH}/#{@openjdk_versions[key][1]}.filelist"
abort "Package #{@openjdk_versions[key][1]} already installed.".lightgreen
else
depends_on @openjdk_versions[key][1]
end
break
when 0
abort
end
end
end
end
end