294 lines
7.9 KiB
Text
294 lines
7.9 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 = \
|
|
src\virtual.obj \
|
|
src\format.obj \
|
|
src\period.obj \
|
|
src\player.obj \
|
|
src\read_event.obj \
|
|
src\dataio.obj \
|
|
src\misc.obj \
|
|
src\mkstemp.obj \
|
|
src\md5.obj \
|
|
src\lfo.obj \
|
|
src\scan.obj \
|
|
src\control.obj \
|
|
src\far_extras.obj \
|
|
src\med_extras.obj \
|
|
src\filter.obj \
|
|
src\effects.obj \
|
|
src\flow.obj \
|
|
src\mixer.obj \
|
|
src\mix_all.obj \
|
|
src\rng.obj \
|
|
src\load_helpers.obj \
|
|
src\load.obj \
|
|
src\hio.obj \
|
|
src\hmn_extras.obj \
|
|
src\extras.obj \
|
|
src\smix.obj \
|
|
src\path.obj \
|
|
src\filetype.obj \
|
|
src\memio.obj \
|
|
src\tempfile.obj \
|
|
src\mix_paula.obj \
|
|
src\miniz_tinfl.obj \
|
|
src\win32.obj \
|
|
src\loaders\common.obj \
|
|
src\loaders\iff.obj \
|
|
src\loaders\itsex.obj \
|
|
src\loaders\lzw.obj \
|
|
src\loaders\voltable.obj \
|
|
src\loaders\sample.obj \
|
|
src\loaders\vorbis.obj \
|
|
src\loaders\xm_load.obj \
|
|
src\loaders\mod_load.obj \
|
|
src\loaders\s3m_load.obj \
|
|
src\loaders\stm_load.obj \
|
|
src\loaders\669_load.obj \
|
|
src\loaders\far_load.obj \
|
|
src\loaders\mtm_load.obj \
|
|
src\loaders\ptm_load.obj \
|
|
src\loaders\okt_load.obj \
|
|
src\loaders\ult_load.obj \
|
|
src\loaders\mdl_load.obj \
|
|
src\loaders\it_load.obj \
|
|
src\loaders\stx_load.obj \
|
|
src\loaders\pt3_load.obj \
|
|
src\loaders\sfx_load.obj \
|
|
src\loaders\flt_load.obj \
|
|
src\loaders\st_load.obj \
|
|
src\loaders\emod_load.obj \
|
|
src\loaders\imf_load.obj \
|
|
src\loaders\digi_load.obj \
|
|
src\loaders\fnk_load.obj \
|
|
src\loaders\ice_load.obj \
|
|
src\loaders\liq_load.obj \
|
|
src\loaders\ims_load.obj \
|
|
src\loaders\masi_load.obj \
|
|
src\loaders\masi16_load.obj \
|
|
src\loaders\amf_load.obj \
|
|
src\loaders\stim_load.obj \
|
|
src\loaders\mmd_common.obj \
|
|
src\loaders\mmd1_load.obj \
|
|
src\loaders\mmd3_load.obj \
|
|
src\loaders\rtm_load.obj \
|
|
src\loaders\dt_load.obj \
|
|
src\loaders\no_load.obj \
|
|
src\loaders\arch_load.obj \
|
|
src\loaders\sym_load.obj \
|
|
src\loaders\med2_load.obj \
|
|
src\loaders\med3_load.obj \
|
|
src\loaders\med4_load.obj \
|
|
src\loaders\dbm_load.obj \
|
|
src\loaders\umx_load.obj \
|
|
src\loaders\gdm_load.obj \
|
|
src\loaders\pw_load.obj \
|
|
src\loaders\gal5_load.obj \
|
|
src\loaders\gal4_load.obj \
|
|
src\loaders\mfp_load.obj \
|
|
src\loaders\asylum_load.obj \
|
|
src\loaders\muse_load.obj \
|
|
src\loaders\hmn_load.obj \
|
|
src\loaders\mgt_load.obj \
|
|
src\loaders\chip_load.obj \
|
|
src\loaders\abk_load.obj \
|
|
src\loaders\coco_load.obj \
|
|
src\loaders\xmf_load.obj \
|
|
|
|
PROWIZ_OBJS = \
|
|
src\loaders\prowizard\prowiz.obj \
|
|
src\loaders\prowizard\ptktable.obj \
|
|
src\loaders\prowizard\tuning.obj \
|
|
src\loaders\prowizard\ac1d.obj \
|
|
src\loaders\prowizard\di.obj \
|
|
src\loaders\prowizard\eureka.obj \
|
|
src\loaders\prowizard\fc-m.obj \
|
|
src\loaders\prowizard\fuchs.obj \
|
|
src\loaders\prowizard\fuzzac.obj \
|
|
src\loaders\prowizard\gmc.obj \
|
|
src\loaders\prowizard\heatseek.obj \
|
|
src\loaders\prowizard\ksm.obj \
|
|
src\loaders\prowizard\mp.obj \
|
|
src\loaders\prowizard\np1.obj \
|
|
src\loaders\prowizard\np2.obj \
|
|
src\loaders\prowizard\np3.obj \
|
|
src\loaders\prowizard\p61a.obj \
|
|
src\loaders\prowizard\pm10c.obj \
|
|
src\loaders\prowizard\pm18a.obj \
|
|
src\loaders\prowizard\pha.obj \
|
|
src\loaders\prowizard\prun1.obj \
|
|
src\loaders\prowizard\prun2.obj \
|
|
src\loaders\prowizard\tdd.obj \
|
|
src\loaders\prowizard\unic.obj \
|
|
src\loaders\prowizard\unic2.obj \
|
|
src\loaders\prowizard\wn.obj \
|
|
src\loaders\prowizard\zen.obj \
|
|
src\loaders\prowizard\tp1.obj \
|
|
src\loaders\prowizard\tp3.obj \
|
|
src\loaders\prowizard\p40.obj \
|
|
src\loaders\prowizard\xann.obj \
|
|
src\loaders\prowizard\theplayer.obj \
|
|
src\loaders\prowizard\pp10.obj \
|
|
src\loaders\prowizard\pp21.obj \
|
|
src\loaders\prowizard\starpack.obj \
|
|
src\loaders\prowizard\titanics.obj \
|
|
src\loaders\prowizard\skyt.obj \
|
|
src\loaders\prowizard\novotrade.obj \
|
|
src\loaders\prowizard\hrt.obj \
|
|
src\loaders\prowizard\noiserun.obj \
|
|
|
|
DEPACKER_OBJS = \
|
|
src\depackers\depacker.obj \
|
|
src\depackers\ppdepack.obj \
|
|
src\depackers\unsqsh.obj \
|
|
src\depackers\mmcmp.obj \
|
|
src\depackers\s404_dec.obj \
|
|
src\depackers\arc.obj \
|
|
src\depackers\arcfs.obj \
|
|
src\depackers\arc_unpack.obj \
|
|
src\depackers\lzx.obj \
|
|
src\depackers\lzx_unpack.obj \
|
|
src\depackers\ice.obj \
|
|
src\depackers\ice_unpack.obj \
|
|
src\depackers\miniz_zip.obj \
|
|
src\depackers\unzip.obj \
|
|
src\depackers\gunzip.obj \
|
|
src\depackers\uncompress.obj \
|
|
src\depackers\bunzip2.obj \
|
|
src\depackers\unlha.obj \
|
|
src\depackers\unxz.obj \
|
|
src\depackers\xz_dec_lzma2.obj \
|
|
src\depackers\xz_dec_stream.obj \
|
|
src\depackers\crc32.obj \
|
|
src\depackers\xfnmatch.obj \
|
|
src\depackers\ptpopen.obj \
|
|
src\depackers\xfd.obj \
|
|
src\depackers\xfd_link.obj \
|
|
src\depackers\lhasa\ext_header.obj \
|
|
src\depackers\lhasa\lha_file_header.obj \
|
|
src\depackers\lhasa\lha_input_stream.obj \
|
|
src\depackers\lhasa\lha_decoder.obj \
|
|
src\depackers\lhasa\lha_reader.obj \
|
|
src\depackers\lhasa\lha_basic_reader.obj \
|
|
src\depackers\lhasa\lh1_decoder.obj \
|
|
src\depackers\lhasa\lh5_decoder.obj \
|
|
src\depackers\lhasa\lh6_decoder.obj \
|
|
src\depackers\lhasa\lh7_decoder.obj \
|
|
src\depackers\lhasa\lhx_decoder.obj \
|
|
src\depackers\lhasa\lk7_decoder.obj \
|
|
src\depackers\lhasa\lz5_decoder.obj \
|
|
src\depackers\lhasa\lzs_decoder.obj \
|
|
src\depackers\lhasa\null_decoder.obj \
|
|
src\depackers\lhasa\pm1_decoder.obj \
|
|
src\depackers\lhasa\pm2_decoder.obj \
|
|
src\depackers\lhasa\macbinary.obj \
|
|
|
|
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 = \
|
|
src\lite\lite-virtual.obj \
|
|
src\lite\lite-format.obj \
|
|
src\lite\lite-period.obj \
|
|
src\lite\lite-player.obj \
|
|
src\lite\lite-read_event.obj \
|
|
src\lite\lite-misc.obj \
|
|
src\lite\lite-dataio.obj \
|
|
src\lite\lite-lfo.obj \
|
|
src\lite\lite-scan.obj \
|
|
src\lite\lite-control.obj \
|
|
src\lite\lite-filter.obj \
|
|
src\lite\lite-effects.obj \
|
|
src\lite\lite-mixer.obj \
|
|
src\lite\lite-mix_all.obj \
|
|
src\lite\lite-load_helpers.obj \
|
|
src\lite\lite-load.obj \
|
|
src\lite\lite-filetype.obj \
|
|
src\lite\lite-hio.obj \
|
|
src\lite\lite-smix.obj \
|
|
src\lite\lite-memio.obj \
|
|
src\lite\lite-rng.obj \
|
|
src\lite\lite-win32.obj \
|
|
src\lite\lite-flow.obj \
|
|
src\lite\lite-common.obj \
|
|
src\lite\lite-itsex.obj \
|
|
src\lite\lite-sample.obj \
|
|
src\lite\lite-xm_load.obj \
|
|
src\lite\lite-mod_load.obj \
|
|
src\lite\lite-s3m_load.obj \
|
|
src\lite\lite-it_load.obj \
|
|
|
|
|
|
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
|