singe/thirdparty/SDL3_mixer/external/libxmp/Makefile.vc.in
2026-09-03 22:01:35 -05:00

82 lines
1.8 KiB
Text

# Visual Studio makefile for Windows:
# nmake -f Makefile.vc
#
# To disable module depacker functionality:
# nmake -f Makefile.vc USE_DEPACKERS=0
#
# To disable ProWizard:
# nmake -f Makefile.vc USE_PROWIZARD=0
#
# To build the lite version of the library:
# nmake -f Makefile.vc lite
USE_DEPACKERS = 1
USE_PROWIZARD = 1
CC = cl
CFLAGS = /O2 /W3 /MD /Iinclude /DBUILDING_DLL /DWIN32 \
/D_USE_MATH_DEFINES /D_CRT_SECURE_NO_WARNINGS
#CFLAGS = $(CFLAGS) /DDEBUG
LD = link
LDFLAGS = /DLL /RELEASE
DLL = libxmp.dll
DLL_LITE= libxmp-lite.dll
!if $(USE_PROWIZARD)==0
CFLAGS = $(CFLAGS) /DLIBXMP_NO_PROWIZARD
!endif
!if $(USE_DEPACKERS)==0
CFLAGS = $(CFLAGS) /DLIBXMP_NO_DEPACKERS
!endif
OBJS = @OBJS@
PROWIZ_OBJS = @POBJS@
DEPACKER_OBJS = @DOBJS@
ALL_OBJS = $(OBJS)
!if $(USE_PROWIZARD)==1
ALL_OBJS = $(ALL_OBJS) $(PROWIZ_OBJS)
!endif
!if $(USE_DEPACKERS)==1
ALL_OBJS = $(ALL_OBJS) $(DEPACKER_OBJS)
!endif
LITE_OBJS = @LITE_OBJS@
TEST = src\md5.obj test\test.obj
TESTLITE= src\md5.obj test\testlite.obj
.c.obj:
@$(CC) /c /nologo $(CFLAGS) /Fo$*.obj $<
all: $(DLL)
lite: $(DLL_LITE)
# use a temporary response file
$(DLL): $(ALL_OBJS)
$(LD) $(LDFLAGS) /OUT:$(DLL) @<<libxmp.rsp
$(ALL_OBJS)
<<
$(DLL_LITE): $(LITE_OBJS)
$(LD) $(LDFLAGS) /OUT:$(DLL_LITE) @<<libxmplt.rsp
$(LITE_OBJS)
<<
clean:
-del src\*.obj
-del src\loaders\*.obj
-del src\loaders\prowizard\*.obj
-del src\depackers\*.obj
-del src\depackers\lhasa\*.obj
-del src\lite\*.obj
-del test\*.obj
-del test\*.dll test\*.exe
-del *.dll *.lib *.exp
check: $(TEST)
$(LD) /RELEASE /OUT:test\libxmp-test.exe $(TEST) libxmp.lib
copy libxmp.dll test
cd test & libxmp-test
check-lite: $(TESTLITE)
$(LD) /RELEASE /OUT:test\libxmp-lite-test.exe $(TEST) libxmp-lite.lib
copy libxmp-lite.dll test
cd test & libxmp-lite-test