On Mon, Aug 27, 2018 at 8:33 PM Scott Talbert <swt@xxxxxxxxxx> wrote: > I'm not the maintainer of this package (iaxclient), but I ran into this > build failure while working on a pull request. It seems to be fallout > from the -Wl,--as-needed change. Any idea why this is happening? > > https://koji.fedoraproject.org/koji/taskinfo?taskID=29342306 Who started this trend of ignoring the libtool script generated by configure and using /usr/bin/libtool instead? I've run across several spec files in the last few days that do that. It isn't right. The configure script tailors the generated libtool in various ways. Try the attached spec file, which works much better. Also, this gcc warning is warning about a real bug: BUILDSTDERR: md5.c: In function 'MD5Final': BUILDSTDERR: md5.c:180:26: warning: argument to 'sizeof' in 'memset' call is the same expression as the destination; did you mean to dereference it? [-Wsizeof-pointer-memaccess] BUILDSTDERR: memset(ctx, 0, sizeof(ctx)); /* In case it's sensitive */ Yep, that should be memset(ctx, 0, sizeof(*ctx)); The attached spec file also fixes mixed use of tabs and spaces, and uses %ldconfig_scriptlets in place of explicit ldconfig invocations. Regards, -- Jerry James http://www.jamezone.org/
%global betaver beta3 %global tclver 0.2 %global mainver 2.1 %{!?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.31.%{betaver}%{?dist} Summary: Library for creating telephony solutions that interoperate with Asterisk Group: System Environment/Libraries License: LGPLv2+ URL: http://iaxclient.wiki.sourceforge.net/ Source0: http://downloads.sourceforge.net/iaxclient/%{name}-%{version}%{betaver}.tar.gz Source1: tkiaxphone.desktop Source2: wxiax.desktop Source3: phone.png Source4: run-tkiaxphone.sh Patch0: iaxclient-2.1beta3-wxGTK28.patch Patch1: iaxclient-2.1beta3-tkphone-cleanups.patch Patch2: iaxclient-2.1beta3-tcl-includedir.patch Patch3: iaxclient-2.1beta3-tcl-libdir.patch Patch4: iaxclient-2.1beta3-tcl-nodoc.patch Patch5: iaxclient-2.1beta3-theora-detection.patch Patch6: iaxclient-2.1beta3-implicit-DSO-libm.patch Patch7: iaxclient-2.1beta3-arm-barriers.patch Patch8: iaxclient-portable.patch # Link against the locally build iax Patch9: iaxclient-link-local-iax.patch # Use system ilbc Patch10: iaxclient-system-ilbc.patch # Add missing -fPIC to configure.ac test Patch11: iaxclient-2.1beta3-fpic.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 BuildRequires: gcc-c++ BuildRequires: make BuildRequires: speex-devel, libtheora-devel, gsm-devel, portaudio-devel BuildRequires: tk-devel, gtk2-devel, SDL-devel, libogg-devel, liboggz-devel BuildRequires: wxGTK-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 solutions that interoperate with Asterisk, the Open Source PBX. Although asterisk supports other VOIP protocols (including SIP, and with patches, H.323), IAX's simple, lightweight nature gives it several advantages, particularly in that it can operate easily through NAT and packet firewalls, and it is easily extensible and simple to understand. Iaxclient pulls together the wide array of open source technologies required for telephony applications. %package libiax Summary: IAX library Group: System Environment/Libraries Obsoletes: iax < 0.2.3 %description libiax The %{name}-libs package contains the IAX library version 0.2.3, an improved version of the abandoned upstream IAX library. %package libiax-devel Summary: IAX library development files Group: Development/Libraries Requires: %{name}-libiax%{?_isa} = %{version}-%{release} Obsoletes: iax-devel < 0.2.3 %description libiax-devel The %{name}-libiax-devel package contains libraries and header files for developing applications that use %{name}-libiax. %package devel Summary: Development files for %{name} Group: Development/Libraries Requires: pkgconfig Requires: %{name} = %{mainver}-%{release} %description devel The %{name}-devel package contains libraries and header files for developing applications that use %{name}. %package -n tcl-iaxclient Summary: Tcl interface to iax2 client lib Version: %{tclver} Group: System Environment/Libraries License: BSD Requires: tcl(abi) = 8.6 Requires: %{name} = %{mainver}-%{release} %description -n tcl-iaxclient Tcl extensions to iaxclient libraries. %package -n tkiaxphone Summary: Tk IAX Phone Client Version: %{mainver} Group: Applications/Internet License: LGPLv2+ Requires: tcl(abi) = 8.6 Requires: %{name} = %{mainver}-%{release} %description -n tkiaxphone Tk IAX Phone Client. %package -n wxiax Summary: wx IAX Phone Client Version: %{mainver} Group: Applications/Internet License: LGPLv2+ Requires: %{name} = %{mainver}-%{release} %description -n wxiax wx IAX Phone Client. %prep %setup -q -n %{name}-%{mainver}%{betaver} %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 # Delete bundled libraries (except libiax2) just to be sure rm -rf lib/{gsm, portmixer, sox, spandsp} autoreconf -vif chmod -x contrib/tcl/README.txt ( cd lib/libiax2 %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 autoreconf -vif ) %build ( cd lib/libiax2 %configure --disable-static # Get rid of undesirable hardcoded rpaths; workaround libtool reordering # -Wl,--as-needed after all the libraries. sed -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' \ -e 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' \ -e 's|CC="\(g..\)"|CC="\1 -Wl,--as-needed"|' \ -i libtool make %{?_smp_mflags} UCFLAGS="%{optflags}" ) %configure --disable-static # Get rid of undesirable hardcoded rpaths; workaround libtool reordering # -Wl,--as-needed after all the libraries. sed -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' \ -e 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' \ -e 's|CC="\(g..\)"|CC="\1 -Wl,--as-needed"|' \ -i libtool make %{?_smp_mflags} ( cd contrib/tcl/ %configure make %{?_smp_mflags} ) %install %make_install -C lib/libiax2 %make_install find %{buildroot} -name '*.a' -exec rm -f {} ';' find %{buildroot} -name '*.la' -exec rm -f {} ';' install -d %{buildroot}%{tcl_sitearch} mv %{buildroot}%{_libdir}/iaxclient %{buildroot}%{tcl_sitearch}/ %make_install -C contrib/tcl mv %{buildroot}%{_libdir}/tcliaxclient0.2 %{buildroot}%{tcl_sitearch}/tcliaxclient0.2 chmod +x %{buildroot}%{tcl_sitearch}/iaxclient/tkphone/phone.ui.tcl chmod +x %{buildroot}%{tcl_sitearch}/iaxclient/tkphone/pref.ui.tcl install -p %{SOURCE4} %{buildroot}%{_bindir} install -Dd %{buildroot}%{_datadir}/pixmaps/ install -p %{SOURCE3} %{buildroot}%{_datadir}/pixmaps/tkiaxphone.png install -p %{SOURCE3} %{buildroot}%{_datadir}/pixmaps/wxiax.png install -Dd %{buildroot}%{_datadir}/applications/ desktop-file-install --vendor "" \ --dir $RPM_BUILD_ROOT%{_datadir}/applications \ %{SOURCE1} desktop-file-install --vendor "" \ --dir $RPM_BUILD_ROOT%{_datadir}/applications \ %{SOURCE2} 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 %{_bindir}/iaxcomm %{_bindir}/iaxphone %{_datadir}/iaxcomm/ %{_libdir}/libiaxclient.so.* %files libiax %doc lib/libiax2/ChangeLog lib/libiax2/COPYING lib/libiax2/COPYING.LIB %{_libdir}/libiax.so.* %files libiax-devel %{_bindir}/iax-config %{_includedir}/iax/ %{_libdir}/libiax.so %files devel %{_bindir}/stresstest %{_bindir}/testcall %{_bindir}/vtestcall %{_includedir}/iaxclient.h %{_libdir}/libiaxclient.so %{_libdir}/pkgconfig/iaxclient.pc %files -n tcl-iaxclient %doc contrib/tcl/README.txt %{tcl_sitearch}/tcliaxclient0.2/ %files -n tkiaxphone %{_bindir}/run-tkiaxphone.sh %{_bindir}/tkiaxphone %{tcl_sitearch}/iaxclient/ %{_datadir}/applications/tkiaxphone.desktop %{_datadir}/pixmaps/tkiaxphone.png %files -n wxiax %{_bindir}/wxiax %{_datadir}/applications/wxiax.desktop %{_datadir}/pixmaps/wxiax.png %changelog * Fri Jul 13 2018 Fedora Release Engineering <releng@xxxxxxxxxxxxxxxxx> - 2.1-0.31.beta3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild * Sun Feb 18 2018 Sandro Mani <manisandro@xxxxxxxxx> - 2.1-0.30.beta3 - Add missing BR: gcc-c++, make * Wed Feb 07 2018 Fedora Release Engineering <releng@xxxxxxxxxxxxxxxxx> - 2.1-0.29.beta3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Wed Aug 02 2017 Fedora Release Engineering <releng@xxxxxxxxxxxxxxxxx> - 2.1-0.28.beta3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild * Wed Jul 26 2017 Fedora Release Engineering <releng@xxxxxxxxxxxxxxxxx> - 2.1-0.27.beta3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Fri Feb 10 2017 Fedora Release Engineering <releng@xxxxxxxxxxxxxxxxx> - 2.1-0.26.beta3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild * Thu Feb 04 2016 Fedora Release Engineering <releng@xxxxxxxxxxxxxxxxx> - 2.1-0.25.beta3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild * Tue Jan 19 2016 Tom Callaway <spot@xxxxxxxxxxxxxxxxx> - 2.1-0.24.beta3 - spec file cleanups * Wed Jun 17 2015 Fedora Release Engineering <rel-eng@xxxxxxxxxxxxxxxxxxxxxxx> - 2.1-0.23.beta3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild * Mon May 04 2015 Sandro Mani <manisandro@xxxxxxxxx> - 2.1-0.22.beta3 - Rebuild (GCC5) * Thu Jan 08 2015 Sandro Mani <manisandro@xxxxxxxxx> - 2.1-0.21.beta3 - Ship bundled libiax2 in -libiax - Use system spandsp - Use system ilbc * Sat Aug 16 2014 Fedora Release Engineering <rel-eng@xxxxxxxxxxxxxxxxxxxxxxx> - 2.1-0.20.beta3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild * Thu Jul 3 2014 Peter Robinson <pbrobinson@xxxxxxxxxxxxxxxxx> 2.1-0.19.beta3 - Add patch to fix build on aarch64 * Sat Jun 07 2014 Fedora Release Engineering <rel-eng@xxxxxxxxxxxxxxxxxxxxxxx> - 2.1-0.18.beta3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild * Tue May 27 2014 Jaroslav Škarvada <jskarvad@xxxxxxxxxx> - 2.1-0.17.beta3 - Updated requires to require tcl-8.6 * Wed May 21 2014 Jaroslav Škarvada <jskarvad@xxxxxxxxxx> - 2.1-0.16.beta3 - Rebuilt for https://fedoraproject.org/wiki/Changes/f21tcl86 * Tue Dec 03 2013 Tom Callaway <spot@xxxxxxxxxxxxxxxxx> - 2.1-0.15.beta3 - Fix format-security issue (bz 1037126) * Sat Aug 03 2013 Fedora Release Engineering <rel-eng@xxxxxxxxxxxxxxxxxxxxxxx> - 2.1-0.14.beta3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild * Mon Jul 15 2013 Tom Callaway <spot@xxxxxxxxxxxxxxxxx> - 2.1-0.13.beta3 - add memory barriers for arm (bz 927443) * Thu Feb 14 2013 Fedora Release Engineering <rel-eng@xxxxxxxxxxxxxxxxxxxxxxx> - 2.1-0.12.beta3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild * Thu Jul 19 2012 Fedora Release Engineering <rel-eng@xxxxxxxxxxxxxxxxxxxxxxx> - 2.1-0.11.beta3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild * Fri Jan 13 2012 Fedora Release Engineering <rel-eng@xxxxxxxxxxxxxxxxxxxxxxx> - 2.1-0.10.beta3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild * Tue Dec 06 2011 Adam Jackson <ajax@xxxxxxxxxx> - 2.1-0.9.beta3 - Rebuild for new libpng * Wed Feb 09 2011 Fedora Release Engineering <rel-eng@xxxxxxxxxxxxxxxxxxxxxxx> - 2.1-0.8.beta3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild * Wed Jul 14 2010 Dan Horák <dan@xxxxxxxx> - 2.1-0.7.beta3 - rebuilt against wxGTK-2.8.11-2 * Wed Jun 02 2010 Rakesh Pandit <rakesh@xxxxxxxxxxxxxxxxx> - 2.1-0.6.beta3 - Bump for new liboggz lib * Wed Feb 10 2010 Tom "spot" Callaway <tcallawa@xxxxxxxxxx> - 2.1-0.5.beta3 - fix implicit DSO linking issue with libm * Fri Jul 24 2009 Fedora Release Engineering <rel-eng@xxxxxxxxxxxxxxxxxxxxxxx> - 2.1-0.4.beta3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild * Thu Mar 12 2009 Tom "spot" Callaway <tcallawa@xxxxxxxxxx> 2.1-0.3.beta3 - fix lib/libiax2/iax-config.in to not use wrong /usr/lib * Mon Nov 3 2008 Tom "spot" Callaway <tcallawa@xxxxxxxxxx> 2.1-0.2.beta3 - fix theora detection * Tue Jun 10 2008 Tom "spot" Callaway <tcallawa@xxxxxxxxxx> 2.1-0.1.beta3 - Initial package for Fedora
_______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx