From 76a88ef2b08444f0e63194c2f020defd40d78555 Mon Sep 17 00:00:00 2001 From: Ray Chason Date: Sun, 2 Oct 2022 01:05:46 -0400 Subject: [PATCH] Updates to the native compile --- sys/msdos/Makefile.GCC | 90 ++++++++---------------------------------- sys/msdos/nhlua.h | 6 +-- sys/msdos/setup.bat | 5 ++- 3 files changed, 23 insertions(+), 78 deletions(-) diff --git a/sys/msdos/Makefile.GCC b/sys/msdos/Makefile.GCC index b7c725d99..2a5107789 100644 --- a/sys/msdos/Makefile.GCC +++ b/sys/msdos/Makefile.GCC @@ -193,7 +193,8 @@ VGAOBJ = $(O)vidvga.o $(O)vidvesa.o MAKESRC = makedefs.c -MAKEDEFSOBJS = $(O)makedefs.o $(O)monst.o $(O)objects.o +MAKEDEFSOBJS = $(O)makedefs.o $(O)monst.o $(O)objects.o $(O)alloc.o \ + $(O)date.o $(O)panic.o RECOVOBJS = $(O)recover.o @@ -255,14 +256,14 @@ DLBOBJ = $(O)dlb.o VOBJ01 = $(O)allmain.o $(O)alloc.o $(O)apply.o $(O)artifact.o $(O)attrib.o -VOBJ02 = $(O)ball.o $(O)bones.o $(O)botl.o $(O)cmd.o $(O)dbridge.o +VOBJ02 = $(O)ball.o $(O)bones.o $(O)botl.o $(O)cmd.o $(O)date.o $(O)dbridge.o VOBJ03 = $(O)decl.o $(O)detect.o $(O)dig.o $(O)display.o $(O)do.o VOBJ04 = $(O)do_name.o $(O)do_wear.o $(O)dog.o $(O)dogmove.o $(O)dokick.o VOBJ05 = $(O)dothrow.o $(O)drawing.o $(O)dungeon.o $(O)eat.o $(O)end.o VOBJ06 = $(O)engrave.o $(O)exper.o $(O)explode.o $(O)extralev.o $(O)files.o -VOBJ07 = $(O)fountain.o $(O)getline.o $(O)hack.o $(O)hacklib.o $(O)invent.o +VOBJ07 = $(O)fountain.o $(O)getline.o $(O)hack.o $(O)hacklib.o $(O)insight.o $(O)invent.o VOBJ08 = $(O)isaac64.o $(O)lock.o $(O)mail.o $(O)main.o $(O)makemon.o -VOBJ09 = $(O)mcastu.o $(O)mhitm.o $(O)mhitu.o $(O)minion.o $(O)mkmap.o +VOBJ09 = $(O)mcastu.o $(O)mdlib.o $(O)mhitm.o $(O)mhitu.o $(O)minion.o $(O)mkmap.o VOBJ10 = $(O)mklev.o $(O)mkmaze.o $(O)mkobj.o $(O)mkroom.o $(O)mon.o VOBJ11 = $(O)mondata.o $(O)monmove.o $(O)monst.o $(O)mplayer.o $(O)mthrowu.o VOBJ12 = $(O)muse.o $(O)music.o $(O)o_init.o $(O)objects.o $(O)objnam.o @@ -273,7 +274,7 @@ VOBJ16 = $(O)rnd.o $(O)role.o $(O)rumors.o $(O)save.o $(O)sfstruc VOBJ17 = $(O)shk.o $(O)shknam.o $(O)sit.o $(O)sounds.o $(O)sp_lev.o VOBJ18 = $(O)spell.o $(O)steal.o $(O)steed.o $(O)symbols.o $(O)sys.o VOBJ19 = $(O)teleport.o $(O)termcap.o $(O)timeout.o $(O)topl.o $(O)topten.o -VOBJ20 = $(O)track.o $(O)trap.o $(O)u_init.o $(O)uhitm.o $(O)vault.o +VOBJ20 = $(O)track.o $(O)trap.o $(O)u_init.o $(O)uhitm.o $(O)utf8map.o $(O)vault.o VOBJ21 = $(O)vision.o $(O)weapon.o $(O)were.o $(O)wield.o $(O)windows.o VOBJ22 = $(O)wintty.o $(O)wizard.o $(O)worm.o $(O)worn.o $(O)write.o VOBJ23 = $(O)zap.o $(O)light.o $(O)dlb.o @@ -315,7 +316,7 @@ LUAINCL = -I$(LUASRC) #LUAFLAGS = unix added -lm here? LUATARGETS = lua.exe luac.exe $(LUADLL) $(LUALIB) -LUASRCFILES = lapi.c lauxlib.c lbaselib.c lbitlib.c lcode.c \ +LUASRCFILES = lapi.c lauxlib.c lbaselib.c lcode.c \ lcorolib.c lctype.c ldblib.c ldebug.c ldo.c \ ldump.c lfunc.c lgc.c linit.c liolib.c llex.c \ lmathlib.c lmem.c loadlib.c lobject.c lopcodes.c \ @@ -323,7 +324,7 @@ LUASRCFILES = lapi.c lauxlib.c lbaselib.c lbitlib.c lcode.c \ ltable.c ltablib.c ltm.c lundump.c lutf8lib.c \ lvm.c lzio.c -LUAOBJFILES1 = $(O)lapi.o $(O)lauxlib.o $(O)lbaselib.o $(O)lbitlib.o \ +LUAOBJFILES1 = $(O)lapi.o $(O)lauxlib.o $(O)lbaselib.o \ $(O)lcode.o $(O)lcorolib.o $(O)lctype.o $(O)ldblib.o \ $(O)ldebug.o $(O)ldo.o $(O)ldump.o $(O)lfunc.o LUAOBJFILES2 = $(O)lgc.o $(O)linit.o $(O)liolib.o $(O)llex.o \ @@ -577,7 +578,7 @@ endif @$(subst /,\,copy $(SSHR)/NetHack.cnf $(GAMEDIR)/defaults.nh) -@$(subst /,\,touch $(GAMEDIR)/record) @$(subst /,\,copy $(DOC)/guideb*.txt $(GAMEDIR)) - @$(subst /,\,copy ../sys/windows/sysconf $(GAMEDIR)) + @$(subst /,\,copy $(MSYS)/sysconf $(GAMEDIR)) @$(subst /,\,if not exist $(GAMEDIR)/sysconf touch $(GAMEDIR)/sysconf) @$(subst /,\,if exist $(DOC)/nethack.txt copy $(DOC)/nethack.txt $(GAMEDIR)) ifdef CWSDPMI @@ -688,8 +689,10 @@ $(SRC)/tile.c: $(U)tilemap.exe @$(subst /,\,$(U)tilemap.exe) @echo A new $@ has been created -$(U)tilemap.exe: $(O)tilemap.o - $(LINK) $(LFLAGS) -o$@ $(O)tilemap.o +TILEMAPOBJS = $(O)tilemap.o $(O)monst.o $(O)objects.o $(O)drawing.o + +$(U)tilemap.exe: $(TILEMAPOBJS) + $(LINK) $(LFLAGS) -o$@ $(TILEMAPOBJS) $(O)tilemap.o: $(WSHR)/tilemap.c $(HACK_H) $(TILE_H) $(CC) $(cflags) -I$(WSHR) -I$(MSYS) -o$@ $(WSHR)/tilemap.c @@ -882,65 +885,6 @@ $(U)dlb_main.exe: $(DLBOBJS) $(O)dlb_main.o: $(U)dlb_main.c $(INCL)/config.h $(DLB_H) $(CC) $(cflags) -o$@ $(U)dlb_main.c -#========================================== -# Housekeeping. -#========================================== - -clean: - $(subst /,\,if exist $(O)*.o del $(O)*.o) - $(subst /,\,if exist $(O)dat.tag del $(O)dat.tag) - $(subst /,\,if exist $(O)install.tag del $(O)install.tag) - $(subst /,\,if exist $(O)$(GAME).lnk del $(O)$(GAME).lnk) - $(subst /,\,if exist $(O)obj.tag del $(O)obj.tag) - $(subst /,\,if exist $(O)sp_lev.tag del $(O)sp_lev.tag) - $(subst /,\,if exist $(O)thintile.tag del $(O)thintile.tag) - $(subst /,\,if exist $(O)utility.tag del $(O)utility.tag) - $(subst /,\,if exist temp.a del temp.a) - -spotless: clean - - $(subst /,\,if exist $(U)makedefs.exe del $(U)makedefs.exe) - $(subst /,\,if exist $(U)recover.exe del $(U)recover.exe) - $(subst /,\,if exist $(U)tilemap.exe del $(U)tilemap.exe) - $(subst /,\,if exist $(U)tile2bmp.exe del $(U)tile2bmp.exe) - $(subst /,\,if exist $(U)tile2bin.exe del $(U)tile2bin.exe) - $(subst /,\,if exist $(U)til2bin2.exe del $(U)til2bin2.exe) - $(subst /,\,if exist $(U)thintile.exe del $(U)thintile.exe) - $(subst /,\,if exist $(U)dlb_main.exe del $(U)dlb_main.exe) - $(subst /,\,if exist $(INCL)/onames.h del $(INCL)/onames.h) - $(subst /,\,if exist $(INCL)/pm.h del $(INCL)/pm.h) - $(subst /,\,if exist $(INCL)/date.h del $(INCL)/date.h) - $(subst /,\,if exist $(SRC)/monstr.c del $(SRC)/monstr.c) - $(subst /,\,if exist $(SRC)/tile.c del $(SRC)/tile.c) - $(subst /,\,if exist $(DAT)/options del $(DAT)/options) - $(subst /,\,if exist $(DAT)/data del $(DAT)/data) - $(subst /,\,if exist $(DAT)/rumors del $(DAT)/rumors) - $(subst /,\,if exist $(DAT)/oracles del $(DAT)/oracles) - $(subst /,\,if exist $(DAT)/bogusmon del $(DAT)/bogusmon) - $(subst /,\,if exist $(DAT)/engrave del $(DAT)/engrave) - $(subst /,\,if exist $(DAT)/epitaph del $(DAT)/epitaph) - $(subst /,\,if exist $(DAT)/dlb.lst del $(DAT)/dlb.lst) - $(subst /,\,if exist $(DAT)/nhdat del $(DAT)/nhdat) - $(subst /,\,if exist $(TILE_BMP) del $(TILE_BMP)) - $(subst /,\,if exist $(WSHR)/monthin.txt del $(WSHR)/monthin.txt) - $(subst /,\,if exist $(WSHR)/objthin.txt del $(WSHR)/objthin.txt) - $(subst /,\,if exist $(WSHR)/oththin.txt del $(WSHR)/oththin.txt) - -#========================================== -# Create directory for holding object files -#========================================== - -$(O)obj.tag: - -$(subst /,\,@if not exist $(OBJ)/*.* mkdir $(OBJ)) - @$(subst /,\,@echo directory created > $@) - -#=========================================== -# Work around some djgpp long file name woes -#=========================================== - -$(PATCHLEV_H): - @$(subst /,\,if not exist $@ copy $(INCL)/patchlevel.h $(INCL)/patchlev.h) - #============================================================= # LUA #============================================================= @@ -1038,14 +982,14 @@ $(O)tty.o: $(HACK_H) $(INCL)/wintty.h $(SSHR)/pctty.c $(O)unix.o: $(HACK_H) $(SSHR)/pcunix.c $(CC) $(cflags) -o$@ $(SSHR)/pcunix.c -$(O)pcsys.o : $(HACK_H) $(SSHR)/pcsys.c - $(CC) $(cflags) -o$@ $(SSHR)/pcsys.c +#$(O)pcsys.o : $(HACK_H) $(SSHR)/pcsys.c +# $(CC) $(cflags) -o$@ $(SSHR)/pcsys.c $(O)posixreg.o : $(HACK_H) $(SSHR)/posixreg.c $(CC) $(cflags) -o$@ $(SSHR)/posixreg.c -$(O)cppregex.o : $(HACK_H) $(SSHR)/cppregex.cpp - gpp $(cflags) -std=c++11 -o$@ $(SSHR)/cppregex.cpp +#$(O)cppregex.o : $(HACK_H) $(SSHR)/cppregex.cpp +# gpp $(cflags) -std=c++11 -o$@ $(SSHR)/cppregex.cpp $(O)pmatchre.o : $(HACK_H) $(SSHR)/pmatchre.c $(CC) $(cflags) -o$@ $(SSHR)/pmatchre.c diff --git a/sys/msdos/nhlua.h b/sys/msdos/nhlua.h index cf2883a86..992f2ad64 100644 --- a/sys/msdos/nhlua.h +++ b/sys/msdos/nhlua.h @@ -1,6 +1,6 @@ /* nhlua.h - generated by top Makefile */ -#include "../lib/lua535/src/lua.h" +#include "../lib/lua544/src/lua.h" LUA_API int (lua_error) (lua_State *L) NORETURN; -#include "../lib/lua535/src/lualib.h" -#include "../lib/lua535/src/lauxlib.h" +#include "../lib/lua544/src/lualib.h" +#include "../lib/lua544/src/lauxlib.h" /*nhlua.h*/ diff --git a/sys/msdos/setup.bat b/sys/msdos/setup.bat index 41e213587..988de68db 100755 --- a/sys/msdos/setup.bat +++ b/sys/msdos/setup.bat @@ -125,8 +125,9 @@ echo distribution. echo The following files need to exist under the names on the echo right in order to build NetHack: echo. -echo ..\..\dat\data.base needs to be copied to ..\..\dat\data.bas -echo ..\..\include\patchlevel.h needs to be copied to ..\..\include\patchlev.h +echo ..\..\dat\data.base needs to be copied to ..\..\dat\data.bas +echo ..\..\include\patchlevel.h needs to be copied to ..\..\include\patchlev.h +echo ..\..\sys\share\posixregex.c needs to be copied to ..\..\sys\share\posixreg.c echo. echo setup.bat was unable to perform the necessary changes because at least echo one of the files doesn't exist under its short name, and the