]> rtime.felk.cvut.cz Git - hercules2020/hercules-compiler.git/blobdiff - Makefile
Update changelog for 2018.12.14-1 release
[hercules2020/hercules-compiler.git] / Makefile
index 4ea5cee91a19597a8a68e6717f9baed215aa5c31..96794c3c89fe242355aa39cff22c930fa01f1b9d 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -5,6 +5,8 @@ TMP_DESTDIR = $(CURDIR)/install
 export CC = gcc-5
 export CXX = g++-5
 
+USE_GPUGUARD = # OFF if empty
+
 all: libpremnotify
 all: passes
 
@@ -16,6 +18,9 @@ build/bin/opt: build/build.ninja
 llvm/tools/clang:
        ln -s ../../clang $@
 
+llvm/tools/lld:
+       ln -s ../../lld $@
+
 llvm/projects/openmp:
        ln -s ../../openmp $@
 
@@ -58,11 +63,12 @@ libpremnotify: export CC=$(DEB_HOST_GNU_TYPE)-gcc-5
 endif
 
 
-build/build.ninja: | build llvm/tools/clang llvm/projects/openmp
+build/build.ninja: | build llvm/tools/clang llvm/tools/lld llvm/projects/openmp
        cd $(@D) && cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="$(PREFIX)" \
                -DLLVM_ENABLE_ASSERTIONS=ON -DLLVM_ENABLE_BACKTRACES=ON -DLLVM_ENABLE_WERROR=OFF \
                -DBUILD_SHARED_LIBS=OFF -DLLVM_ENABLE_RTTI=ON $(LLVM_CROSS_FLAGS) \
-               -DCMAKE_CXX_FLAGS='-DHERCULES_PASS_ROOT=\"$(PREFIX)/lib/hercules/src/passes/\" -DOPENMP_NVPTX_COMPUTE_CAPABILITY=62' \
+               -DLLVM_ENABLE_LLD=ON -DLLVM_TOOL_LLD_BUILD=ON \
+               -DCMAKE_CXX_FLAGS='-DHERCULES_PASS_ROOT=\"$(PREFIX)/lib/hercules/src/passes/\" -DOPENMP_NVPTX_COMPUTE_CAPABILITY=62 $(if $(USE_GPUGUARD),-DUSE_GPUGUARD)' \
                -DLIBOMPTARGET_NVPTX_COMPUTE_CAPABILITY="62" \
                -G"Ninja" $(CURDIR)/llvm
 
@@ -99,7 +105,7 @@ passes: build_passes/build.ninja
        ninja -C build_passes
 
 libpremnotify:
-       $(MAKE) -C HerculesCompiler/libpremnotify
+       $(MAKE) -C HerculesCompiler/libpremnotify NVCC_FLAGS=$(if $(USE_GPUGUARD),-DUSE_GPUGUARD)
 
 install: all
        DESTDIR=$(DESTDIR) ninja -C build install