blob: e8ea327fd38eb28ebbf1abf9c7e3fab6ba5b1b72 [file] [log] [blame]
Holger Hans Peter Freyther60ee4cd2011-11-11 21:26:06 +08001require ${PN}.inc
2
3S = "${WORKDIR}/git"
Pau Espin Pedrol71d48652022-06-29 13:26:27 +02004SRCREV = "1.7.0"
Oliver Smithddfa2fc2022-09-16 15:25:26 +02005SRC_URI = "git://gerrit.osmocom.org/libosmocore.git;protocol=https;tag=${SRCREV};nobranch=1"
Pau Espin Pedrol71d48652022-06-29 13:26:27 +02006PV = "1.7.0+gitr${SRCPV}"
Pau Espin Pedrol2e722232021-11-17 12:57:13 +01007PR = "${INC_PR}.0"
Holger Hans Peter Freytherd9a5b192014-08-25 08:19:02 +02008
Daniel Willmann89b0dcb2019-08-15 15:28:13 +02009PACKAGES =+ "libosmoctrl libosmocodec libosmogb libosmogsm libosmovty osmo-arfcn osmo-auc-gen osmo-config-merge"
Holger Hans Peter Freytherd9a5b192014-08-25 08:19:02 +020010FILES_libosmoctrl = "${libdir}/libosmoctrl${SOLIBS}"
Holger Hans Peter Freyther0f016bb2016-02-27 09:27:29 +010011FILES_libosmocodec = "${libdir}/libosmocodec${SOLIBS}"
12FILES_libosmogb = "${libdir}/libosmogb${SOLIBS}"
13FILES_libosmogsm = "${libdir}/libosmogsm${SOLIBS}"
14FILES_libosmovty = "${libdir}/libosmovty${SOLIBS}"
15FILES_osmo-arfcn = "${bindir}/osmo-arfcn"
16FILES_osmo-auc-gen = "${bindir}/osmo-auc-gen"
Daniel Willmann89b0dcb2019-08-15 15:28:13 +020017FILES_osmo-config-merge = "${bindir}/osmo-config-merge"
Holger Hans Peter Freyther0f016bb2016-02-27 09:27:29 +010018
19# Requires fix for upgrades
20RREPLACES_libosmocore = "DONOTREPLACElibosmocore"
21RREPLACES_libosmoctrl = "DONOTREPLACElibosmocore"
22RREPLACES_libosmocodec = "DONOTREPLACElibosmocore"
23RREPLACES_libosmogb = "DONOTREPLACElibosmocore"
24RREPLACES_libosmogsm = "DONOTREPLACElibosmocore"
25RREPLACES_libosmovty = "DONOTREPLACElibosmocore"
Holger Hans Peter Freyther70922d82014-12-30 12:20:41 +010026
27EXTRA_OECONF += "--disable-pcsc"
Pau Espin Pedrol6b07fdc2019-08-06 13:52:15 +020028
29# OS#4062: Some gcc version (< 7.3.0) on ARM generate wrong code for __thread
30# variables that crash at runtime. It seems, due to some unknown reason, that we
31# are not affected by this bug with toolchain from poky pyro (6.4.0). However,
32# libosmocore as of e188b8cd98f599468fbb200c7d590de955daf761 applies some
33# CFLAGS="-mtls-dialect=gnu2" to workaround the issue automatically. But same
34# toolchain contains an "ld" that crashes when those flags are applied.
35# Fortunately, libosmocore provides a way to disable the workaround, and since
36# we are not affected by the bug, we are fine with that. If the toolchain had
37# the TLS runtime bug, then we'd had to build with -O0. Can be probably dropped
38# once we move to newer toolchain.
Pau Espin Pedrolddb02112021-04-21 14:46:46 +020039#EXTRA_OECONF += "--disable-detect-tls-gcc-arm-bug"
40# UPDATE: OS#5079: we stop using "--disable-detect-tls-gcc-arm-bug" because we
41# finally hit the TLS bug in sysmobts (osmo-bts-symo calling osmo_str_tolower()
42# which uses "static __thread char capsbuf"). As a result, the only option would
43# be to use -O0 when building libosmocore with the sysmobts toolchain. In order
44# to avoid that, we take advantage of the fact that no libosmocore multi-thread
45# process is expected to run there and simply drop all the "__thread"
46# references when building for sysmobts. That's done as a machine-specific
47# bbappend in meta-sysmocom-bsp.