1# PureScript to native binary (via C++) Makefile
3# Run 'make' or 'make release' to build an optimized release build
4# Run 'make debug' to build a non-optimized build suitable for debugging
6# You can also perform a parallel build with 'make -jN', where N is the
7# number of cores to use.
9# PCC, PURESCRIPT_PKGS, OUTPUT, and BIN can all be overridden with the
10# command itself. For example: 'make PURESCRIPT_PKGS=../gitpackages BIN=myexe'
12# Flags can be added to either the codegen or native build phases.
13# For example: 'make PCCFLAGS=--no-tco CXXFLAGS=-DDEBUG LDFLAGS=lobjc'
15# You can also edit the generated version of this file directly.
17PCC := {bin/pcc} # example: /usr/local/bin/pcc
18PURESCRIPT_PKGS := packages # example: bower_components
23override PCCFLAGS += --comments
24override CXXFLAGS += -std=c++11
28 override CXXFLAGS += -DUSE_GC
29 override LDFLAGS += -lgc
35PURESCRIPT_PKG_SRCS := $(shell find $(PURESCRIPT_PKGS) -name '*.purs' | grep -v \/test\/ | grep -v \/example\/ | grep -v \/examples\/)
36PURESCRIPT_SRCS := $(shell find $(PURESCRIPT_SRC) -name '*.purs')
38INCLUDES := -I $(OUTPUT)
39BIN_DIR := $(OUTPUT)/bin
42 @$(MAKE) $(BIN) CXXFLAGS+=$(RELEASE)
45 @$(MAKE) $(BIN) CXXFLAGS+=$(DEBUG)
48 @$(PCC) $(PCCFLAGS) --output $(OUTPUT) $(PURESCRIPT_PKG_SRCS) $(PURESCRIPT_SRCS)
50SRCS := $(shell find $(OUTPUT) 2>/dev/null -name '*.cc')
56 @echo "Linking" $(BIN_DIR)/$(BIN)
58 @$(CXX) $(LDFLAGS) $^ -o $(BIN_DIR)/$@
64 @$(CXX) $(CXXFLAGS) $(INCLUDES) -MMD -MP -c $< -o $@
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list