diff --git a/Lib/compileall.py b/Lib/compileall.py
index d9d7816..be9e2ad 100644
--- a/Lib/compileall.py
+++ b/Lib/compileall.py
@@ -45,6 +45,8 @@
     names.sort()
     success = 1
     for name in names:
+        if name == '__pycache__':
+            continue
         fullname = os.path.join(dir, name)
         if ddir is not None:
             dfile = os.path.join(ddir, name)
diff --git a/Lib/test/test_compileall.py b/Lib/test/test_compileall.py
index 8b34587..fe26026 100644
--- a/Lib/test/test_compileall.py
+++ b/Lib/test/test_compileall.py
@@ -150,6 +150,24 @@
         expected.sort()
         self.assertEqual(sorted(os.listdir(self.pkgdir)), expected)
 
+    def test_multiple_runs(self):
+        # Bug 8527 reported that multiple calls produced empty
+        # __pycache__/__pycache__ directories.
+        retcode = subprocess.call(
+            (sys.executable, '-m', 'compileall', '-q', self.pkgdir))
+        self.assertEqual(retcode, 0)
+        # Verify the __pycache__ directory contents.
+        cachedir = os.path.join(self.pkgdir, '__pycache__')
+        self.assertTrue(os.path.exists(cachedir))
+        cachecachedir = os.path.join(cachedir, '__pycache__')
+        self.assertFalse(os.path.exists(cachecachedir))
+        # Call compileall again.
+        retcode = subprocess.call(
+            (sys.executable, '-m', 'compileall', '-q', self.pkgdir))
+        self.assertEqual(retcode, 0)
+        self.assertTrue(os.path.exists(cachedir))
+        self.assertFalse(os.path.exists(cachecachedir))
+
 
 def test_main():
     support.run_unittest(
diff --git a/Makefile.pre.in b/Makefile.pre.in
index 745c4a7..b0b9ee4 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -1161,7 +1161,7 @@
 # files, which clobber removes as well
 pycremoval:
 	find $(srcdir) -name '*.py[co]' -exec rm -f {} ';'
-	find $(srcdir) -name '__pycache__' | xargs rmdir
+	find $(srcdir) -name '__pycache__' -exec rmdir {} ';'
 
 rmtestturds:
 	-rm -f *BAD *GOOD *SKIPPED
