Before 9197c1ac, the AC_ARG_ENABLE(log_macros, ...) action was hardcoded to [log_macros="yes"], so *any* use of the flag --enable-log-macros or --disable-log-macros would set log_macros="yes" -> AC_DEFINE([LIBOSMOCORE_NO_LOGGING]).
The commit changed this to the standard [log_macros=$enableval], but broke the conditional test, so - AC_ARG_ENABLE sets $enableval to "no" for --disable-* flags -> log_macros is now "no" -> test fails -> LIBOSMOCORE_NO_LOGGING is never defined...
logging: Support nonblocking-io for log target stderr & file, make it default
The nonblocking-io used to be the mode used until recently, where wq only was used if the write buffer was full. This is more performant that always waiting for poll() to write, plus the fact that we write to system synchronously, hence seeing output immediatelly or not losing it if program crashes. Furthermore, It turns out using wq in multithreaded programs may cause problems, so better switch back to using nonblocking-io by default.
This way new threads (!=main) don't need to explicitly call osmo_iofd_init() explicitly before using osmo_io. This is specially useful for threads using osmo_io indirectly, eg, when logging.
The osmo_iofd_setup() API is really the only main API which requires initialization. All other APIs requiring it come after osmo_iofd_setup() since they use an osmo_iofd pointer.
gsm0808: fix wrong codec defaults for OFR_AMR_WB 3GPP TS 48.008 chapter 3.2.2.103 states that the configuration bits of OFR_AMR_WB are coded as follows: "S0, S2, S4 indicates the supported Codec Configurations. S1, S3, S5, S6, S7 are reserved and coded with zeroes." The current default setting of 0x3F violates this requirement. Lets set the "forbidden" settings zu zero and keep only the allowed ones. Change-Id: I4a481def59e9c98cfdcafc2b80c0ac7df0c14130
gsm0808: add function to convert amr gsm0408 setings to gsm0808 Add a function to convert struct gsm48_multi_rate_conf, which holds the codec settings for AMR, to S0-S15 bit representation as defined in 3GPP TS 48.008 3.2.2.49 Change-Id: I4e656731b16621736c7a2f4e64d9ce63b1064e98 Related: OS#3548