Rebulid when the source has been updated

You could use src/*.rs src/*/*.rs src/*/*/*.rs,
but explicit listing is prefered.

Ideally, you should be separate object files that
are rebuilt only when necessary, and then build
the final binary from those. But have not looked
at how to compile rust code so I don't know how
to do that, and since there are no header files
that is also probably suboptimal.

Signed-off-by: Mattias Andrée <maandree@kth.se>
This commit is contained in:
Mattias Andrée 2016-07-05 00:55:48 +02:00
parent f9208f9af8
commit 079c36b9f5

View File

@ -1,3 +1,33 @@
SRC = \
src/info/sources.rs \
src/info/mod.rs \
src/info/filetype.rs \
src/bin/main.rs \
src/term.rs \
src/exa.rs \
src/output/grid_details.rs \
src/output/tree.rs \
src/output/colours.rs \
src/output/grid.rs \
src/output/cell.rs \
src/output/mod.rs \
src/output/details.rs \
src/output/lines.rs \
src/output/column.rs \
src/fs/file.rs \
src/fs/fields.rs \
src/fs/mod.rs \
src/fs/dir.rs \
src/fs/feature/xattr.rs \
src/fs/feature/git.rs \
src/fs/feature/mod.rs \
src/options/misfire.rs \
src/options/filter.rs \
src/options/dir_action.rs \
src/options/view.rs \
src/options/mod.rs \
src/options/help.rs
PREFIX = /usr/local PREFIX = /usr/local
CARGOFLAGS = --no-default-features CARGOFLAGS = --no-default-features
@ -8,7 +38,7 @@ build: CARGOFLAGS=
build: all build: all
build-no-git: all build-no-git: all
target/release/exa: target/release/exa: $(SRC)
if test -n "$$(echo "$$CC" | cut -d \ -f 1)"; then \ if test -n "$$(echo "$$CC" | cut -d \ -f 1)"; then \
env CC="$$(echo "$$CC" | cut -d \ -f 1)" cargo build --release $(CARGOFLAGS); \ env CC="$$(echo "$$CC" | cut -d \ -f 1)" cargo build --release $(CARGOFLAGS); \
else\ else\