include ../buildconf.mk

INITRAMFS_FILES := $(wildcard initramfs/hooks/*) \
                $(wildcard initramfs/scripts/init-bottom/*) \
                $(wildcard initramfs/scripts/init-top/*) \
		$(wildcard initramfs/modules.d/vdev) \
		$(wildcard initramfs/init)

INITRAMFS_BUILD := \
    $(patsubst initramfs/%,$(BUILD_VDEV_INITRAMFS)/%,$(INITRAMFS_FILES))

INITRAMFS_INSTALL := \
    $(patsubst initramfs/%,$(INSTALL_VDEV_INITRAMFS)/%,$(INITRAMFS_FILES))

VDEV_BUILD := $(INITRAMFS_BUILD) 
VDEV_INSTALL := $(INITRAMFS_INSTALL)

TOOLS := ../tools/
VDEVD := ../vdevd/

GEN_IFNAMES := $(BUILD_VDEVD_HELPERS)/gen-ifnames.sh
MKINITRAMFS := make-initramfs.sh

# debugging
print-%: ; @echo $*=$($*)

all: $(VDEV_BUILD)

$(BUILD_VDEV_CONFIG)/actions/%: actions/%
	@mkdir -p $(shell dirname "$@")
	@rm -f "$@"
	@cat "$<" > "$@"

$(BUILD_VDEV_INITRAMFS)/%: initramfs/%
	@mkdir -p $(shell dirname "$@")
	@cp -a "$<" "$@"

$(INSTALL_VDEV_INITRAMFS)/%: $(BUILD_VDEV_INITRAMFS)/%
	@mkdir -p $(shell dirname "$@")
	@cp -a "$<" "$@"

$(VDEV_INSTALL_SCRIPT_INSTALL): $(VDEV_INSTALL_SCRIPT)
	@mkdir -p $(shell dirname "$@")
	@cp -a "$<" "$@"

.PHONY: initramfs
initramfs: $(VDEV_CONFIG_INSTALL) $(INITSCRIPT_INSTALL)
	$(SHELL) ./$(MKINITRAMFS)

.PHONY: install
install: $(VDEV_INSTALL) $(VDEV_INSTALL_SCRIPT_INSTALL)

.PHONY: clean
clean:
	rm -f $(VDEV_BUILD)
