Two hacks for Android's depfiles
diff --git a/ninja.go b/ninja.go
index 4c2767c..28d68e7 100644
--- a/ninja.go
+++ b/ninja.go
@@ -4,6 +4,7 @@
 	"bytes"
 	"fmt"
 	"os"
+	"path/filepath"
 	"strings"
 )
 
@@ -35,6 +36,11 @@
 		return "", nil
 	}
 
+	// A hack for Android - llvm-rs-cc seems not to emit a dep file.
+	if strings.Contains(ss, "bin/llvm-rs-cc ") {
+		return "", nil
+	}
+
 	mfIndex := strings.Index(ss, " -MF ")
 	if mfIndex >= 0 {
 		mf := trimLeftSpace(ss[mfIndex+4:])
@@ -51,6 +57,14 @@
 		if strings.Contains(ss, p) {
 			return p, nil
 		}
+
+		// A hack for Android. For .s files, GCC does not use
+		// C preprocessor, so it ignores -MF flag.
+		as := "/" + stripExt(filepath.Base(mf)) + ".s"
+		if strings.Contains(ss, as) {
+			return "", nil
+		}
+
 		return mf, nil
 	}