# SPDX-License-Identifier: CC0-1.0 language = 'Eiffel' display = 'Eiffel (Gobo Eiffel 22.01)' license = [ { name = 'MIT', url = 'http://www.gobosoft.com/eiffel/gobo/license.html' }, ] filename = 'main.e' install = ''' sudo apt-get update sudo apt-get install -y libgc-dev pushd $HOME wget -q -O /tmp/gobo.tar.gz https://github.com/gobo-eiffel/gobo/releases/download/gobo-22.01/gobo2201-src.tar.gz tar xf /tmp/gobo.tar.gz pushd gobo/bin export GOBO=$HOME/gobo ./install.sh --thread=$(nproc) gcc popd echo 'cflags: -O2 -march=native' >> gobo/tool/gec/config/c/gcc.cfg popd cat << 'EOF' > main.ecf EOF cat << 'EOF' > main.e class MAIN create make feature make do print ("Hello, world!%N") end end EOF export PATH=$GOBO/bin:$PATH gec --gc=boehm main.ecf ./Main rm Main* ''' compile = ''' export GOBO=$HOME/gobo export PATH=$GOBO/bin:$PATH gec --gc=boehm main.ecf 1>&2 ''' object = 'Main' execution = [ './Main', ]