OSDN Git Service

wwww
[proj16/16.git] / src / lib / doslib / ext / lame / common.mak
1 # this makefile is included from all the dos*.mak files, do not use directly
2 # NTS: HPS is either \ (DOS) or / (Linux)
3 NOW_BUILDING = EXT_LAME_LIB
4 CFLAGS_THIS = -fr=nul -fo=$(SUBDIR)$(HPS).obj -i=. -i=.. -i..$(HPS).. -dHAVE_CONFIG_H
5
6 OBJS = $(SUBDIR)$(HPS)bitstream.obj $(SUBDIR)$(HPS)encoder.obj $(SUBDIR)$(HPS)fft.obj $(SUBDIR)$(HPS)gain_analysis.obj $(SUBDIR)$(HPS)id3tag.obj $(SUBDIR)$(HPS)lame.obj $(SUBDIR)$(HPS)mpglib_interface.obj $(SUBDIR)$(HPS)newmdct.obj $(SUBDIR)$(HPS)presets.obj $(SUBDIR)$(HPS)psymodel.obj $(SUBDIR)$(HPS)quantize.obj $(SUBDIR)$(HPS)quantize_pvt.obj $(SUBDIR)$(HPS)reservoir.obj $(SUBDIR)$(HPS)set_get.obj $(SUBDIR)$(HPS)tables.obj $(SUBDIR)$(HPS)takehiro.obj $(SUBDIR)$(HPS)util.obj $(SUBDIR)$(HPS)vbrquantize.obj $(SUBDIR)$(HPS)vbrtag.obj $(SUBDIR)$(HPS)version.obj $(SUBDIR)$(HPS)common.obj $(SUBDIR)$(HPS)dct64_i386.obj $(SUBDIR)$(HPS)decode_i386.obj $(SUBDIR)$(HPS)interface.obj $(SUBDIR)$(HPS)layer1.obj $(SUBDIR)$(HPS)layer2.obj $(SUBDIR)$(HPS)layer3.obj $(SUBDIR)$(HPS)tabinit.obj
7
8 !ifdef EXT_LAME_LAME_EXE
9 # NOTICE!!! Notice the "option stack=128000" below. It is needed to compensate for the Lame MP3 devs
10 #           and their fetish for declaring large arrays or data types on the call stack. When all of
11 #           those have been eliminated, then we can remove the option stack command.
12 #
13 #           Until that issue is fixed, you are guaranteed stack corruption and misery in any program
14 #           you link libmp3lame into and use, unless your program also declares a larger stack.
15 $(EXT_LAME_LAME_EXE): $(EXT_LAME_LIB) $(SUBDIR)$(HPS)brhist.obj $(SUBDIR)$(HPS)console.obj $(SUBDIR)$(HPS)get_audio.obj $(SUBDIR)$(HPS)lame_main.obj $(SUBDIR)$(HPS)lametime.obj $(SUBDIR)$(HPS)main.obj $(SUBDIR)$(HPS)parse.obj $(SUBDIR)$(HPS)timestatus.obj
16         %write tmp.cmd option quiet system $(WLINK_SYSTEM) file $(SUBDIR)$(HPS)brhist.obj file $(SUBDIR)$(HPS)console.obj file $(SUBDIR)$(HPS)get_audio.obj file $(SUBDIR)$(HPS)lame_main.obj file $(SUBDIR)$(HPS)lametime.obj file $(SUBDIR)$(HPS)main.obj file $(SUBDIR)$(HPS)parse.obj file $(SUBDIR)$(HPS)timestatus.obj $(EXT_LAME_LIB_WLINK_LIBRARIES) option stack=128000 name $(EXT_LAME_LAME_EXE)
17         @wlink @tmp.cmd
18         @$(COPY) ..$(HPS)..$(HPS)dos32a.dat $(SUBDIR)$(HPS)dos4gw.exe
19 !endif
20
21 !ifdef EXT_LAME_LIB
22 $(EXT_LAME_LIB): $(OBJS)
23         wlib -q -b -c $(EXT_LAME_LIB) -+$(SUBDIR)$(HPS)bitstream.obj -+$(SUBDIR)$(HPS)encoder.obj -+$(SUBDIR)$(HPS)fft.obj -+$(SUBDIR)$(HPS)gain_analysis.obj -+$(SUBDIR)$(HPS)id3tag.obj -+$(SUBDIR)$(HPS)lame.obj -+$(SUBDIR)$(HPS)mpglib_interface.obj -+$(SUBDIR)$(HPS)newmdct.obj -+$(SUBDIR)$(HPS)presets.obj -+$(SUBDIR)$(HPS)psymodel.obj -+$(SUBDIR)$(HPS)quantize.obj -+$(SUBDIR)$(HPS)quantize_pvt.obj -+$(SUBDIR)$(HPS)reservoir.obj -+$(SUBDIR)$(HPS)set_get.obj -+$(SUBDIR)$(HPS)tables.obj -+$(SUBDIR)$(HPS)takehiro.obj -+$(SUBDIR)$(HPS)util.obj -+$(SUBDIR)$(HPS)vbrquantize.obj -+$(SUBDIR)$(HPS)vbrtag.obj -+$(SUBDIR)$(HPS)version.obj -+$(SUBDIR)$(HPS)common.obj -+$(SUBDIR)$(HPS)dct64_i386.obj -+$(SUBDIR)$(HPS)decode_i386.obj -+$(SUBDIR)$(HPS)interface.obj -+$(SUBDIR)$(HPS)layer1.obj -+$(SUBDIR)$(HPS)layer2.obj -+$(SUBDIR)$(HPS)layer3.obj -+$(SUBDIR)$(HPS)tabinit.obj
24 !endif
25
26 # NTS we have to construct the command line into tmp.cmd because for MS-DOS
27 # systems all arguments would exceed the pitiful 128 char command line limit
28 .C.OBJ:
29         %write tmp.cmd $(CFLAGS_THIS) $(CFLAGS) $[@
30         @$(CC) @tmp.cmd
31
32 all: lib exe .symbolic
33        
34 lib: $(EXT_LAME_LIB) .symbolic
35
36 exe: $(EXT_LAME_LAME_EXE) .symbolic
37
38 clean: .SYMBOLIC
39           del $(SUBDIR)$(HPS)*.obj
40           del tmp.cmd
41           @echo Cleaning done
42