Makefile (2035B)
1 # This Makefile has been placed under the public domain 2 -include build-system/config.mk 3 4 # Absolute DESTDIR or empty string if DESTDIR unset/empty 5 abs_destdir=$(abspath $(DESTDIR)) 6 7 bin_dir=$(abs_destdir)$(prefix)/bin 8 lib_dir=$(abs_destdir)$(prefix)/lib 9 share_dir=$(abs_destdir)$(prefix)/share 10 man_dir=$(abs_destdir)$(prefix)/share/man 11 12 all: build 13 14 .PHONY: build 15 build: 16 cargo build --release --bin taler-magnet-bank --bin taler-cyclos 17 18 .PHONY: install-nobuild-files 19 install-nobuild-files: 20 install -m 644 -D -t $(share_dir)/taler-magnet-bank/config.d taler-magnet-bank/magnet-bank.conf 21 install -m 644 -D -t $(share_dir)/taler-magnet-bank/sql common/taler-common/db/versioning.sql 22 install -m 644 -D -t $(share_dir)/taler-magnet-bank/sql taler-magnet-bank/db/magnet-bank*.sql 23 install -m 644 -D -t $(man_dir)/man1 doc/prebuilt/man/taler-magnet-bank.1 24 install -m 644 -D -t $(man_dir)/man5 doc/prebuilt/man/taler-magnet-bank.conf.5 25 install -m 644 -D -t $(share_dir)/taler-cyclos/config.d taler-cyclos/cyclos.conf 26 install -m 644 -D -t $(share_dir)/taler-cyclos/sql common/taler-common/db/versioning.sql 27 install -m 644 -D -t $(share_dir)/taler-cyclos/sql taler-cyclos/db/cyclos*.sql 28 install -m 644 -D -t $(man_dir)/man1 doc/prebuilt/man/taler-cyclos.1 29 install -m 644 -D -t $(man_dir)/man5 doc/prebuilt/man/taler-cyclos.conf.5 30 31 .PHONY: install 32 install: build install-nobuild-files 33 install -D -t $(bin_dir) contrib/taler-magnet-bank-dbconfig 34 install -D -t $(bin_dir) target/release/taler-magnet-bank 35 install -D -t $(bin_dir) contrib/taler-cyclos-dbconfig 36 install -D -t $(bin_dir) target/release/taler-cyclos 37 38 .PHONY: check 39 check: install-nobuild-files 40 cargo test 41 42 .PHONY: doc 43 doc: 44 cargo doc 45 46 .PHONY: deb 47 deb: 48 dpkg-buildpackage -b -uc -us 49 50 .PHONY: ci 51 ci: 52 contrib/ci/run-all-jobs.sh 53 54 .PHONY: coverage-cyclos 55 coverage-cyclos: 56 cargo llvm-cov clean --workspace 57 cargo llvm-cov test --no-clean 58 cargo llvm-cov run --bin cyclos-harness --no-clean -- -c dev.conf logic 59 cargo llvm-cov report --lcov --output-path ./target/lcov.info