Files
dxfmakros/bin/setenv.bat
T

69 lines
2.4 KiB
Batchfile

@echo off
REM ================================================================
REM TEST - Umgebungsvariablen Setup
REM ================================================================
echo Setting up environment variables for DXFMAKROS ...
REM Basis-Projektpfad (aktueller Ordner)
set "DXFMAKRO=%~dp0.."
if "%DXFMAKRO:~-6%"=="bin\.." set "DXFMAKRO=%DXFMAKRO:~0,-6%"
if "%DXFMAKRO:~-1%"=="\" set "DXFMAKRO=%DXFMAKRO:~0,-1%"
REM Pfade fuer verschiedene Komponenten
set "DXFM_BIN=%DXFMAKRO%\bin"
set "DXFM_LIB=%DXFMAKRO%\lib"
set "DXFM_DATA=%DXFMAKRO%\data"
set "DXFM_TESTS=%DXFMAKRO%\tests"
set "DXFM_TESTDATA=%DXFM_TESTS%\testdata"
set "DXFM_TESTOUT=%DXFM_TESTS%\output"
set "DXFM_TESTREF=%DXFM_TESTS%\reference"
set "DXFM_CFG=%DXFMAKRO%\cfg"
set "DXFM_LOG=%DXFMAKRO%\logs"
set "DXFM_BLOCKS=%DXFMAKRO%\data\ils"
set "DXFM_LISP=%DXFMAKRO%\Lisp"
set "DXFM_DCL=%DXFMAKRO%\dcl"
set "DXFM_RESULTS=%DXFMAKRO%\results"
set BRISCAD="C:\Program Files\Bricsys\BricsCAD V25 de_DE\bricscad.exe"
REM Python-Umgebung fuer PyRx
REM WICHTIG: PYTHONHOME/PYTHONPATH NICHT setzen - bringt die
REM PyRx-Embedding-Initialisierung in BricsCAD zum Absturz
REM ("failed to get the Python code of the filesystem encoding").
REM Der RxLoader in der .venv findet Basis-Python und site-packages
REM selbst ueber pyvenv.cfg. DXFM_LIB wird ueber eine .pth-Datei
REM in der venv eingebunden (siehe unten).
set "PYTHONHOME="
set "PYTHONPATH="
REM .pth-Datei sicherstellen, damit DXFM_LIB im Python-Pfad ist
set "DXFM_PTH=%DXFMAKRO%\.venv\Lib\site-packages\dxfmakros.pth"
if not exist "%DXFM_PTH%" echo %DXFM_LIB%> "%DXFM_PTH%"
REM Ordner erstellen falls sie nicht existieren
if not exist "%DXFM_BIN%" mkdir "%DXFM_BIN%"
if not exist "%DXFM_CFG%" mkdir "%DXFM_CFG%"
if not exist "%DXFM_LIB%" mkdir "%DXFM_LIB%"
if not exist "%DXFM_DATA%" mkdir "%DXFM_DATA%"
if not exist "%DXFM_BLOCKS%" mkdir "%DXFM_BLOCKS%"
if not exist "%DXFM_LISP%" mkdir "%DXFM_LISP%"
if not exist "%DXFM_LOG%" mkdir "%DXFM_LOG%"
if not exist "%DXFM_RESULTS%" mkdir "%DXFM_RESULTS%"
if not exist "%DXFM_TESTDATA%" mkdir "%DXFM_TESTDATA%"
if not exist "%DXFM_TESTOUT%" mkdir "%DXFM_TESTOUT%"
if not exist "%DXFM_TESTREF%" mkdir "%DXFM_TESTREF%"
REM Umgebungsvariablen anzeigen
echo.
echo ================================================================
echo DXFMAKRO = %DXFMAKRO%
echo ================================================================
echo.
REM Optionally keep window open
if "%1"=="--keep-open" pause