summaryrefslogtreecommitdiff
path: root/volk
diff options
context:
space:
mode:
Diffstat (limited to 'volk')
-rwxr-xr-xvolk/bootstrap6
-rw-r--r--volk/gen/volk_register.py14
-rw-r--r--volk/lib/CMakeLists.txt15
3 files changed, 23 insertions, 12 deletions
diff --git a/volk/bootstrap b/volk/bootstrap
index a7fb78ac5..838f03aa2 100755
--- a/volk/bootstrap
+++ b/volk/bootstrap
@@ -20,7 +20,11 @@
# Boston, MA 02110-1301, USA.
rm -fr config.cache autom4te*.cache
-python -B gen/volk_register.py
+#alternative to -B that wont break on python 2.5
+PYTHONDONTWRITEBYTECODE=1
+export PYTHONDONTWRITEBYTECODE
+python gen/volk_register.py
+
mv gen/lib/Makefile.am lib/
aclocal -I config -I gen/config
diff --git a/volk/gen/volk_register.py b/volk/gen/volk_register.py
index f5854bbce..cd874e470 100644
--- a/volk/gen/volk_register.py
+++ b/volk/gen/volk_register.py
@@ -3,6 +3,7 @@
import sys
import os
import re
+import glob
import string
from xml.dom import minidom
from volk_regexp import *
@@ -48,18 +49,13 @@ outfile_environment_h = open(os.path.join(gendir, "lib/volk_environment_init.h")
outfile_makefile_am = open(os.path.join(gendir, "lib/Makefile.am"), "w")
outfile_machines_h = open(os.path.join(gendir, "lib/volk_machines.h"), "w")
outfile_machines_c = open(os.path.join(gendir, "lib/volk_machines.c"), "w")
-infile = open(os.path.join(srcdir, "include/volk/Makefile.am"), "r")
-
-
-mfile = infile.readlines();
+hdr_files = glob.glob(os.path.join(srcdir, "include/volk/*.h"))
datatypes = [];
functions = [];
-
-
-for line in mfile:
- subline = re.search(".*_(a|u)\.h.*", line);
+for line in hdr_files:
+ subline = re.search(".*_(a|u)\.h.*", os.path.basename(line))
if subline:
subsubline = re.search("(?<=volk_).*", subline.group(0));
if subsubline:
@@ -71,7 +67,7 @@ for line in mfile:
datatypes = set(datatypes);
-for line in mfile:
+for line in hdr_files:
for dt in datatypes:
if dt in line:
subline = re.search("(volk_" + dt +"_.*(a|u).*\.h)", line);
diff --git a/volk/lib/CMakeLists.txt b/volk/lib/CMakeLists.txt
index c8b9449a6..645a0dc17 100644
--- a/volk/lib/CMakeLists.txt
+++ b/volk/lib/CMakeLists.txt
@@ -168,10 +168,20 @@ FILE(GLOB xml_files ${CMAKE_SOURCE_DIR}/gen/*.xml)
FILE(GLOB py_files ${CMAKE_SOURCE_DIR}/gen/*.py)
FILE(GLOB h_files ${CMAKE_SOURCE_DIR}/include/volk/*.h)
+#make sure we can use -B with python (introduced in 2.6)
+EXECUTE_PROCESS(
+ COMMAND ${PYTHON_EXECUTABLE} -B -c ""
+ OUTPUT_QUIET ERROR_QUIET
+ RESULT_VARIABLE PYTHON_HAS_DASH_B_RESULT
+)
+IF(PYTHON_HAS_DASH_B_RESULT EQUAL 0)
+ SET(PYTHON_DASH_B "-B")
+ENDIF()
+
ADD_CUSTOM_COMMAND(
OUTPUT ${volk_gen_sources}
DEPENDS ${xml_files} ${py_files} ${h_files}
- COMMAND ${PYTHON_EXECUTABLE} -B
+ COMMAND ${PYTHON_EXECUTABLE} ${PYTHON_DASH_B}
${CMAKE_SOURCE_DIR}/gen/volk_register.py
${CMAKE_BINARY_DIR}
)
@@ -215,7 +225,8 @@ ENDIF()
########################################################################
# Setup the volk sources list and library
########################################################################
-IF(NOT WIN32)
+IF(CMAKE_COMPILER_IS_GNUCXX AND NOT WIN32)
+ #http://gcc.gnu.org/wiki/Visibility
ADD_DEFINITIONS(-fvisibility=hidden)
ENDIF()