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
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 -mh -0 -fpi87 -fo=.$(OBJ) -d1
-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
#
.asm.obj:
*wcl $(AFLAGS) $(extra_$^&_obj_opts) -c $[@
+#CFLAGS is neccessary here
.obj.exe :
*wcl $(LFLAGS) $(extra_$^&_exe_opts) -fe=$@ $<
#
# 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)) && .$(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
@$(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
- @echo $(OBJ)
- #@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