Projects
osmocom:master
libosmocore
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 471
View file
libosmocore.spec
Changed
@@ -14,13 +14,13 @@ Name: libosmocore Requires: osmocom-master -Version: 1.12.0.68.b61f +Version: 1.12.0.69.2b29 Release: 0 Summary: The Open Source Mobile Communications Core Library License: GPL-2.0-only AND GPL-2.0-or-later AND LGPL-2.1-or-later AND AGPL-3.0-or-later Group: Productivity/Telephony/Utilities Url: https://osmocom.org/projects/libosmocore/wiki/Libosmocore -Source: libosmocore_1.12.0.68.b61f.tar.xz +Source: libosmocore_1.12.0.69.2b29.tar.xz Source1: rpmlintrc BuildRequires: automake >= 1.6 BuildRequires: libtool >= 2
View file
commit_2b29660d537242a872aeb1578a63c3d07ea4b902.txt
Added
View file
commit_b61fd63af4ed0970663ef19e7da1a8f30379d93e.txt
Deleted
View file
libosmocore_1.12.0.68.b61f.dsc -> libosmocore_1.12.0.69.2b29.dsc
Changed
@@ -2,7 +2,7 @@ Source: libosmocore Binary: libosmocore, libosmocodec4, libosmocodec-doc, libosmocoding0, libosmocoding-doc, libosmocore22, libosmocore-doc, libosmogb14, libosmogb-doc, libosmogsm20, libosmogsm-doc, libosmoisdn0, libosmoisdn-doc, libosmovty13, libosmovty-doc, libosmoctrl0, libosmoctrl-doc, libosmosim2, libosmosim-doc, libosmousb0, libosmousb-doc, libosmocore-dev, libosmocore-utils, libosmocore-dbg Architecture: any all -Version: 1.12.0.68.b61f +Version: 1.12.0.69.2b29 Maintainer: Osmocom team <openbsc@lists.osmocom.org> Homepage: https://projects.osmocom.org/projects/libosmocore Standards-Version: 3.9.8 @@ -35,8 +35,8 @@ libosmovty-doc deb doc optional arch=all libosmovty13 deb libs optional arch=any Checksums-Sha1: - c67aa9eb55789de1c271216087f36610bb764c86 1140764 libosmocore_1.12.0.68.b61f.tar.xz + 36fb7b5f4ccef338df93661570c42354ad7f68d8 1141068 libosmocore_1.12.0.69.2b29.tar.xz Checksums-Sha256: - 8634751248207f49ebf1101f0062e0e65364c9207b68a9b36b67dfa67ab97fe6 1140764 libosmocore_1.12.0.68.b61f.tar.xz + 056eb688b563955c8b94f5afde0e97e60017690f6df1bf16c45274706920af3f 1141068 libosmocore_1.12.0.69.2b29.tar.xz Files: - efa1bce546c1beea1b81021295c92675 1140764 libosmocore_1.12.0.68.b61f.tar.xz + cff2c06116219ec6f11970f369e8fda8 1141068 libosmocore_1.12.0.69.2b29.tar.xz
View file
libosmocore_1.12.0.68.b61f.tar.xz/.tarball-version -> libosmocore_1.12.0.69.2b29.tar.xz/.tarball-version
Changed
@@ -1 +1 @@ -1.12.0.68-b61f +1.12.0.69-2b29
View file
libosmocore_1.12.0.68.b61f.tar.xz/configure.ac -> libosmocore_1.12.0.69.2b29.tar.xz/configure.ac
Changed
@@ -25,6 +25,18 @@ AC_PROG_INSTALL LT_INIT(pic-only disable-static) +dnl Detect emscripten compiler +case "$CC" in +*emcc*) + emscripten=yes + ;; +*) + emscripten=no + ;; +esac +AM_CONDITIONAL(HAVE_EMSCRIPTEN, test "x$emscripten" = "xyes") +AC_SUBST(HAVE_EMSCRIPTEN, $emscripten) + AC_CONFIG_MACRO_DIR(m4) dnl patching ${archive_cmds} to affect generation of file "libtool" to fix linking with clang @@ -268,6 +280,18 @@ ENABLE_GNUTLS_DEFAULT="no" fi +if test "x$emscripten" = "xyes" +then + ENABLE_SERIAL_DEFAULT="no" + ENABLE_GNUTLS_DEFAULT="no" + ENABLE_GB_DEFAULT="no" + ENABLE_LIBMNL_DEFAULT="no" + ENABLE_LIBSCTP_DEFAULT="no" + ENABLE_LIBUSB_DEFAULT="no" + ENABLE_PCSC_DEFAULT="no" + ENABLE_URING_DEFAULT="no" +fi + AC_ARG_ENABLE(uring, AS_HELP_STRING(--disable-uring, Build without io_uring support), ENABLE_URING=$enableval, ENABLE_URING=$ENABLE_URING_DEFAULT) AS_IF(test "x$ENABLE_URING" = "xyes",
View file
libosmocore_1.12.0.68.b61f.tar.xz/debian/changelog -> libosmocore_1.12.0.69.2b29.tar.xz/debian/changelog
Changed
@@ -1,8 +1,8 @@ -libosmocore (1.12.0.68.b61f) unstable; urgency=medium +libosmocore (1.12.0.69.2b29) unstable; urgency=medium * Automatically generated changelog entry for building the Osmocom master feed - -- Osmocom OBS scripts <info@osmocom.org> Mon, 02 Feb 2026 16:06:04 +0000 + -- Osmocom OBS scripts <info@osmocom.org> Wed, 04 Feb 2026 14:18:14 +0000 libosmocore (1.12.0) unstable; urgency=medium
View file
libosmocore_1.12.0.68.b61f.tar.xz/include/osmocom/core/logging.h -> libosmocore_1.12.0.69.2b29.tar.xz/include/osmocom/core/logging.h
Changed
@@ -282,6 +282,7 @@ LOG_TGT_TYPE_STRRB, /*!< osmo_strrb-backed logging */ LOG_TGT_TYPE_GSMTAP, /*!< GSMTAP network logging */ LOG_TGT_TYPE_SYSTEMD, /*!< systemd journal logging */ + LOG_TGT_TYPE_EMSCRIPTEN, /*!< Emscripten logging using JS callback */ }; /*! Whether/how to log the source filename (and line number). */ @@ -451,6 +452,7 @@ bool ofd_wq_mode, bool add_sink); struct log_target *log_target_create_systemd(bool raw); +struct log_target *log_target_create_emscripten(void); void log_target_systemd_set_raw(struct log_target *target, bool raw); int log_target_file_reopen(struct log_target *tgt); int log_target_file_switch_to_stream(struct log_target *tgt);
View file
libosmocore_1.12.0.68.b61f.tar.xz/src/core/Makefile.am -> libosmocore_1.12.0.69.2b29.tar.xz/src/core/Makefile.am
Changed
@@ -82,6 +82,10 @@ probes.d \ $(NULL) +if HAVE_EMSCRIPTEN +libosmocore_la_SOURCES += logging_emscripten.c +endif + if HAVE_SSSE3 libosmocore_la_SOURCES += conv_acc_sse.c if HAVE_SSE4_1
View file
libosmocore_1.12.0.68.b61f.tar.xz/src/core/libosmocore.map -> libosmocore_1.12.0.69.2b29.tar.xz/src/core/libosmocore.map
Changed
@@ -101,6 +101,7 @@ log_target_create_stderr; log_target_create_syslog; log_target_create_systemd; +log_target_create_emscripten; log_target_destroy; log_target_file_reopen; log_target_file_switch_to_stream;
View file
libosmocore_1.12.0.69.2b29.tar.xz/src/core/logging_emscripten.c
Added
@@ -0,0 +1,79 @@ +/*! \file logging_emscripten.c + * Logging support code using a JS callback. This module sends log + * messages to a JavaScript callback named `on_log` + * with interface on_log(const char *subsys, int level, const char *msg). + * */ +/* + * (C) 2026 by Timur Davydov <dtv.comp@gmail.com> + * All Rights Reserved + * + * SPDX-License-Identifier: GPL-2.0+ + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ + +/*! \addtogroup logging + * @{ + * \file logging_emscripten.c */ + +#include <stdarg.h> +#include <stdio.h> +#include <osmocom/core/utils.h> +#include <osmocom/core/logging.h> +#include <osmocom/core/logging_internal.h> + +#include <emscripten.h> + +EM_JS(void, on_log_wrapper, (const char *subsys, int level, const char *msg), { + return on_log(subsys, level, msg); +}); + +static void _emscripten_raw_output(struct log_target *target, int subsys, + unsigned int level, const char *file, + int line, int cont, const char *format, + va_list ap) +{ + char msgMAX_LOG_SIZE; + const char *subsys_name = log_category_name(subsys); + int rc; + + rc = vsnprintf(msg, sizeof(msg), format, ap); + if (rc <= 0) + return; + if (rc >= sizeof(msg)) + rc = sizeof(msg) - 1; + + /* Drop newline at the end if exists: */ + if (msgrc - 1 == '\n') + msgrc - 1 = '\0'; + + on_log_wrapper(subsys_name ? subsys_name : "", level, msg); +} + +/*! Create a new logging target for JS callback logging (uses `on_log`) + * \returns Log target in case of success, NULL in case of error + */ +struct log_target *log_target_create_emscripten(void) +{ + struct log_target *target; + + target = log_target_create(); + if (!target) + return NULL; + + target->type = LOG_TGT_TYPE_EMSCRIPTEN; + target->raw_output = _emscripten_raw_output; + + return target; +} + +/* @} */
View file
libosmocore_1.12.0.68.b61f.tar.xz/src/vty/logging_vty.c -> libosmocore_1.12.0.69.2b29.tar.xz/src/vty/logging_vty.c
Changed
@@ -1032,6 +1032,46 @@ RET_WITH_UNLOCK(CMD_SUCCESS); } +#if defined(__EMSCRIPTEN__) +DEFUN(cfg_log_emscripten, cfg_log_emscripten_cmd, + "log emscripten", + LOG_STR "Logging via EMSCRIPTEN\n") +{ + struct log_target *tgt; + + log_tgt_mutex_lock(); + tgt = log_target_create_emscripten(); + if (!tgt) { + vty_out(vty, "%% Unable to create EMSCRIPTEN log target%s", VTY_NEWLINE); + RET_WITH_UNLOCK(CMD_WARNING); + } + log_add_target(tgt); + + vty->index = tgt; + vty->node = CFG_LOG_NODE; + + RET_WITH_UNLOCK(CMD_SUCCESS); +} + +DEFUN(cfg_no_log_emscripten, cfg_no_log_emscripten_cmd, + "no log emscripten", + NO_STR LOG_STR "Logging via EMSCRIPTEN\n") +{ + struct log_target *tgt; + + log_tgt_mutex_lock(); + tgt = log_target_find(LOG_TGT_TYPE_EMSCRIPTEN, NULL); + if (tgt == NULL) { + vty_out(vty, "%% Unable to find EMSCRIPTEN log target%s", VTY_NEWLINE); + RET_WITH_UNLOCK(CMD_WARNING); + } + + log_target_destroy(tgt); + + RET_WITH_UNLOCK(CMD_SUCCESS); +} +#endif /* defined(__EMSCRIPTEN__) */ + static int config_write_log_single(struct vty *vty, struct log_target *tgt) { char level_buf128; @@ -1084,6 +1124,9 @@ tgt->sd_journal.raw ? " raw" : "", VTY_NEWLINE); break; + case LOG_TGT_TYPE_EMSCRIPTEN: + vty_out(vty, "log emscripten%s", VTY_NEWLINE); + break; } vty_out(vty, " logging filter all %u%s", @@ -1311,4 +1354,8 @@ install_lib_element(CONFIG_NODE, &cfg_no_log_systemd_journal_cmd); install_lib_element(CONFIG_NODE, &cfg_log_gsmtap_cmd); install_lib_element(CONFIG_NODE, &cfg_no_log_gsmtap_cmd); +#if defined(__EMSCRIPTEN__) + install_lib_element(CONFIG_NODE, &cfg_log_emscripten_cmd); + install_lib_element(CONFIG_NODE, &cfg_no_log_emscripten_cmd); +#endif /* defined(__EMSCRIPTEN__) */ }
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.