Rewrite ./ext/ setup scripts
This commit is contained in:
parent
c25c589281
commit
d31fe2166e
9 changed files with 97 additions and 47 deletions
5
.gitignore
vendored
5
.gitignore
vendored
|
@ -1,5 +1,8 @@
|
|||
.cask/
|
||||
ext/
|
||||
ext/*
|
||||
!ext/*.sh
|
||||
!ext/*.md
|
||||
!ext/VARS
|
||||
eshell/
|
||||
private/cache/
|
||||
private/snippets/
|
||||
|
|
46
ext/Makefile
46
ext/Makefile
|
@ -1,46 +0,0 @@
|
|||
CACHE_DIR="$(HOME)/.emacs.d/private/cache/`hostname`/`emacs --version | grep -o '2[0-9]\.[0-9]'`"
|
||||
ELPA_DIR="$(HOME)/.emacs.d/.cask/`emacs --version | grep -o '2[0-9]\.[0-9]\.[0-9]'`/elpa"
|
||||
|
||||
LLVMV="3.8.0"
|
||||
LLVM="clang+llvm-$(LLVMV)-x86_64-apple-darwin"
|
||||
|
||||
#
|
||||
|
||||
all: rust csharp js sh cc
|
||||
|
||||
rust:
|
||||
@echo "Installing Rust dependencies"
|
||||
git clone --depth 1 --recursive "https://github.com/rust-lang/rust.git" rust
|
||||
git clone --depth 1 --recursive "https://github.com/phildawes/racer.git" racer-src
|
||||
cd racer-src && cargo build --release
|
||||
mv racer-src/target/release/racer ./racer
|
||||
rm -rf racer-src
|
||||
|
||||
csharp:
|
||||
@echo "Installing C# dependencies"
|
||||
git clone --depth 1 --recursive "https://github.com/OmniSharp/omnisharp-server" omnisharp
|
||||
cd omnisharp && xbuild
|
||||
mv omnisharp/bin/Debug/OmniSharp.exe ./OmniSharp.exe
|
||||
rm -rf omnisharp
|
||||
|
||||
js:
|
||||
@echo "Installing js2-mode dependencies"
|
||||
npm -g install trepanjs tern
|
||||
|
||||
sh:
|
||||
@echo "Installing zsh/bash dependencies"
|
||||
brew install zshdb bashdb
|
||||
|
||||
cc:
|
||||
@echo "Installing irony-mode dependencies"
|
||||
[ -f "clang.tar.xz" ] || wget "http://llvm.org/releases/$(LLVMV)/$(LLVM).tar.xz" -O clang.tar.xz
|
||||
@if [ ! -d clang ]; then \
|
||||
tar -xzvf clang.tar.xz; \
|
||||
mv "$(LLVM)" clang; \
|
||||
fi
|
||||
@mkdir -p build; cd build && cmake -DCMAKE_INSTALL_PREFIX=$(CACHE_DIR)/irony/ \
|
||||
-DLIBCLANG_LIBRARY=~/.emacs.d/ext/clang/lib/libclang.dylib \
|
||||
-DLIBCLANG_INCLUDE_DIR=~/.emacs.d/ext/clang/include/ \
|
||||
$(ELPA_DIR)/irony-2*/server && \
|
||||
cmake --build . --use-stderr --config Release --target install
|
||||
install_name_tool -change @rpath/libclang.dylib /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/libclang.dylib $(CACHE_DIR)/irony/bin/irony-server
|
0
ext/README.md
Normal file
0
ext/README.md
Normal file
17
ext/VARS
Normal file
17
ext/VARS
Normal file
|
@ -0,0 +1,17 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
CACHE_DIR="${HOME}/.emacs.d/private/cache/`hostname`/"
|
||||
ELPA_DIR="${HOME}/.emacs.d/.cask/`emacs --version | grep -E -o '2[4-9]\.[0-9\.]+'`/elpa"
|
||||
|
||||
is-mac() { [ "$(uname)" == "Darwin" ]; }
|
||||
is-linux() { [ "$(expr substr $(uname -s) 1 5)" == "Linux" ]; }
|
||||
|
||||
git-repo() {
|
||||
old=$(pwd)
|
||||
if [ -d "$2" ]; then
|
||||
cd "$2" && git pull
|
||||
else
|
||||
git clone --depth 1 --recursive "$1" "$2"
|
||||
fi
|
||||
cd "$old"
|
||||
}
|
27
ext/setup-cc.sh
Executable file
27
ext/setup-cc.sh
Executable file
|
@ -0,0 +1,27 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
cd ~/.emacs.d/ext
|
||||
source ./VARS
|
||||
|
||||
LLVMV="3.8.0"
|
||||
LLVM="clang+llvm-${LLVMV}-x86_64-apple-darwin"
|
||||
|
||||
#
|
||||
echo "Setting up C/C++ (irony-mode)"
|
||||
|
||||
if is-mac; then
|
||||
brew install cmake
|
||||
brew install llvm --with-clang
|
||||
fi
|
||||
|
||||
# Build irony-server
|
||||
git-repo "https://github.com/Sarcasm/irony-mode" "irony-mode"
|
||||
cd irony-mode/server
|
||||
[ -d build ] && rm -rf build
|
||||
mkdir build && cd build
|
||||
cmake -DCMAKE_INSTALL_RPATH_USE_LINK_PATH\=ON \
|
||||
-DCMAKE_INSTALL_PREFIX\=${CACHE_DIR}/irony/ ../ && \
|
||||
cmake --build . --use-stderr --config Release --target install
|
||||
install_name_tool -change @rpath/libclang.dylib \
|
||||
/usr/local/opt/llvm/lib/libclang.dylib \
|
||||
${CACHE_DIR}/irony/bin/irony-server
|
12
ext/setup-csharp.sh
Executable file
12
ext/setup-csharp.sh
Executable file
|
@ -0,0 +1,12 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
cd ~/.emacs.d/ext
|
||||
source ./VARS
|
||||
|
||||
#
|
||||
echo "Setting up C# (omnisharp)"
|
||||
|
||||
git-repo "https://github.com/OmniSharp/omnisharp-server" omnisharp
|
||||
cd omnisharp && xbuild
|
||||
mv omnisharp/bin/Debug/OmniSharp.exe ./OmniSharp.exe
|
||||
rm -rf omnisharp
|
13
ext/setup-js.sh
Executable file
13
ext/setup-js.sh
Executable file
|
@ -0,0 +1,13 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
cd ~/.emacs.d/ext
|
||||
source ./VARS
|
||||
|
||||
#
|
||||
echo "Setting up JS (tern/trepanjs)"
|
||||
|
||||
if is-mac; then
|
||||
brew install node
|
||||
fi
|
||||
|
||||
npm -g install trepanjs tern
|
13
ext/setup-rust.sh
Executable file
13
ext/setup-rust.sh
Executable file
|
@ -0,0 +1,13 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
cd ~/.emacs.d/ext
|
||||
source ./VARS
|
||||
|
||||
#
|
||||
echo "Setting up Rust"
|
||||
|
||||
git-repo "https://github.com/rust-lang/rust.git" "rust"
|
||||
git-repo "https://github.com/phildawes/racer.git" "racer-src"
|
||||
|
||||
cd racer-src && cargo build --release
|
||||
mv racer-src/target/release/racer ./racer
|
11
ext/setup-sh.sh
Executable file
11
ext/setup-sh.sh
Executable file
|
@ -0,0 +1,11 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
cd ~/.emacs.d/ext
|
||||
source ./VARS
|
||||
|
||||
#
|
||||
echo "Setting up zsh/bash (zshdb, bashdb)"
|
||||
|
||||
if is-mac; then
|
||||
brew install zshdb bashdb
|
||||
fi
|
Loading…
Add table
Add a link
Reference in a new issue