Commit 2cd80a78 authored by PoroCYon's avatar PoroCYon

add makefiles for when csc doesn't work (on ubuntu arm7hf, ti'e)

parent 169331e8
Pipeline #35389447 passed with stages
in 1 minute and 52 seconds
default: release
ILASM ?= ilasm
OUTPUT := Altar.NET.Util.dll
ILFLAGS := /nologo /dll
%/:
mkdir -p "$@"
release: TARGET := Release
release: bin/Release/$(OUTPUT)
debug: TARGET := Debug
debug: ILFLAGS += /debug
debug: bin/Debug/$(OUTPUT)
bin/%/$(OUTPUT): ILHacks.il bin/%/
$(ILASM) $(ILFLAGS) /output:"$@" "$<"
clean:
@rm -vf bin/{Debug,Release}/{A,a}ltar.NET.Util.*
.PHONY:
all debug release default clean
default: release
MCS ?= mcs
OUTPUT := altar.exe
CSFLAGS := -checked- -clscheck- -langversion:Experimental -unsafe+ -define:MCS
LIBS := ../References/CommandLine.dll System.Numerics
INFILES := $(shell find . -type f -name "*.cs")
%/:
mkdir -p "$@"
release: TARGET := Release
release: CSFLAGS += -optimize+ -define:TRACE
release: UTILLIB := ../Altar.NET.Util/bin/Release/Altar.NET.Util.dll
release: LIBS += $(UTILLIB)
release: CSFLAGS += $(patsubst %,-r:%,$(LIBS))
release: bin/Release/$(OUTPUT)
debug: TARGET := Debug
debug: CSFLAGS += -debug+ -define:DEBUG -define:TRACE
debug: UTILLIB := ../Altar.NET.Util/bin/Debug/Altar.NET.Util.dll
debug: LIBS += $(UTILLIB)
debug: CSFLAGS += $(patsubst %,-r:%,$(LIBS))
debug: bin/Debug/$(OUTPUT)
$(UTILLIB): ../Altar.NET.Util
$(MAKE) -C "$<" $(shell echo $(TARGET) | tr A-Z a-z)
bin/%/$(OUTPUT): bin/%/ $(INFILES) $(UTILLIB)
$(MCS) $(CSFLAGS) -out:"$@" $(INFILES)
@cp -v $(filter %.dll %.exe,$(LIBS)) "$<"
clean:
@rm -vf bin/{Debug,Release}/{A,a}ltar.*
@rm -vf bin/{Debug,Release}/CommandLine.*
.PHONY:
all debug release default clean
default: release
TARGET := Release # makes no sense for debug
TARGET_ := release
MONO ?= mono
OUTPUT := altar.exe
INPUTS := Altar.NET/bin/$(TARGET)/altar.exe \
Altar.NET.Util/bin/$(TARGET)/Altar.NET.Util.dll \
References/CommandLine.dll
ILREPACK := ILRepack/ILRepack.exe
ILRFLAGS := /union /target:exe
Altar.NET/bin/$(TARGET)/altar.exe: Altar.NET/
$(MAKE) -C "$<" "$(TARGET_)"
Altar.NET.Util/bin/$(TARGET)/Altar.NET.Util.dll: Altar.NET.Util/
$(MAKE) -C "$<" "$(TARGET_)"
%/:
mkdir -p "$@"
bin/%/$(OUTPUT): bin/%/ $(INPUTS)
$(MONO) $(ILREPACK) $(ILRFLAGS) "/out:$@" $(INPUTS)
all: bin/$(TARGET)/$(OUTPUT)
release: all
.PHONY: all release clean debug Altar.NET/bin/$(TARGET)/altar.exe \
Altar.NET.Util/bin/$(TARGET)/Altar.NET.Util.dll
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment