Skip to content

Commit

Permalink
common.inc (#5)
Browse files Browse the repository at this point in the history
* Added common.inc where all the similar files go. This file additionally fixes up the build system for DOS building machines and emulators

* Added and updated all makefiles to use common.inc
  • Loading branch information
Lethja authored Mar 2, 2025
1 parent c4de883 commit 630eff1
Show file tree
Hide file tree
Showing 6 changed files with 70 additions and 325 deletions.
65 changes: 65 additions & 0 deletions common.inc
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
# This file is part of wmake but should not be run directly.
# It depends on other makefiles to setup variables for the target first
# and stores only common tasks amongst all platform build processes.

objs = $(OBJDIR)$(SEP)lapi.obj $(OBJDIR)$(SEP)lctype.obj &
$(OBJDIR)$(SEP)lfunc.obj $(OBJDIR)$(SEP)lmathlib.obj &
$(OBJDIR)$(SEP)loslib.obj $(OBJDIR)$(SEP)ltable.obj &
$(OBJDIR)$(SEP)lundump.obj $(OBJDIR)$(SEP)lauxlib.obj &
$(OBJDIR)$(SEP)ldblib.obj $(OBJDIR)$(SEP)lgc.obj &
$(OBJDIR)$(SEP)lmem.obj $(OBJDIR)$(SEP)lparser.obj &
$(OBJDIR)$(SEP)ltablib.obj $(OBJDIR)$(SEP)lutf8lib.obj &
$(OBJDIR)$(SEP)lbaselib.obj $(OBJDIR)$(SEP)ldebug.obj &
$(OBJDIR)$(SEP)linit.obj $(OBJDIR)$(SEP)loadlib.obj &
$(OBJDIR)$(SEP)lstate.obj $(OBJDIR)$(SEP)ltm.obj &
$(OBJDIR)$(SEP)lvm.obj $(OBJDIR)$(SEP)lcode.obj &
$(OBJDIR)$(SEP)ldo.obj $(OBJDIR)$(SEP)liolib.obj &
$(OBJDIR)$(SEP)lobject.obj $(OBJDIR)$(SEP)lstring.obj &
$(OBJDIR)$(SEP)lzio.obj $(OBJDIR)$(SEP)lcorolib.obj &
$(OBJDIR)$(SEP)ldump.obj $(OBJDIR)$(SEP)llex.obj &
$(OBJDIR)$(SEP)lopcodes.obj $(OBJDIR)$(SEP)lstrlib.obj

lua_obj = $(OBJDIR)$(SEP)lua.obj
luac_obj = $(OBJDIR)$(SEP)luac.obj

!ifdef __UNIX__
SEP = /
!else
SEP = \
!endif

BINDIR = dist$(SEP)bin
OBJDIR = obj$(SEP)$(PLATFORM)
SRCDIR = lua

$(BINDIR)$(SEP)lua$(PLATFORM).exe: $(OBJDIR) $(BINDIR) $(objs) $(lua_obj)
*wlink NAME $@ $(LFLAGS) FILE {$(objs) $(lua_obj)}

$(BINDIR)$(SEP)luac$(PLATFORM).exe: $(BINDIR) $(OBJDIR) $(objs) $(luac_obj)
*wlink NAME $@ $(LFLAGS) FILE {$(objs) $(luac_obj)}

{$(SRCDIR)}.c{$(OBJDIR)}.obj:
$(CC) $(CFLAGS) -fo=$@ $<

clean: .SYMBOLIC
!ifdef __UNIX__
@!if [ -e $(OBJDIR) ]; then rm -R $(OBJDIR); fi
@!if [ -e $(BINDIR)lua$(PLATFORM).exe ]; then rm $(BINDIR)lua$(PLATFORM).exe; fi
@!if [ -e $(BINDIR)luac$(PLATFORM).exe ]; then rm $(BINDIR)luac$(PLATFORM).exe; fi
!else # Assuming DOS 5.0 +
@!if exist $(BINDIR)$(SEP)lua$(PLATFORM).exe del $(BINDIR)$(SEP)lua$(PLATFORM).exe
@!if exist $(BINDIR)$(SEP)luac$(PLATFORM).exe del $(BINDIR)$(SEP)luac$(PLATFORM).exe
@!if exist $(OBJDIR)$(SEP)*.* echo Run `DEL $(OBJDIR)$(SEP)*.* && RD $(OBJDIR)` to clean compiler objects
!endif

dist:
mkdir dist

obj:
mkdir obj

$(BINDIR): dist
mkdir $(BINDIR)

$(OBJDIR): obj
mkdir $(OBJDIR)
66 changes: 1 addition & 65 deletions wm_dos16.mak
Original file line number Diff line number Diff line change
Expand Up @@ -3,75 +3,11 @@
# There are no configurable parts to this file
# Run with `wmake -f mw_dos16.mak`

objs = $(OBJDIR)lapi.obj $(OBJDIR)lctype.obj &
$(OBJDIR)lfunc.obj $(OBJDIR)lmathlib.obj &
$(OBJDIR)loslib.obj $(OBJDIR)ltable.obj &
$(OBJDIR)lundump.obj $(OBJDIR)lauxlib.obj &
$(OBJDIR)ldblib.obj $(OBJDIR)lgc.obj &
$(OBJDIR)lmem.obj $(OBJDIR)lparser.obj &
$(OBJDIR)ltablib.obj $(OBJDIR)lutf8lib.obj &
$(OBJDIR)lbaselib.obj $(OBJDIR)ldebug.obj &
$(OBJDIR)linit.obj $(OBJDIR)loadlib.obj &
$(OBJDIR)lstate.obj $(OBJDIR)ltm.obj &
$(OBJDIR)lvm.obj $(OBJDIR)lcode.obj &
$(OBJDIR)ldo.obj $(OBJDIR)liolib.obj &
$(OBJDIR)lobject.obj $(OBJDIR)lstring.obj &
$(OBJDIR)lzio.obj $(OBJDIR)lcorolib.obj &
$(OBJDIR)ldump.obj $(OBJDIR)llex.obj &
$(OBJDIR)lopcodes.obj $(OBJDIR)lstrlib.obj

lua_obj = $(OBJDIR)lua.obj
luac_obj = $(OBJDIR)luac.obj

CC = *wcc

CFLAGS = -q -bt=dos -ml -0 -d0 -osr -zc
LFLAGS = SYS dos OPT st=8192

PLATFORM = 16

!ifdef __UNIX__
BINDIR = dist/bin/
OBJDIR = obj/$(PLATFORM)/
SRCDIR = lua/
!else
BINDIR = dist\bin\ #
OBJDIR = obj\$(PLATFORM)\ #
SRCDIR = lua\ #
!endif

$(BINDIR)lua$(PLATFORM).exe: $(OBJDIR) $(BINDIR) $(objs) $(lua_obj)
*wlink NAME $@ $(LFLAGS) FILE {$(objs) $(lua_obj)}

$(BINDIR)luac$(PLATFORM).exe: $(BINDIR) $(OBJDIR) $(objs) $(luac_obj)
*wlink NAME $@ $(LFLAGS) FILE {$(objs) $(luac_obj)}

{$(SRCDIR)}.c{$(OBJDIR)}.obj:
$(CC) $(CFLAGS) -fo=$@ $<

clean: .SYMBOLIC
!ifdef __UNIX__
@!if [ -e $(OBJDIR) ]; then rm -R $(OBJDIR); fi
@!if [ -e $(BINDIR)lua$(PLATFORM).exe ]; then rm $(BINDIR)lua$(PLATFORM).exe; fi
@!if [ -e $(BINDIR)luac$(PLATFORM).exe ]; then rm $(BINDIR)luac$(PLATFORM).exe; fi
!else
!ifdef __NT__
@!if exist $(OBJDIR) rd /S /Q $(OBJDIR)
!else
@!if exist $(OBJDIR) deltree /Y $(OBJDIR)
!endif
@!if exist $(BINDIR)lua$(PLATFORM).exe del $(BINDIR)lua$(PLATFORM).exe
@!if exist $(BINDIR)luac$(PLATFORM).exe del $(BINDIR)luac$(PLATFORM).exe
!endif

dist:
mkdir dist

obj:
mkdir obj

$(BINDIR): dist
mkdir $(BINDIR)

$(OBJDIR): obj
mkdir $(OBJDIR)
!include common.inc
66 changes: 1 addition & 65 deletions wm_dos4g.mak
Original file line number Diff line number Diff line change
Expand Up @@ -3,75 +3,11 @@
# There are no configurable parts to this file
# Run with `wmake -f wm_dos4g.mak`

objs = $(OBJDIR)lapi.obj $(OBJDIR)lctype.obj &
$(OBJDIR)lfunc.obj $(OBJDIR)lmathlib.obj &
$(OBJDIR)loslib.obj $(OBJDIR)ltable.obj &
$(OBJDIR)lundump.obj $(OBJDIR)lauxlib.obj &
$(OBJDIR)ldblib.obj $(OBJDIR)lgc.obj &
$(OBJDIR)lmem.obj $(OBJDIR)lparser.obj &
$(OBJDIR)ltablib.obj $(OBJDIR)lutf8lib.obj &
$(OBJDIR)lbaselib.obj $(OBJDIR)ldebug.obj &
$(OBJDIR)linit.obj $(OBJDIR)loadlib.obj &
$(OBJDIR)lstate.obj $(OBJDIR)ltm.obj &
$(OBJDIR)lvm.obj $(OBJDIR)lcode.obj &
$(OBJDIR)ldo.obj $(OBJDIR)liolib.obj &
$(OBJDIR)lobject.obj $(OBJDIR)lstring.obj &
$(OBJDIR)lzio.obj $(OBJDIR)lcorolib.obj &
$(OBJDIR)ldump.obj $(OBJDIR)llex.obj &
$(OBJDIR)lopcodes.obj $(OBJDIR)lstrlib.obj

lua_obj = $(OBJDIR)lua.obj
luac_obj = $(OBJDIR)luac.obj

CC = *wcc386

CFLAGS = -q -bt=dos4g -mf -3 -d0 -osr -zc
LFLAGS = SYS dos4g OPT st=8192

PLATFORM = 4g

!ifdef __UNIX__
BINDIR = dist/bin/
OBJDIR = obj/$(PLATFORM)/
SRCDIR = lua/
!else
BINDIR = dist\bin\ #
OBJDIR = obj\$(PLATFORM)\ #
SRCDIR = lua\ #
!endif

$(BINDIR)lua$(PLATFORM).exe: $(OBJDIR) $(BINDIR) $(objs) $(lua_obj)
*wlink NAME $@ $(LFLAGS) FILE {$(objs) $(lua_obj)}

$(BINDIR)luac$(PLATFORM).exe: $(BINDIR) $(OBJDIR) $(objs) $(luac_obj)
*wlink NAME $@ $(LFLAGS) FILE {$(objs) $(luac_obj)}

{$(SRCDIR)}.c{$(OBJDIR)}.obj:
$(CC) $(CFLAGS) -fo=$@ $<

clean: .SYMBOLIC
!ifdef __UNIX__
@!if [ -e $(OBJDIR) ]; then rm -R $(OBJDIR); fi
@!if [ -e $(BINDIR)lua$(PLATFORM).exe ]; then rm $(BINDIR)lua$(PLATFORM).exe; fi
@!if [ -e $(BINDIR)luac$(PLATFORM).exe ]; then rm $(BINDIR)luac$(PLATFORM).exe; fi
!else
!ifdef __NT__
@!if exist $(OBJDIR) rd /S /Q $(OBJDIR)
!else
@!if exist $(OBJDIR) deltree /Y $(OBJDIR)
!endif
@!if exist $(BINDIR)lua$(PLATFORM).exe del $(BINDIR)lua$(PLATFORM).exe
@!if exist $(BINDIR)luac$(PLATFORM).exe del $(BINDIR)luac$(PLATFORM).exe
!endif

dist:
mkdir dist

obj:
mkdir obj

$(BINDIR): dist
mkdir $(BINDIR)

$(OBJDIR): obj
mkdir $(OBJDIR)
!include common.inc
66 changes: 1 addition & 65 deletions wm_os216.mak
Original file line number Diff line number Diff line change
Expand Up @@ -3,75 +3,11 @@
# There are no configurable parts to this file
# Run with `wmake -f wm_os216.mak`

objs = $(OBJDIR)lapi.obj $(OBJDIR)lctype.obj &
$(OBJDIR)lfunc.obj $(OBJDIR)lmathlib.obj &
$(OBJDIR)loslib.obj $(OBJDIR)ltable.obj &
$(OBJDIR)lundump.obj $(OBJDIR)lauxlib.obj &
$(OBJDIR)ldblib.obj $(OBJDIR)lgc.obj &
$(OBJDIR)lmem.obj $(OBJDIR)lparser.obj &
$(OBJDIR)ltablib.obj $(OBJDIR)lutf8lib.obj &
$(OBJDIR)lbaselib.obj $(OBJDIR)ldebug.obj &
$(OBJDIR)linit.obj $(OBJDIR)loadlib.obj &
$(OBJDIR)lstate.obj $(OBJDIR)ltm.obj &
$(OBJDIR)lvm.obj $(OBJDIR)lcode.obj &
$(OBJDIR)ldo.obj $(OBJDIR)liolib.obj &
$(OBJDIR)lobject.obj $(OBJDIR)lstring.obj &
$(OBJDIR)lzio.obj $(OBJDIR)lcorolib.obj &
$(OBJDIR)ldump.obj $(OBJDIR)llex.obj &
$(OBJDIR)lopcodes.obj $(OBJDIR)lstrlib.obj

lua_obj = $(OBJDIR)lua.obj
luac_obj = $(OBJDIR)luac.obj

CC = *wcc

CFLAGS = -q -bt=os2 -bc -2 -ml -d0 -osr -zc
LFLAGS = SYS os2 OPT st=8192

PLATFORM = 21

!ifdef __UNIX__
BINDIR = dist/bin/
OBJDIR = obj/$(PLATFORM)/
SRCDIR = lua/
!else
BINDIR = dist\bin\ #
OBJDIR = obj\$(PLATFORM)\ #
SRCDIR = lua\ #
!endif

$(BINDIR)lua$(PLATFORM).exe: $(OBJDIR) $(BINDIR) $(objs) $(lua_obj)
*wlink NAME $@ $(LFLAGS) FILE {$(objs) $(lua_obj)}

$(BINDIR)luac$(PLATFORM).exe: $(BINDIR) $(OBJDIR) $(objs) $(luac_obj)
*wlink NAME $@ $(LFLAGS) FILE {$(objs) $(luac_obj)}

{$(SRCDIR)}.c{$(OBJDIR)}.obj:
$(CC) $(CFLAGS) -fo=$@ $<

clean: .SYMBOLIC
!ifdef __UNIX__
@!if [ -e $(OBJDIR) ]; then rm -R $(OBJDIR); fi
@!if [ -e $(BINDIR)lua$(PLATFORM).exe ]; then rm $(BINDIR)lua$(PLATFORM).exe; fi
@!if [ -e $(BINDIR)luac$(PLATFORM).exe ]; then rm $(BINDIR)luac$(PLATFORM).exe; fi
!else
!ifdef __NT__
@!if exist $(OBJDIR) rd /S /Q $(OBJDIR)
!else
@!if exist $(OBJDIR) deltree /Y $(OBJDIR)
!endif
@!if exist $(BINDIR)lua$(PLATFORM).exe del $(BINDIR)lua$(PLATFORM).exe
@!if exist $(BINDIR)luac$(PLATFORM).exe del $(BINDIR)luac$(PLATFORM).exe
!endif

dist:
mkdir dist

obj:
mkdir obj

$(BINDIR): dist
mkdir $(BINDIR)

$(OBJDIR): obj
mkdir $(OBJDIR)
!include common.inc
66 changes: 1 addition & 65 deletions wm_os232.mak
Original file line number Diff line number Diff line change
Expand Up @@ -3,75 +3,11 @@
# There are no configurable parts to this file
# Run with `wmake -f wm_os232.mak`

objs = $(OBJDIR)lapi.obj $(OBJDIR)lctype.obj &
$(OBJDIR)lfunc.obj $(OBJDIR)lmathlib.obj &
$(OBJDIR)loslib.obj $(OBJDIR)ltable.obj &
$(OBJDIR)lundump.obj $(OBJDIR)lauxlib.obj &
$(OBJDIR)ldblib.obj $(OBJDIR)lgc.obj &
$(OBJDIR)lmem.obj $(OBJDIR)lparser.obj &
$(OBJDIR)ltablib.obj $(OBJDIR)lutf8lib.obj &
$(OBJDIR)lbaselib.obj $(OBJDIR)ldebug.obj &
$(OBJDIR)linit.obj $(OBJDIR)loadlib.obj &
$(OBJDIR)lstate.obj $(OBJDIR)ltm.obj &
$(OBJDIR)lvm.obj $(OBJDIR)lcode.obj &
$(OBJDIR)ldo.obj $(OBJDIR)liolib.obj &
$(OBJDIR)lobject.obj $(OBJDIR)lstring.obj &
$(OBJDIR)lzio.obj $(OBJDIR)lcorolib.obj &
$(OBJDIR)ldump.obj $(OBJDIR)llex.obj &
$(OBJDIR)lopcodes.obj $(OBJDIR)lstrlib.obj

lua_obj = $(OBJDIR)lua.obj
luac_obj = $(OBJDIR)luac.obj

CC = *wcc386

CFLAGS = -q -bt=os2 -bc -3 -d0 -osr -zc
LFLAGS = SYS os2v2 OPT st=8192

PLATFORM = 22

!ifdef __UNIX__
BINDIR = dist/bin/
OBJDIR = obj/$(PLATFORM)/
SRCDIR = lua/
!else
BINDIR = dist\bin\ #
OBJDIR = obj\$(PLATFORM)\ #
SRCDIR = lua\ #
!endif

$(BINDIR)lua$(PLATFORM).exe: $(OBJDIR) $(BINDIR) $(objs) $(lua_obj)
*wlink NAME $@ $(LFLAGS) FILE {$(objs) $(lua_obj)}

$(BINDIR)luac$(PLATFORM).exe: $(BINDIR) $(OBJDIR) $(objs) $(luac_obj)
*wlink NAME $@ $(LFLAGS) FILE {$(objs) $(luac_obj)}

{$(SRCDIR)}.c{$(OBJDIR)}.obj:
$(CC) $(CFLAGS) -fo=$@ $<

clean: .SYMBOLIC
!ifdef __UNIX__
@!if [ -e $(OBJDIR) ]; then rm -R $(OBJDIR); fi
@!if [ -e $(BINDIR)lua$(PLATFORM).exe ]; then rm $(BINDIR)lua$(PLATFORM).exe; fi
@!if [ -e $(BINDIR)luac$(PLATFORM).exe ]; then rm $(BINDIR)luac$(PLATFORM).exe; fi
!else
!ifdef __NT__
@!if exist $(OBJDIR) rd /S /Q $(OBJDIR)
!else
@!if exist $(OBJDIR) deltree /Y $(OBJDIR)
!endif
@!if exist $(BINDIR)lua$(PLATFORM).exe del $(BINDIR)lua$(PLATFORM).exe
@!if exist $(BINDIR)luac$(PLATFORM).exe del $(BINDIR)luac$(PLATFORM).exe
!endif

dist:
mkdir dist

obj:
mkdir obj

$(BINDIR): dist
mkdir $(BINDIR)

$(OBJDIR): obj
mkdir $(OBJDIR)
!include common.inc
Loading

0 comments on commit 630eff1

Please sign in to comment.