DIRSEP=/
OBJ=obj
DUMP=cat
+DOSLIBMAKE=make.sh
+DOSLIBMAKEALL=buildall.sh
!else #DOS ^^
to_os_path=/=\
-REMOVECOMMAND=del
+REMOVECOMMAND=*del
COPYCOMMAND=copy /y
DIRSEP=\
OBJ=obj
DUMP=type
+DOSLIBMAKE=make.bat
+DOSLIBMAKEALL=build.bat
!endif
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
!endif
AFLAGS=$(WCLQ) $(T_FLAGS)
CFLAGS=$(WCLQ) $(T_FLAGS) -wo -i"$(DOSLIB)" $(O_FLAGS) $(S_FLAGS) $(Z_FLAGS)
-LFLAGS=$(WCLQ) -l=dos -fm=$^&.mah -lr
+LFLAGS=$(WCLQ) -l=dos -fm=$^&.mah $(S_FLAGS)
LIBFLAGS=$(WLIBQ) -b -n
#
#
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)
+GFXLIBOBJS = modex16.$(OBJ) bitmap.$(OBJ) 16text.$(OBJ) bakapee.$(OBJ) scroll16.$(OBJ) 16render.$(OBJ) 16_vrs.$(OBJ) 16_sprit.$(OBJ) #scroll16.$(OBJ)
#16planar.$(OBJ) planar.$(OBJ)
DOSLIBOBJ = adlib.$(OBJ) 8254.$(OBJ) 8259.$(OBJ) dos.$(OBJ) cpu.$(OBJ)
!ifeq DEBUGSERIAL 1
#CFLAGS is neccessary here
.obj.exe :
- *wcl $(CFLAGS) $(LFLAGS) $(extra_$^&_exe_opts) -fe=$@ $<
+ *wcl $(LFLAGS) $(extra_$^&_exe_opts) -fe=$@ $<
.obj.lib :
*wlib $(LIBFLAGS) $(extra_$^&_lib_opts) $@ $<
inputest.exe &
palettel.exe &
exmmtest.exe &
- vrstest.exe
+ vrstest.exe &
+ vgacamm.exe
EXEC = &
16.exe &
bakapi.exe &
#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) $(DOSLIBLIBS)
vgmtest.exe: vgmtest.$(OBJ) vgmsnd.lib $(16LIB) $(DOSLIBLIBS)
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
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)) && .$(DIRSEP)$(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)) && .$(DIRSEP)$(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)) && .$(DIRSEP)$(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)) && .$(DIRSEP)$(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)) && .$(DIRSEP)$(DOSLIBMAKE) && cd $(BUILD_ROOT)
joytest.exe:
- cd $(DOSLIB_JOYSTICK:$(to_os_path)) && .$(DIRSEP)make.sh && cd $(BUILD_ROOT)
+ cd $(DOSLIB_JOYSTICK:$(to_os_path)) && .$(DIRSEP)$(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
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
@$(REMOVECOMMAND) *.$(OBJ)
!ifdef __LINUX__
@rm *.LIB
+ @. src/util/bcexmm.sh
@rm *.EXE
#@$(REMOVECOMMAND) *.\$\$\$
+ @$(REMOVECOMMAND) *.OBJ
+ @$(REMOVECOMMAND) *.BCO
!else
@*$(REMOVECOMMAND) *.$$$
!endif
@*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) *.16W
+## @$(REMOVECOMMAND) *.16B
@$(REMOVECOMMAND) __wcl__.LNK
-# @$(REMOVECOMMAND) *.smp
@$(REMOVECOMMAND) *.SMP
@$(REMOVECOMMAND) *.hed
@$(REMOVECOMMAND) *.MAH
@$(REMOVECOMMAND) *.mah
@$(REMOVECOMMAND) *.err
- #@cd $(DOSLIB:$(to_os_path))
- #@./buildall.sh clean
- #@cd $(BUILD_ROOT)
+
# @$(COPYCOMMAND) $(SRC)exmmtest.c $(EXMMTESTDIR)$(SRC)
# @$(COPYCOMMAND) $(SRCLIB)16_mm.* $(EXMMTESTDIR)$(SRCLIB)
# @$(COPYCOMMAND) $(SRCLIB)16_head.* $(EXMMTESTDIR)$(SRCLIB)
# @$(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
#git submodule add <repo>
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
@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
@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 .