diff --git a/tests-integrated/wscript b/tests-integrated/wscript
new file mode 100644
index 0000000..13ed609
--- /dev/null
+++ b/tests-integrated/wscript
@@ -0,0 +1,50 @@
+# -*- Mode: python; py-indent-offset: 4; indent-tabs-mode: nil; coding: utf-8; -*-
+
+"""
+Copyright (c) 2014  University of Memphis
+                    Regents of the University of California,
+
+This file is part of NLSR (Named-data Link State Routing).
+See AUTHORS.md for complete list of NLSR authors and contributors.
+
+NLSR is free software: you can redistribute it and/or modify it under the terms
+of the GNU General Public License as published by the Free Software Foundation,
+either version 3 of the License, or (at your option) any later version.
+
+NLSR is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
+without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.  See the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License along with
+NLSR, e.g., in COPYING.md file.  If not, see <http://www.gnu.org/licenses/>.
+"""
+
+top = '..'
+
+def build(bld):
+    if bld.env['WITH_TESTS']:
+        integrated_test_main = bld(
+            target='integrated-tests-main',
+            name='integrated-tests-main',
+            features='cxx',
+            source=bld.path.ant_glob(['*.cpp']),
+            use='nlsr-objects',
+          )
+
+        integrated_test_nsync = bld.program (
+            target="../integrated-tests-nsync",
+            features="cxx cxxprogram",
+            source=bld.path.ant_glob(['nsync/**/*.cc']),
+            use='nsync-objects integrated-tests-main',
+            includes='.',
+            install_path=None,
+            )
+
+        integrated_test_nlsr = bld.program (
+            target="../integrated-tests-nlsr",
+            features="cxx cxxprogram",
+            source=bld.path.ant_glob(['nlsr/**/*.cpp']),
+            use='nlsr-objects integrated-tests-main',
+            includes='.',
+            install_path=None,
+            )
