Ich kompiliere eine Bibliothek namens libCMSDataFormat.so
. Wenn libCMSDataFormat.so
kompiliert wird, macht es potentiell eine (oder mehrere) .pcm
Dateien (dies ist plattformabhängig) Wenn diese Dateien erstellt werden, sollten sie an einen anderen Speicherort (namens $ OBJ) kopiert werden. Aber wenn sie nicht existieren, soll das Programm normal enden, d.h. ohne einen Fehler.Bedingte Kopie einer möglicherweise nicht vorhandenen Datei mit gnu make
Folgende Arbeiten, wenn die .pcm
Datei gemacht wird, aber es funktioniert nicht für die Plattform, wo die .pcm
Datei nicht erzeugt wird (dh Kopie gibt einen Fehler, da keine Datei gefunden wird) erhalten Anregungen
SRC=../src
OBJ=../lib
all: $(OBJ) $(OBJ)/libCMSDataFormat.so MoveFile
.Phony : MoveFile
MoveFile: $(OBJ)/libCMSDataFormat.so
ifeq ($(*.pcm $(SRC)),)
@echo "copying.."
cp $(SRC)/*_rdict.pcm $(OBJ)
else
@echo "no .pcm found!"
endif
(Rule for `libCMSDataFormat.so` follows which might (or might not!) create one or more `*.pcm` files in `$(SRC)`.
zu dies ist für beide Fälle willkommen, vorzugsweise auch für den Fall, dass mehr als eine .pcm
generiert wird.
Hallo Droid Coder, vielen Dank für die freundliche Antwort! In der Zwischenzeit habe ich einen (hässlichen!) Work-Around gefunden, aber ich werde Ihren Vorschlag so schnell wie möglich prüfen. Danke für Ihr Bemühen! Merijn –