Skip to content

Commit bb345dc

Browse files
committed
Added common.inc where all the similar files go. This file additionally fixes up the build system for DOS building machines and emulators
1 parent aba395f commit bb345dc

File tree

1 file changed

+69
-0
lines changed

1 file changed

+69
-0
lines changed

common.inc

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
# This file is part of wmake but should not be run directly.
2+
# It depends on other makefiles to setup variables for the target first
3+
# and stores only common tasks amongst all platform build processes.
4+
5+
objs = $(OBJDIR)$(SEP)lapi.obj $(OBJDIR)$(SEP)lctype.obj &
6+
$(OBJDIR)$(SEP)lfunc.obj $(OBJDIR)$(SEP)lmathlib.obj &
7+
$(OBJDIR)$(SEP)loslib.obj $(OBJDIR)$(SEP)ltable.obj &
8+
$(OBJDIR)$(SEP)lundump.obj $(OBJDIR)$(SEP)lauxlib.obj &
9+
$(OBJDIR)$(SEP)ldblib.obj $(OBJDIR)$(SEP)lgc.obj &
10+
$(OBJDIR)$(SEP)lmem.obj $(OBJDIR)$(SEP)lparser.obj &
11+
$(OBJDIR)$(SEP)ltablib.obj $(OBJDIR)$(SEP)lutf8lib.obj &
12+
$(OBJDIR)$(SEP)lbaselib.obj $(OBJDIR)$(SEP)ldebug.obj &
13+
$(OBJDIR)$(SEP)linit.obj $(OBJDIR)$(SEP)loadlib.obj &
14+
$(OBJDIR)$(SEP)lstate.obj $(OBJDIR)$(SEP)ltm.obj &
15+
$(OBJDIR)$(SEP)lvm.obj $(OBJDIR)$(SEP)lcode.obj &
16+
$(OBJDIR)$(SEP)ldo.obj $(OBJDIR)$(SEP)liolib.obj &
17+
$(OBJDIR)$(SEP)lobject.obj $(OBJDIR)$(SEP)lstring.obj &
18+
$(OBJDIR)$(SEP)lzio.obj $(OBJDIR)$(SEP)lcorolib.obj &
19+
$(OBJDIR)$(SEP)ldump.obj $(OBJDIR)$(SEP)llex.obj &
20+
$(OBJDIR)$(SEP)lopcodes.obj $(OBJDIR)$(SEP)lstrlib.obj
21+
22+
lua_obj = $(OBJDIR)$(SEP)lua.obj
23+
luac_obj = $(OBJDIR)$(SEP)luac.obj
24+
25+
!ifdef __UNIX__
26+
SEP = /
27+
!else
28+
SEP = \
29+
!endif
30+
31+
BINDIR = dist$(SEP)bin
32+
OBJDIR = obj$(SEP)$(PLATFORM)
33+
SRCDIR = lua
34+
35+
$(BINDIR)$(SEP)lua$(PLATFORM).exe: $(OBJDIR) $(BINDIR) $(objs) $(lua_obj)
36+
*wlink NAME $@ $(LFLAGS) FILE {$(objs) $(lua_obj)}
37+
38+
$(BINDIR)$(SEP)luac$(PLATFORM).exe: $(BINDIR) $(OBJDIR) $(objs) $(luac_obj)
39+
*wlink NAME $@ $(LFLAGS) FILE {$(objs) $(luac_obj)}
40+
41+
{$(SRCDIR)}.c{$(OBJDIR)}.obj:
42+
$(CC) $(CFLAGS) -fo=$@ $<
43+
44+
clean: .SYMBOLIC
45+
!ifdef __UNIX__
46+
@!if [ -e $(OBJDIR) ]; then rm -R $(OBJDIR); fi
47+
@!if [ -e $(BINDIR)lua$(PLATFORM).exe ]; then rm $(BINDIR)lua$(PLATFORM).exe; fi
48+
@!if [ -e $(BINDIR)luac$(PLATFORM).exe ]; then rm $(BINDIR)luac$(PLATFORM).exe; fi
49+
!elif __NT__
50+
@!if exist $(OBJDIR) rd /S /Q $(OBJDIR)
51+
@!if exist $(BINDIR)$(SEP)lua$(PLATFORM).exe del $(BINDIR)$(SEP)lua$(PLATFORM).exe
52+
@!if exist $(BINDIR)$(SEP)luac$(PLATFORM).exe del $(BINDIR)$(SEP)luac$(PLATFORM).exe
53+
!else # Assuming DOS 5.0
54+
@!if exist $(BINDIR)$(SEP)lua$(PLATFORM).exe del $(BINDIR)$(SEP)lua$(PLATFORM).exe
55+
@!if exist $(BINDIR)$(SEP)luac$(PLATFORM).exe del $(BINDIR)$(SEP)luac$(PLATFORM).exe
56+
@!if exist $(OBJDIR)$(SEP)*.* echo Clean compiler objects manually with `DEL $(OBJDIR)$(SEP)*.*` and `RD $(OBJDIR)`
57+
!endif
58+
59+
dist:
60+
mkdir dist
61+
62+
obj:
63+
mkdir obj
64+
65+
$(BINDIR): dist
66+
mkdir $(BINDIR)
67+
68+
$(OBJDIR): obj
69+
mkdir $(OBJDIR)

0 commit comments

Comments
 (0)