Files
chromebrew/packages/antlr4.rb
github-actions[bot] ec44140683 AutoBuild: update-antlr4 started at 2025-06-20-10UTC (#12088)
* antlr4 => 4.13.2

* Update antlr4.rb

* Add built packages for linux/386 to update-antlr4

* Add built packages for linux/amd64 to update-antlr4

* Add built packages for linux/arm/v7 to update-antlr4

* Update antlr4.rb

---------

Co-authored-by: SupeChicken666 <supechicken666@gmail.com>
Co-authored-by: supechicken <supechicken@users.noreply.github.com>
2025-06-20 15:17:51 +00:00

53 lines
2.1 KiB
Ruby

require 'package'
class Antlr4 < Package
description 'ANTLR (ANother Tool for Language Recognition) is a powerful parser generator for reading, processing, executing, or translating structured text or binary files.'
homepage 'https://www.antlr.org/'
version '4.13.2'
license 'BSD'
compatibility 'all'
source_url "https://github.com/antlr/antlr4/archive/#{version}.tar.gz"
source_sha256 '9f18272a9b32b622835a3365f850dd1063d60f5045fb1e12ce475ae6e18a35bb'
binary_compression 'tar.zst'
binary_sha256({
aarch64: 'e3fa17ad9cdc1edbafe5c3ba1ba9457c1655cabc1e2d5ec808f935b0fec4dc4d',
armv7l: 'e3fa17ad9cdc1edbafe5c3ba1ba9457c1655cabc1e2d5ec808f935b0fec4dc4d',
i686: '8773bedc562497079e48ac34dc07cd0f62c4017075f8b99f28d8743aebe9b205',
x86_64: 'db2ddd5bda866b111fb06f648b0642f6bdd5c5dd50249b832b82e899d743d0ef'
})
depends_on 'gcc_lib' # R
depends_on 'glibc' # R
depends_on 'openjdk11'
print_source_bashrc
def self.build
Dir.chdir 'runtime/Cpp' do
system "cmake -B builddir #{CREW_CMAKE_OPTIONS} -G Ninja -DCMAKE_POLICY_VERSION_MINIMUM=3.5 -DBUILD_GMOCK=OFF -DINSTALL_GTEST=OFF"
system "#{CREW_NINJA} -C builddir"
end
end
def self.install
downloader "https://www.antlr.org/download/antlr-#{version}-complete.jar",
'88f18a2bfac0dde1009eda5c7dce358a52877faef7868f56223a5bcc15329e43'
FileUtils.mkdir_p %W[#{CREW_DEST_PREFIX}/etc/env.d #{CREW_DEST_PREFIX}/share/antlr]
system "DESTDIR=#{CREW_DEST_DIR} #{CREW_NINJA} -C builddir install", chdir: 'runtime/Cpp'
FileUtils.install "antlr-#{version}-complete.jar", "#{CREW_DEST_PREFIX}/share/antlr", mode: 0o644
File.write "#{CREW_DEST_PREFIX}/etc/env.d/10-antlr4", <<~ANTLR_EOF
# ANTLR (ANother Tool for Language Recognition) configuration
CLASSPATH=".:#{CREW_PREFIX}/share/antlr/antlr-#{version}-complete.jar:$CLASSPATH"
alias antlr4="java -jar #{CREW_PREFIX}/share/antlr/antlr-#{version}-complete.jar"
alias grun="java org.antlr.v4.gui.TestRig"
ANTLR_EOF
end
def self.postinstall
ExitMessage.add "\nType 'antlr4' to get started.\n".lightblue
end
end