-
Notifications
You must be signed in to change notification settings - Fork 0
/
make-asdf.bat
73 lines (59 loc) · 2.44 KB
/
make-asdf.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
@echo off
:: Usage: ./make-asdf.bat [keyword=argument ...] <command>
:: See the Makefile for the list of acceptable keyword arguments
set here=%~dp0
set header_lisp=header.lisp
set driver_lisp=uiop\package.lisp + uiop\common-lisp.lisp + uiop\utility.lisp + uiop\version.lisp + uiop\os.lisp + uiop\pathname.lisp + uiop\filesystem.lisp + uiop\stream.lisp + uiop\image.lisp + uiop\lisp-build.lisp + uiop\launch-program.lisp + uiop\run-program.lisp + uiop\configuration.lisp + uiop\backward-driver.lisp + uiop\driver.lisp
set defsystem_lisp=upgrade.lisp + session.lisp + component.lisp + operation.lisp + system.lisp + system-registry.lisp + action.lisp + lisp-action.lisp + find-component.lisp + forcing.lisp + plan.lisp + operate.lisp + find-system.lisp + parse-defsystem.lisp + bundle.lisp + concatenate-source.lisp + package-inferred-system.lisp + output-translations.lisp + source-registry.lisp + backward-internals.lisp + backward-interface.lisp + interface.lisp + user.lisp + footer.lisp
%~d0
cd "%~p0"
if "%~1"=="" goto all
if "%~1"=="all" goto all
if "%~1"=="build_asdf" goto build_asdf
if "%~1"=="build_asdf_tools" goto build_asdf_tools
if "%~1"=="ext" goto ext
if "%~1"=="noext" goto noext
if "%~1"=="driver_files" goto driver_files
if "%~1"=="defsystem_files" goto defsystem_files
call "%0" build_asdf_tools
"%here%\build\asdf-tools.exe" env %*
goto end
:all
:: Default action: bootstrap asdf.lisp
:build_asdf
:: That's the only thing that we really need before we may invoke the asdf-tools
if not exist build mkdir build
set a=build\asdf.lisp
copy /y /b %header_lisp% + %driver_lisp% + %defsystem_lisp% %a%.tmp > nul
if not exist %a% goto clobber
fc /b /0 %a%.tmp %a% > nul
if errorlevel 1 goto clobber
del /f /q %a%.tmp
goto end
:build_asdf_tools
:: Building a binary for asdf-tools
if exist build\asdf-tools.exe goto end
call "%0" build_asdf
"%here%\tools\asdf-tools.bat" build-asdf-tools
goto end
:clobber
if exist %a% del /f /q %a%
rename %a%.tmp asdf.lisp
goto end
:ext
:: Download all the development-time dependencies of ASDF:
git submodule update --init
goto end
:noext
:: Remove all the development-time dependencies of ASDF:
git submodule deinit .
goto end
:driver_files
:: These targets are used during tests to ensure the Makefile is in synch with the .asd files.
echo %driver_lisp%
goto end
:defsystem_files
:: These targets are used during tests to ensure the Makefile is in synch with the .asd files.
echo %defsystem_lisp%
goto end
:end