1# Created by: lightside <lightside@gmx.com> 2# This file released into the public domain 3 4WX_CONFIG?= wx-config 5WX_CXXFLAGS= `$(WX_CONFIG) --cxxflags` 6WX_LIBS= `$(WX_CONFIG) --libs aui adv core xml net` 7PACKAGE_VERSION?= __DATE__ 8CXX?= c++ 9CXXFLAGS+= -DPACKAGE_VERSION=$(PACKAGE_VERSION) -std=c++17 $(WX_CXXFLAGS) -I ../lobster/include -I ../lobster/src 10LDFLAGS+= $(WX_LIBS) 11 12ARCH= $(firstword $(shell uname -m)) 13SYS= $(firstword $(shell uname -s)) 14DISTFILE?= $(DISTNAME)$(DISTEXT) 15DISTNAME?= $(APPNAME)_$(SYS)_$(ARCH) 16DISTEXT?= .tar.gz 17DIST_CMD?= tar 18DIST_ARGS?= -caf 19 20APPNAME= treesheets 21SRCS= main.cpp \ 22 lobster_impl.cpp \ 23 ../lobster/external/flatbuffers/src/idl_gen_text.cpp \ 24 ../lobster/external/flatbuffers/src/idl_parser.cpp \ 25 ../lobster/external/flatbuffers/src/util.cpp \ 26 ../lobster/src/builtins.cpp \ 27 ../lobster/src/compiler.cpp \ 28 ../lobster/src/disasm.cpp \ 29 ../lobster/src/file.cpp \ 30 ../lobster/src/lobsterreader.cpp \ 31 ../lobster/src/platform.cpp \ 32 ../lobster/src/vm.cpp \ 33 ../lobster/src/vmdata.cpp \ 34 ../lobster/src/vmlog.cpp 35OBJS= $(SRCS:.cpp=.o) 36 37all: $(SRCS) $(APPNAME) 38 39release: CXXFLAGS+= -O3 40release: install clean 41 42debug: CXXFLAGS+= -g 43debug: install clean 44 45$(APPNAME): $(OBJS) 46 $(CXX) $(OBJS) $(LDFLAGS) -o $@ 47 48install: all 49 cp -f $(APPNAME) ../TS 50 51deinstall: 52 rm -f ../TS/$(APPNAME) 53 54clean: 55 rm -f $(APPNAME) *.o 56 57dist-release: release dist 58 59dist-debug: debug dist 60 61dist-all: install clean dist 62 63dist: 64 cd .. && $(DIST_CMD) $(DIST_ARGS) $(DISTFILE) TS 65 66dist-clean: 67 cd .. && rm -f $(DISTFILE) 68 69.PHONY: all debug release clean install deinstall dist dist-all dist-debug \ 70 dist-release dist-clean 71