Welcome to mirror list, hosted at ThFree Co, Russian Federation.

release_windows.bat - github.com/kliment/Printrun.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 3e662130e0c6d8e2d5a3de4c2d6afc0ac9c9fc9d (plain)
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
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
echo off
cls

rem *************************************************************************
rem ****************  ---> New batch file starts here <---  *****************
rem **                                                                     **
rem **  This batch will compile automated via command line an executable   **
rem **  Pronterface file for Windows 10.                                   **
rem **                                                                     **
rem **  Steps that are automated:                                          **
rem **                                                                     **
rem **  1. clean up previous compilations (directory .\dist)               **
rem **  2. check for virtual environment called v3 and generate it, if     **
rem **     not available (start from scratch)                              **
rem **  3. install all needed additional modules via pip                   **
rem **  4. check for outdated modules that need to be updated and          **
rem **     update them                                                     **
rem **  5. Check if virtual environment needs an update and do it          **
rem **  6. check for existing variants of gcoder_line.cp??-win_amd??.pyd   **
rem **     and delete them (to prevent errors and incompatibilities)       **
rem **  7. compile Pronterface.exe                                         **
rem **  8. copy localization files to .\dist                               **
rem **  9. go to directory .\dist, list files and ends the activity        **
rem **                                                                     **
rem **  Steps, you need to do manually before running this batch:          **
rem **                                                                     **
rem **  1. install python 3.7.9                                            **
rem **     https://www.python.org/downloads/release/python-378/            **
rem **  2. install C-compiler environment                                  **
rem **     https://wiki.python.org/moin/WindowsCompilers                   **
rem **  3. check for latest repository updates at:                         **
rem **     http://github.com/kliment/Printrun.git                          **
rem **                                                                     **
rem **  Author: DivingDuck, 2021-01-06, Status: working                    **
rem **                                                                     **
rem *************************************************************************
rem *************************************************************************

echo **************************************************
echo ****** Delete files and directory of .\dist ******
echo **************************************************
if exist dist (
   DEL /F/Q/S dist > NUL
   RMDIR /Q/S dist
   )
echo *********************************************
echo ****** Activate virtual environment v3 ******
echo *********************************************
if exist v3 (
   call v3\Scripts\activate
   ) else (

   echo **********************************************************************
   echo ****** No virtual environment named v3 available                ******
   echo ****** Will create first a new virtual environment with name v3 ******
   echo **********************************************************************
   py -3.7 -m venv v3

   echo *********************************************
   echo ****** Activate virtual environment v3 ******
   echo *********************************************
   call v3\Scripts\activate

   pip install --upgrade pip
   pip install --upgrade setuptools

   pip install wheel
   
   echo **********************************
   echo ****** install requirements ******
   echo **********************************
   pip install -r requirements.txt
   pip install cython
   echo ***********************
   echo ****** additions ******
   echo ***********************
   pip install simplejson
   
   rem echo *******************************
   rem echo ****** pyinstaller 4 dev ******
   rem echo *******************************
   rem pyinstaller v3.6 don't work with Windows 10  pip install pyinstaller
   rem update 2020-12-13: there is a new version available v4.1. 
   rem Looks like we don't need this fix any longer
   REM pip uninstall pyinstaller
   REM pip install https://github.com/pyinstaller/pyinstaller/archive/develop.zip
   pip install pyinstaller
   pip install pypiwin32
   pip install polygon3
   )

echo ********************************************
echo ****** upgrade virtual environment v3 ******
echo ********************************************
pip install --upgrade virtualenv

echo ****************************************************
echo ****** check for and update outdated modules  ******
echo ****************************************************
for /F "skip=2 delims= " %%i in ('pip list --outdated') do pip install --upgrade %%i

rem echo ****************************************************************************************
rem echo ****** --->> Hotfix AGe: solve numpy 1.19.4 problem for x64 windows runtime error ******
rem echo ****************************************************************************************
rem numpy v1.19.4 create an python RuntimeError: The current Numpy installation fails to pass a 
rem sanity check due to a bug in the windows runtime. See this issue for more information:
rem https://tinyurl.com/y3dm3h86
rem Temporary workaround is to install 1.19.3 instead.
rem --> ToDo: Need to be checked in 2021 January again
rem update 2021-01-06: There is a new version available
rem --> Solved with version 1.19.5
rem pip uninstall numpy
rem pip install numpy==1.19.3

echo ******************************************************************
echo ****** Compile G-Code parser gcoder_line.cp37-win_amd64.pyd ******
echo ******************************************************************
rem For safety reasons delete existing version first to prevent errors
if exist printrun\gcoder_line.cp??-win_amd??.pyd (
   del printrun\gcoder_line.cp??-win_amd??.pyd
   echo ********************************************************************************
   echo ****** found versions of printrun\gcoder_line.cp??-win_amd??.pyd, deleted ******
   echo ********************************************************************************
   )
python setup.py build_ext --inplace

echo ****************************************
echo ****** Collect all data for build ******
echo ****************************************
pyi-makespec -F --add-data images/*;images --add-data *.png;. --add-data *.ico;. -w -i pronterface.ico pronterface.py

echo *******************************
echo ****** Build Pronterface ******
echo *******************************
pyinstaller --clean pronterface.spec -y

echo ********************************
echo ****** Add language files ******
echo ********************************
xcopy locale dist\locale\ /Y /E

echo ***************************************************************
echo ******                Batch finalizes                    ******
echo ******                                                   ******
echo ******    Happy printing with Pronterface for Windows!   ******
echo ******                                                   ******
echo ****** You will find Pronterface and localizations here: ******
echo ***************************************************************
cd dist
dir .
pause
echo on