diff --git a/build.bat b/build.bat index ad3c35c..3b23f31 100644 --- a/build.bat +++ b/build.bat @@ -18,8 +18,8 @@ if %githashsize% == 0 ( move /y bin\githash_.txt bin\githash.txt ) -set DFLAGS=-O -release -Jbin %MFLAGS% -set TESTFLAGS=-g -w -Jbin +set DFLAGS=-O -release -version=StdLoggerDisableWarning -version=CallbackAPI -version=DMDLIB -Jbin -Jdmd %MFLAGS% +set TESTFLAGS=-g -w -version=StdLoggerDisableWarning -version=CallbackAPI -version=DMDLIB -Jbin -Jdmd set CORE= set LIBDPARSE= set STD= @@ -29,6 +29,31 @@ set DSYMBOL= set CONTAINERS= set LIBDDOC= +set DMD_ROOT_SRC= +for %%x in (dmd\src\dmd\common\*.d) do set DMD_ROOT_SRC=!DMD_ROOT_SRC! %%x +for %%x in (dmd\src\dmd\root\*.d) do set DMD_ROOT_SRC=!DMD_ROOT_SRC! %%x + +set DMD_LEXER_SRC=^ + dmd\src\dmd\console.d ^ + dmd\src\dmd\entity.d ^ + dmd\src\dmd\errors.d ^ + dmd\src\dmd\file_manager.d ^ + dmd\src\dmd\globals.d ^ + dmd\src\dmd\id.d ^ + dmd\src\dmd\identifier.d ^ + dmd\src\dmd\lexer.d ^ + dmd\src\dmd\tokens.d ^ + dmd\src\dmd\utils.d + +set DMD_PARSER_SRC=^ + dmd\src\dmd\astbase.d ^ + dmd\src\dmd\parse.d ^ + dmd\src\dmd\parsetimevisitor.d ^ + dmd\src\dmd\transitivevisitor.d ^ + dmd\src\dmd\permissivevisitor.d ^ + dmd\src\dmd\strictvisitor.d ^ + dmd\src\dmd\astenums.d + for %%x in (src\dscanner\*.d) do set CORE=!CORE! %%x for %%x in (src\dscanner\analysis\*.d) do set ANALYSIS=!ANALYSIS! %%x for %%x in (libdparse\src\dparse\*.d) do set LIBDPARSE=!LIBDPARSE! %%x @@ -45,14 +70,63 @@ for %%x in (containers\src\containers\internal\*.d) do set CONTAINERS=!CONTAINER if "%1" == "test" goto test_cmd @echo on -%DC% %MFLAGS% %CORE% %STD% %LIBDPARSE% %LIBDDOC% %ANALYSIS% %INIFILED% %DSYMBOL% %CONTAINERS% %DFLAGS% -I"libdparse\src" -I"DCD\dsymbol\src" -I"containers\src" -I"libddoc\src" -I"libddoc\common\source" -ofbin\dscanner.exe +%DC% %MFLAGS%^ + %CORE%^ + %STD%^ + %LIBDPARSE%^ + %LIBDDOC%^ + %ANALYSIS%^ + %INIFILED%^ + %DSYMBOL%^ + %CONTAINERS%^ + %DMD_ROOT_SRC%^ + %DMD_LEXER_SRC%^ + %DMD_PARSER_SRC%^ + %DFLAGS%^ + -I"libdparse\src"^ + -I"DCD\dsymbol\src"^ + -I"containers\src"^ + -I"libddoc\src"^ + -I"libddoc\common\source"^ + -I"dmd\src"^ + -ofbin\dscanner.exe goto eof :test_cmd @echo on set TESTNAME="bin\dscanner-unittest" -%DC% %MFLAGS% %STD% %LIBDPARSE% %LIBDDOC% %INIFILED% %DSYMBOL% %CONTAINERS% -I"libdparse\src" -I"DCD\dsymbol\src" -I"containers\src" -I"libddoc\src" -lib %TESTFLAGS% -of%TESTNAME%.lib -if exist %TESTNAME%.lib %DC% %MFLAGS% %CORE% %ANALYSIS% %TESTNAME%.lib -I"src" -I"inifiled\source" -I"libdparse\src" -I"DCD\dsymbol\src" -I"containers\src" -I"libddoc\src" -I"libddoc\common\source" -unittest %TESTFLAGS% -of%TESTNAME%.exe +%DC% %MFLAGS% ^ + %STD%^ + %LIBDPARSE%^ + %LIBDDOC%^ + %INIFILED%^ + %DSYMBOL%^ + %CONTAINERS%^ + %DMD_ROOT_SRC%^ + %DMD_LEXER_SRC%^ + %DMD_PARSER_SRC%^ + -I"libdparse\src"^ + -I"DCD\dsymbol\src"^ + -I"containers\src"^ + -I"libddoc\src"^ + -I"dmd\src"^ + -lib %TESTFLAGS%^ + -of%TESTNAME%.lib +if exist %TESTNAME%.lib %DC% %MFLAGS%^ + %CORE%^ + %ANALYSIS%^ + %TESTNAME%.lib^ + -I"src"^ + -I"inifiled\source"^ + -I"libdparse\src"^ + -I"DCD\dsymbol\src"^ + -I"containers\src"^ + -I"libddoc\src"^ + -I"libddoc\common\source"^ + -I"dmd\src"^ + -unittest^ + %TESTFLAGS%^ + -of%TESTNAME%.exe if exist %TESTNAME%.exe %TESTNAME%.exe if exist %TESTNAME%.obj del %TESTNAME%.obj