Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
6433 siemargl 1
@echo off
2
echo ####################################################
3
echo #           test libc builder                      #
4
echo #  usage: build [clean]                            #
5
echo ####################################################
6
rem #### CONFIG SECTION ####
7
set LIBNAME=libck.a
8
set INCLUDE=include
9
set CC=D:\VSProjects\msys-kos32-4.8.2\ktcc\trunk\libc\kos32-tcc.exe
10
set CFLAGS=-I"%cd%\%INCLUDE%" -Wall
11
set AR=kos32-ar
12
set ASM=fasm
13
set dirs=.
14
rem #### END OF CONFIG SECTION ####
15
 
16
set objs=
17
set target=%1
18
if not "%1"=="clean" set target=all
19
 
20
set INCLUDE="%cd%"
21
call :Target_%target%
22
 
23
if ERRORLEVEL 0 goto Exit_OK
24
 
25
echo Probably at runing has been created error
26
echo For help send a report...
27
pause
28
goto :eof
29
 
30
:Compile_C
31
   %CC% %CFLAGS% %1 -o "%~dpn1.kex" -lck
32
   if not %errorlevel%==0 goto Error_Failed
33
   set objs=%objs% "%~dpn1.o"
34
goto :eof
35
 
36
:Compile_Asm
37
   %ASM% %1 "%~dpn1.o"
38
   if not %errorlevel%==0 goto Error_Failed
39
   set objs=%objs% "%~dpn1.o"
40
goto :eof
41
 
42
:Target_clean
43
   echo cleaning ...
44
   for %%a in (%dirs%) do del /Q "%%a\*.o"
45
   for %%a in (%dirs%) do del /Q "%%a\*.kex"
46
goto :Exit_OK
47
 
48
:Target_all
49
   echo building all ...
50
   for %%a in (%dirs%) do (
51
      for %%f in ("%%a\*.asm") do call :Compile_Asm "%%f"
52
      for %%f in ("%%a\*.c") do call :Compile_C "%%f"
53
   )
54
::   %AR% -ru %LIBNAME% %objs%
55
::   if not %errorlevel%==0 goto Error_Failed
56
goto Exit_OK
57
 
58
:Error_Failed
59
echo error: execution failed
60
pause
61
exit 1
62
 
63
:Exit_OK
64
echo ####################################################
65
echo # All operations has been done...                  #
66
echo ####################################################
67
pause
68
exit 0