Commit Graph

9 Commits

Author SHA1 Message Date
Pau Espin 4eb89afa80 configure --enable-libmnl: Add libmnl to libosmocore.pc.in Requires
Change-Id: I8ad8418ada95e79bb6079f34c6b57817c6f6ab11
2023-01-25 17:12:07 +01:00
Pau Espin c80a004f0b configure: Support libsctp < 1.0.17 without libsctp.pc
libsctp 1.0.17 is the first to contain a pkgconfig file in upstream.
Current OpenSure Leap 15.3 as well as our OpenEmbedded meta-telephony
layer still ship 1.0.16 which contain no pkgconfig file.

Let's attempt first finding the .pc file, and otherwise manually link
against the lib.

Related: https://bugzilla.opensuse.org/show_bug.cgi?id=1197590
Related: https://build.opensuse.org/request/show/965348
Fixes: 12eed19066
Change-Id: I241634388c2d32adffebd860c88bdd13002a6af0
2022-03-29 11:59:51 +02:00
Pau Espin 39f47983e1 libosmocore.pc.in: put libsctp in Requires.private
The libsctp use in libosmocore is internal, not exposed to applications.
Hence, it must not be in "Requires" but in "Requires.private".

Fixes: 12eed19066
Change-Id: Ic3e4e191990e6b76ec52b81e506b49980e20ce20
2022-03-29 11:23:42 +02:00
Harald Welte 12eed19066 clean-up pkg-config files: Make use of "Requires" as documented
According to the pkg-config manual, "Libs" should not contain flags
for _required_ packages.  Instead, they should be expressed via
"Requires".  Let's do that

Change-Id: I2ab1fe8e4bbfc120b471d6c9f2312a89dbc7d42b
2022-03-24 14:57:22 +00:00
Pau Espin 80c8a1d281 libosmocore.pc.in: Append -lsctp to Libs.private
It will be used by the linker when linking statically against
libosmocore.

Change-Id: I797b970b22053432b243e4ef9f6b0458727fc608
2019-10-22 16:09:05 +02:00
Pau Espin d12f698dbb logging: Introduce mutex API to manage log_target in multi-thread envs
log_enable_multithread() enables use of locks inside the
implementation. Lock use is disabled by default, this way only
multi-thread processes need to enable it and suffer related
complexity/performance penalties.

Locks are required around osmo_log_target_list and items inside it,
since targets can be used, modified and deleted by different threads
concurrently (for instance, user writing "logging disable" in VTY while
another thread is willing to write into that target).

Multithread apps and libraries aiming at being used in multithread apps
should update their code to use the locks introduced here when
containing code iterating over osmo_log_target_list explictly or
implicitly by obtaining a log_target (eg. osmo_log_vty2tgt()).

Related: OS#4088
Change-Id: Id7711893b34263baacac6caf4d489467053131bb
2019-10-09 14:19:52 +02:00
Holger Hans Peter Freyther f4b173cb0c talloc: Untested change to unbreak build
In case talloc is not installed in the default search path we need
to place @TALLOC_CFLAGS@ into the include directory as well.
2015-12-10 19:50:29 +01:00
Harald Welte a10ef29b47 use system-wide libtalloc with --enable-system-talloc
This introduces a new configure flag by which the libosmocore-internal
talloc code is not compiled, but rather a system-wide libtalloc is used.

When we started openbsc/libosmocore in 2008, libtalloc was not widely
present on systems yet.  This has changed meanwhile, and we should
simply use the system-wide library
2015-11-21 00:50:19 +01:00
Harald Welte 3cae0398ea add missing automake / autoconf files 2010-02-20 21:09:24 +01:00