Compare commits

..

No commits in common. "rawhide" and "f36" have entirely different histories.

3 changed files with 32 additions and 191 deletions

View file

@ -1,28 +0,0 @@
Include <sys/time.h> for the gettimeofday function. This prevents an
implicit function declaration and build failures with future
compilers.
Submitted upstream: <https://sourceforge.net/p/iaxclient/patches/57/>
diff -ur iaxclient-2.1beta3.orig/simpleclient/stresstest/file.c iaxclient-2.1beta3/simpleclient/stresstest/file.c
--- iaxclient-2.1beta3.orig/simpleclient/stresstest/file.c 2008-04-07 18:05:27.000000000 +0200
+++ iaxclient-2.1beta3/simpleclient/stresstest/file.c 2023-02-24 15:00:47.282858961 +0100
@@ -1,6 +1,7 @@
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
+#include <sys/time.h>
#include "file.h"
#ifdef __GNUC__
diff -ur iaxclient-2.1beta3.orig/simpleclient/stresstest/stresstest.c iaxclient-2.1beta3/simpleclient/stresstest/stresstest.c
--- iaxclient-2.1beta3.orig/simpleclient/stresstest/stresstest.c 2008-04-07 18:05:27.000000000 +0200
+++ iaxclient-2.1beta3/simpleclient/stresstest/stresstest.c 2023-02-24 15:00:33.952996082 +0100
@@ -24,6 +24,7 @@
#include <stdio.h>
#include <time.h>
#include <signal.h>
+#include <sys/time.h>
#include "iaxclient.h"
#include "file.h"

View file

@ -1,78 +0,0 @@
diff -rupN iaxclient-2.1beta3/simpleclient/stresstest/file.c iaxclient-2.1beta3-new/simpleclient/stresstest/file.c
--- iaxclient-2.1beta3/simpleclient/stresstest/file.c 2008-04-07 18:05:27.000000000 +0200
+++ iaxclient-2.1beta3-new/simpleclient/stresstest/file.c 2024-01-30 08:30:07.301340562 +0100
@@ -65,11 +65,12 @@ void append_node(struct ogg_stream *os,
*
* To whoever came up with this convoluted scheme: please consider a change of careers.
*/
-int read_theora_cb(OGGZ *oggz, ogg_packet *op, long serialno, void *data)
+int read_theora_cb(OGGZ *oggz, oggz_packet *ozp, long serialno, void *data)
{
struct op_node *node;
struct theora_headers *th;
long timestamp = 0;
+ ogg_packet *op = &(ozp->op);
//mylog("Got theora packet, serialno=%d, size=%d, packetno=%lld, granulepos=%lld\n",
// serialno, op->bytes, op->packetno, op->granulepos);
@@ -115,11 +116,12 @@ int read_theora_cb(OGGZ *oggz, ogg_packe
return 0;
}
-int read_speex_cb(OGGZ *oggz, ogg_packet *op, long serialno, void *data)
+int read_speex_cb(OGGZ *oggz, oggz_packet *ozp, long serialno, void *data)
{
struct op_node *node;
long timestamp;
static int cnt = 0;
+ ogg_packet *op = &(ozp->op);
timestamp = audio_stream->page_ts + audio_stream->page_count * SPEEX_FRAME_DURATION;
audio_stream->page_count++;
@@ -138,12 +140,13 @@ int read_speex_cb(OGGZ *oggz, ogg_packet
return 0;
}
-int read_cb(OGGZ *oggz, ogg_packet *op, long serialno, void *data)
+int read_cb(OGGZ *oggz, oggz_packet *ozp, long serialno, void *data)
{
struct theora_headers *th;
const char theoraId[] = "\x80theora";
const char speexId[] = "Speex ";
+ ogg_packet *op = &(ozp->op);
if ( memcmp(op->packet, theoraId, strlen(theoraId)) == 0 )
{
@@ -157,13 +160,13 @@ int read_cb(OGGZ *oggz, ogg_packet *op,
theora_comment_init(&(th->tc));
video_stream->data = th;
- read_theora_cb(oggz, op, serialno, data);
+ read_theora_cb(oggz, ozp, serialno, data);
} else if ( memcmp(op->packet, speexId, strlen(speexId)) == 0 )
{
//mylog("Detected a Speex stream with serialno=%d\n", serialno);
oggz_set_read_callback(oggz, serialno, read_speex_cb, NULL);
audio_stream->serialno = serialno;
- read_speex_cb(oggz, op, serialno, data);
+ read_speex_cb(oggz, ozp, serialno, data);
} else
{
mylog("Got unknown ogg packet, serialno=%d, size=%d, packetno=%d, granulepos=%d\n",
diff -rupN iaxclient-2.1beta3/simpleclient/stresstest/file.h iaxclient-2.1beta3-new/simpleclient/stresstest/file.h
--- iaxclient-2.1beta3/simpleclient/stresstest/file.h 2008-04-07 18:05:27.000000000 +0200
+++ iaxclient-2.1beta3-new/simpleclient/stresstest/file.h 2024-01-30 08:26:43.708245923 +0100
@@ -39,9 +39,9 @@ struct theora_headers
int have_headers;
};
-int read_theora_cb(OGGZ *oggz, ogg_packet *op, long serialno, void *data);
-int read_speex_cb(OGGZ *oggz, ogg_packet *op, long serialno, void *data);
-int read_cb(OGGZ *oggz, ogg_packet *op, long serialno, void *data);
+int read_theora_cb(OGGZ *oggz, oggz_packet *ozp, long serialno, void *data);
+int read_speex_cb(OGGZ *oggz, oggz_packet *ozp, long serialno, void *data);
+int read_cb(OGGZ *oggz, oggz_packet *ozp, long serialno, void *data);
int read_page_cb(OGGZ *oggz, const ogg_page *og, long serialno, void *data);
void load_ogg_file(const char *filename);

View file

@ -1,15 +1,15 @@
%global betaver beta3
%global tclver 0.2
%global mainver 2.1
%{!?tcl_version: %global tcl_version %(echo 'puts $tcl_version' | tclsh8.6)}
%{!?tcl_version: %global tcl_version %(echo 'puts $tcl_version' | tclsh)}
%{!?tcl_sitearch: %global tcl_sitearch %{_libdir}/tcl%{tcl_version}}
%global tkphonearch %{_arch}
Name: iaxclient
Version: %{mainver}
Release: 0.53.%{betaver}%{?dist}
Release: 0.40.%{betaver}%{?dist}
Summary: Library for creating telephony solutions that interoperate with Asterisk
License: LGPL-2.0-or-later
License: LGPLv2+
URL: http://iaxclient.wiki.sourceforge.net/
Source0: http://downloads.sourceforge.net/iaxclient/%{name}-%{version}%{betaver}.tar.gz
Source1: tkiaxphone.desktop
@ -33,34 +33,19 @@ Patch10: iaxclient-system-ilbc.patch
Patch11: iaxclient-2.1beta3-fpic.patch
Patch12: wxwidgets-3.0.patch
Patch13: gtk3.patch
Patch14: iaxclient-gcc14.patch
# Fix some makefile issues
Patch20: iax-0.2.3_makefile.patch
# Fix format-security issue
Patch21: iax-0.2.3_format-security.patch
# Add missing #include <sys/socket.h>
Patch22: iax-0.2.3_socket.patch
Patch23: iaxclient-c99.patch
BuildRequires: desktop-file-utils
BuildRequires: gcc-c++
BuildRequires: gsm-devel
BuildRequires: gtk3-devel
BuildRequires: ilbc-devel
BuildRequires: libogg-devel
BuildRequires: liboggz-devel
BuildRequires: libtheora-devel
BuildRequires: libtool
BuildRequires: libvidcap-devel
BuildRequires: make
BuildRequires: portaudio-devel
BuildRequires: SDL-devel
BuildRequires: spandsp-devel
BuildRequires: speex-devel
BuildRequires: speexdsp-devel
BuildRequires: tk-devel < 1:9
BuildRequires: wxGTK-devel
BuildRequires: speex-devel, libtheora-devel, gsm-devel, portaudio-devel
BuildRequires: tk-devel, gtk3-devel, SDL-devel, libogg-devel, liboggz-devel
BuildRequires: wxGTK3-devel, libvidcap-devel, desktop-file-utils, libtool
BuildRequires: spandsp-devel, ilbc-devel, speexdsp-devel
%description
Iaxclient is an open source, multiplatform library for creating telephony
@ -103,7 +88,7 @@ developing applications that use %{name}.
%package -n tcl-iaxclient
Summary: Tcl interface to iax2 client lib
Version: %{tclver}
License: BSD-3-Clause-No-Nuclear-License
License: BSD
Requires: tcl(abi) = 8.6
Requires: %{name} = %{mainver}-%{release}
@ -113,7 +98,7 @@ Tcl extensions to iaxclient libraries.
%package -n tkiaxphone
Summary: Tk IAX Phone Client
Version: %{mainver}
License: LGPL-2.0-or-later
License: LGPLv2+
Requires: tcl(abi) = 8.6
Requires: %{name} = %{mainver}-%{release}
@ -123,7 +108,7 @@ Tk IAX Phone Client.
%package -n wxiax
Summary: wx IAX Phone Client
Version: %{mainver}
License: LGPL-2.0-or-later
License: LGPLv2+
Requires: %{name} = %{mainver}-%{release}
%description -n wxiax
@ -131,21 +116,20 @@ wx IAX Phone Client.
%prep
%setup -q -n %{name}-%{mainver}%{betaver}
%patch -P0 -p1 -b .wxGTK28
%patch -P1 -p1 -b .tkphone
%patch -P2 -p1 -b .includedir
%patch -P3 -p1 -b .libdir
%patch -P4 -p1 -b .nodoc
%patch -P5 -p1 -b .theoradetect
%patch -P6 -p1 -b .DSO
%patch -P7 -p1 -b .arm
%patch -P8 -p1 -b .portable
%patch -P9 -p1 -b .linkiax
%patch -P10 -p1 -b .ilbc
%patch -P11 -p1 -b .fpic
%patch -P12 -p1 -b .wx3
%patch -P13 -p1 -b .gtk3
%patch -P14 -p1 -b .gcc14
%patch0 -p1 -b .wxGTK28
%patch1 -p1 -b .tkphone
%patch2 -p1 -b .includedir
%patch3 -p1 -b .libdir
%patch4 -p1 -b .nodoc
%patch5 -p1 -b .theoradetect
%patch6 -p1 -b .DSO
%patch7 -p1 -b .arm
%patch8 -p1 -b .portable
%patch9 -p1 -b .linkiax
%patch10 -p1 -b .ilbc
%patch11 -p1 -b .fpic
%patch12 -p1 -b .wx3
%patch13 -p1 -b .gtk3
# Delete bundled libraries (except libiax2) just to be sure
rm -rf lib/{gsm, portmixer, sox, spandsp}
@ -156,9 +140,9 @@ chmod -x contrib/tcl/README.txt
(
cd lib/libiax2
%patch -P20 -p1 -b .iaxmakefile
%patch -P21 -p1 -b .iaxfmtsecurity
%patch -P22 -p1 -b .iaxsocket
%patch20 -p1 -b .iaxmakefile
%patch21 -p1 -b .iaxfmtsecurity
%patch22 -p1 -b .iaxsocket
sed -i 's|${exec_prefix}/lib|${exec_prefix}/%{_lib}|g' iax-config.in
sed -i 's|/usr/lib|%{_libdir}|g' iax-config.in
@ -166,8 +150,6 @@ sed -i 's|/usr/lib|%{_libdir}|g' iax-config.in
autoreconf -vif
)
%patch -P23 -p1 -b .c99
%build
(
cd lib/libiax2
@ -175,7 +157,7 @@ cd lib/libiax2
make %{?_smp_mflags} UCFLAGS="%{optflags}"
)
%configure --disable-static --with-wish=%{_bindir}/wish8.6
%configure --disable-static
# sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
# sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
make %{?_smp_mflags} LIBTOOL="%{_bindir}/libtool"
@ -221,6 +203,10 @@ cd %{buildroot}%{tcl_sitearch}/iaxclient/tkphone/
ln -s iaxcli iaxcli-Linux-%{tkphonearch}
%ldconfig_scriptlets
%ldconfig_scriptlets libiax
%files
%doc AUTHORS ChangeLog README
%license COPYING.LIB
@ -263,45 +249,6 @@ ln -s iaxcli iaxcli-Linux-%{tkphonearch}
%{_datadir}/pixmaps/wxiax.png
%changelog
* Thu Jul 24 2025 Fedora Release Engineering <releng@fedoraproject.org> - 2.1-0.53.beta3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Sun Jan 19 2025 Sandro Mani <manisandro@gmail.com> - 2.1-0.52.beta3
- BR: tk-devel < 1:9
* Fri Jan 17 2025 Fedora Release Engineering <releng@fedoraproject.org> - 2.1-0.51.beta3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Mon Sep 02 2024 Miroslav Suchý <msuchy@redhat.com> - 2.1-0.50.beta3
- convert license to SPDX
* Thu Jul 18 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.1-0.49.beta3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Wed Jan 24 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.1-0.48.beta3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Sat Jan 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.1-0.47.beta3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.1-0.46.beta3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Fri Feb 24 2023 Florian Weimer <fweimer@redhat.com> - 2.1-0.45.beta3
- Port to C99
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.1-0.44.beta3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Thu Aug 04 2022 Scott Talbert <swt@techie.net> - 2.1-0.43.beta3
- Rebuild with wxWidgets 3.2
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.1-0.42.beta3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Mon May 30 2022 Sandro Mani <manisandro@gmail.com> - 2.1-0.41.beta3
- Rebuild (ilbc)
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.1-0.40.beta3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild