-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathmake.bat
97 lines (82 loc) · 2.24 KB
/
make.bat
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
@echo off
SET PYTHON_VERSION=python3
SET VENV_NAME=venv
SET VENV_ACTIVATE=%VENV_NAME%\Scripts\activate.bat
SET PYTHON=python
IF /I "%1"==".DEFAULT" GOTO .DEFAULT
IF /I "%1"=="help" GOTO help
IF /I "%1"=="venv" GOTO venv
IF /I "%1"=="resources" GOTO resources
IF /I "%1"=="lint" GOTO lint
IF /I "%1"=="package" GOTO package
IF /I "%1"=="run" GOTO run
IF /I "%1"=="docs" GOTO docs
IF /I "%1"=="clean" GOTO clean
GOTO error
:.DEFAULT
CALL make.bat help
GOTO :EOF
:help
ECHO Make file commands:
ECHO make venv
ECHO Prepare complete development environment
ECHO make lint
ECHO Run pylint and mypy
ECHO make resources
ECHO Make qrc resources file - main_rc.py
ECHO make package
ECHO Create packaged application
ECHO make run
ECHO Run application
ECHO make docs
ECHO Generate HTML documentation
ECHO make clean
ECHO Clean repository
GOTO :EOF
:venv
py -m pip install virtualenv
py -m virtualenv -p %PYTHON_VERSION% %VENV_NAME%
CALL %VENV_ACTIVATE%
%PYTHON% -m pip install -U pip
%PYTHON% -m pip install -r requirements.txt -r requirements-dev.txt
GOTO :EOF
:resources
CALL %VENV_ACTIVATE%
pyside2-rcc virtual_warehouse/main.qrc -o virtual_warehouse/main_rc.py
GOTO :EOF
:lint
CALL %VENV_ACTIVATE%
%PYTHON% -m pylint virtual_warehouse
%PYTHON% -m flake8 virtual_warehouse
GOTO :EOF
:package
CALL make.bat resources
CALL %VENV_ACTIVATE%
for /f "tokens=* delims=" %%a in (
'python -c "import owlready2 as _; print(_.__file__[:-11])"'
) do (
ECHO %%a
pyinstaller --name="Virtual Warehouse" --windowed --clean --onedir main.py --icon="virtual_warehouse/resources/images/icon.ico" --add-data %%apellet;owlready2\pellet --add-data virtual_warehouse\plugins;virtual_warehouse\plugins
)
PUSHD dist
tar.exe -caf virtual-warehouse.zip "Virtual Warehouse"
POPD
GOTO :EOF
:run
CALL make.bat resources
%PYTHON% main.py
GOTO :EOF
:docs
CALL %VENV_ACTIVATE%
docs\make.bat html
GOTO :EOF
:clean
DEL /Q %VENV_NAME% *.eggs *.egg-info dist build docs/_build .cache -rf
GOTO :EOF
:error
IF "%1"=="" (
ECHO make: *** No targets specified and no makefile found. Stop.
) ELSE (
ECHO make: *** No rule to make target '%1%'. Stop.
)
GOTO :EOF