さて、私はメイクファイルの助けを借りて私のためにいくつかのデータを実行するパイプラインを持っています. このパイプラインは、クリーンアップしたい膨大な量の冗長ファイルを作成します。
パイプラインを実行するためのメイクファイルが 1 つあります。そしてパイプライン自体は、他の多くのメイクファイルに接続されています。そこで、このコードをパイプラインの chipcap.mk ファイルに追加しました。
.PHONY cleanintermediate
cleanintermediate: $(CHIPCAP_OUTPUT)
rm -rf $(SAMPLE)clipsync.trimsync.fastq
rm -rf $(SAMPLE)clipsync.fastq
rm -rf $(SAMPLE)clip.fastq
rm -rf $(SAMPLE).fastq
rm -rf $(SAMPLE).wig && $(RM) -rf $(SAMPLE).wig.idx
rm -rf $(SAMPLE).sam
今、私はこのようにファイルを実行します。make -f run_samples.mk
このスクリプトはパイプラインを呼び出し、すべてのサンプルの実行を個別に開始します。run_samples.mk がパイプラインに与えるコマンドは次のとおりです。
all: pool1_negCTRL pool1R2R1 pool1SP1 pool2Posctrl pool2R2R2 pool2Input
getCommand = $(MAKE) -f /data/DIV5/SASC/project-064-ronald-svdz/analysis/pipelines/chipcap/chipcap.mk \
IN_DIR=/data/DIV5/SASC/project-064-ronald-svdz/input/$(1) \
OUT_DIR=/data/DIV5/SASC/project-064-ronald-svdz/analysis/runs/$(2) \
CHIPCAP_VER=0.1.2 \
FASTQ_EXT=fastq \
CHIPCAP_INPUT=$(3) \
CHIPCAP_QC_MODE=cliptrim \
GZIP_EXT=gz \
MACS14_EXE=/home/sajvanderzeeuw/.virtualenvs/ronald/bin/macs \
PYTHON_EXE=/home/sajvanderzeeuw/.virtualenvs/ronald/bin/python2.7 \
OPT_MACS14_mfold=$(4),$(5)
#OPT_MACS14_control=control.bam
#Negative control sample
pool1_negCTRL:
$(call getCommand,pool1,pool1_negCTRL_monday_test,pool1-negCTRL_S1_L001_R1_001.fastq.gz,15,30)
run_samples.mk に対して、(chipcap.mk にある) cleanintermediate も実行する必要があると言うにはどうすればよいでしょうか。私は多くのことを困惑させてきましたが、それを行う正しい方法を見つけることができません。