Skip to content

Commit

Permalink
Add PackageCompiler project and compilation script
Browse files Browse the repository at this point in the history
This PR adds script for package compilation into binary
  • Loading branch information
Matsievskiy S.V committed Oct 7, 2020
1 parent 131557f commit ef14410
Show file tree
Hide file tree
Showing 5 changed files with 74 additions and 0 deletions.
1 change: 1 addition & 0 deletions contrib/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
JuliaLSP_compiled
8 changes: 8 additions & 0 deletions contrib/JuliaLSP/Project.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
name = "JuliaLSP"
uuid = "9488cb22-ff86-4d62-8f4a-077fe1791049"
authors = ["Matsievskiy S.V. <matsievskiysv@gmail.com>"]
version = "0.1.0"

[deps]
LanguageServer = "2b0e0bc5-e4fd-59b4-8912-456d1b03d8d7"
SymbolServer = "cf896787-08d5-524d-9de7-132aaa0cb996"
4 changes: 4 additions & 0 deletions contrib/JuliaLSP/precompile_app.jl
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
using JuliaLSP

push!(ARGS, "arg")
JuliaLSP.julia_main()
13 changes: 13 additions & 0 deletions contrib/JuliaLSP/src/JuliaLSP.jl
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
module JuliaLSP

using LanguageServer
import SymbolServer

function julia_main()::Cint
server = LanguageServer.LanguageServerInstance(stdin, stdout)
server.runlinter = true
run(server)
return 0 # if things finished successfully
end

end # module
48 changes: 48 additions & 0 deletions contrib/compile.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
#!/usr/bin/env bash

JULIABIN="julia"
JULIAPROJ="JuliaLSP"
JULIACOMP="JuliaLSP_compiled"

REPO="https://github.com/julia-vscode/LanguageServer.jl"
BRANCH="master"

RED='\033[0;31m'
NC='\033[0m'

while [[ $# -gt 0 ]]
do
key="$1"

case $key in
-j|--julia)
JULIABIN="$2"
shift
;;
-b|--branch)
BRANCH="$2"
shift
;;
-r|--repo)
REPO="$2"
shift
;;
*)
echo -e "Usage:\ncompile.sh [-j|--julia <julia binary>] [-b|--branch <repo branch>]" >&2
exit
;;
esac
shift
done

echo -e ${RED}Updating packages${NC}

$JULIABIN --startup-file=no --history-file=no -e \
"import Pkg; Pkg.activate(\"${JULIAPROJ}\"); Pkg.add(Pkg.PackageSpec(url=\"${REPO}\", rev=\"${BRANCH}\")); Pkg.update();" || exit

echo -e ${RED}Compiling...${NC}

$JULIABIN --startup-file=no --history-file=no -e \
"import Pkg; Pkg.add(\"PackageCompiler\"); using PackageCompiler; create_app(\"${JULIAPROJ}\", \"${JULIACOMP}\", force=true);" || exit

echo -e ${RED}Compiled${NC}

0 comments on commit ef14410

Please sign in to comment.