X-Git-Url: http://4ch.mooo.com/gitweb/?a=blobdiff_plain;f=makefile;h=290b97ca653a34dc96231526543f2d50178348c2;hb=0b5d62cb0555345fd843ef139b5f9a18bb90a405;hp=8af021278dd318186fb35cf38c15176c42942e5a;hpb=4e33b2a1734c689f738fcc0dd8e6864bd4afdca5;p=16.git diff --git a/makefile b/makefile index 8af02127..290b97ca 100755 --- a/makefile +++ b/makefile @@ -42,6 +42,8 @@ COPYCOMMAND=cp -f DIRSEP=/ OBJ=obj DUMP=cat +DOSLIBMAKE=./make.sh +DOSLIBMAKEALL=./buildall.sh !else #DOS ^^ to_os_path=/=\ REMOVECOMMAND=del @@ -49,6 +51,8 @@ COPYCOMMAND=copy /y DIRSEP=\ OBJ=obj DUMP=type +DOSLIBMAKE=.\make.bat +DOSLIBMAKEALL=.\build.bat !endif TARGET_OS = dos @@ -56,7 +60,7 @@ TARGET_OS = dos BUILD_ROOT=$+$(%__CWD__)$- #EXMMTESTDIR=16$(DIRSEP)exmmtest$(DIRSEP) DATADIR=data$(DIRSEP) -SPRI=$(DATADIR)$(DIRSEP)spri$(DIRSEP) +SPRI=$(DATADIR)/spri SRC=src SRCLIB=src/lib JSMNLIB=src/lib/jsmn @@ -78,7 +82,7 @@ DOSLIB_JOYSTICK=src/lib/doslib/hw/joystick # quiet flags # WLIBQ=-q -WCLQ=-zq $(WLIBQ) +WCLQ=-q UPXQ=-qqq # @@ -87,23 +91,23 @@ UPXQ=-qqq S_FLAGS=-sg -st -of+ -zu -zdf -zff -zgf -k32768#54096#60000 Z_FLAGS=-zk0 -zc -zp8 -zm O_FLAGS=-obmilr -oe=24 -out -oh -ei -onac -ol+ -ok##x -T_FLAGS=-bt=dos -mh -0 -fpi87 +T_FLAGS=-bt=dos -wx -mh -0 -fpi87 -fo=.$(OBJ) -d1###### -e=65536 -CPPFLAGS=-DTARGET_MSDOS=16 +CPPFLAGS=-DTARGET_MSDOS=16 -DMSDOS=1 !ifeq DEBUGSERIAL 1 CPPFLAGS += -DDEBUGSERIAL !endif -AFLAGS=$(WCLQ) $(T_FLAGS) -d1 -fo=.$(OBJ) -CFLAGS=$(WCLQ) $(T_FLAGS) -d1 -fo=.$(OBJ) -wo -i"$(DOSLIB)" $(O_FLAGS) $(S_FLAGS) $(Z_FLAGS) -LFLAGS=$(WCLQ) -l=dos -fm=$^&.mah +AFLAGS=$(WCLQ) $(T_FLAGS) +CFLAGS=$(WCLQ) $(T_FLAGS) -wo -i"$(DOSLIB)" $(O_FLAGS) $(S_FLAGS) $(Z_FLAGS) +LFLAGS=$(WCLQ) -l=dos -fm=$^&.mah $(S_FLAGS) LIBFLAGS=$(WLIBQ) -b -n # # objects # VGMSNDOBJ = vgmSnd.$(OBJ) 16_snd.$(OBJ) -16LIBOBJS = 16_in.$(OBJ) 16_mm.$(OBJ) wcpu.$(OBJ) 16_head.$(OBJ) 16_ca.$(OBJ) 16_dbg.$(OBJ) kitten.$(OBJ) 16_hc.$(OBJ) 16_timer.$(OBJ) GFXLIBOBJS = modex16.$(OBJ) bitmap.$(OBJ) 16text.$(OBJ) bakapee.$(OBJ) scroll16.$(OBJ) 16render.$(OBJ) 16_vrs.$(OBJ) 16_sprit.$(OBJ) +16LIBOBJS = 16_mm.$(OBJ) 16_pm.$(OBJ) 16_ca.$(OBJ) 16_tail.$(OBJ) 16_in.$(OBJ) 16_head.$(OBJ) 16_dbg.$(OBJ) kitten.$(OBJ) 16_hc.$(OBJ) wcpu.$(OBJ) 16_timer.$(OBJ) #16planar.$(OBJ) planar.$(OBJ) DOSLIBOBJ = adlib.$(OBJ) 8254.$(OBJ) 8259.$(OBJ) dos.$(OBJ) cpu.$(OBJ) !ifeq DEBUGSERIAL 1 @@ -117,8 +121,7 @@ DOSLIBLIBS = $(DOSLIB_CPU)/dos86h/cpu.lib $(DOSLIB_DOS)/dos86h/dos.lib $(DOSLIB_ !ifeq DEBUGSERIAL 1 DOSLIBLIBS += $(DOSLIB_8250)/dos86h/8250.lib !endif -#16.lib causes a massive stack overflow -16LIB=$(16LIBOBJS)#16.lib +16LIB=$(16LIBOBJS)#16.lib bad program lock up # # Files locations @@ -140,6 +143,7 @@ DOSLIBLIBS += $(DOSLIB_8250)/dos86h/8250.lib .asm.obj: *wcl $(AFLAGS) $(extra_$^&_obj_opts) -c $[@ +#CFLAGS is neccessary here .obj.exe : *wcl $(LFLAGS) $(extra_$^&_exe_opts) -fe=$@ $< @@ -150,26 +154,30 @@ DOSLIBLIBS += $(DOSLIB_8250)/dos86h/8250.lib # List of executables to build # TESTEXEC = & - test.exe & - test0.exe & - pcxtest.exe & - pcxtest2.exe & - palettec.exe & + tesuto.exe & + 0.exe & + scroll.exe & + zcroll.exe & + exmmtest.exe & + vrstest.exe +TESTEXEC2 = & + vgmtest.exe & + inputest.exe & maptest.exe & fmemtest.exe & fonttest.exe & fontgfx.exe & - scroll.exe & - vgmtest.exe & - inputest.exe & + test.exe & + test0.exe & + pcxtest.exe & + pcxtest2.exe +UTILEXEC = & palettel.exe & - exmmtest.exe & - vrstest.exe + palettec.exe EXEC = & 16.exe & bakapi.exe & - tesuto.exe & - 0.exe & + $(UTILEXEC) & $(TESTEXEC) all: $(EXEC) joytest.exe @@ -185,6 +193,8 @@ bakapi.exe: bakapi.$(OBJ) gfx.lib $(DOSLIBLIBS) # scroll.exe: scroll.$(OBJ) mapread.$(OBJ) jsmn.$(OBJ) $(16LIB) gfx.lib $(DOSLIBLIBS) scroll.$(OBJ): $(SRC)/scroll.c +zcroll.exe: zcroll.$(OBJ) mapread.$(OBJ) jsmn.$(OBJ) $(16LIB) gfx.lib $(DOSLIBLIBS) +zcroll.$(OBJ): $(SRC)/zcroll.c tesuto.exe: tesuto.$(OBJ) 16_head.$(OBJ) gfx.lib $(DOSLIBLIBS) tesuto.$(OBJ): $(SRC)/tesuto.c 0.exe: 0.$(OBJ) $(16LIB) gfx.lib $(DOSLIBLIBS) @@ -199,14 +209,15 @@ inputest.exe: inputest.$(OBJ) $(16LIB) $(DOSLIBLIBS) #sountest.exe: sountest.$(OBJ) $(16LIB) pcxtest.exe: pcxtest.$(OBJ) gfx.lib $(DOSLIBLIBS) vrstest.exe: vrstest.$(OBJ) $(16LIB) gfx.lib $(DOSLIBLIBS) +#vgacamm.exe: vgacamm.$(OBJ) $(16LIB) gfx.lib $(DOSLIBLIBS) palettec.exe: palettec.$(OBJ) gfx.lib $(DOSLIBLIBS) palettel.exe: palettel.$(OBJ) gfx.lib $(DOSLIBLIBS) pcxtest2.exe: pcxtest2.$(OBJ) gfx.lib $(DOSLIBLIBS) #planrpcx.exe: planrpcx.$(OBJ) gfx.lib -maptest.exe: maptest.$(OBJ) mapread.$(OBJ) jsmn.$(OBJ) gfx.lib $(DOSLIBLIBS) +maptest.exe: maptest.$(OBJ) 16_map.$(OBJ) 16_head.$(OBJ) jsmn.$(OBJ) gfx.lib $(DOSLIBLIBS) fmemtest.exe: fmemtest.$(OBJ) -exmmtest.exe: exmmtest.$(OBJ) $(16LIB) -vgmtest.exe: vgmtest.$(OBJ) vgmsnd.lib $(16LIB) +exmmtest.exe: exmmtest.$(OBJ) $(16LIB) $(DOSLIBLIBS) +vgmtest.exe: vgmtest.$(OBJ) vgmsnd.lib $(16LIB) $(DOSLIBLIBS) # # executable's objects @@ -218,6 +229,7 @@ test.$(OBJ): $(SRC)/test.c $(SRCLIB)/modex16.h test0.$(OBJ): $(SRC)/test0.c pcxtest.$(OBJ): $(SRC)/pcxtest.c $(SRCLIB)/modex16.h vrstest.$(OBJ): $(SRC)/vrstest.c $(SRCLIB)/modex16.h +#vgacamm.$(OBJ): $(SRC)/vgacamm.c $(SRCLIB)/modex16.h #planrpcx.$(OBJ): $(SRC)/planrpcx.c $(SRCLIB)/modex16.h pcxtest2.$(OBJ): $(SRC)/pcxtest2.c $(SRCLIB)/modex16.h palettec.$(OBJ): $(SRC)/palettec.c @@ -241,35 +253,30 @@ vgmtest.$(OBJ): $(SRC)/vgmtest.c # # non executable objects libraries # - 16.lib: $(16LIBOBJS) vgmsnd.lib: $(VGMSNDOBJ) gfx.lib: $(GFXLIBOBJS) *wlib $(LIBFLAGS) $(extra_$^&_lib_opts) $@ $< -# extdep: -# !include $(DOSLIBDIR)$(DIRSEP)extdep.mak - +# +# doslib +# # library deps 16-bit huge $(DOSLIB_CPU)/dos86h/cpu.lib: - cd $(DOSLIB_CPU:$(to_os_path)) && .$(DIRSEP)make.sh && cd $(BUILD_ROOT) + cd $(DOSLIB_CPU:$(to_os_path)) && $(DOSLIBMAKE) && cd $(BUILD_ROOT) $(DOSLIB_DOS)/dos86h/dos.lib: - cd $(DOSLIB_DOS:$(to_os_path)) && .$(DIRSEP)make.sh && cd $(BUILD_ROOT) + cd $(DOSLIB_DOS:$(to_os_path)) && $(DOSLIBMAKE) && cd $(BUILD_ROOT) $(DOSLIB_VGA)/dos86h/vgatty.lib: - cd $(DOSLIB_VGA:$(to_os_path)) && .$(DIRSEP)make.sh && cd $(BUILD_ROOT) + cd $(DOSLIB_VGA:$(to_os_path)) && $(DOSLIBMAKE) && cd $(BUILD_ROOT) $(DOSLIB_VGA)/dos86h/vga.lib: - cd $(DOSLIB_VGA:$(to_os_path)) && .$(DIRSEP)make.sh && cd $(BUILD_ROOT) + cd $(DOSLIB_VGA:$(to_os_path)) && $(DOSLIBMAKE) && cd $(BUILD_ROOT) $(DOSLIB_8250)/dos86h/8250.lib: - cd $(DOSLIB_8250:$(to_os_path)) && .$(DIRSEP)make.sh && cd $(BUILD_ROOT) + cd $(DOSLIB_8250:$(to_os_path)) && $(DOSLIBMAKE) && cd $(BUILD_ROOT) joytest.exe: - cd $(DOSLIB_JOYSTICK:$(to_os_path)) && .$(DIRSEP)make.sh && cd $(BUILD_ROOT) + cd $(DOSLIB_JOYSTICK:$(to_os_path)) && $(DOSLIBMAKE) && cd $(BUILD_ROOT) $(COPYCOMMAND) $(DOSLIB_JOYSTICK:$(to_os_path))$(DIRSEP)dos86h$(DIRSEP)test.exe joytest.exe -#$(DOSLIBLIBS): .symbolic -# @cd $(DOSLIB:$(to_os_path)) -# @.$(DIRSEP)buildall.sh -# @cd $(BUILD_ROOT) modex16.$(OBJ): $(SRCLIB)/modex16.c $(SRCLIB)/modex16.h bakapee.$(OBJ): $(SRCLIB)/bakapee.c $(SRCLIB)/bakapee.h @@ -282,13 +289,16 @@ planar.$(OBJ): $(SRCLIB)/planar.c $(SRCLIB)/planar.h scroll16.$(OBJ): $(SRCLIB)/scroll16.c $(SRCLIB)/scroll16.h 16text.$(OBJ): $(SRCLIB)/16text.c mapread.$(OBJ): $(SRCLIB)/mapread.c $(SRCLIB)/mapread.h +16_map.$(OBJ): $(SRCLIB)/16_map.c $(SRCLIB)/16_map.h 16_timer.$(OBJ): $(SRCLIB)/16_timer.c $(SRCLIB)/16_timer.h 16_in.$(OBJ): $(SRCLIB)/16_in.c $(SRCLIB)/16_in.h 16_mm.$(OBJ): $(SRCLIB)/16_mm.c $(SRCLIB)/16_mm.h +16_pm.$(OBJ): $(SRCLIB)/16_pm.c $(SRCLIB)/16_pm.h 16_ca.$(OBJ): $(SRCLIB)/16_ca.c $(SRCLIB)/16_ca.h 16_dbg.$(OBJ): $(SRCLIB)/16_dbg.c $(SRCLIB)/16_dbg.h midi.$(OBJ): $(SRCLIB)/midi.c $(SRCLIB)/midi.h 16_head.$(OBJ): $(SRCLIB)/16_head.c $(SRCLIB)/16_head.h +16_tail.$(OBJ): $(SRCLIB)/16_tail.c $(SRCLIB)/16_tail.h 16_hc.$(OBJ): $(SRCLIB)/16_hc.c $(SRCLIB)/16_hc.h 16_snd.$(OBJ): $(SRCLIB)/16_snd.c $(SRCLIB)/16_snd.h jsmn.$(OBJ): $(JSMNLIB)/jsmn.c $(JSMNLIB)/jsmn.h @@ -303,39 +313,28 @@ modex.$(OBJ): $(MODEXLIB)/modex.asm #other~ # clean: .symbolic - @$(REMOVECOMMAND) $(EXEC) - @$(REMOVECOMMAND) *.$(OBJ) + @for %f in ($(EXEC)) do @if exist %f $(REMOVECOMMAND) %f !ifdef __LINUX__ @rm *.LIB + @. src/util/bcexmm.sh @rm *.EXE - @$(REMOVECOMMAND) *.\$\$\$ -!else - @*$(REMOVECOMMAND) *.$$$ !endif - @$(REMOVECOMMAND) 16.lib - @$(REMOVECOMMAND) gfx.lib - @$(REMOVECOMMAND) vgmsnd.lib - @*wlib -n $(WLIBQ) 16.lib - @*wlib -n $(WLIBQ) gfx.lib - @*wlib -n $(WLIBQ) vgmsnd.lib - @$(REMOVECOMMAND) *.16W - @$(REMOVECOMMAND) *.16B - @$(REMOVECOMMAND) *.OBJ - @$(REMOVECOMMAND) *.o - @$(REMOVECOMMAND) *.BCO - #@$(REMOVECOMMAND) makefi~1 - #@$(REMOVECOMMAND) makefile~ - @$(REMOVECOMMAND) __wcl__.LNK -# @$(REMOVECOMMAND) *.smp - @$(REMOVECOMMAND) *.SMP - @$(REMOVECOMMAND) *.hed - @$(REMOVECOMMAND) *.MAH - @$(REMOVECOMMAND) *.mah - @$(REMOVECOMMAND) *.err - @echo $(OBJ) - #@cd $(DOSLIB:$(to_os_path)) - #@./buildall.sh clean - #@cd $(BUILD_ROOT) + @if exist *.obj $(REMOVECOMMAND) *.obj + @if exist *.OBJ $(REMOVECOMMAND) *.OBJ + @if exist *.bco $(REMOVECOMMAND) *.bco + @if exist *.BCO $(REMOVECOMMAND) *.BCO + @if exist *.LIB $(REMOVECOMMAND) *.LIB + @if exist *.lnk $(REMOVECOMMAND) *.lnk + @if exist *.LNK $(REMOVECOMMAND) *.LNK + @if exist *.smp $(REMOVECOMMAND) *.smp + @if exist *.SMP $(REMOVECOMMAND) *.SMP + @if exist *.hed $(REMOVECOMMAND) *.hed + @if exist *.mah $(REMOVECOMMAND) *.mah + @if exist *.MAH $(REMOVECOMMAND) *.MAH + @if exist *.err $(REMOVECOMMAND) *.err +# @if exist *.16W $(REMOVECOMMAND) *.16W +# @if exist *.16B $(REMOVECOMMAND) *.16B + # @$(COPYCOMMAND) $(SRC)exmmtest.c $(EXMMTESTDIR)$(SRC) # @$(COPYCOMMAND) $(SRCLIB)16_mm.* $(EXMMTESTDIR)$(SRCLIB) # @$(COPYCOMMAND) $(SRCLIB)16_head.* $(EXMMTESTDIR)$(SRCLIB) @@ -343,8 +342,12 @@ clean: .symbolic # @$(COPYCOMMAND) $(SRCLIB)16_hc.* $(EXMMTESTDIR)$(SRCLIB) # @$(COPYCOMMAND) $(SRCLIB)types.h $(EXMMTESTDIR)$(SRCLIB) # @$(COPYCOMMAND) $(NYANLIB)* $(EXMMTESTDIR)$(NYANLIB) -# @echo $(watcom) -# @echo $(INCLUDE) + +nuke: .symbolic + @wmake clean + @wmake cldl + @wmake all + @wmake comp backupconfig: .symbolic @$(COPYCOMMAND) .git$(DIRSEP)config git_con.fig @@ -379,7 +382,12 @@ vomitchan: .symbolic #git submodule add mkdl: .symbolic @cd $(DOSLIB:$(to_os_path)) - @./buildall.sh + @$(DOSLIBMAKEALL) + @cd $(BUILD_ROOT) + +cldl: .symbolic + @cd $(DOSLIB:$(to_os_path)) + @$(DOSLIBMAKEALL) clean @cd $(BUILD_ROOT) uplibs: .symbolic @@ -391,8 +399,8 @@ uplibs: .symbolic @cd $(BUILD_ROOT) reinitlibs: .symbolic - @rm -rf $(SRCLIB)doslib - @rm -rf $(SRCLIB)jsmn + @rm -rf $(DOSLIB) + @rm -rf $(JSMNLIB) @rm -rf 16/CatacombApocalypse @rm -rf 16/wolf3d @rm -rf 16/keen @@ -410,6 +418,7 @@ initlibs: .symbolic @git clone https://github.com/FlatRockSoft/CatacombApocalypse.git @git clone https://github.com/id-Software/wolf3d.git @git clone https://github.com/keendreams/keen.git + @git clone https://github.com/FlatRockSoft/Catacomb3D.git @cd $(BUILD_ROOT) @cp $(DOSLIB)/make-lowercase .