summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLucas De Marchi <lucas.demarchi@intel.com>2015-01-07 19:14:20 -0200
committerLucas De Marchi <lucas.demarchi@intel.com>2015-01-07 19:14:20 -0200
commit8ff7f008cd684ebe524c3ba649a613fe8b9faa65 (patch)
treeb5ef298740be566f7ce18f9032f1ff69a7696236
parent84aaaedfa6295ebe1f24b114b35ab0f53c138bbd (diff)
downloadkmod-8ff7f008cd684ebe524c3ba649a613fe8b9faa65.tar.gz
kmod-8ff7f008cd684ebe524c3ba649a613fe8b9faa65.tar.bz2
kmod-8ff7f008cd684ebe524c3ba649a613fe8b9faa65.zip
testsuite: do not overrid paths inside build
If we are accessing a file inside the build directory we should really not trap the path. Right now this isn't important because we never do such accesses. However it will be needed when gcov is integrated because it dumps files to the same place where the binaries are located.
-rw-r--r--Makefile.am2
-rw-r--r--testsuite/path.c5
2 files changed, 6 insertions, 1 deletions
diff --git a/Makefile.am b/Makefile.am
index b9fc8ea..5df38cb 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -241,6 +241,8 @@ check-am: rootfs check-sysconfdir
check_LTLIBRARIES = $(TESTSUITE_OVERRIDE_LIBS)
testsuite_uname_la_LDFLAGS = $(TESTSUITE_OVERRIDE_LIBS_LDFLAGS)
+testsuite_path_la_CPPFLAGS = $(AM_CPPFLAGS) \
+ -DABS_TOP_BUILDDIR=\"$(abs_top_builddir)\"
testsuite_path_la_LDFLAGS = $(TESTSUITE_OVERRIDE_LIBS_LDFLAGS)
testsuite_delete_module_la_LDFLAGS = $(TESTSUITE_OVERRIDE_LIBS_LDFLAGS)
diff --git a/testsuite/path.c b/testsuite/path.c
index ba9a511..fa5fceb 100644
--- a/testsuite/path.c
+++ b/testsuite/path.c
@@ -29,6 +29,8 @@
#include <sys/stat.h>
#include <sys/types.h>
+#include <shared/util.h>
+
#include "testsuite.h"
static void *nextlib;
@@ -37,7 +39,8 @@ static size_t rootpathlen;
static inline bool need_trap(const char *path)
{
- return path != NULL && path[0] == '/';
+ return path != NULL && path[0] == '/'
+ && !strstartswith(path, ABS_TOP_BUILDDIR);
}
static const char *trap_path(const char *path, char buf[PATH_MAX * 2])