Merged r4456:4483 from jcorgan/ticket-138 into trunk. Fixes ticket:138.
[debian/gnuradio] / Makefile.common
index e7d928682c435d4b9ec5ea821ce906da367176c3..11bc65abce009558160f67a1fde33f04c0cbe7ed 100644 (file)
@@ -50,16 +50,22 @@ GNURADIO_INCLUDES = -I$(top_srcdir)/gnuradio-core/src/lib/runtime \
                    -I$(top_srcdir)/gnuradio-core/src/lib/reed-solomon \
                    -I$(top_srcdir)/gnuradio-core/src/lib/io \
                    -I$(top_srcdir)/gnuradio-core/src/lib/g72x \
-                   -I$(top_srcdir)/gnuradio-core/src/lib/omnithread \
                    -I$(top_srcdir)/gnuradio-core/src/lib/swig \
                    -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.
-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
@@ -69,15 +75,14 @@ GNURADIO_I = $(top_srcdir)/gnuradio-core/src/lib/swig/gnuradio.i
 USRP_INCLUDES = -I$(top_srcdir)/usrp/host/lib \
                -I$(top_srcdir)/usrp/firmware/include
 
-USRP_LIBS = -L$(top_builddir)/usrp/host/lib \
-           -lusrp
+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
 
 # 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) $(GNURADIO_INCLUDES) $(BOOST_CFLAGS)
+STD_DEFINES_AND_INCLUDES=$(DEFINES) $(OMNITHREAD_INCLUDES) $(GNURADIO_INCLUDES) $(BOOST_CFLAGS)
 
 # Fix for BSD make not defining $(RM).  We define it now in configure.ac
 # using AM_PATH_PROG, but now here have to add a -f to be like GNU make