Zalgo/Makefile.gcc
Quantum 207d071b24 Command Line Version, with GCC Makefile. One day it will run on linux.
Signed-off-by: Xiaomao Chen <xiaomao5@live.com>
2013-08-30 21:10:07 -04:00

63 lines
1.3 KiB
Makefile

SRCDIR=src
INCDIR=include
ifdef CROSS
KROSS=$(CROSS)-
endif
CXX=$(KROSS)g++ -std=c++11
STRIP=$(KROSS)strip
LD=$(CXX)
CXXFLAGS=-c -O3 -I$(INCDIR) -Wall -DWIN32_LEAN_AND_MEAN -DWINVER=0x0501 -D_WIN32_WINNT=0x0501 -DUNICODE -D_UNICODE
LDFLAGS=-static-libstdc++
LIBS=
ifdef DEBUG
BUILD=Debug
CXXFLAGS=$(CXXFLAGS) -DDEBUG
LDFLAGS=$(LDFLAGS) -g
else
BUILD=Release
endif
OUTDIR=build/$(BUILD)
DISTDIR=dist/$(BUILD)
DISTS=$(DISTDIR)/hecomes \
$(DISTDIR)/hegoes
FILES=$(OUTDIR)/ZalgoLib.o \
$(OUTDIR)/OptionParser.o
all: initdir $(DISTS)
hecomes: $(DISTDIR)/hecomes
hecomes: $(DISTDIR)/hegoes
.PHONY: clean
clean:
rm $(OUTDIR)/*.o
rm $(DISTS)
strip:
$(STRIP) $(DISTS)
initdir:
-test -d build || mkdir build
-test -d $(OUTDIR) || mkdir $(OUTDIR)
-test -d build || mkdir dist
-test -d $(DISTDIR) || mkdir $(DISTDIR)
$(SRCDIR)/ZalgoLib.cpp: $(INCDIR)/ZalgoLib.h $(INCDIR)/ConversionData.inc
$(SRCDIR)/OptionParser.cpp: $(INCDIR)/OptionParser.h
$(SRCDIR)/hecomes.cpp: $(INCDIR)/OptionParser.h $(INCDIR)/ZalgoLib.h
$(SRCDIR)/hegoes.cpp: $(INCDIR)/OptionParser.h $(INCDIR)/ZalgoLib.h
$(OUTDIR)/%.o: $(SRCDIR)/%.cpp
$(CXX) $(CXXFLAGS) -o $@ -c $<
$(DISTDIR)/hecomes: $(FILES) $(OUTDIR)/hecomes.o
$(LD) $(LDFLAGS) -o $@ $^
$(DISTDIR)/hegoes: $(FILES) $(OUTDIR)/hegoes.o
$(LD) $(LDFLAGS) -o $@ $^