libosmo-sccp: Build breakage on --disable-static

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/OpenBSC@lists.osmocom.org/.

Harald Welte laforge at gnumonks.org
Sat Jun 3 08:40:22 UTC 2017


Hi Holger,

On Sat, Jun 03, 2017 at 12:17:08AM +0800, Holger Freyther wrote:
> The first failure is because of:
> 
> 	libosmo_sigtran_la_LDFLAGS = -version-info $(LIBVERSION) \
> 					-no-undefined \
> 					-export-symbols-regex '^osmo_'
> 
> The testcases use xua_* sua_ symbols but they are not exported. Shall
> we export them or shall we forbid --disable-static on libosmo-sccp?

I actually really liked the idea as an elegant way to have test cases
access more "private" / "low-end" functions inside the implementation,
while ensuring only proper APIs are exposed to actual applications
(which use dynamic libs).  I would actually like to use that in all the
other libraries / code we have.

So yes, the idea can still be bad, but what other option do we have in
terms of having more symbols available to test caeses than those used in
production?  Manually linking the individual .o files is ugly, as the
list keeps growing for each and every unit test as the library code
evolves.  What about having a separate static library only used for the
unit tests, and building that even while --disable-static is used?  In
that case one could even play games like
	#define	STATIC	static
in production builds, and define it to nothing in the build for unit
tests, if needed.

> The second part is that I had preferred the sccp library to be static
> only to avoid having to do proper ABI checking/versioning. If we fix
> the above, maybe we have to fix this part too?

I'm not sure why it should be different from all the other libosmo*
libraries in that regard?

-- 
- Harald Welte <laforge at gnumonks.org>           http://laforge.gnumonks.org/
============================================================================
"Privacy in residential applications is a desirable marketing option."
                                                  (ETSI EN 300 175-7 Ch. A6)



More information about the OpenBSC mailing list