# Generated by SLiNgshoT <http://injektilo.org/>

!IFNDEF CFG

CFG = Debug

!ENDIF

!IF "$(CFG)" == "Debug"

SLINGSHOT_DIRECTORY = SLiNgshoT\bin\Debug
SLINGSHOT = $(SLINGSHOT_DIRECTORY)\SLiNgshoT.exe
SLINGSHOT_DEBUG = /debug+
SLINGSHOT_UNSAFE = /unsafe-
SLINGSHOT_DEFINES = /define:DEBUG;TRACE
SLINGSHOT_DOC =

SLINGSHOT_CORE_DIRECTORY = SLiNgshoT.Core\bin\Debug
SLINGSHOT_CORE = $(SLINGSHOT_CORE_DIRECTORY)\SLiNgshoT.Core.dll
SLINGSHOT_CORE_DEBUG = /debug+
SLINGSHOT_CORE_UNSAFE = /unsafe-
SLINGSHOT_CORE_DEFINES = /define:DEBUG;TRACE
SLINGSHOT_CORE_DOC =

!ELSE IF "$(CFG)" == "Release"

SLINGSHOT_DIRECTORY = SLiNgshoT\bin\Release
SLINGSHOT = $(SLINGSHOT_DIRECTORY)\SLiNgshoT.exe
SLINGSHOT_DEBUG = /debug-
SLINGSHOT_UNSAFE = /unsafe-
SLINGSHOT_DEFINES = /define:TRACE
SLINGSHOT_DOC =

SLINGSHOT_CORE_DIRECTORY = SLiNgshoT.Core\bin\Release
SLINGSHOT_CORE = $(SLINGSHOT_CORE_DIRECTORY)\SLiNgshoT.Core.dll
SLINGSHOT_CORE_DEBUG = /debug-
SLINGSHOT_CORE_UNSAFE = /unsafe-
SLINGSHOT_CORE_DEFINES = /define:TRACE
SLINGSHOT_CORE_DOC =

!ENDIF

all: $(SLINGSHOT) $(SLINGSHOT_CORE)

SLINGSHOT_SOURCE_FILES = \
	SLiNgshoT\AssemblyInfo.cs \
	SLiNgshoT\Main.cs

SLINGSHOT_CORE_SOURCE_FILES = \
	SLiNgshoT.Core\AssemblyInfo.cs \
	SLiNgshoT.Core\Attributes.cs \
	SLiNgshoT.Core\Configuration.cs \
	SLiNgshoT.Core\Driver.cs \
	SLiNgshoT.Core\EnterpriseProject.cs \
	SLiNgshoT.Core\File.cs \
	SLiNgshoT.Core\NAntWriter.cs \
	SLiNgshoT.Core\NMakeWriter.cs \
	SLiNgshoT.Core\Project.cs \
	SLiNgshoT.Core\Reference.cs \
	SLiNgshoT.Core\Solution.cs \
	SLiNgshoT.Core\SolutionWriter.cs

$(SLINGSHOT): $(SLINGSHOT_CORE) $(SLINGSHOT_SOURCE_FILES)
	if not exist $(SLINGSHOT_DIRECTORY) md $(SLINGSHOT_DIRECTORY)
	csc /nologo /target:exe /out:$(SLINGSHOT) $(SLINGSHOT_DEBUG) $(SLINGSHOT_UNSAFE) $(SLINGSHOT_DEFINES) $(SLINGSHOT_DOC) $(SLINGSHOT_SOURCE_FILES) /reference:System.dll /reference:System.Data.dll /reference:System.XML.dll /reference:$(SLINGSHOT_CORE)
	copy $(SLINGSHOT_CORE) $(SLINGSHOT_DIRECTORY)

$(SLINGSHOT_CORE): $(SLINGSHOT_CORE_SOURCE_FILES)
	if not exist $(SLINGSHOT_CORE_DIRECTORY) md $(SLINGSHOT_CORE_DIRECTORY)
	csc /nologo /target:library /out:$(SLINGSHOT_CORE) $(SLINGSHOT_CORE_DEBUG) $(SLINGSHOT_CORE_UNSAFE) $(SLINGSHOT_CORE_DEFINES) $(SLINGSHOT_CORE_DOC) $(SLINGSHOT_CORE_SOURCE_FILES) /reference:System.dll /reference:System.Data.dll /reference:System.Xml.dll

clean:
	rd /s /q $(SLINGSHOT_DIRECTORY)
	rd /s /q $(SLINGSHOT_CORE_DIRECTORY)
