Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package bcg729 for openSUSE:Factory checked in at 2026-07-17 18:47:13 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/bcg729 (Old) and /work/SRC/openSUSE:Factory/.bcg729.new.24530 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "bcg729" Fri Jul 17 18:47:13 2026 rev:7 rq:1366101 version:1.1.2 Changes: -------- --- /work/SRC/openSUSE:Factory/bcg729/bcg729.changes 2024-02-23 16:41:32.771108634 +0100 +++ /work/SRC/openSUSE:Factory/.bcg729.new.24530/bcg729.changes 2026-07-17 18:47:32.749338500 +0200 @@ -1,0 +2,9 @@ +Thu Jul 16 05:56:26 UTC 2026 - Martin Pluskal <[email protected]> + +- Update to 1.1.2: + * Fix possible division by zero in LP2LSP conversion + * Improve cmake scripts +- Drop bcg729-fix-pkgconfig.patch: upstream now installs + libbcg729.pc itself + +------------------------------------------------------------------- Old: ---- bcg729-1.1.1.tar.gz bcg729-fix-pkgconfig.patch New: ---- bcg729-1.1.2.tar.gz ----------(Old B)---------- Old: * Improve cmake scripts - Drop bcg729-fix-pkgconfig.patch: upstream now installs libbcg729.pc itself ----------(Old E)---------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ bcg729.spec ++++++ --- /var/tmp/diff_new_pack.PXrGiK/_old 2026-07-17 18:47:33.513364376 +0200 +++ /var/tmp/diff_new_pack.PXrGiK/_new 2026-07-17 18:47:33.513364376 +0200 @@ -1,7 +1,7 @@ # # spec file for package bcg729 # -# Copyright (c) 2022 SUSE LLC +# Copyright (c) 2026 SUSE LLC and contributors # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -18,15 +18,13 @@ %define sover 0 Name: bcg729 -Version: 1.1.1 +Version: 1.1.2 Release: 0 Summary: Encoder and decoder of the ITU G.729 Annex A/B speech codec License: GPL-3.0-only URL: https://www.linphone.org/technical-corner/bcg729 Source: https://gitlab.linphone.org/BC/public/bcg729/-/archive/%{version}/bcg729-%{version}.tar.gz Source1: baselibs.conf -# PATCH-FIX-OPENSUSE bcg729-fix-pkgconfig.patch [email protected] -- Install libbcg729.pc. -Patch0: bcg729-fix-pkgconfig.patch BuildRequires: cmake BuildRequires: pkgconfig @@ -64,8 +62,7 @@ %install %cmake_install -%post -n lib%{name}-%{sover} -p /sbin/ldconfig -%postun -n lib%{name}-%{sover} -p /sbin/ldconfig +%ldconfig_scriptlets -n lib%{name}-%{sover} %files -n lib%{name}-%{sover} %license LICENSE.txt @@ -75,6 +72,6 @@ %files devel %{_includedir}/%{name}/ %{_libdir}/lib%{name}.so -%{_datadir}/Bcg729/ +%{_datadir}/BCG729/ %{_libdir}/pkgconfig/lib%{name}.pc ++++++ bcg729-1.1.1.tar.gz -> bcg729-1.1.2.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bcg729-1.1.1/BCG729Config.cmake.in new/bcg729-1.1.2/BCG729Config.cmake.in --- old/bcg729-1.1.1/BCG729Config.cmake.in 1970-01-01 01:00:00.000000000 +0100 +++ new/bcg729-1.1.2/BCG729Config.cmake.in 2026-07-14 11:03:39.000000000 +0200 @@ -0,0 +1,47 @@ +############################################################################ +# BCG729Config.cmake +# Copyright (C) 2015-2023 Belledonne Communications, Grenoble France +# +############################################################################ +# +# 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. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +############################################################################ +# +# Config file for the bcg729 package. +# +# Targets +# ^^^^^^^ +# +# The following targets are defined: +# bcg729 - The bcg729 library target +# +# +# Result variables +# ^^^^^^^^^^^^^^^^ +# +# This config file will set the following variables in your project: +# +# BCG729_FOUND - The bcg729 library has been found +# BCG729_TARGET - The name of the CMake target for the bcg729 library + + +@PACKAGE_INIT@ + +include("${CMAKE_CURRENT_LIST_DIR}/BCG729Targets.cmake") + +set(BCG729_TARGET bcg729) + +check_required_components(BZRTP) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bcg729-1.1.1/Bcg729Config.cmake.in new/bcg729-1.1.2/Bcg729Config.cmake.in --- old/bcg729-1.1.1/Bcg729Config.cmake.in 2020-11-22 21:44:04.000000000 +0100 +++ new/bcg729-1.1.2/Bcg729Config.cmake.in 1970-01-01 01:00:00.000000000 +0100 @@ -1,62 +0,0 @@ -############################################################################ -# Bcg729Config.cmake -# Copyright (C) 2015 Belledonne Communications, Grenoble France -# -############################################################################ -# -# 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. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -############################################################################ -# -# Config file for the bcg729 package. -# It defines the following variables: -# -# BCG729_FOUND - system has bcg729 -# BCG729_INCLUDE_DIRS - the bcg729 include directory -# BCG729_LIBRARIES - The libraries needed to use bcg729 -# BCG729_CPPFLAGS - The compilation flags needed to use bcg729 - -@PACKAGE_INIT@ - -include("${CMAKE_CURRENT_LIST_DIR}/Bcg729Targets.cmake") - -if(@ENABLE_SHARED@) - set(BCG729_TARGETNAME bcg729) - set(BCG729_LIBRARIES ${BCG729_TARGETNAME}) -else() - set(BCG729_TARGETNAME bcg729-static) - if(TARGET ${BCG729_TARGETNAME}) - if(LINPHONE_BUILDER_GROUP_EXTERNAL_SOURCE_PATH_BUILDERS) - set(BCG729_LIBRARIES ${BCG729_TARGETNAME}) - else() - get_target_property(BCG729_LIBRARIES ${BCG729_TARGETNAME} LOCATION) - endif() - get_target_property(BCG729_LINK_LIBRARIES ${BCG729_TARGETNAME} INTERFACE_LINK_LIBRARIES) - if(BCG729_LINK_LIBRARIES) - list(APPEND BCG729_LIBRARIES ${BCG729_LINK_LIBRARIES}) - endif() - endif() -endif() -get_target_property(BCG729_INCLUDE_DIRS ${BCG729_TARGETNAME} INTERFACE_INCLUDE_DIRECTORIES) -if (NOT BCG729_INCLUDE_DIRS) - set (BCG729_INCLUDE_DIRS) -endif() - -list(INSERT BCG729_INCLUDE_DIRS 0 "@CMAKE_INSTALL_FULL_INCLUDEDIR@") - -list(REMOVE_DUPLICATES BCG729_INCLUDE_DIRS) - -set(BCG729_CPPFLAGS @BCG729_CPPFLAGS@) -set(BCG729_FOUND 1) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bcg729-1.1.1/CHANGELOG.md new/bcg729-1.1.2/CHANGELOG.md --- old/bcg729-1.1.1/CHANGELOG.md 2020-11-22 21:44:04.000000000 +0100 +++ new/bcg729-1.1.2/CHANGELOG.md 2026-07-14 11:03:39.000000000 +0200 @@ -4,6 +4,12 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [1.1.2] - 2026-07-10 + +### Fixed +- possible division by 0 in LP2LSP conversion - Thanks Richard Fuchs +- improve cmake scripts + ## [1.1.1] - 2020-11-17 ### Fixed diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bcg729-1.1.1/CMakeLists.txt new/bcg729-1.1.2/CMakeLists.txt --- old/bcg729-1.1.1/CMakeLists.txt 2020-11-22 21:44:04.000000000 +0100 +++ new/bcg729-1.1.2/CMakeLists.txt 2026-07-14 11:03:39.000000000 +0200 @@ -1,6 +1,6 @@ ############################################################################ # CMakeLists.txt -# Copyright (C) 2014 Belledonne Communications, Grenoble France +# Copyright (C) 2014-2023 Belledonne Communications, Grenoble France # ############################################################################ # @@ -20,8 +20,9 @@ # ############################################################################ -cmake_minimum_required(VERSION 3.1) -project(bcg729 VERSION 1.1.1 LANGUAGES C) +cmake_minimum_required(VERSION 3.22) + +project(BCG729 VERSION 1.1.2 LANGUAGES C) set(PACKAGE "${PROJECT_NAME}") @@ -34,27 +35,15 @@ set(VERSION "${PACKAGE_VERSION}") -option(ENABLE_SHARED "Build shared library." YES) -option(ENABLE_STATIC "Build static library." YES) option(ENABLE_STRICT "Build with strict compile options." YES) -option(ENABLE_TESTS "Enable compilation of the tests." NO) +option(ENABLE_UNIT_TESTS "Enable compilation of the tests." NO) include(GNUInstallDirs) -include_directories( - include - src - ${CMAKE_CURRENT_BINARY_DIR} - ${CMAKE_CURRENT_BINARY_DIR}/src -) -set(MSVC_INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/include/MSVC") -if(MSVC) - include_directories(${MSVC_INCLUDE_DIR}) -endif() set(BCG729_CPPFLAGS ) -if(ENABLE_STATIC) +if(NOT BUILD_SHARED_LIBS) set(BCG729_STATIC 1) list(APPEND BCG729_CPPFLAGS "-DBCG729_STATIC") endif() @@ -69,7 +58,7 @@ add_definitions(" -Werror -Wextra -Wno-unused-parameter -Wno-missing-field-initializers ") endif() endif() - if(NOT ENABLE_TESTS) # test access inner functions so maintain visibility if we want to run tests + if(NOT ENABLE_UNIT_TESTS) # test access inner functions so maintain visibility if we want to run tests add_definitions("-fvisibility=hidden") endif() if(CMAKE_C_COMPILER_ID MATCHES "Clang" OR CMAKE_CXX_COMPILER_ID MATCHES "Clang") @@ -77,53 +66,53 @@ endif() endif() -configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config.h) +configure_file(${PROJECT_SOURCE_DIR}/config.h.cmake ${PROJECT_BINARY_DIR}/config.h) add_subdirectory(include) add_subdirectory(src) -if(ENABLE_TESTS) +if(ENABLE_UNIT_TESTS AND NOT WIN32) + # Deactivated on Windows because of symbol export issues (TODO: fix that) add_subdirectory(test) endif() include(CMakePackageConfigHelpers) -set(CONFIG_PACKAGE_LOCATION "${CMAKE_INSTALL_DATADIR}/Bcg729/cmake") -write_basic_package_version_file( - "${CMAKE_CURRENT_BINARY_DIR}/Bcg729ConfigVersion.cmake" - VERSION ${PACKAGE_VERSION} +set(CMAKE_MODULES_INSTALL_DIR "${CMAKE_INSTALL_DATADIR}/${PROJECT_NAME}/cmake") +configure_package_config_file("${PROJECT_NAME}Config.cmake.in" "${PROJECT_BINARY_DIR}/${PROJECT_NAME}Config.cmake" + INSTALL_DESTINATION "${CMAKE_MODULES_INSTALL_DIR}" + NO_SET_AND_CHECK_MACRO +) +write_basic_package_version_file("${PROJECT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake" + VERSION ${PROJECT_VERSION} COMPATIBILITY AnyNewerVersion ) -export(EXPORT Bcg729Targets - FILE "${CMAKE_CURRENT_BINARY_DIR}/Bcg729Targets.cmake" +install(FILES + "${PROJECT_BINARY_DIR}/${PROJECT_NAME}Config.cmake" + "${PROJECT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake" + DESTINATION ${CMAKE_MODULES_INSTALL_DIR} ) -configure_package_config_file(Bcg729Config.cmake.in - "${CMAKE_CURRENT_BINARY_DIR}/Bcg729Config.cmake" - INSTALL_DESTINATION ${CONFIG_PACKAGE_LOCATION} - NO_SET_AND_CHECK_MACRO + +export(EXPORT ${PROJECT_NAME}Targets + FILE "${PROJECT_BINARY_DIR}/${PROJECT_NAME}Targets.cmake" +) +install(EXPORT ${PROJECT_NAME}Targets + FILE "${PROJECT_NAME}Targets.cmake" + DESTINATION ${CMAKE_MODULES_INSTALL_DIR} ) + set(prefix "${CMAKE_INSTALL_PREFIX}") set(exec_prefix "\${prefix}") set(includedir "\${prefix}/include") set(libdir "\${exec_prefix}/${CMAKE_INSTALL_LIBDIR}") configure_file(libbcg729.pc.in - "${CMAKE_CURRENT_BINARY_DIR}/libbcg729.pc" + "${PROJECT_BINARY_DIR}/libbcg729.pc" @ONLY ) install(FILES - "${CMAKE_CURRENT_BINARY_DIR}/libbcg729.pc" + "${PROJECT_BINARY_DIR}/libbcg729.pc" DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig ) -install(EXPORT Bcg729Targets - FILE Bcg729Targets.cmake - DESTINATION ${CONFIG_PACKAGE_LOCATION} -) -install(FILES - "${CMAKE_CURRENT_BINARY_DIR}/Bcg729Config.cmake" - "${CMAKE_CURRENT_BINARY_DIR}/Bcg729ConfigVersion.cmake" - DESTINATION ${CONFIG_PACKAGE_LOCATION} -) add_subdirectory(build) - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bcg729-1.1.1/README.md new/bcg729-1.1.2/README.md --- old/bcg729-1.1.1/README.md 2020-11-22 21:44:04.000000000 +0100 +++ new/bcg729-1.1.2/README.md 2026-07-14 11:03:39.000000000 +0200 @@ -53,9 +53,7 @@ * `CMAKE_INSTALL_PREFIX=<string>` : install prefix * `CMAKE_PREFIX_PATH=<string>` : column-separated list of prefixes where to look for dependencies -* `ENABLE_SHARED=NO` : do not build the shared library -* `ENABLE_STATIC=NO` : do not build the static library -* `ENABLE_TESTS=NO` : do not build non-regression tests +* `ENABLE_UNIT_TESTS=NO` : do not build non-regression tests ### Note for packagers diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bcg729-1.1.1/build/CMakeLists.txt new/bcg729-1.1.2/build/CMakeLists.txt --- old/bcg729-1.1.1/build/CMakeLists.txt 2020-11-22 21:44:04.000000000 +0100 +++ new/bcg729-1.1.2/build/CMakeLists.txt 2026-07-14 11:03:39.000000000 +0200 @@ -1,6 +1,6 @@ ############################################################################ # CMakeLists.txt -# Copyright (C) 2017-2018 Belledonne Communications, Grenoble France +# Copyright (C) 2017-2023 Belledonne Communications, Grenoble France # ############################################################################ # @@ -21,7 +21,8 @@ ############################################################################ if(NOT CPACK_PACKAGE_NAME) - set(CPACK_PACKAGE_NAME "${PROJECT_NAME}") + string(TOLOWER "${PROJECT_NAME}" LOWERCASE_PROJECT_NAME) + set(CPACK_PACKAGE_NAME "${LOWERCASE_PROJECT_NAME}") ENDIF() set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/../LICENSE.txt") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bcg729-1.1.1/configure.ac new/bcg729-1.1.2/configure.ac --- old/bcg729-1.1.1/configure.ac 2020-11-22 21:44:04.000000000 +0100 +++ new/bcg729-1.1.2/configure.ac 2026-07-14 11:03:39.000000000 +0200 @@ -3,7 +3,7 @@ -AC_INIT([bcg729],[1.1.1]) +AC_INIT([bcg729],[1.1.2]) AC_CANONICAL_SYSTEM AC_PREREQ(2.63) AC_CONFIG_SRCDIR([src/encoder.c]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bcg729-1.1.1/include/MSVC/stdint.h new/bcg729-1.1.2/include/MSVC/stdint.h --- old/bcg729-1.1.1/include/MSVC/stdint.h 2020-11-22 21:44:04.000000000 +0100 +++ new/bcg729-1.1.2/include/MSVC/stdint.h 1970-01-01 01:00:00.000000000 +0100 @@ -1,247 +0,0 @@ -// ISO C9x compliant stdint.h for Microsoft Visual Studio -// Based on ISO/IEC 9899:TC2 Committee draft (May 6, 2005) WG14/N1124 -// -// Copyright (c) 2006-2008 Alexander Chemeris -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are met: -// -// 1. Redistributions of source code must retain the above copyright notice, -// this list of conditions and the following disclaimer. -// -// 2. Redistributions in binary form must reproduce the above copyright -// notice, this list of conditions and the following disclaimer in the -// documentation and/or other materials provided with the distribution. -// -// 3. The name of the author may be used to endorse or promote products -// derived from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED -// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO -// EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; -// OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -// OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -// -/////////////////////////////////////////////////////////////////////////////// - -#ifndef _MSC_VER // [ -#error "Use this header only with Microsoft Visual C++ compilers!" -#endif // _MSC_VER ] - -#ifndef _MSC_STDINT_H_ // [ -#define _MSC_STDINT_H_ - -#if _MSC_VER > 1000 -#pragma once -#endif - -#include <limits.h> - -// For Visual Studio 6 in C++ mode and for many Visual Studio versions when -// compiling for ARM we should wrap <wchar.h> include with 'extern "C++" {}' -// or compiler give many errors like this: -// error C2733: second C linkage of overloaded function 'wmemchr' not allowed -#ifdef __cplusplus -extern "C" { -#endif -# include <wchar.h> -#ifdef __cplusplus -} -#endif - -// Define _W64 macros to mark types changing their size, like intptr_t. -#ifndef _W64 -# if !defined(__midl) && (defined(_X86_) || defined(_M_IX86)) && _MSC_VER >= 1300 -# define _W64 __w64 -# else -# define _W64 -# endif -#endif - - -// 7.18.1 Integer types - -// 7.18.1.1 Exact-width integer types - -// Visual Studio 6 and Embedded Visual C++ 4 doesn't -// realize that, e.g. char has the same size as __int8 -// so we give up on __intX for them. -#if (_MSC_VER < 1300) - typedef signed char int8_t; - typedef signed short int16_t; - typedef signed int int32_t; - typedef unsigned char uint8_t; - typedef unsigned short uint16_t; - typedef unsigned int uint32_t; -#else - typedef signed __int8 int8_t; - typedef signed __int16 int16_t; - typedef signed __int32 int32_t; - typedef unsigned __int8 uint8_t; - typedef unsigned __int16 uint16_t; - typedef unsigned __int32 uint32_t; -#endif -typedef signed __int64 int64_t; -typedef unsigned __int64 uint64_t; - - -// 7.18.1.2 Minimum-width integer types -typedef int8_t int_least8_t; -typedef int16_t int_least16_t; -typedef int32_t int_least32_t; -typedef int64_t int_least64_t; -typedef uint8_t uint_least8_t; -typedef uint16_t uint_least16_t; -typedef uint32_t uint_least32_t; -typedef uint64_t uint_least64_t; - -// 7.18.1.3 Fastest minimum-width integer types -typedef int8_t int_fast8_t; -typedef int16_t int_fast16_t; -typedef int32_t int_fast32_t; -typedef int64_t int_fast64_t; -typedef uint8_t uint_fast8_t; -typedef uint16_t uint_fast16_t; -typedef uint32_t uint_fast32_t; -typedef uint64_t uint_fast64_t; - -// 7.18.1.4 Integer types capable of holding object pointers -#ifdef _WIN64 // [ - typedef signed __int64 intptr_t; - typedef unsigned __int64 uintptr_t; -#else // _WIN64 ][ - typedef _W64 signed int intptr_t; - typedef _W64 unsigned int uintptr_t; -#endif // _WIN64 ] - -// 7.18.1.5 Greatest-width integer types -typedef int64_t intmax_t; -typedef uint64_t uintmax_t; - - -// 7.18.2 Limits of specified-width integer types - -#if !defined(__cplusplus) || defined(__STDC_LIMIT_MACROS) // [ See footnote 220 at page 257 and footnote 221 at page 259 - -// 7.18.2.1 Limits of exact-width integer types -#define INT8_MIN ((int8_t)_I8_MIN) -#define INT8_MAX _I8_MAX -#define INT16_MIN ((int16_t)_I16_MIN) -#define INT16_MAX _I16_MAX -#define INT32_MIN ((int32_t)_I32_MIN) -#define INT32_MAX _I32_MAX -#define INT64_MIN ((int64_t)_I64_MIN) -#define INT64_MAX _I64_MAX -#define UINT8_MAX _UI8_MAX -#define UINT16_MAX _UI16_MAX -#define UINT32_MAX _UI32_MAX -#define UINT64_MAX _UI64_MAX - -// 7.18.2.2 Limits of minimum-width integer types -#define INT_LEAST8_MIN INT8_MIN -#define INT_LEAST8_MAX INT8_MAX -#define INT_LEAST16_MIN INT16_MIN -#define INT_LEAST16_MAX INT16_MAX -#define INT_LEAST32_MIN INT32_MIN -#define INT_LEAST32_MAX INT32_MAX -#define INT_LEAST64_MIN INT64_MIN -#define INT_LEAST64_MAX INT64_MAX -#define UINT_LEAST8_MAX UINT8_MAX -#define UINT_LEAST16_MAX UINT16_MAX -#define UINT_LEAST32_MAX UINT32_MAX -#define UINT_LEAST64_MAX UINT64_MAX - -// 7.18.2.3 Limits of fastest minimum-width integer types -#define INT_FAST8_MIN INT8_MIN -#define INT_FAST8_MAX INT8_MAX -#define INT_FAST16_MIN INT16_MIN -#define INT_FAST16_MAX INT16_MAX -#define INT_FAST32_MIN INT32_MIN -#define INT_FAST32_MAX INT32_MAX -#define INT_FAST64_MIN INT64_MIN -#define INT_FAST64_MAX INT64_MAX -#define UINT_FAST8_MAX UINT8_MAX -#define UINT_FAST16_MAX UINT16_MAX -#define UINT_FAST32_MAX UINT32_MAX -#define UINT_FAST64_MAX UINT64_MAX - -// 7.18.2.4 Limits of integer types capable of holding object pointers -#ifdef _WIN64 // [ -# define INTPTR_MIN INT64_MIN -# define INTPTR_MAX INT64_MAX -# define UINTPTR_MAX UINT64_MAX -#else // _WIN64 ][ -# define INTPTR_MIN INT32_MIN -# define INTPTR_MAX INT32_MAX -# define UINTPTR_MAX UINT32_MAX -#endif // _WIN64 ] - -// 7.18.2.5 Limits of greatest-width integer types -#define INTMAX_MIN INT64_MIN -#define INTMAX_MAX INT64_MAX -#define UINTMAX_MAX UINT64_MAX - -// 7.18.3 Limits of other integer types - -#ifdef _WIN64 // [ -# define PTRDIFF_MIN _I64_MIN -# define PTRDIFF_MAX _I64_MAX -#else // _WIN64 ][ -# define PTRDIFF_MIN _I32_MIN -# define PTRDIFF_MAX _I32_MAX -#endif // _WIN64 ] - -#define SIG_ATOMIC_MIN INT_MIN -#define SIG_ATOMIC_MAX INT_MAX - -#ifndef SIZE_MAX // [ -# ifdef _WIN64 // [ -# define SIZE_MAX _UI64_MAX -# else // _WIN64 ][ -# define SIZE_MAX _UI32_MAX -# endif // _WIN64 ] -#endif // SIZE_MAX ] - -// WCHAR_MIN and WCHAR_MAX are also defined in <wchar.h> -#ifndef WCHAR_MIN // [ -# define WCHAR_MIN 0 -#endif // WCHAR_MIN ] -#ifndef WCHAR_MAX // [ -# define WCHAR_MAX _UI16_MAX -#endif // WCHAR_MAX ] - -#define WINT_MIN 0 -#define WINT_MAX _UI16_MAX - -#endif // __STDC_LIMIT_MACROS ] - - -// 7.18.4 Limits of other integer types - -#if !defined(__cplusplus) || defined(__STDC_CONSTANT_MACROS) // [ See footnote 224 at page 260 - -// 7.18.4.1 Macros for minimum-width integer constants - -#define INT8_C(val) val##i8 -#define INT16_C(val) val##i16 -#define INT32_C(val) val##i32 -#define INT64_C(val) val##i64 - -#define UINT8_C(val) val##ui8 -#define UINT16_C(val) val##ui16 -#define UINT32_C(val) val##ui32 -#define UINT64_C(val) val##ui64 - -// 7.18.4.2 Macros for greatest-width integer constants -#define INTMAX_C INT64_C -#define UINTMAX_C UINT64_C - -#endif // __STDC_CONSTANT_MACROS ] - - -#endif // _MSC_STDINT_H_ ] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bcg729-1.1.1/include/bcg729/decoder.h new/bcg729-1.1.2/include/bcg729/decoder.h --- old/bcg729-1.1.1/include/bcg729/decoder.h 2020-11-22 21:44:04.000000000 +0100 +++ new/bcg729-1.1.2/include/bcg729/decoder.h 2026-07-14 11:03:39.000000000 +0200 @@ -21,9 +21,9 @@ typedef struct bcg729DecoderChannelContextStruct_struct bcg729DecoderChannelContextStruct; #include <stdint.h> -// Version number is 1.1.1, map it on an integer -// Note: This define starts with version 1.1.1 -#define BCG729_VERSION_NUMBER 0x010101 +// Version number is 1.1.2, map it on an integer +// Note: This define starts with version 1.1.0 +#define BCG729_VERSION_NUMBER 0x010102 #ifdef _WIN32 #ifdef BCG729_STATIC diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bcg729-1.1.1/src/CMakeLists.txt new/bcg729-1.1.2/src/CMakeLists.txt --- old/bcg729-1.1.1/src/CMakeLists.txt 2020-11-22 21:44:04.000000000 +0100 +++ new/bcg729-1.1.2/src/CMakeLists.txt 2026-07-14 11:03:39.000000000 +0200 @@ -1,6 +1,6 @@ ############################################################################ # CMakeLists.txt -# Copyright (C) 2014 Belledonne Communications, Grenoble France +# Copyright (C) 2014-2023 Belledonne Communications, Grenoble France # ############################################################################ # @@ -49,32 +49,32 @@ vad.c ) -if(ENABLE_STATIC) - add_library(bcg729-static STATIC ${BCG729_SOURCE_FILES}) - target_compile_definitions(bcg729-static PRIVATE "-DBCG729_EXPORTS") - set_target_properties(bcg729-static PROPERTIES OUTPUT_NAME bcg729) - install(TARGETS bcg729-static EXPORT Bcg729Targets - ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} - PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE - ) -endif() -if(ENABLE_SHARED) - add_library(bcg729 SHARED ${BCG729_SOURCE_FILES}) - target_compile_definitions(bcg729 PRIVATE "-DBCG729_EXPORTS") - set_target_properties(bcg729 PROPERTIES VERSION 0) - if(MSVC) - if(CMAKE_BUILD_TYPE STREQUAL "Debug" OR CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo") - install(FILES $<TARGET_PDB_FILE:bcg729> - DESTINATION ${CMAKE_INSTALL_BINDIR} - PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE - ) - endif() - set_target_properties(bcg729 PROPERTIES PREFIX "lib") - endif() - install(TARGETS bcg729 EXPORT Bcg729Targets - RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} - LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} - ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} +add_library(bcg729 ${BCG729_SOURCE_FILES}) +target_compile_definitions(bcg729 PRIVATE "BCG729_EXPORTS") +set_target_properties(bcg729 PROPERTIES VERSION 0) +target_include_directories(bcg729 + PUBLIC + $<INSTALL_INTERFACE:include> + $<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/include> + PRIVATE + ${PROJECT_SOURCE_DIR}/include + ${PROJECT_SOURCE_DIR}/src + ${PROJECT_BINARY_DIR} +) + +if(MSVC AND BUILD_SHARED_LIBS) + install(FILES $<TARGET_PDB_FILE:bcg729> + DESTINATION ${CMAKE_INSTALL_BINDIR} PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE + CONFIGURATIONS Debug RelWithDebInfo ) + set_target_properties(bcg729 PROPERTIES PREFIX "lib") endif() + + +install(TARGETS bcg729 EXPORT ${PROJECT_NAME}Targets + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE +) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bcg729-1.1.1/src/LP2LSPConversion.c new/bcg729-1.1.2/src/LP2LSPConversion.c --- old/bcg729-1.1.1/src/LP2LSPConversion.c 2020-11-22 21:44:04.000000000 +0100 +++ new/bcg729-1.1.2/src/LP2LSPConversion.c 2026-07-14 11:03:39.000000000 +0200 @@ -100,7 +100,11 @@ /* linear interpolation for better root accuracy */ /* xMean = xLow - (xHigh-xLow)* previousCx/(Cx-previousCx); */ - xMean = (word16_t)SUB32(xLow, MULT16_32_Q15(SUB32(xHigh, xLow), DIV32(SSHL(SATURATE(previousCx, MAXINT17), 14), SHR(SUB32(Cx, previousCx), 1)))); /* Cx are in Q2.15 so we can shift them left 14 bits, the denominator is shifted righ by 1 so the division result is in Q15 */ + if (previousCx == Cx) { // avoid possible division by 0: consider previousCx/(Cx-previousCx) to be MAXINT32 or MININT32 depending on previousCx sign + xMean = (word16_t)SUB32(xLow, MULT16_32_Q15(SUB32(xHigh, xLow), previousCx>0?MAXINT32:MININT32)); + } else { + xMean = (word16_t)SUB32(xLow, MULT16_32_Q15(SUB32(xHigh, xLow), SSHL(DIV32(SSHL(SATURATE(previousCx, MAXINT17), 14), SUB32(Cx, previousCx)), 1))); /* Cx are in Q2.15 so we can shift them left 14 bits, the division result is in Q14 so we shift left it one to put it back to Q15 */ + } /* recompute previousCx with the new coefficients */ previousCx = ChebyshevPolynomial(xMean, polynomialCoefficients); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bcg729-1.1.1/test/CMakeLists.txt new/bcg729-1.1.2/test/CMakeLists.txt --- old/bcg729-1.1.1/test/CMakeLists.txt 2020-11-22 21:44:04.000000000 +0100 +++ new/bcg729-1.1.2/test/CMakeLists.txt 2026-07-14 11:03:39.000000000 +0200 @@ -24,6 +24,8 @@ set(UTIL_SRC src/testUtils.c src/testUtils.h) +include_directories(${PROJECT_SOURCE_DIR}/src ${PROJECT_BINARY_DIR}) + add_executable(adaptativeCodebookSearchTest src/adaptativeCodebookSearchTest.c ${UTIL_SRC}) target_link_libraries(adaptativeCodebookSearchTest ${BCG729_LIBRARY}) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bcg729-1.1.1/test/testCampaignAll.cmake new/bcg729-1.1.2/test/testCampaignAll.cmake --- old/bcg729-1.1.1/test/testCampaignAll.cmake 2020-11-22 21:44:04.000000000 +0100 +++ new/bcg729-1.1.2/test/testCampaignAll.cmake 2026-07-14 11:03:39.000000000 +0200 @@ -6,23 +6,23 @@ if [ ! -d "patterns" ]; then rm -f ./bcg729-patterns.zip # no pattern directory: download it from - wget http://linphone.org/bc-downloads/bcg729-patterns-v1.1.0.zip - if [ -e bcg729-patterns-v1.1.0.zip ]; then + wget https://github.com/jeannotlapin/bcg729-test-patterns/releases/download/v1_1_2/bcg729-patterns-v1.1.2.zip + if [ -e bcg729-patterns-v1.1.2.zip ]; then # check file - if [[ `openssl md5 bcg729-patterns-v1.1.0.zip | grep -c f223c39eb471350124e56978760858f7` -ne 0 ]]; then + if [[ `openssl md5 bcg729-patterns-v1.1.2.zip | grep -c 2cb3e2ea163d35e0d9300105121d41c8` -ne 0 ]]; then # file ok, unzip it - unzip bcg729-patterns-v1.1.0.zip + unzip bcg729-patterns-v1.1.2.zip if [[ $? -ne 0 ]]; then - echo "Error: unable to unzip correctly bcg729-patterns-v1.1.0.zip, try to do it manually" + echo "Error: unable to unzip correctly bcg729-patterns-v1.1.2.zip, try to do it manually" else rm bcg729-patterns-v1.1.0.zip fi else - echo "Error: bad checksum on bcg729-patterns-v1.1.0.zip downloaded from http://linphone.org/bc-downloads/.\nTry again" + echo "Error: bad checksum on bcg729-patterns-v1.1.2.zip downloaded from https://github.com/jeannotlapin/bcg729-test-patterns/releases/download/v1_1_2/bcg729-patterns-v1.1.2.zip/.\nTry again" exit 1 fi else - echo "Error: Unable to download bcg729-patterns-v1.1.0.zip pattern archive from http://linphone.org/bc-downloads/" + echo "Error: Unable to download bcg729-patterns-v1.1.2.zip pattern archive from https://github.com/jeannotlapin/bcg729-test-patterns/releases/download/v1_1_2/bcg729-patterns-v1.1.2.zip" exit 1 fi fi
