summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile.common19
-rw-r--r--gnuradio-core/src/lib/swig/Makefile.am5
-rw-r--r--omnithread/Makefile.am2
-rw-r--r--run_tests.sh.in9
4 files changed, 24 insertions, 11 deletions
diff --git a/Makefile.common b/Makefile.common
index 56d7f5caa..11bc65abc 100644
--- a/Makefile.common
+++ b/Makefile.common
@@ -54,12 +54,18 @@ GNURADIO_INCLUDES = -I$(top_srcdir)/gnuradio-core/src/lib/runtime \
-I$(top_builddir)/gnuradio-core/src/lib/swig \
$(FFTW3F_CFLAGS)
+# How to link in the top-level omnithreads library
+OMNITHREAD_INCLUDES = -I$(top_srcdir)/omnithread
+OMNITHREAD_LIBS = -L$(top_builddir)/omnithread -lgromnithread
-# These used to be set in PKGCONFIG but now point to the current
-# build tree.
-# FIXME shouldn't -lfftw3f -lm just be extracted from libgnuradio-core.la ???
-GNURADIO_CORE_LIBS = -L$(top_builddir)/gnuradio-core/src/lib \
- -lgnuradio-core -lfftw3f -lm
+# How to link in GNU Radio core library
+# Note: Win32 libtool cannot extract DLL dependencies already stored in
+# libgnuradio-core, so the core's dependencies must be repeated here
+# This is redundant but harmless on non-Win32 platforms
+GNURADIO_CORE_LIBS = $(OMNITHREAD_LIBS) \
+ $(FFTW3F_LIBS) \
+ -L$(top_builddir)/gnuradio-core/src/lib \
+ -lgnuradio-core
# This is a dependency for many swig operations
GNURADIO_I = $(top_srcdir)/gnuradio-core/src/lib/swig/gnuradio.i
@@ -74,9 +80,6 @@ USRP_LIBS = -L$(top_builddir)/usrp/host/lib -lusrp
PMT_INCLUDES = -I$(top_srcdir)/pmt/src/lib
PMT_LIBS = -L$(top_builddir)/pmt/src/lib -lpmt
-OMNITHREAD_INCLUDES = -I$(top_srcdir)/omnithread
-OMNITHREAD_LIBS = -L$(top_builddir)/omnithread -lgromnithread
-
# This used to be set in configure.ac but is now defined here for all
# Makefiles when this fragment is included.
STD_DEFINES_AND_INCLUDES=$(DEFINES) $(OMNITHREAD_INCLUDES) $(GNURADIO_INCLUDES) $(BOOST_CFLAGS)
diff --git a/gnuradio-core/src/lib/swig/Makefile.am b/gnuradio-core/src/lib/swig/Makefile.am
index ed1419028..f0d161514 100644
--- a/gnuradio-core/src/lib/swig/Makefile.am
+++ b/gnuradio-core/src/lib/swig/Makefile.am
@@ -118,6 +118,7 @@ _gnuradio_swig_py_runtime_la_SOURCES = \
_gnuradio_swig_py_runtime_la_LIBADD = \
+ $(GNURADIO_CORE_LIBS) \
$(top_builddir)/gnuradio-core/src/lib/libgnuradio-core.la \
$(PYTHON_LDFLAGS) \
-lstdc++
@@ -149,6 +150,7 @@ _gnuradio_swig_py_general_la_SOURCES = \
_gnuradio_swig_py_general_la_LIBADD = \
+ $(GNURADIO_CORE_LIBS) \
$(top_builddir)/gnuradio-core/src/lib/libgnuradio-core.la \
$(PYTHON_LDFLAGS) \
-lstdc++
@@ -180,6 +182,7 @@ _gnuradio_swig_py_gengen_la_SOURCES = \
_gnuradio_swig_py_gengen_la_LIBADD = \
+ $(GNURADIO_CORE_LIBS) \
$(top_builddir)/gnuradio-core/src/lib/libgnuradio-core.la \
$(PYTHON_LDFLAGS) \
-lstdc++
@@ -211,6 +214,7 @@ _gnuradio_swig_py_filter_la_SOURCES = \
_gnuradio_swig_py_filter_la_LIBADD = \
+ $(GNURADIO_CORE_LIBS) \
$(top_builddir)/gnuradio-core/src/lib/libgnuradio-core.la \
$(PYTHON_LDFLAGS) \
-lstdc++
@@ -242,6 +246,7 @@ _gnuradio_swig_py_io_la_SOURCES = \
_gnuradio_swig_py_io_la_LIBADD = \
+ $(GNURADIO_CORE_LIBS) \
$(top_builddir)/gnuradio-core/src/lib/libgnuradio-core.la \
$(PYTHON_LDFLAGS) \
-lstdc++
diff --git a/omnithread/Makefile.am b/omnithread/Makefile.am
index 2eac4c920..edf9c3c24 100644
--- a/omnithread/Makefile.am
+++ b/omnithread/Makefile.am
@@ -44,6 +44,8 @@ libgromnithread_la_SOURCES = \
nt.cc
endif
+libgromnithread_la_LDFLAGS = $(NO_UNDEFINED) -avoid-version
+
libgromnithread_la_LIBADD = \
$(PTHREAD_LIBS)
diff --git a/run_tests.sh.in b/run_tests.sh.in
index faec6d166..8a7681c32 100644
--- a/run_tests.sh.in
+++ b/run_tests.sh.in
@@ -23,9 +23,12 @@ grswigsrcdir=@abs_top_srcdir@/gnuradio-core/src/lib/swig
# Where to find core's python modules
grpydir=@abs_top_srcdir@/gnuradio-core/src/python
-# Where to find core's master library files
-grlibdir=@abs_top_builddir@/gnuradio-core/src/lib
-grlibdir=$grlibdir:$grlibdir/.libs
+# Where to find core's master library files and dependencies
+gromnidir=@abs_top_builddir@/omnithread
+gromnidir=$gromnidir:$gromnidir/.libs
+grcoredir=@abs_top_builddir@/gnuradio-core/src/lib
+grcoredir=$grcoredir:$grcoredir/.libs
+grlibdir=$gromnidir:$grcoredir
# Construct search path for python modules
PYTHONPATH="$mylibdir:$mysrcdir:$mypydir:$grswigdir:$grswigsrcdir:$grpydir:$PYTHONPATH"