diff options
author | Clifford Wolf <clifford@clifford.at> | 2017-11-26 17:49:16 +0100 |
---|---|---|
committer | Clifford Wolf <clifford@clifford.at> | 2017-11-26 17:49:16 +0100 |
commit | 323e96d8368859ed213ede73c16f1026aeeb8453 (patch) | |
tree | cf79363848b918cb17e03385a16d31489e5aa9d1 /Makefile | |
parent | 81002dd92920da1bd6ad1b3999b8a7c6ee2be4f7 (diff) | |
parent | 8ad38d3151afdf79c34eef9b71e0353f656f3c43 (diff) |
Merge branch 'emcc' of https://github.com/rqou/arachne-pnr into testing
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 24 |
1 files changed, 17 insertions, 7 deletions
@@ -32,7 +32,7 @@ ifneq ($(CXX),$(HOST_CXX)) endif .PHONY: all -all: bin/arachne-pnr share/arachne-pnr/chipdb-384.bin share/arachne-pnr/chipdb-1k.bin share/arachne-pnr/chipdb-8k.bin share/arachne-pnr/chipdb-5k.bin +all: bin/arachne-pnr$(EXE) share/arachne-pnr/chipdb-384.bin share/arachne-pnr/chipdb-1k.bin share/arachne-pnr/chipdb-8k.bin share/arachne-pnr/chipdb-5k.bin ARACHNE_VER = 0.1+$(shell test -e .git && echo `git log --oneline | wc -l`+`git diff --name-only HEAD | wc -l`) GIT_REV = $(shell git rev-parse --verify --short HEAD 2>/dev/null || echo UNKNOWN) @@ -42,20 +42,25 @@ VER_HASH = $(shell echo "$(ARACHNE_VER) $(GIT_REV)" | sum | cut -d ' ' -f -1) src/version_$(VER_HASH).cc: echo "const char *version_str = \"arachne-pnr $(ARACHNE_VER) (git sha1 $(GIT_REV), $(notdir $(CXX)) `$(CXX) --version | tr ' ()' '\n' | grep '^[0-9]' | head -n1` $(filter -f% -m% -O% -DNDEBUG,$(CXXFLAGS)))\";" > src/version_$(VER_HASH).cc -bin/arachne-pnr: src/arachne-pnr.o src/netlist.o src/blif.o src/pack.o src/place.o src/util.o src/io.o src/route.o src/chipdb.o src/location.o src/configuration.o src/line_parser.o src/pcf.o src/global.o src/constant.o src/designstate.o src/version_$(VER_HASH).o +bin/arachne-pnr$(EXE): src/arachne-pnr.o src/netlist.o src/blif.o src/pack.o src/place.o src/util.o src/io.o src/route.o src/chipdb.o src/location.o src/configuration.o src/line_parser.o src/pcf.o src/global.o src/constant.o src/designstate.o src/version_$(VER_HASH).o $(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS) ifeq ($(IS_CROSS_COMPILING),yes) bin/arachne-pnr-host: src/arachne-pnr.host-o src/netlist.host-o src/blif.host-o src/pack.host-o src/place.host-o src/util.host-o src/io.host-o src/route.host-o src/chipdb.host-o src/location.host-o src/configuration.host-o src/line_parser.host-o src/pcf.host-o src/global.host-o src/constant.host-o src/designstate.host-o src/version_$(VER_HASH).host-o $(HOST_CXX) $(HOST_CXXFLAGS) $(HOST_LDFLAGS) -o $@ $^ $(HOST_LIBS) else -bin/arachne-pnr-host: bin/arachne-pnr +bin/arachne-pnr-host: bin/arachne-pnr$(EXE) cp $< $@ endif %.host-o: %.cc $(HOST_CXX) -c $(HOST_CPPFLAGS) $(HOST_CXXFLAGS) -o $@ $< +ifeq ($(EXE),.js) +# Special hack to make sure chipdb is built first +bin/arachne-pnr$(EXE): | share/arachne-pnr/chipdb-384.bin share/arachne-pnr/chipdb-1k.bin share/arachne-pnr/chipdb-8k.bin share/arachne-pnr/chipdb-5k.bin +endif + share/arachne-pnr/chipdb-384.bin: bin/arachne-pnr-host $(ICEBOX)/chipdb-384.txt mkdir -p share/arachne-pnr bin/arachne-pnr-host -d 384 -c $(ICEBOX)/chipdb-384.txt --write-binary-chipdb share/arachne-pnr/chipdb-384.bin @@ -68,9 +73,9 @@ share/arachne-pnr/chipdb-8k.bin: bin/arachne-pnr-host $(ICEBOX)/chipdb-8k.txt mkdir -p share/arachne-pnr bin/arachne-pnr-host -d 8k -c $(ICEBOX)/chipdb-8k.txt --write-binary-chipdb share/arachne-pnr/chipdb-8k.bin -share/arachne-pnr/chipdb-5k.bin: bin/arachne-pnr $(ICEBOX)/chipdb-5k.txt +share/arachne-pnr/chipdb-5k.bin: bin/arachne-pnr-host $(ICEBOX)/chipdb-5k.txt mkdir -p share/arachne-pnr - bin/arachne-pnr -d 5k -c $(ICEBOX)/chipdb-5k.txt --write-binary-chipdb share/arachne-pnr/chipdb-5k.bin + bin/arachne-pnr-host -d 8k -c $(ICEBOX)/chipdb-5k.txt --write-binary-chipdb share/arachne-pnr/chipdb-5k.bin tests/test_bv: tests/test_bv.o $(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $^ @@ -141,7 +146,7 @@ mxebin: .PHONY: install install: all mkdir -p $(DESTDIR)$(PREFIX)/bin - cp bin/arachne-pnr $(DESTDIR)$(PREFIX)/bin/arachne-pnr$(EXE) + cp bin/arachne-pnr$(EXE) $(DESTDIR)$(PREFIX)/bin/arachne-pnr$(EXE) mkdir -p $(DESTDIR)$(PREFIX)/share/arachne-pnr cp share/arachne-pnr/chipdb-384.bin $(DESTDIR)$(PREFIX)/share/arachne-pnr/chipdb-384.bin cp share/arachne-pnr/chipdb-1k.bin $(DESTDIR)$(PREFIX)/share/arachne-pnr/chipdb-1k.bin @@ -155,7 +160,7 @@ uninstall: .PHONY: clean clean: - rm -f src/*.o src/*.host-o tests/*.o src/*.d tests/*.d bin/arachne-pnr bin/arachne-pnr-host + rm -f src/*.o src/*.host-o tests/*.o src/*.d tests/*.d bin/arachne-pnr$(EXE) bin/arachne-pnr-host rm -f tests/test_bv tests/test_us rm -f share/arachne-pnr/*.bin rm -f src/version_* @@ -164,3 +169,8 @@ clean: rm -rf tests/fsm/temp tests/fsm/1k tests/fsm/8k rm -rf tests/regression/1k tests/regression/8k rm -rf tests/simple/txt.sum tests/simple/1k tests/simple/8k + +.PHONY: emcc +emcc: + $(MAKE) EXE=.js clean + $(MAKE) CC=emcc CXX=emcc HOST_CC=gcc HOST_CXX=g++ PREFIX=/ LDFLAGS="--memory-init-file 0 --embed-file share -s TOTAL_MEMORY=256*1024*1024" EXE=.js |