blob: 19e8e64800ff063f3b549ccbb1e794d2994b0164 (
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
|
@echo off
setlocal enabledelayedexpansion
pushd %~dp0
::Define as main parameters
set _Args_=
set _LIBs_=
set LIBi=
set ARGSO=-IExt\include -LExt\lib %*
::This is for the .def file also have a similar name .c file
::.a file will be larger than .def + .c
::*-uuid.c files are suitable to form libuuid.a
::w32api-3.17.2
:GetRLib
for %%i in (%ARGSO%) do (
set ARG=%%i
set OPT=!ARG:~0,2!
if "!OPT!"=="-l" (
set LIB=!ARG:~2!
set LIBi=
if "!LIB!"=="uuid" (
set LIBi= lib\*uid.c
) else (
if "!LIB!"=="vfw32" (
set LIBi= lib\msvfw32.def lib\avifil32.def lib\avicap32.def
) else (
call :GetLibS
)
)
if "!LIBi!"=="" (
set _Args_=!_Args_! %%i
) else (
set LIBi=!LIBi:%~dp0=!
set _LIBs_=!_LIBs_! !LIBi!
echo For lib !LIB! will use:
echo !LIBi!
echo.
)
) else (
set _Args_=!_Args_! %%i
)
)
::GetRLib End
popd
tcc.exe !_Args_! !_LIBs_!
exit /b
::::::::::
:GetLibS
for %%D in (-Llib %ARGSO%) do (
set ARG_=%%D
set OPT_=!ARG_:~0,2!
set LIBD=
if "!OPT_!"=="-L" (
set LIBD=!ARG_:~2!
if exist "!LIBD!" call :GetDLib
)
)
set LIBD=
set OPT_=
set ARG_=
exit /b
::GetLibD End
:GetDLib
pushd !LIBD!
for /f "usebackq delims=" %%I in (`"dir /b /s !LIB!.c !LIB!_*.c !LIB!.def !LIB!_*.def 2>nul"`) do (
set LIBi=!LIBi! "%%I"
)
popd
exit /b
::GetDLib End
|