[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#855399: debian-installer: EXTRAFILES copies all parent directories and does not copy directories


Tshepang Lekhonkhobe <tshepang@gmail.com> (2017-02-17):
> Adding 'EXTRAFILES = ~/foo/bar/baz' to config/local resulted in
> /home/tshepang/foo/bar directory initrd.
> Also, if 'baz' is a directory, it did not get copied.

Please note it's called EXTRA*FILES* so I'm not really surprised that it
works on files instead of on directories… Anyway, you could just put the
files you need in the build/ directory, that works well with:

    EXTRA_FILES = foo/bar/baz/*

If you have several levels, you can use this instead:

    EXTRAFILES = `find foo -type f`

If anything, I think we should improve (as in: write) documentations in
build/README instead of changing a long standing behaviour which might
be relied on.

By the way, this patch seems to be reversed:
> diff --git a/build/Makefile b/build/Makefile
> index 88ccad9fd..8f87b1559 100644
> --- a/build/Makefile
> +++ b/build/Makefile
> @@ -400,8 +400,8 @@ ifdef EXTRAFILES
>  	# Copy in any extra files.
>  	set -e; \
>  	for file in $(EXTRAFILES); do \
> -		mkdir --parents $(TREE); \
> -		cp --archive --recursive $$file $(TREE); \
> +		mkdir -p $(TREE)/`dirname $$file`; \
> +		cp -a $$file $(TREE)/$$file; \
>  	done
>  endif


Attachment: signature.asc
Description: Digital signature

Reply to: