Lower correlation threshold in flush-finish tests again am: 6455e6f987 am: 84373d7748...
[platform/upstream/VK-GL-CTS.git] / external / fetch_sources.py
index f173029..6376692 100644 (file)
@@ -65,9 +65,10 @@ class SourcePackage (Source):
                if not self.isArchiveUpToDate():
                        self.fetchAndVerifyArchive()
 
-               # \note No way to verify that extracted contents match archive, re-extract
-               Source.clean(self)
-               self.extract()
+               if self.getExtractedChecksum() != self.checksum:
+                       Source.clean(self)
+                       self.extract()
+                       self.storeExtractedChecksum(self.checksum)
 
        def removeArchives (self):
                archiveDir = os.path.join(EXTERNAL_DIR, pkg.baseDir, pkg.archiveDir)
@@ -81,6 +82,20 @@ class SourcePackage (Source):
                else:
                        return False
 
+       def getExtractedChecksumFilePath (self):
+               return os.path.join(EXTERNAL_DIR, pkg.baseDir, pkg.archiveDir, "extracted")
+
+       def getExtractedChecksum (self):
+               extractedChecksumFile = self.getExtractedChecksumFilePath()
+
+               if os.path.exists(extractedChecksumFile):
+                       return readFile(extractedChecksumFile)
+               else:
+                       return None
+
+       def storeExtractedChecksum (self, checksum):
+               writeFile(self.getExtractedChecksumFilePath(), checksum)
+
        def fetchAndVerifyArchive (self):
                print "Fetching %s" % self.url
 
@@ -90,7 +105,7 @@ class SourcePackage (Source):
                dstPath         = os.path.join(EXTERNAL_DIR, self.baseDir, self.archiveDir, self.filename)
 
                if checksum != self.checksum:
-                       raise Exception("Checksum mismatch for %s, exepected %s, got %s" % (self.filename, self.checksum, checksum))
+                       raise Exception("Checksum mismatch for %s, expected %s, got %s" % (self.filename, self.checksum, checksum))
 
                if not os.path.exists(os.path.dirname(dstPath)):
                        os.mkdir(os.path.dirname(dstPath))
@@ -170,12 +185,16 @@ PACKAGES = [
                postExtract = postExtractLibpng),
        GitRepo(
                "https://github.com/KhronosGroup/SPIRV-Tools.git",
-               "d12a10d2dd0cc4236ef227707c11f991b9c0d544",
+               "0b0454c42c6b6f6746434bd5c78c5c70f65d9c51",
                "spirv-tools"),
        GitRepo(
                "https://github.com/KhronosGroup/glslang.git",
-               "e3aa654c4b0c761b28d7864192ca8ceea6faf70a",
+               "a5c5fb61180e8703ca85f36d618f98e16dc317e2",
                "glslang"),
+       GitRepo(
+               "https://github.com/KhronosGroup/SPIRV-Headers.git",
+               "2bf02308656f97898c5f7e433712f21737c61e4e",
+               "spirv-headers"),
 ]
 
 def parseArgs ():