blob: 9832b682eff7d86f2d49b578571685d443c95351 [file] [log] [blame]
# PROGRAMS includes all test programs built on this platform.
# STDTEST_PORTABLE
# test programs invoked via standard user interface, run on all platforms
# STDTEST_NONPORTABLE
# test programs invoked via standard user interface, not portable
# OTHER_PROGRAMS
# programs such as sendfile, that have to be invoked in a special sequence
# or with special parameters
!IFNDEF MODEL
MODEL=dynamic
!ENDIF
INCDIR=../../include
!IFNDEF OUTDIR
!IF "$(MODEL)" == "static"
OUTDIR=LibR
!ELSE
OUTDIR=Release
!ENDIF
!IF [$(COMSPEC) /c cl /nologo /? | find "x64" >NUL ] == 0
OUTDIR=x64\$(OUTDIR)
!ENDIF
!ENDIF
!IF !EXIST("$(OUTDIR)\.")
!IF ([$(COMSPEC) /C mkdir $(OUTDIR)] == 0)
!ENDIF
!ENDIF
!IFNDEF INTDIR
INTDIR=$(OUTDIR)
!ELSE
!IF !EXIST("$(INTDIR)\.")
!IF ([$(COMSPEC) /C mkdir $(INTDIR)] == 0)
!ENDIF
!ENDIF
!ENDIF
!MESSAGE Building tests into $(OUTDIR) for $(MODEL)
NONPORTABLE = \
$(OUTDIR)\testucs.exe
CLEAN_BUILDDIRS = Release Debug NT x64
PROGRAMS =
TARGETS = $(PROGRAMS) $(NONPORTABLE)
# bring in rules.mk for standard functionality
ALL: $(TARGETS)
CL = cl.exe
LD = link.exe
!IF "$(MODEL)" == "static"
LOCAL_LIB= ..\..\$(OUTDIR)\apr-1.lib
STATIC_CFLAGS = /D APR_DECLARE_STATIC
!ELSE
LOCAL_LIB= ..\..\$(OUTDIR)\libapr-1.lib
STATIC_CFLAGS =
!ENDIF
!IFDEF _DEBUG
DEBUG_CFLAGS = /MDd
!ELSE
DEBUG_CFLAGS = /MD
!ENDIF
INCLUDES=/I "$(INCDIR)"
CFLAGS = /nologo /c /W3 /Gm /EHsc /Zi /Od $(INCLUDES) \
$(STATIC_CFLAGS) $(DEBUG_CFLAGS) /D "BINPATH=$(OUTDIR:\=/)" \
/D _DEBUG /D WIN32 /Fo"$(INTDIR)/" /FD
LD_LIBS = kernel32.lib advapi32.lib ws2_32.lib wsock32.lib \
ole32.lib shell32.lib rpcrt4.lib
LDFLAGS = /nologo /debug /subsystem:console /incremental:no
SHLDFLAGS = /nologo /dll /debug /subsystem:windows /incremental:no
.c{$(INTDIR)}.obj:
$(CL) $(CFLAGS) -c $< -Fd$(INTDIR)\ $(INCLUDES)
$(OUTDIR)\testucs.exe: $(INTDIR)\testucs.obj $(LOCAL_LIB)
$(LD) $(LDFLAGS) /out:"$@" $** $(LD_LIBS)
@if exist "$@.manifest" \
mt.exe -manifest "$@.manifest" -outputresource:$@;1
clean:
@if EXIST $(INTDIR)\. rmdir /s /q $(INTDIR)
@if EXIST $(OUTDIR)\. rmdir /s /q $(OUTDIR)
cleanall:
@for %d in ($(CLEAN_BUILDDIRS)) do @if EXIST %d\. rmdir /s /q %d
PATH=$(OUTDIR);..\..\$(OUTDIR);$(PATH)
check: $(NONPORTABLE)
@for %p in ($(NONPORTABLE)) do @( \
echo Testing %p && %p || echo %p failed \
)
# DO NOT REMOVE