smpl_buf: Move it to device/common and create libdevice_common.la
Since in next commit osmo-trx-lms starts using smpl_buf.cpp, it seems
some automake step doesn't like including a cpp file twice from a
different directory, since race conditions can occur building it.
Instead we define the dependency by first building a static lib and then
using it on each libdevice.la (one per device type).
We already do the similar under arch/ subdir, where we have a common/
subdir and then one subdir and lib per architecture.
Change-Id: I465ad0f6d5569bb3006d711c8fd0df14391fcf35
diff --git a/Transceiver52M/device/Makefile.am b/Transceiver52M/device/Makefile.am
index e653a9e..369e877 100644
--- a/Transceiver52M/device/Makefile.am
+++ b/Transceiver52M/device/Makefile.am
@@ -1,8 +1,6 @@
include $(top_srcdir)/Makefile.common
-noinst_HEADERS = radioDevice.h smpl_buf.h
-
-SUBDIRS =
+SUBDIRS = common
if DEVICE_USRP1
SUBDIRS += usrp1
diff --git a/Transceiver52M/device/common/Makefile.am b/Transceiver52M/device/common/Makefile.am
new file mode 100644
index 0000000..e14cc38
--- /dev/null
+++ b/Transceiver52M/device/common/Makefile.am
@@ -0,0 +1,12 @@
+include $(top_srcdir)/Makefile.common
+
+AM_CPPFLAGS = -Wall $(STD_DEFINES_AND_INCLUDES)
+AM_CXXFLAGS = -lpthread $(LIBOSMOCORE_CFLAGS) $(LIBOSMOCTRL_CFLAGS) $(LIBOSMOVTY_CFLAGS) $(LMS_CFLAGS)
+
+
+noinst_HEADERS = radioDevice.h smpl_buf.h
+
+noinst_LTLIBRARIES = libdevice_common.la
+
+libdevice_common_la_SOURCES = \
+ smpl_buf.cpp
diff --git a/Transceiver52M/device/radioDevice.h b/Transceiver52M/device/common/radioDevice.h
similarity index 100%
rename from Transceiver52M/device/radioDevice.h
rename to Transceiver52M/device/common/radioDevice.h
diff --git a/Transceiver52M/device/smpl_buf.cpp b/Transceiver52M/device/common/smpl_buf.cpp
similarity index 100%
rename from Transceiver52M/device/smpl_buf.cpp
rename to Transceiver52M/device/common/smpl_buf.cpp
diff --git a/Transceiver52M/device/smpl_buf.h b/Transceiver52M/device/common/smpl_buf.h
similarity index 100%
rename from Transceiver52M/device/smpl_buf.h
rename to Transceiver52M/device/common/smpl_buf.h
diff --git a/Transceiver52M/device/lms/Makefile.am b/Transceiver52M/device/lms/Makefile.am
index 8471074..682cf26 100644
--- a/Transceiver52M/device/lms/Makefile.am
+++ b/Transceiver52M/device/lms/Makefile.am
@@ -1,6 +1,6 @@
include $(top_srcdir)/Makefile.common
-AM_CPPFLAGS = -Wall $(STD_DEFINES_AND_INCLUDES) -I${srcdir}/..
+AM_CPPFLAGS = -Wall $(STD_DEFINES_AND_INCLUDES) -I${srcdir}/../common
AM_CXXFLAGS = -lpthread $(LIBOSMOCORE_CFLAGS) $(LIBOSMOCTRL_CFLAGS) $(LIBOSMOVTY_CFLAGS) $(LMS_CFLAGS)
noinst_HEADERS = LMSDevice.h
diff --git a/Transceiver52M/device/uhd/Makefile.am b/Transceiver52M/device/uhd/Makefile.am
index 11b380e..ab63a4a 100644
--- a/Transceiver52M/device/uhd/Makefile.am
+++ b/Transceiver52M/device/uhd/Makefile.am
@@ -1,10 +1,11 @@
include $(top_srcdir)/Makefile.common
-AM_CPPFLAGS = -Wall $(STD_DEFINES_AND_INCLUDES) -I${srcdir}/..
+AM_CPPFLAGS = -Wall $(STD_DEFINES_AND_INCLUDES) -I${srcdir}/../common
AM_CXXFLAGS = -lpthread $(LIBOSMOCORE_CFLAGS) $(LIBOSMOCTRL_CFLAGS) $(LIBOSMOVTY_CFLAGS) $(UHD_CFLAGS)
noinst_HEADERS = UHDDevice.h
noinst_LTLIBRARIES = libdevice.la
-libdevice_la_SOURCES = UHDDevice.cpp ../smpl_buf.cpp
+libdevice_la_SOURCES = UHDDevice.cpp
+libdevice_la_LIBADD = $(top_builddir)/Transceiver52M/device/common/libdevice_common.la
diff --git a/Transceiver52M/device/usrp1/Makefile.am b/Transceiver52M/device/usrp1/Makefile.am
index d99874a..5078934 100644
--- a/Transceiver52M/device/usrp1/Makefile.am
+++ b/Transceiver52M/device/usrp1/Makefile.am
@@ -1,6 +1,6 @@
include $(top_srcdir)/Makefile.common
-AM_CPPFLAGS = -Wall $(STD_DEFINES_AND_INCLUDES) -I${srcdir}/..
+AM_CPPFLAGS = -Wall $(STD_DEFINES_AND_INCLUDES) -I${srcdir}/../common
AM_CXXFLAGS = -lpthread $(LIBOSMOCORE_CFLAGS) $(LIBOSMOCTRL_CFLAGS) $(LIBOSMOVTY_CFLAGS) $(USRP_CFLAGS)
noinst_HEADERS = USRPDevice.h