################################################################################ ## ## Copyright (c) 2007-2011 Illumina, Inc. ## ## This software is covered by the "Illumina Genome Analyzer Software ## License Agreement" and the "Illumina Source Code License Agreement", ## and certain third party copyright/licenses, and any user of this ## source file is bound by the terms therein (see accompanying files ## Illumina_Genome_Analyzer_Software_License_Agreement.pdf and ## Illumina_Source_Code_License_Agreement.pdf and third party ## copyright/license notices). ## ## This file is part of the Consensus Assessment of Sequence And VAriation ## (CASAVA) software package. ## ## file Alignment.mk ## ## brief Rules for alignment validation ## ## author Roman Petrovski ## ################################################################################ ifeq (,$(UNALIGNED_ROOT)) $(error "UNALIGNED_ROOT is required for Alignment to run") endif ifeq (,$(ALIGNMENT_CONFIG_TXT)) $(error "ALIGNMENT_CONFIG_TXT is required for Alignment to run") endif ifneq (,$(ALIGNMENT_CONFIG_MK)) include $(ALIGNMENT_CONFIG_MK) endif Alignment.configured: SHELL=$(SHELL_LOG) Alignment.configured: $(CMDPREFIX) \ $(CONFIGURE_ALIGNMENT) $(ALIGNMENT_CONFIG_TXT) \ --EXPT_DIR=$(UNALIGNED_ROOT) \ --OUT_DIR=$(CURDIR)/Aligned \ --make \ --skip-variable-metadata \ $(CONFIGURE_ALIGNMENT_PARAMS) \ $(AND) $(TOUCH) $@ \ $(AND) ($(LOG_INFO) 'Configure alignment [OK]') # make sure cat is used instead of copy for config.txt to get the default permission # bits as opposite to inheriting the source ones which are often read-only Aligned/$(notdir $(ALIGNMENT_CONFIG_TXT)): Alignment.configured Aligned/.sentinel $(CAT) $(ALIGNMENT_CONFIG_TXT) >$(SAFEPIPETARGET) # make sure cat is used instead of copy for config.txt to get the default permission # bits as opposite to inheriting the source ones which are often read-only Aligned/$(notdir $(ALIGNMENT_CONFIG_MK)): Alignment.configured Aligned/.sentinel $(CAT) $(ALIGNMENT_CONFIG_MK) >$(SAFEPIPETARGET) # make sure the submake uses our MAKEFILES_DIR regardless of what it has defined internally. # this is useful when chaning the top level makefile during debugging Alignment.finished: SHELL=$(SHELL_LOG_OLD) Alignment.finished: Alignment.configured Aligned/$(notdir $(ALIGNMENT_CONFIG_TXT)) Aligned/$(notdir $(ALIGNMENT_CONFIG_MK)) $(MAKE) -C Aligned POST_RUN_COMMAND:='$(TOUCH) ../$@' MAKEFILES_DIR:=$(MAKEFILES_DIR) $(EXECUTE_ALIGNMENT_PARAMS)