################################################################################ ## ## 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 ValidateBuild.mk ## ## brief Rules that perform comparison of Build data ## ## author Roman Petrovski ## ################################################################################ ifeq (,$(BUILD_CFG_ROOT)) $(error "BUILD_CFG_ROOT is required for Build validation to run") endif Build.list.ori: BUILD_CFG_ROOT := $(BUILD_CFG_ROOT) Build.list.ori: Build.finished $(TEMP_DIR)/.sentinel ( $(CD) $(BUILD_CFG_ROOT) && $(FIND) ./ -type f \ $(foreach ign, $(BUILD_VALIDATE_IGNORE_FILES), -not -name '$(ign)') \ $(foreach nos, $(BUILD_VALIDATE_NOSIZE_FILES), -not -name '$(nos)') -printf '%p %s\n' \ $(foreach nos, $(BUILD_VALIDATE_NOSIZE_FILES), -name '$(nos)') -printf '%p\n') \ | $(SORT) | $(INTERSPERSE) >$(SAFEPIPETARGET) Build.list.local: Build.finished $(TEMP_DIR)/.sentinel ( $(CD) Build && $(FIND) ./ -type f \ $(foreach ign, $(BUILD_VALIDATE_IGNORE_FILES), -not -name '$(ign)') \ $(foreach nos, $(BUILD_VALIDATE_NOSIZE_FILES), -not -name '$(nos)') -printf '%p %s\n' \ $(foreach nos, $(BUILD_VALIDATE_NOSIZE_FILES), -name '$(nos)') -printf '%p\n') \ | $(SORT) | $(INTERSPERSE) >$(SAFEPIPETARGET) Build.diff: BUILD_CFG_ROOT := $(BUILD_CFG_ROOT) Build.diff: Build.list.local Build.list.ori ( $(DIFF) Build.list.local Build.list.ori || ([[ 1 == $$? ]] && $(EXIT) 0)) \ |( $(GREP) -E '^<|^>' \ |$(GREP) -vE '^<\s*$$|^>\s*$$' || ([[ 1 == $$? ]] && $(EXIT) 0) ) \ |$(SED) 's/^<\s\(.*$$\)/< $(subst /,\/,$(CURDIR))\/Build\/\1/' \ |$(SED) 's/^>\s\(.*$$\)/> $(subst /,\/,$(BUILD_CFG_ROOT))\/\1/' \ >$(SAFEPIPETARGET)