github.com/blixtra/rkt@v0.8.1-0.20160204105720-ab0d1add1a43/tests/stub-stage1/stub-stage1.mk (about)

     1  # generated stage1 image
     2  FTST_SS1_IMAGE := $(FTST_TMPDIR)/rkt-stub-stage1.aci
     3  # stamp generating the stage1 image
     4  $(call setup-stamp-file,FTST_SS1_STAMP,/ss1-image)
     5  # stage1 image directory
     6  FTST_SS1_ACIDIR := $(FTST_TMPDIR)/ss1
     7  # stage1 image rootfs directory
     8  FTST_SS1_ACIROOTFSDIR := $(FTST_SS1_ACIDIR)/rootfs
     9  # stage1 image source manifest
    10  FTST_SS1_MANIFEST_SRC := $(MK_SRCDIR)/manifest
    11  # stage1 image manifest in aci dir
    12  FTST_SS1_MANIFEST := $(FTST_SS1_ACIDIR)/manifest
    13  # run binary in rootfs
    14  FTST_SS1_RUN_BINARY := $(FTST_SS1_ACIROOTFSDIR)/run
    15  # enter binary in rootfs
    16  FTST_SS1_ENTER_BINARY := $(FTST_SS1_ACIROOTFSDIR)/enter
    17  # gc binary in rootfs
    18  FTST_SS1_GC_BINARY := $(FTST_SS1_ACIROOTFSDIR)/gc
    19  # TODO: would be nice for stage0 to create those for us instead.
    20  # special directories for stage1
    21  FTST_SS1_RESERVED_DIRS := opt/stage1 rkt/env rkt/status
    22  # special directories for stage1 in rootfs
    23  FTST_SS1_RESERVED_DIRS_IN_ROOTFS := $(foreach d,opt/stage1 rkt/env rkt/status,$(FTST_SS1_ACIROOTFSDIR)/$d)
    24  # chains of special directories for stage1 in rootfs
    25  FTST_SS1_RESERVED_DIR_CHAINS := \
    26  	$(foreach d,$(FTST_SS1_RESERVED_DIRS), \
    27  		$(call dir-chain,$(FTST_SS1_ACIROOTFSDIR),$d))
    28  
    29  INSTALL_FILES += $(FTST_SS1_MANIFEST_SRC):$(FTST_SS1_MANIFEST):0644
    30  INSTALL_DIRS += \
    31  	$(FTST_SS1_ACIDIR):- \
    32  	$(FTST_SS1_ACIROOTFSDIR):- \
    33  	$(foreach d,$(FTST_SS1_RESERVED_DIR_CHAINS),$d:-)
    34  CLEAN_FILES += \
    35  	$(FTST_SS1_IMAGE) \
    36  	$(FTST_SS1_RUN_BINARY) \
    37  	$(FTST_SS1_ENTER_BINARY) \
    38  	$(FTST_SS1_GC_BINARY)
    39  
    40  $(call generate-stamp-rule,$(FTST_SS1_STAMP),$(FTST_SS1_IMAGE))
    41  
    42  $(call forward-vars,$(FTST_SS1_IMAGE), \
    43  	FTST_SS1_ACIDIR)
    44  $(FTST_SS1_IMAGE): $(FTST_SS1_MANIFEST) $(FTST_SS1_RUN_BINARY) $(FTST_SS1_ENTER_BINARY) $(FTST_SS1_GC_BINARY) $(ACTOOL_STAMP) | $(FTST_SS1_ACIDIR) $(FTST_SS1_RESERVED_DIRS_IN_ROOTFS)
    45  	$(VQ) \
    46  	$(call vb,vt,ACTOOL,$(call vsp,$@)) \
    47  	"$(ACTOOL)" build --overwrite "$(FTST_SS1_ACIDIR)" "$@"
    48  
    49  $(FTST_SS1_RUN_BINARY) $(FTST_SS1_ENTER_BINARY) $(FTST_SS1_GC_BINARY): | $(FTST_SS1_ACIROOTFSDIR)
    50  
    51  # variables for makelib/build_go_bin.mk
    52  BGB_STAMP := $(FTST_SS1_STAMP)
    53  BGB_BINARY := $(FTST_SS1_RUN_BINARY)
    54  BGB_PKG_IN_REPO := $(call go-pkg-from-dir)/run
    55  
    56  include makelib/build_go_bin.mk
    57  
    58  # variables for makelib/build_go_bin.mk
    59  BGB_STAMP := $(FTST_SS1_STAMP)
    60  BGB_BINARY := $(FTST_SS1_ENTER_BINARY)
    61  BGB_PKG_IN_REPO := $(call go-pkg-from-dir)/enter
    62  
    63  include makelib/build_go_bin.mk
    64  
    65  # variables for makelib/build_go_bin.mk
    66  BGB_STAMP := $(FTST_SS1_STAMP)
    67  BGB_BINARY := $(FTST_SS1_GC_BINARY)
    68  BGB_PKG_IN_REPO := $(call go-pkg-from-dir)/gc
    69  
    70  include makelib/build_go_bin.mk
    71  
    72  # do not undefine the FTST_SS1_IMAGE and FTST_SS1_STAMP variables, we
    73  # will use them in functional.mk
    74  $(call undefine-namespaces,FTST_SS1,FTST_SS1_IMAGE FTST_SS1_STAMP)