46 lines
1.6 KiB
Makefile
46 lines
1.6 KiB
Makefile
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
|