mirror of
https://github.com/pytorch/pytorch.git
synced 2025-10-20 12:54:11 +08:00
[BE] Polish Makefile
(#155425)
Pull Request resolved: https://github.com/pytorch/pytorch/pull/155425 Approved by: https://github.com/ezyang
This commit is contained in:
committed by
PyTorch MergeBot
parent
b981fb6744
commit
49888e6be0
47
Makefile
47
Makefile
@ -1,59 +1,78 @@
|
||||
# This makefile does nothing but delegating the actual building to cmake.
|
||||
PYTHON = python3
|
||||
PIP = $(PYTHON) -m pip
|
||||
|
||||
SHELL = /bin/bash
|
||||
.SHELLFLAGS := -eu -o pipefail -c
|
||||
PYTHON ?= $(shell command -v python3 || command -v python)
|
||||
PIP = $(PYTHON) -m pip
|
||||
NIGHTLY_TOOL_OPTS := pull
|
||||
|
||||
.PHONY: all
|
||||
all:
|
||||
@mkdir -p build && cd build && cmake .. $(shell $(PYTHON) ./scripts/get_python_cmake_flags.py) && $(MAKE)
|
||||
@cmake -S . -B build $(shell $(PYTHON) ./scripts/get_python_cmake_flags.py) && \
|
||||
cmake --build build --parallel --
|
||||
|
||||
.PHONY: local
|
||||
local:
|
||||
@./scripts/build_local.sh
|
||||
|
||||
.PHONY: android
|
||||
android:
|
||||
@./scripts/build_android.sh
|
||||
|
||||
.PHONY: ios
|
||||
ios:
|
||||
@./scripts/build_ios.sh
|
||||
|
||||
clean: # This will remove ALL build folders.
|
||||
@rm -r build*/
|
||||
.PHONY: triton
|
||||
triton:
|
||||
$(PIP) uninstall -y triton
|
||||
@./scripts/install_triton_wheel.sh
|
||||
|
||||
.PHONY: clean
|
||||
clean: # This will remove ALL build folders.
|
||||
@rm -r build*/ || true
|
||||
|
||||
.PHONY: linecount
|
||||
linecount:
|
||||
@cloc --read-lang-def=caffe.cloc caffe2 || \
|
||||
echo "Cloc is not available on the machine. You can install cloc with " && \
|
||||
echo " sudo apt-get install cloc"
|
||||
|
||||
.PHONY: ensure-branch-clean
|
||||
ensure-branch-clean:
|
||||
@if [ -n "$(shell git status --porcelain)" ]; then \
|
||||
echo "Please commit or stash all changes before running this script"; \
|
||||
exit 1; \
|
||||
fi
|
||||
|
||||
.PHONY: setup-env
|
||||
setup-env: ensure-branch-clean
|
||||
$(PYTHON) tools/nightly.py $(NIGHTLY_TOOL_OPTS)
|
||||
|
||||
.PHONY: setup-env-cuda
|
||||
setup-env-cuda:
|
||||
$(MAKE) setup-env PYTHON="$(PYTHON)" NIGHTLY_TOOL_OPTS="$(NIGHTLY_TOOL_OPTS) --cuda"
|
||||
|
||||
.PHONY: setup-env-rocm
|
||||
setup-env-rocm:
|
||||
$(MAKE) setup-env PYTHON="$(PYTHON)" NIGHTLY_TOOL_OPTS="$(NIGHTLY_TOOL_OPTS) --rocm"
|
||||
|
||||
setup_env: setup-env
|
||||
setup_env_cuda: setup-env-cuda
|
||||
setup_env_rocm: setup-env-rocm
|
||||
|
||||
.PHONY: setup-lint
|
||||
setup-lint:
|
||||
$(PIP) install lintrunner
|
||||
lintrunner init
|
||||
|
||||
setup_lint: setup-lint
|
||||
|
||||
.PHONY: lint
|
||||
lint:
|
||||
lintrunner
|
||||
|
||||
.PHONY: quicklint
|
||||
quicklint:
|
||||
lintrunner
|
||||
|
||||
triton:
|
||||
$(PIP) uninstall -y triton
|
||||
@./scripts/install_triton_wheel.sh
|
||||
# Deprecated target aliases
|
||||
.PHONY: setup_env setup_env_cuda setup_env_rocm setup_lint
|
||||
setup_env: setup-env
|
||||
setup_env_cuda: setup-env-cuda
|
||||
setup_env_rocm: setup-env-rocm
|
||||
setup_lint: setup-lint
|
||||
|
Reference in New Issue
Block a user