|
| 1 | +# bld.mk |
| 2 | +# |
| 3 | +# Docker build make-functions |
| 4 | +# |
| 5 | + |
| 6 | +BLD_VER ?= latest |
| 7 | +BLD_TGT ?= full |
| 8 | +BLD_CMT ?= HEAD |
| 9 | + |
| 10 | +# |
| 11 | +# $(call bld_tags,mini,) -> mini mini-1.2.3 mini-1.2 mini-1 |
| 12 | +# $(call bld_tags,full,) -> latest full 1.2.3 1.2 1 full-1.2.3 full-1.2 full-1 |
| 13 | +# $(call bld_tags,,) -> latest 1.2.3 1.2 1 |
| 14 | +# |
| 15 | +# $(call bld_tags,mini,something) -> mini-something |
| 16 | +# $(call bld_tags,full,something) -> something full-something |
| 17 | +# $(call bld_tags,,something) -> something |
| 18 | +# |
| 19 | +# $(call bld_tags,mini,latest) -> mini |
| 20 | +# $(call bld_tags,full,latest) -> latest full |
| 21 | +# $(call bld_tags,,latest) -> latest |
| 22 | +# |
| 23 | +bld_tags = $(if $(2),\ |
| 24 | +$(call bld_ver,$(1),$(2)),\ |
| 25 | +$(call bld_ver,$(1),latest) $(call bld_ver,$(1),$(call bld_gittags))) |
| 26 | + |
| 27 | +# |
| 28 | +# $(call bld_ver,mini,something) -> mini-something |
| 29 | +# $(call bld_ver,full,something) -> something full-something |
| 30 | +# $(call bld_ver,,something) -> something |
| 31 | +# |
| 32 | +# $(call bld_ver,mini,latest) -> mini |
| 33 | +# $(call bld_ver,full,latest) -> latest full |
| 34 | +# $(call bld_ver,,latest) -> latest |
| 35 | +# |
| 36 | +bld_ver = $(if $(1),\ |
| 37 | +$(if $(findstring $(BLD_TGT),$(1)),\ |
| 38 | +$(if $(findstring latest,$(2)),latest $(1),$(2) $(addprefix $(1)-,$(2))),\ |
| 39 | +$(if $(findstring latest,$(2)),$(1),$(addprefix $(1)-,$(2)))),\ |
| 40 | +$(2)) |
| 41 | + |
| 42 | +# |
| 43 | +# $(call bld_tag,full,) -> full |
| 44 | +# $(call bld_tag,,) -> latest |
| 45 | +# |
| 46 | +# $(call bld_tag,full,something) -> full-something |
| 47 | +# $(call bld_tag,,something) -> something |
| 48 | +# |
| 49 | +# $(call bld_tag,full,latest) -> full |
| 50 | +# $(call bld_tag,,latest) -> latest |
| 51 | +# |
| 52 | +bld_tag = $(strip $(if $(1),\ |
| 53 | +$(if $(2),$(if $(findstring latest,$(2)),$(1),$(1)-$(2)),$(1)),\ |
| 54 | +$(if $(2),$(2),latest))) |
| 55 | + |
| 56 | +# |
| 57 | +# $(call bld_gittags,HEAD) -> 1.2.3 1.2 1 |
| 58 | +# |
| 59 | +bld_gittags = $(subst v,,$(shell git tag --points-at $(BLD_CMT))) |
0 commit comments