{gb,sim,usb}: ensure -no-undefined is present in *_la_LDFLAGS

Make sure that there is no undefined references in shared libraries.

Inspired by GitHub PR#6 [1] by Michael Dickens.  Tweaked by me.

Change-Id: I7ddd6c75935b0f25d78a948f1577656d77a204e3
Related: [1] https://github.com/osmocom/libosmocore/pull/6
diff --git a/src/gb/Makefile.am b/src/gb/Makefile.am
index 022578f..b0fcaa9 100644
--- a/src/gb/Makefile.am
+++ b/src/gb/Makefile.am
@@ -15,7 +15,11 @@
 if ENABLE_GB
 lib_LTLIBRARIES = libosmogb.la
 
-libosmogb_la_LDFLAGS = $(LTLDFLAGS_OSMOGB) -version-info $(LIBVERSION)
+libosmogb_la_LDFLAGS = \
+		$(LTLDFLAGS_OSMOGB) \
+		-version-info $(LIBVERSION) \
+		-no-undefined \
+		$(NULL)
 libosmogb_la_LIBADD = $(TALLOC_LIBS) \
 		$(top_builddir)/src/libosmocore.la \
 		$(top_builddir)/src/vty/libosmovty.la \
diff --git a/src/sim/Makefile.am b/src/sim/Makefile.am
index a73ce4b..3d30506 100644
--- a/src/sim/Makefile.am
+++ b/src/sim/Makefile.am
@@ -15,7 +15,10 @@
 libosmosim_la_SOURCES = core.c reader.c class_tables.c \
 			card_fs_sim.c card_fs_usim.c card_fs_uicc.c \
 			card_fs_isim.c card_fs_hpsim.c card_fs_tetra.c
-libosmosim_la_LDFLAGS = -version-info $(LIBVERSION)
+libosmosim_la_LDFLAGS = \
+	-version-info $(LIBVERSION) \
+	-no-undefined \
+	$(NULL)
 libosmosim_la_LIBADD = \
 	$(top_builddir)/src/libosmocore.la \
 	$(top_builddir)/src/gsm/libosmogsm.la \
diff --git a/src/usb/Makefile.am b/src/usb/Makefile.am
index 50d45c2..a1426f9 100644
--- a/src/usb/Makefile.am
+++ b/src/usb/Makefile.am
@@ -12,7 +12,10 @@
 lib_LTLIBRARIES = libosmousb.la
 
 libosmousb_la_SOURCES = osmo_libusb.c
-libosmousb_la_LDFLAGS = -version-info $(LIBVERSION)
+libosmousb_la_LDFLAGS = \
+	-version-info $(LIBVERSION) \
+	-no-undefined \
+	$(NULL)
 libosmousb_la_LIBADD = \
 	$(top_builddir)/src/libosmocore.la \
 	$(TALLOC_LIBS) \