⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 master.mif

📁 开放源码的编译器open watcom 1.6.0版的源代码
💻 MIF
字号:
#
# C Run-Time Library test programs master makefile
#

# code  platform                invocation
# ====  ========                ==========
# DOS   16-bit DOS              dos_s
#                               dos_c
#                               dos_m
#                               dos_l
#                               dos_h
# PLS   PharLap                 pls_3s
#                               pls_3r
# RSI   Rational Systems        rsi_3s
#                               rsi_3r
# X32   Flashtek                x32_3s
#                               x32_3r
# OS2   OS/2 16-bit             os2_s
#                               os2_c
#                               os2_m
#                               os2_l
#                               os2_h
#                               os2_mt
# OS3   OS/2 32-bit             os3_3r
# OS3   OS/2 32-bit pm          os3pm_3r
#                               os3pm_3s
# WIN   Windows 16-bit          create icons; click ( or use WinRun )
# W32   Windows 32-bit          create icons; click ( or use WinRun )
# WNT   Windows NT Console      wnt_3r
#                               wnt_3s
# WNT   Windows NT Window       wntw_3r
#                               wntw_3s
# WNT   Windows NT Console(AXP) wnt_axp
# WNT   Windows NT Window(AXP)  wntw_axp
# LNX   Linux (386)             lnx_3r
#                               lnx_3s

!include cproj.mif

# Avoid the need for !include $(clib_dir)/flags.mif with
# debug flags need to be last to override optimization flags
!ifeq release 0
c_dbg_flags = -d2
a_dbg_flags = -d1
!endif

.erase
.extensions:
.extensions: .exe .rex .exp .obj .c .asm

# Use delivered files for a release build; development files for debug build
.before
!ifeq release 0
!else
!ifdef __UNIX__
    @set WATCOM=$(%RELROOT)/rel2
    @set INCLUDE=
    @set DOS_INCLUDE=$(%WATCOM)/h
    @set NT_INCLUDE=$(%WATCOM)/h
    @set OS2_INCLUDE=$(%WATCOM)/h
    @set QNX_INCLUDE=$(%WATCOM)/qh
    @set LINUX_INCLUDE=$(%WATCOM)/lh
    @set WINDOWS_INCLUDE=$(%WATCOM)/h/win:$(%WATCOM)/h
    @set PATH=$(%WATCOM)/binl:$(%WATCOM)/binw:$(%PATH)
!else
    @set WATCOM=$(%RELROOT)\rel2
    @set INCLUDE=
    @set DOS_INCLUDE=$(%WATCOM)\h
    @set NT_INCLUDE=$(%WATCOM)\h
    @set OS2_INCLUDE=$(%WATCOM)\h
    @set QNX_INCLUDE=$(%WATCOM)\qh
    @set LINUX_INCLUDE=$(%WATCOM)\lh
    @set WINDOWS_INCLUDE=$(%WATCOM)\h\win;$(%WATCOM)\h
    @set PATH=$(%WATCOM)\binnt;$(%WATCOM)\binw;$(%PATH)
!endif
!endif

!ifndef defwin
defwin=-bw
!endif

comp_i86  = -fpc
comp_axp  =
comp_opts = -wx -we -oaxt -d1 -zq -fo=$^*.obj
link_i86  = DEBUG dwarf
link_axp  = DEBUG codeview
link_opts = NAME $^* OPTION quiet

dosexes = &
    dos_s.exe dos_c.exe dos_m.exe dos_l.exe dos_h.exe &
    rsi_3s.exe rsi_3r.exe

!ifdef %TEST_PLS
dosexes += pls_3s.exe pls_3r.exe
!endif
!ifdef %TEST_X32
dosexes += x32_3s.exe x32_3r.exe
!endif

winexes = &
    win_s.exe win_c.exe win_m.exe win_l.exe &
    win32_3s.exe win32_3r.exe

os2exes = &
    os2_s.exe os2_c.exe os2_m.exe os2_l.exe os2_h.exe os2_mt.exe

os3exes = &
    os3_3r.exe os3_3s.exe # os3pm_3r.exe os3pm_3s.exe

wntexes = &
    wnt_3s.exe wnt_3r.exe

wntwexes = &
    wntw_3s.exe wntw_3r.exe

wntaxpexes = &
    wnt_axp.exe # wntw_axp.exe

lnx386exes = &
    lnx_3r lnx_3s

exes = &
    $(dosexes) $(winexes) $(os2exes) $(os3exes) $(wntexes) $(wntaxpexes) # $(wntwexes)

all : .symbolic $(exes)

underos2 : .symbolic $(dosexes) $(winexes) $(os2exes) $(os3exes) $(wntexes)

underdos : .symbolic $(dosexes) $(winexes) $(os2exes) $(wntexes)

underwnt : .symbolic $(dosexes) $(winexes) $(os2exes) $(wntexes) # $(wntwexes)

underwntaxp : .symbolic $(wntaxpexes)

underlnx386 : .symbolic $(lnx386exes)

runtests : .symbolic
!ifdef notnt
    set notnt=NOTNT
!endif
!ifdef norun386
    set norun386=NORUN386
!endif
!ifdef norun286
    set norun286=NORUN286
!endif
!ifdef nodos4gw
    set nodos4gw=NODOS4GW
!endif
!ifdef __OS2__
    @%make underos2
    @cdsay | tee.exe os2.log
    @echo Running tests under OS/2 and Win-OS/2... | tee.exe -a os2.log
    -@..\os2.cmd | tee.exe -a os2.log
#    -@..\winos2.cmd | tee.exe -a os2.log
#    -@command /e:2048 /c ..\dos.bat | tee.exe -a os2.log
    @cat os2.log >> ..\_os2_.log
!else ifdef __MSDOS__
    @%make underdos
    -@clog dos.log
    @cdsay
    @echo Running tests under DOS...
    -@command /e:2048 /c ..\dos.bat
    -@command /e:2048 /c ..\windows.bat
    -@clog
    @cat dos.log >> ..\_dos_.log
!else ifdef __NT__
    @%make underwnt
    @cdsay | tee.exe wnt.log
    @echo Running tests under Windows NT... | tee.exe -a wnt.log
    -@..\wnt.bat | tee.exe -a wnt.log
    @cat wnt.log >> ..\_wnt_.log
!else ifdef __LINUX__
    @%make underlnx386
    @cdsay | tee lnx.log
    @echo Running tests under Linux... | tee -a lnx.log
    -@./lnx_3r | tee -a lnx.log
    -@./lnx_3s | tee -a lnx.log
    @cat lnx.log >> ../_lnx_.log
!else
!error Operating system unknown.
!endif

dos_s.exe : $(srcfile)
    $(cc_i86) $[@ $(comp_opts) $(comp_i86) -ms -bt=dos $(c_dbg_flags)
    wlink SYSTEM dos $(link_opts) $(link_i86) OPTION stack=5k FILE $^*.obj
    @rm $^*.obj

dos_c.exe : $(srcfile)
    $(cc_i86) $[@ $(comp_opts) $(comp_i86) -mc -bt=dos $(c_dbg_flags)
    wlink SYSTEM dos $(link_opts) $(link_i86) OPTION stack=5k FILE $^*.obj
    @rm $^*.obj

dos_m.exe : $(srcfile)
    $(cc_i86) $[@ $(comp_opts) $(comp_i86) -mm -bt=dos $(c_dbg_flags)
    wlink SYSTEM dos $(link_opts) $(link_i86) OPTION stack=5k FILE $^*.obj
    @rm $^*.obj

dos_l.exe : $(srcfile)
    $(cc_i86) $[@ $(comp_opts) $(comp_i86) -ml -bt=dos $(c_dbg_flags)
    wlink SYSTEM dos $(link_opts) $(link_i86) OPTION stack=5k FILE $^*.obj
    @rm $^*.obj

dos_h.exe : $(srcfile)
    $(cc_i86) $[@ $(comp_opts) $(comp_i86) -mh -bt=dos $(c_dbg_flags)
    wlink SYSTEM dos $(link_opts) $(link_i86) OPTION stack=5k FILE $^*.obj
    @rm $^*.obj

pls_3s.exe : $(srcfile)
    $(cc_386) $[@ $(comp_opts) $(comp_i86) -mf -3s -bt=dos -d__PHARLAP__ $(c_dbg_flags)
    wlink SYSTEM pharlap $(link_opts) $(link_i86) FILE $^*.obj
    $(pharlap)bind386 $(pharlap)run386b $^*.exp -exe $^*.exe>nul
    @rm $^*.exp
    @rm $^*.obj

pls_3r.exe : $(srcfile)
    $(cc_386) $[@ $(comp_opts) $(comp_i86) -mf -3r -bt=dos -d__PHARLAP__ $(c_dbg_flags)
    wlink SYSTEM pharlap $(link_opts) $(link_i86) FILE $^*.obj
    $(pharlap)bind386 $(pharlap)run386b $^*.exp -exe $^*.exe>nul
    @rm $^*.exp
    @rm $^*.obj

rsi_3s.exe : $(srcfile)
    $(cc_386) $[@ $(comp_opts) $(comp_i86) -mf -3s -bt=dos -d__DOS4G__ $(c_dbg_flags)
    wlink SYSTEM dos4g $(link_opts) $(link_i86) FILE $^*.obj
    @rm $^*.obj

rsi_3r.exe : $(srcfile)
    $(cc_386) $[@ $(comp_opts) $(comp_i86) -mf -3r -bt=dos -d__DOS4G__ $(c_dbg_flags)
    wlink SYSTEM dos4g $(link_opts) $(link_i86) FILE $^*.obj
    @rm $^*.obj

x32_3s.exe : $(srcfile)
    $(cc_386) $[@ $(comp_opts) $(comp_i86) -mf -3s -bt=dos -d__X32__ $(c_dbg_flags)
    wlink $(link_opts) $(link_i86) SYSTEM x32s FILE $^*.obj libpath $(flashtek)
    $(flashtek)x32fix $^*.exe>nul
    @rm $^*.obj

x32_3r.exe : $(srcfile)
    $(cc_386) $[@ $(comp_opts) $(comp_i86) -mf -3r -bt=dos -d__X32__ $(c_dbg_flags)
    wlink $(link_opts) $(link_i86) SYSTEM x32r FILE $^*.obj libpath $(flashtek)
    $(flashtek)x32fix $^*.exe>nul
    @rm $^*.obj

os2_s.exe : $(srcfile)
    $(cc_i86) $[@ $(comp_opts) $(comp_i86) -ms -2 -bt=os2 $(c_dbg_flags)
    wlink SYSTEM os2 pmcompatible $(link_opts) $(link_i86) OPTION stack=8k FILE $^*.obj
    @rm $^*.obj

os2_c.exe : $(srcfile)
    $(cc_i86) $[@ $(comp_opts) $(comp_i86) -mc -2 -bt=os2 $(c_dbg_flags)
    wlink SYSTEM os2 pmcompatible $(link_opts) $(link_i86) OPTION stack=8k FILE $^*.obj
    @rm $^*.obj

os2_m.exe : $(srcfile)
    $(cc_i86) $[@ $(comp_opts) $(comp_i86) -mm -2 -bt=os2 $(c_dbg_flags)
    wlink SYSTEM os2 pmcompatible $(link_opts) $(link_i86) OPTION stack=8k FILE $^*.obj
    @rm $^*.obj

os2_l.exe : $(srcfile)
    $(cc_i86) $[@ $(comp_opts) $(comp_i86) -ml -2 -bt=os2 $(c_dbg_flags)
    wlink SYSTEM os2 pmcompatible $(link_opts) $(link_i86) OPTION stack=8k FILE $^*.obj
    @rm $^*.obj

os2_h.exe : $(srcfile)
    $(cc_i86) $[@ $(comp_opts) $(comp_i86) -mh -2 -bt=os2 $(c_dbg_flags)
    wlink SYSTEM os2 pmcompatible $(link_opts) $(link_i86) OPTION stack=8k FILE $^*.obj
    @rm $^*.obj

os2_mt.exe : $(srcfile)
    $(cc_i86) $[@ $(comp_opts) $(comp_i86) -ml -bm -2 -bt=os2 $(c_dbg_flags)
    wlink SYSTEM os2 pmcompatible $(link_opts) $(link_i86) OPTION stack=8k FILE $^*.obj
    @rm $^*.obj

os3_3r.exe : $(srcfile)
    $(cc_386) $[@ $(comp_opts) $(comp_i86) -mf -3r -bt=os2 $(c_dbg_flags)
    wlink SYSTEM os2v2 pmcompatible $(link_opts) $(link_i86) FILE $^*.obj
    @rm $^*.obj

os3_3s.exe : $(srcfile)
    $(cc_386) $[@ $(comp_opts) $(comp_i86) -mf -3s -bt=os2 $(c_dbg_flags)
    wlink SYSTEM os2v2 pmcompatible $(link_opts) $(link_i86) FILE $^*.obj
    @rm $^*.obj

os3pm_3r.exe : $(srcfile)
    $(cc_386) $[@ $(comp_opts) $(comp_i86) -mf -3r $(defwin) -bt=os2 $(c_dbg_flags)
    wlink SYSTEM os2v2_pm $(link_opts) $(link_i86) FILE $^*.obj
    @rm $^*.obj

os3pm_3s.exe : $(srcfile)
    $(cc_386) $[@ $(comp_opts) $(comp_i86) -mf -3s $(defwin) -bt=os2 $(c_dbg_flags)
    wlink SYSTEM os2v2_pm $(link_opts) $(link_i86) FILE $^*.obj
    @rm $^*.obj

win_s.exe : $(srcfile)
    $(cc_i86) $[@ $(comp_opts) $(comp_i86) -ms -zw $(defwin) -bt=windows $(c_dbg_flags)
    wlink SYSTEM windows $(link_opts) $(link_i86) OPTION heap=10k, stack=5k FILE $^*.obj
    @rm $^*.obj

win_c.exe : $(srcfile)
    $(cc_i86) $[@ $(comp_opts) $(comp_i86) -mc -zw $(defwin) -bt=windows $(c_dbg_flags)
    *wlink SYSTEM windows $(link_opts) $(link_i86) OPTION heap=10k, stack=5k FILE $^*.obj
    @rm $^*.obj

win_m.exe : $(srcfile)
    $(cc_i86) $[@ $(comp_opts) $(comp_i86) -mm -zw $(defwin) -bt=windows $(c_dbg_flags)
    *wlink SYSTEM windows $(link_opts) $(link_i86) OPTION heap=10k, stack=5k FILE $^*.obj
    @rm $^*.obj

win_l.exe : $(srcfile)
    $(cc_i86) $[@ $(comp_opts) $(comp_i86) -ml -zw $(defwin) -bt=windows $(c_dbg_flags)
    *wlink SYSTEM windows $(link_opts) $(link_i86) OPTION heap=10k, stack=5k FILE $^*.obj
    @rm $^*.obj

win32_3r.exe : $(srcfile)
    $(cc_386) $[@ $(comp_opts) $(comp_i86) -mf -3r -zw $(defwin) -bt=windows $(c_dbg_flags)
    *wlink SYSTEM win386 $(link_opts) $(link_i86) OPTION mindata=32K,maxdata=32K FILE $^*.obj
    @rm $^*.obj
    wbind -n -q -s $(%WATCOM)/binw/win386.ext $^*
    @rm $^*.rex

win32_3s.exe : $(srcfile)
    $(cc_386) $[@ $(comp_opts) $(comp_i86) -mf -3s -zw $(defwin) -bt=windows $(c_dbg_flags)
    wlink SYSTEM win386 $(link_opts) $(link_i86) OPTION mindata=32K,maxdata=32K FILE $^*.obj
    @rm $^*.obj
    wbind -n -q -s $(%WATCOM)/binw/win386.ext $^*
    @rm $^*.rex

wnt_3r.exe : $(srcfile)
    $(cc_386) $[@ $(comp_opts) $(comp_i86) -mf -3r -bt=nt $(c_dbg_flags)
    wlink SYSTEM nt $(link_opts) $(link_i86) FILE $^*.obj
    @rm *.obj

wnt_3s.exe : $(srcfile)
    $(cc_386) $[@ $(comp_opts) $(comp_i86) -mf -3s -bt=nt $(c_dbg_flags)
    wlink SYSTEM nt $(link_opts) $(link_i86) FILE $^*.obj
    @rm *.obj

wntw_3r.exe : $(srcfile)
    $(cc_386) $[@ $(comp_opts) $(comp_i86) -mf -3r $(defwin) -bt=nt $(c_dbg_flags)
    wlink SYSTEM nt_win $(link_opts) $(link_i86) FILE $^*.obj
    @rm *.obj

wntw_3s.exe : $(srcfile)
    $(cc_386) $[@ $(comp_opts) $(comp_i86) -mf -3s $(defwin) -bt=nt $(c_dbg_flags)
    wlink SYSTEM nt_win $(link_opts) $(link_i86) FILE $^*.obj
    @rm *.obj

wnt_axp.exe : $(srcfile)
    $(cc_axp) $[@ $(comp_opts) $(comp_axp) -bt=nt $(c_dbg_flags)
    wlink SYSTEM ntaxp $(link_opts) $(link_axp) FILE $^*.obj
    @rm *.obj

wntw_axp.exe : $(srcfile)
    $(cc_axp) $[@ $(comp_opts) $(comp_axp) $(defwin) -bt=nt $(c_dbg_flags)
    wlink SYSTEM ntaxp_win $(link_opts) $(link_axp) FILE $^*.obj
    @rm *.obj

lnx_3r : $(srcfile)
    $(cc_386) $[@ $(comp_opts) $(comp_386) -3r -bt=linux $(c_dbg_flags)
    wlink SYSTEM linux $(link_opts) $(link_i86) FILE $^*.obj
    @rm *.obj

lnx_3s : $(srcfile)
    $(cc_386) $[@ $(comp_opts) $(comp_386) -3s -bt=linux $(c_dbg_flags)
    wlink SYSTEM linux $(link_opts) $(link_i86) FILE $^*.obj
    @rm *.obj

additional_cleanup = lnx_3r lnx_3s
!include ../mif/clean.mif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -