structure du répertoire de mon projet est la suivante:Comment obtenir la liste non récursive du contenu du répertoire avec leurs chemins dans Makefile?
Mon Makefile ressemble à ceci:
dir1_contents = $(shell ls dir1/*)
dir3_contents = $(shell ls dir3/*)
all: clean_dir1 clean_dir3
clean_dir1:
echo 'dir1_contents = $(dir1_contents)'
clean_dir3:
echo 'dir3_contents = $(dir3_contents)'
Quand je lance make, voici ce que je reçois:
$ pwd
make-test
$ make -s
dir1_contents = dir1/file2.junk dir1/dir2: file1.junk
dir3_contents = dir3/file3.junk
Je veux obtenir le contenu de dir1
dans dir1_contents
. Mais je ne veux pas le contenu récursif. Juste le contenu qui est immédiatement au-dessous du répertoire dir1
. Comment puis-je le faire?
Si je supprime le /*
des deux premières lignes du Makefile, j'obtiens le bon contenu que je veux. Mais ils manquent leurs chemins que je dois aussi:
$ pwd
make-test
$ make -s
dir1_contents = dir2 file2.junk
dir3_contents = file3.junk
Comment puis-je obtenir le contenu à droite que je veux avec les chemins de fichiers que j'ai besoin aussi?
'dir1_contents = dir1 /' – igagis
igagis $ (shell ls dir1), qui ne fonctionne pas: https://gist.github.com/saqib-zmi/0a245d7af4451e91e064ef949ed322f4 –
Cette solution peut être corrigée: 'dir1_contents = $ (addprefix dir1 /, $ (shell ls dir1))', mais j'aime encore mieux ma solution. – Beta