CFLAGS= -Zi -Od -D__inline__=__inline

SOURCES = \
    lapi.c \
    lauxlib.c \
    lbaselib.c \
    lbitlib.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 \
    loslib.c \
    lparser.c \
    lstate.c \
    lstring.c \
    lstrlib.c \
    ltable.c \
    ltablib.c \
    ltm.c \
    lua.c \
    lundump.c \
    lvm.c \
    lzio.c
    
OBJETS = $(SOURCES:.c=.obj)
TARGET_EXE = main.exe

all: $(TARGET_EXE)

$(TARGET_EXE): $(OBJETS)
	@$(CC) $(CFLAGS) $** -Fe$@

.c.obj:
	@$(CC) $(CFLAGS) -c $< -Fo$*.obj

clean:
	@del *.pdb
	@del *.obj
	@del *.ilk
	@del *.exe

distclean: clean
	@del *.instrumented
	@del return_info.json

instrument:
	..\..\tools\instrumentator\Release\instrumentator.exe \
	-p _ \
	-o return_info.json \
	-I "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include" \
	-D__inline__=__inline \
	$(SOURCES)