Compare commits

...

4 Commits

Author SHA1 Message Date
Dan Vargas 01bc13d115
pkg(coffeescript-2.5.1): Add coffeescript 2.5.1 (#186)
Co-authored-by: Vargas, Dan <dan.vargas@frostbank.com>
2021-03-25 09:52:27 +13:00
Shivansh-007 3ad4375a68
pkg(pure-0.68): Add pure-lang 0.68 (#178)
* pkg(pure-0.68): Add pure-lang 0.68

* pkg(pure-0.68): Remove `--strip-components` flag and use SemVer.

* pkg(pure-0.68):Add -O flag on curl, so it just outputs to stdout

* pkg(pure-0.68):Add -L flag on curl, so that it can allow redirects.

* pkg(pure-0.68): Goodbye `v` flag from tar.

* pkg(pure-0.68): Add python alias.

* pkg(pure-0.68): Disable docs.

* pkg(pure-0.68): Fix settings for enable docs.

* Update build.sh

* Update environment

* Whoops typo.

* pkg(pure-0.68):Use semver naming method i.e. instead `0.68` it should be `0.68.0`

Co-authored-by: Shivansh-007 <Shivansh-007@users.noreply.github.com>
2021-03-25 09:52:12 +13:00
Dan Vargas 928c2a6d16
pkg(pascal-3.2.0): Add pascal (FreePascal) 3.2.0 (#187) 2021-03-25 09:39:36 +13:00
Dan Vargas eae11d6025
pkg(cow-1.0.0): Add cow 1.0.0 (#188)
Co-authored-by: Vargas, Dan <dan.vargas@frostbank.com>
2021-03-25 09:39:17 +13:00
21 changed files with 143 additions and 0 deletions

10
packages/coffeescript/2.5.1/build.sh vendored Executable file
View File

@ -0,0 +1,10 @@
#!/bin/bash
# Download and install NodeJS
curl "https://nodejs.org/dist/v15.10.0/node-v15.10.0-linux-x64.tar.xz" -o node.tar.xz
tar xf node.tar.xz --strip-components=1
rm node.tar.xz
export PATH=$PWD/bin:$PATH
# Install CoffeeScript via npm and done
npm install --global coffeescript@2.5.1

View File

@ -0,0 +1 @@
export PATH=$PWD/bin:$PATH

View File

@ -0,0 +1,6 @@
{
"language": "coffeescript",
"version": "2.5.1",
"author": "Dan Vargas <danvargas46@gmail.com>",
"aliases": ["coffeescript", "coffee"]
}

3
packages/coffeescript/2.5.1/run vendored Normal file
View File

@ -0,0 +1,3 @@
#!/bin/bash
coffee "$@"

View File

@ -0,0 +1 @@
console.log "OK"

12
packages/cow/1.0.0/build.sh vendored Executable file
View File

@ -0,0 +1,12 @@
#!/usr/bin/env bash
# Grab the latest cow source from github
git clone -q https://github.com/BigZaphod/COW.git cow
# Generate the cow binary into bin
mkdir -p bin
sed -i '1i#define NO_GREETINGS' cow/source/cow.cpp
g++ -o bin/cow cow/source/cow.cpp
# Cleanup
rm -rf cow

2
packages/cow/1.0.0/environment vendored Normal file
View File

@ -0,0 +1,2 @@
#!/usr/bin/env bash
export PATH=$PWD/bin:$PATH

6
packages/cow/1.0.0/metadata.json vendored Normal file
View File

@ -0,0 +1,6 @@
{
"language": "cow",
"version": "1.0.0",
"author": "Dan Vargas <danvargas46@gmail.com>",
"aliases": ["cow"]
}

2
packages/cow/1.0.0/run vendored Normal file
View File

@ -0,0 +1,2 @@
#!/bin/bash
cow "$@"

4
packages/cow/1.0.0/test.cow vendored Normal file
View File

@ -0,0 +1,4 @@
MoO MoO MoO MoO MoO MoO MoO MoO
MOO moO MoO MoO MoO MoO MoO MoO MoO MoO MoO mOo MOo moo
moO MoO MoO MoO MoO MoO MoO MoO Moo
MOo MOo MOo MOo Moo

25
packages/pascal/3.2.0/build.sh vendored Executable file
View File

@ -0,0 +1,25 @@
#!/bin/bash
PREFIX=$(realpath $(dirname $0))
mkdir -p build
cd build
curl -L "https://sourceforge.net/projects/freepascal/files/Linux/3.2.0/fpc-3.2.0-x86_64-linux.tar/download" -o pascal.tar
tar xf pascal.tar --strip-components=1
# FreePascal uses an interactive installer
./install.sh << ANSWERS
$PREFIX
n
n
n
ANSWERS
cd ..
rm -rf build
# A sample config (needed for each "project") is written to /etc
# We'll copy that into the local lib dir (fpc searches there too on compile)
mkdir lib/fpc/etc
cp -r /etc/fp* lib/fpc/etc/

5
packages/pascal/3.2.0/compile vendored Normal file
View File

@ -0,0 +1,5 @@
#!/usr/bin/env bash
# Compile pascal files
fpc -oout -v0 "$@"
chmod +x out

1
packages/pascal/3.2.0/environment vendored Normal file
View File

@ -0,0 +1 @@
export PATH=$PWD/bin:$PATH

6
packages/pascal/3.2.0/metadata.json vendored Normal file
View File

@ -0,0 +1,6 @@
{
"language": "pascal",
"version": "3.2.0",
"author": "Dan Vargas <danvargas46@gmail.com>",
"aliases": ["pascal", "freepascal", "pp", "pas"]
}

4
packages/pascal/3.2.0/run vendored Normal file
View File

@ -0,0 +1,4 @@
#!/bin/bash
shift # Filename is only used to compile
./out "$@"

5
packages/pascal/3.2.0/test.pp vendored Normal file
View File

@ -0,0 +1,5 @@
program test;
begin
writeln('OK');
end.

33
packages/pure/0.68.0/build.sh vendored Executable file
View File

@ -0,0 +1,33 @@
#!/usr/bin/env bash
PREFIX=$(realpath $(dirname $0))
# Python is available in the container as 'python3' and 'python2', not as 'python'
alias python=python3
# Installing LLVM and clang (the latter is optional but recommended)
curl -OL "http://llvm.org/releases/3.4/llvm-3.4.src.tar.gz"
curl -OL "http://llvm.org/releases/3.4/clang-3.4.src.tar.gz"
tar xfz llvm-3.4.src.tar.gz
tar xfz clang-3.4.src.tar.gz
mv clang-3.4 llvm-3.4/tools/clang
# Cleaning up gzip files.
rm llvm-3.4.src.tar.gz && rm clang-3.4.src.tar.gz
cd llvm-3.4
# Building and installing - LLVM and clang
./configure --prefix="$PREFIX" --enable-optimized --enable-targets=host-only --enable-docs="no" --enable-assertions="no"
make -j$(nproc)
make install -j$(nproc)
# Installing Pure
curl -sSLO "https://github.com/agraef/pure-lang/releases/download/pure-0.68/pure-0.68.tar.gz"
tar xfz pure-0.68.tar.gz
rm pure-0.68.tar.gz
cd pure-0.68
# Building and installing pure-lang
./configure --prefix="$PREFIX" --enable-release --with-tool-prefix="$PREFIX/bin" --with-static-llvm
make -j$(nproc)
make install -j$(nproc)

5
packages/pure/0.68.0/environment vendored Normal file
View File

@ -0,0 +1,5 @@
#!/usr/bin/env bash
# Put 'export' statements here for environment variables
export PATH=$PWD/bin:$PATH
export LD_LIBRARY_PATH=$PWD/lib

6
packages/pure/0.68.0/metadata.json vendored Normal file
View File

@ -0,0 +1,6 @@
{
"language": "pure",
"version": "0.68.0",
"author": "Shivansh-007 <shivansh-007@outlook.com>",
"aliases": []
}

4
packages/pure/0.68.0/run vendored Normal file
View File

@ -0,0 +1,4 @@
#!/usr/bin/env bash
# Put instructions to run the runtime
pure "$@"

2
packages/pure/0.68.0/test.pure vendored Normal file
View File

@ -0,0 +1,2 @@
using system;
puts "OK";