meta/Tuprules.tup

26 lines
1.1 KiB
Plaintext

export NIX_PATH
export XDG_CACHE_HOME
DIRENV = direnv exec .
BIN_DIR = $(TUP_CWD)/bin
SYNDICATE_PROTOCOL = $(TUP_CWD)/syndicate-nim/<protocol>
NIM = $(TUP_CWD)/nim/bin/nim
NIM_GROUPS = $(TUP_CWD)/<nim>
NIM_FLAGS = --noNimblePath
!nim = | $(NIM_GROUPS) |> ^o nim compile %f^ $(DIRENV) $(NIM) compile $(NIM_FLAGS) $(NIM_FLAGS_%B) -o:%o %f |> %B
!nim_run = | $(NIM_GROUPS) |> ^o nim run %f^ $(DIRENV) $(NIM) compile $(NIM_FLAGS) $(NIM_FLAGS_%B) -o:%o -r %f |> %B.run
!nim_bin = | $(NIM_GROUPS) |> ^ nim bin %f^ $(DIRENV) $(NIM) compile $(NIM_FLAGS) $(NIM_FLAGS_%B) -o:%o %f |> $(BIN_DIR)/%B
!nim_check = | $(NIM_GROUPS) |> ^ nim doc %f^ $(DIRENV) $(NIM) doc $(NIM_FLAGS) $(NIM_FLAGS_%B) -o:%o %f |> %B.html
!symlink = |> ln -s %f %o |>
!preserves_schema_nim = | $(BIN_DIR)/<preserves_schema_nim> |> ^o generate nim module %B^ $(BIN_DIR)/preserves_schema_nim %f |> %B.nim
!preserves_schemac = | $(BIN_DIR)/<schemac> |> ^o^ $(BIN_DIR)/schemac |>
SYNDICATE_CONFIG_DIR = $(TUP_CWD)/config
!assert_built = |> ^ <built %b …>^ echo "<built %b \"`realpath %f`\" \"`b2sum -l 32 %f | { read sum rest ; echo $sum; }`\">" > %o |> $(SYNDICATE_CONFIG_DIR)/built/%b.pr