95 lines
1.6 KiB
Makefile
95 lines
1.6 KiB
Makefile
PROGRAM = build/Tyro
|
|
|
|
WX_RES = $(shell wx-config --rescomp)
|
|
WX_CXXFLAGS = $(shell wx-config --cxxflags)
|
|
|
|
TEST_RUNNER = build/test_runner
|
|
|
|
OS ?= $(shell uname -s)
|
|
|
|
|
|
all:
|
|
./cmake.sh Tyro
|
|
|
|
|
|
dev: all
|
|
|
|
build:
|
|
@mkdir -p build
|
|
./cmake.sh Tyro
|
|
|
|
run: build
|
|
ifneq ($(OS),Darwin)
|
|
./$(PROGRAM)
|
|
else
|
|
./build/Tyro.app/Contents/MacOS/Tyro
|
|
endif
|
|
|
|
|
|
ifeq ($(OS),Darwin)
|
|
run-app:
|
|
open -a $(PWD)/build/Tyro.app
|
|
endif
|
|
|
|
run-grind:
|
|
valgrind $(PROGRAM)
|
|
|
|
# Make optimized and striped executable
|
|
ifeq ($(OS),Darwin)
|
|
release: all
|
|
endif
|
|
ifeq ($(OS),Windows_NT)
|
|
release: exe
|
|
release:
|
|
strip -SXx $(PROGRAM).exe
|
|
endif
|
|
ifeq ($(OS),Linux)
|
|
release: all
|
|
release:
|
|
strip -SXx $(PROGRAM)
|
|
endif
|
|
|
|
|
|
# Windows resource linking
|
|
msw_resource:
|
|
$(WX_RES) resources/platform/msw/resource.rc -O coff -o resource.res
|
|
|
|
exe: LDLIBS += resource.res
|
|
exe: json_wrapper_build json_wrapper $(BASE_LIB)
|
|
exe: msw_resource $(PROGRAM)
|
|
|
|
# OS X application bundle
|
|
Tyro.app:
|
|
ifndef DEV
|
|
strip -SXx $(PROGRAM)
|
|
endif
|
|
SetFile -t APPL $(BASE_LIB)
|
|
-mkdir -p build/Tyro.app/Contents/MacOS
|
|
-mkdir -p build/Tyro.app/Contents/Resources/English.lproj
|
|
cp resources/platform/osx/Info.plist build/Tyro.app/Contents/
|
|
echo -n 'APPL????' > build/Tyro.app/Contents/PkgInfo
|
|
cp build/Tyro build/Tyro.app/Contents/MacOS/Tyro
|
|
cp resources/platform/osx/tyro.icns build/Tyro.app/Contents/Resources/
|
|
|
|
|
|
$(TEST_RUNNER):
|
|
./cmake.sh test_runner
|
|
|
|
run-tests: tests
|
|
|
|
tests: $(TEST_RUNNER)
|
|
./build/test_runner
|
|
|
|
|
|
|
|
tests-verbose: $(TEST_RUNNER)
|
|
./build/test_runner -s
|
|
|
|
clean:
|
|
rm -f *.res
|
|
rm -f config/json2c
|
|
rm -f config/json2c.exe
|
|
rm -f config/*_json.h
|
|
rm -rf build/*
|
|
mkdir -p build
|