-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
35 lines (28 loc) · 979 Bytes
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# Makefile for Diary-CLI
PYTHON = python
PIP = python -m pip
PYINSTALLER = pyinstaller
INSTALL_DIR = /usr/local/bin
EXECUTABLE = dist/main
VENV_DIR = venv
VENV_ACTIVATE = $(VENV_DIR)/bin/activate
.PHONY: install build clean
# Buildando e instalando globalmente o executável
install: $(VENV_ACTIVATE) build
@echo @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@echo Atenção!
@echo O instalador irá precisar de permissão de administrador
@echo Para tornar o programa executável de qualquer localização.
@sudo cp $(EXECUTABLE) $(INSTALL_DIR)/diarycli
@echo @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@echo "Diary-CLI foi instalado com sucesso."
# Criando o executável
build: $(VENV_ACTIVATE)
@. $(VENV_ACTIVATE) && $(PIP) install -r requirements.txt
@. $(VENV_ACTIVATE) && $(PYINSTALLER) --onefile main.py
# Limpeza de diretórios de builds e cache
clean:
@rm -rf build dist venv __pycache__
# Criar um ambiente virtual
$(VENV_ACTIVATE):
@$(PYTHON) -m venv $(VENV_DIR)