Makefile 1.55 KB
Newer Older
Gems Guo's avatar
Gems Guo committed
1
2
BIN_PATH ?= $(HOME)/.nni/bin/
NNI_PATH ?= $(HOME)/.nni/
Deshui Yu's avatar
Deshui Yu committed
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

SRC_DIR := ${PWD}

.PHONY: build install uninstall

build:
	### Building NNI Manager ###
	cd src/nni_manager && yarn && yarn build
	
	### Building Web UI ###
	cd src/webui && yarn && yarn build
	
	### Building Python SDK ###
	cd src/sdk/pynni && python3 setup.py build
	
	### Building nnictl ###
	cd tools && python3 setup.py build


install:
Gems Guo's avatar
Gems Guo committed
23
24
	mkdir -p $(NNI_PATH)
	mkdir -p $(BIN_PATH)
Deshui Yu's avatar
Deshui Yu committed
25
26
	
	### Installing NNI Manager ###
Gems Guo's avatar
Gems Guo committed
27
28
	cp -rT src/nni_manager/dist $(NNI_PATH)nni_manager
	cp -rT src/nni_manager/node_modules $(NNI_PATH)nni_manager/node_modules
Deshui Yu's avatar
Deshui Yu committed
29
30
	
	### Installing Web UI ###
Gems Guo's avatar
Gems Guo committed
31
32
	cp -rT src/webui/build $(NNI_PATH)webui
	ln -sf $(NNI_PATH)nni_manager/node_modules/serve/bin/serve.js $(BIN_PATH)serve
Deshui Yu's avatar
Deshui Yu committed
33
34
35
36
	
	### Installing Python SDK dependencies ###
	pip3 install -r src/sdk/pynni/requirements.txt
	### Installing Python SDK ###
Gems Guo's avatar
Gems Guo committed
37
	cd src/sdk/pynni && pip3 install -e .
Deshui Yu's avatar
Deshui Yu committed
38
39
	
	### Installing nnictl ###
Gems Guo's avatar
Gems Guo committed
40
	cd tools && pip3 install -e .
Deshui Yu's avatar
Deshui Yu committed
41
	
Gems Guo's avatar
Gems Guo committed
42
43
44
	echo '#!/bin/sh' > $(BIN_PATH)nnimanager
	echo 'cd $(NNI_PATH)nni_manager && node main.js $$@' >> $(BIN_PATH)nnimanager
	chmod +x $(BIN_PATH)nnimanager
Deshui Yu's avatar
Deshui Yu committed
45
	
Gems Guo's avatar
Gems Guo committed
46
	install -m 755 tools/nnictl $(BIN_PATH)nnictl
Deshui Yu's avatar
Deshui Yu committed
47
48
	
	### Installing examples ###
Gems Guo's avatar
Gems Guo committed
49
	cp -rT examples $(NNI_PATH)examples
Deshui Yu's avatar
Deshui Yu committed
50
51
52
53


dev-install:
	### Installing Python SDK dependencies ###
Gems Guo's avatar
Gems Guo committed
54
	pip3 install -r src/sdk/pynni/requirements.txt
Deshui Yu's avatar
Deshui Yu committed
55
	### Installing Python SDK ###
Gems Guo's avatar
Gems Guo committed
56
	cd src/sdk/pynni && pip3 install -e .
Deshui Yu's avatar
Deshui Yu committed
57
58
	
	### Installing nnictl ###
Gems Guo's avatar
Gems Guo committed
59
	cd tools && pip3 install -e .
Deshui Yu's avatar
Deshui Yu committed
60
61
62


uninstall:
Gems Guo's avatar
Gems Guo committed
63
64
	-rm -r $(NNI_PATH)
	-rm -r $(BIN_PATH)
Deshui Yu's avatar
Deshui Yu committed
65
66
	-pip3 uninstall -y nnictl
	-pip3 uninstall -y nni
Gems Guo's avatar
Gems Guo committed
67