123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- # top level makefile for Go server
- include make/common-defs.make
- RUNNER_TARGETS := default
- # Determine which if any GPU runners we should build
- ifeq ($(OS),windows)
- CUDA_PATH?=$(shell cygpath -m -s "C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\" 2>/dev/null)unknown
- CUDA_BASE_DIR := $(dir $(shell cygpath -m -s "$(CUDA_PATH)\\.." 2>/dev/null))
- CUDA_11:=$(shell ls -d $(CUDA_BASE_DIR)/v11.? 2>/dev/null)
- CUDA_12:=$(shell ls -d $(CUDA_BASE_DIR)/v12.? 2>/dev/null)
- HIP_PATH_83 := $(shell cygpath -m -s "$(subst \,/,$(HIP_PATH))" 2>/dev/null)
- HIP_LIB_DIR := $(shell ls -d $(HIP_PATH_83)/lib 2>/dev/null)
- else ifeq ($(OS),linux)
- HIP_PATH?=/opt/rocm
- HIP_LIB_DIR := $(shell ls -d $(HIP_PATH)/lib 2>/dev/null)
- CUDA_PATH?=/usr/local/cuda
- CUDA_11:=$(shell ls -d $(CUDA_PATH)-11 2>/dev/null)
- CUDA_12:=$(shell ls -d $(CUDA_PATH)-12 2>/dev/null)
- endif
- ifeq ($(OLLAMA_SKIP_CUDA_GENERATE),)
- ifneq ($(CUDA_11),)
- RUNNER_TARGETS += cuda_v11
- endif
- ifneq ($(CUDA_12),)
- RUNNER_TARGETS += cuda_v12
- endif
- endif
- ifeq ($(OLLAMA_SKIP_ROCM_GENERATE),)
- ifneq ($(HIP_LIB_DIR),)
- RUNNER_TARGETS += rocm
- endif
- endif
- all: clean-payload .WAIT runners
- runners: $(RUNNER_TARGETS)
- $(RUNNER_TARGETS):
- $(MAKE) -f make/Makefile.$@
- clean:
- rm -rf $(BUILD_DIR) $(DIST_RUNNERS) $(PAYLOAD_RUNNERS) $(RUNNERS_PAYLOAD_DIR)
- clean-payload:
- rm -rf $(addprefix $(RUNNERS_PAYLOAD_DIR)/, $(RUNNER_TARGETS) metal cpu cpu_avx cpu_avx2)
- .PHONY: all runners clean clean-payload $(RUNNER_TARGETS) .WAIT
- # Handy debugging for make variables
- print-%:
- @echo '$*=$($*)'
|