diff --git a/MANIFEST.in b/MANIFEST.in
index 737f5b74088cd3182347d1ac00bf6346e68921a3..d43779c20966c15c277349cf614d92934f1a8ae3 100644
--- a/MANIFEST.in
+++ b/MANIFEST.in
@@ -1,2 +1,2 @@
 recursive-include DTLSSocket/tinydtls *.h LICENSE ABOUT.md configure.ac CONTRIBUTING.md README Makefile.in doc/Doxyfile.in
-include DTLSSocket/dtls.pyx LICENSE
+include DTLSSocket/dtls.pyx DTLSSocket/tdtls.pxd LICENSE
diff --git a/setup.py b/setup.py
index e37e64cceb874f5e25fbf97a06c8f0552bb78458..cbac2337367ea18d5d440ed7f82f6f2636c2ab12 100644
--- a/setup.py
+++ b/setup.py
@@ -17,14 +17,14 @@ class prepare_tinydtls(build_ext):
             ["./configure", "--without-ecc"],
             ]
         if not os.path.exists(os.path.join(os.path.dirname(__file__), 'DTLSSocket','tinydtls','dtls.c')):
-            ["git", "submodule", "update", "--init"],
+            run_command(["git", "submodule", "update", "--init"])
         for command in commands:
             run_command(command)
         build_ext.run(self)
 
 cy_build = cythonize([
       Extension("DTLSSocket.dtls",
-                ["DTLSSocket/dtls.pyx", "DTLSSocket/tdtls.pxd",
+                ["DTLSSocket/dtls.pyx",
                  "DTLSSocket/tinydtls/dtls.c", "DTLSSocket/tinydtls/crypto.c",
                  "DTLSSocket/tinydtls/ccm.c", "DTLSSocket/tinydtls/hmac.c", "DTLSSocket/tinydtls/netq.c",
                  "DTLSSocket/tinydtls/peer.c", "DTLSSocket/tinydtls/dtls_time.c",