diff --git a/qa/coccinelle/Makefile.am b/qa/coccinelle/Makefile.am index 60ec6a5bf5..36f2724b7f 100644 --- a/qa/coccinelle/Makefile.am +++ b/qa/coccinelle/Makefile.am @@ -13,7 +13,7 @@ EXTRA_DIST= access-pkt-packet.cocci \ if HAVE_COCCINELLE struct-flags.cocci: - $(srcdir)/struct-flags.py > $(top_builddir)/qa/coccinelle/struct-flags.cocci + $(srcdir)/struct-flags.py $(top_srcdir)/src > $(top_builddir)/qa/coccinelle/struct-flags.cocci check: struct-flags.cocci TOP_BUILDDIR=${abs_top_builddir} TOP_SRCDIR=$(abs_top_srcdir) $(top_srcdir)/qa/coccinelle/run_check.sh diff --git a/qa/coccinelle/struct-flags.py b/qa/coccinelle/struct-flags.py index 38c40b33e4..3186cf6bd0 100755 --- a/qa/coccinelle/struct-flags.py +++ b/qa/coccinelle/struct-flags.py @@ -1,9 +1,13 @@ #!/usr/bin/env python import re -from os import listdir +import sys +import os from string import Template -SRC_DIR = "../../src/" +if len(sys.argv) == 2: + SRC_DIR = sys.argv[1] +else: + SRC_DIR = "../../src/" class Structure: @@ -22,10 +26,10 @@ cmd = "grep -h coccinelle ../../src/*[ch] | sed -e 's/.*coccinelle: \(.*\) \*\// struct_list = [] setter_getter_list = [] -dirList = listdir(SRC_DIR) +dirList = os.listdir(SRC_DIR) for fname in dirList: if re.search("\.[ch]$", fname): - for line in open(SRC_DIR + fname): + for line in open(os.path.join(SRC_DIR, fname)): if "coccinelle:" in line: m = re.search("coccinelle: (.*) \*\/", line) if "()" not in m.group(1):