2012-02-29 2 views
0

J'utilise un makefile sous Mac OS X et je tente de zip un répertoire dans un autre dossier où mon makefile est:dossier zip dans makefile mac

Mon makefile est dans le dossier:/Volumes/Sources

Et le dossier zip est:/volumes/bin/myapp

J'essaie d'exécuter la commande zip dans makefile comme ceci:

zip -r myapp.zip /Volumes/Bin/myapp 

Il fonctionne, mais dans mon archive zip, je répertoires "volumes", "Poubelle", " myapp "

Et je ne veux pas, je voudrais tous les fichiers et dossiers de/Volumes/Bin/myapp à la racine de l'archive .zip.

J'essaie "pushd" et "cd", abut après avoir changé de répertoire, une commande "pwd" montre que je n'ai pas changé! Je suis toujours dedans/Volumes/Sources

Une aide?

Répondre

2

Chaque commande d'une règle makefile agit dans son propre sous-shell. Cela ne fonctionnera pas:

cd /Volumes/Bin/myapp # <-- you start in Sources/, cd to myapp/, and die. 
zip -r myapp.zip . # <-- you are in Sources/, drat!. 

Essayez ceci:

cd /Volumes/Bin/myapp ; zip -r myapp.zip .