Bug 728302 - Review Request: pjproject - Libraries written in C language for building embedded/non-embedded VoIP applications
Summary: Review Request: pjproject - Libraries written in C language for building embe...
Keywords:
Status: CLOSED DUPLICATE of bug 1140324
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Sandro Mani
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 845221
Blocks: 692131 1130101
TreeView+ depends on / blocked
 
Reported: 2011-08-04 16:15 UTC by Mario Santagiuliana
Modified: 2014-09-10 22:17 UTC (History)
28 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-09-10 17:03:28 UTC
Type: ---
Embargoed:
pahan: fedora-review?


Attachments (Terms of Use)
Updated spec file (3.29 KB, text/plain)
2012-04-11 19:59 UTC, Tom "spot" Callaway
no flags Details
patch to use system libsrtp (2.46 KB, patch)
2012-04-11 19:59 UTC, Tom "spot" Callaway
no flags Details | Diff
pjproject-1.12-use-system-srtp.patch (2.06 KB, patch)
2012-04-16 08:02 UTC, Colin Macdonald
no flags Details | Diff
licensecheck (59.29 KB, text/plain)
2014-08-10 22:58 UTC, Sandro Mani
no flags Details

Description Mario Santagiuliana 2011-08-04 16:15:06 UTC
Spec URL: http://marionline.fedorapeople.org/packages/SPECS/pjproject.spec
SRPM URL: http://marionline.fedorapeople.org/packages/SRPMS/pjproject-1.10-1.fc14.src.rpm
Description:

This package provides the Open Source, comprehensive, high
performance, small footprint multimedia communication libraries written in C
language for building embedded/non-embedded VoIP applications.
It contain:
- PJSIP - Open Source SIP Stack
- PJMEDIA - Open Source Media Stack
- PJNATH - Open Source NAT Traversal Helper Library
- PJLIB-UTIL - Auxiliary Library
- PJLIB - Ultra Portable Base Framework Library

In my fedora 14 64 bit I can create the packages whitout problems.
I try to compile the package using mock but I obtain error...I don't understand where is my mistake...

I'm creating this package to support SFLphone package:
https://bugzilla.redhat.com/show_bug.cgi?id=692131

Comment 1 Thomas Spura 2011-08-14 22:02:42 UTC
Just some comments:
- Have a look at:
  http://fedoraproject.org/wiki/PackagingGuidelines#Shared_Libraries
- Please try to build a shared library...
- Don't use /usr/lib/ directly, there is %{_libdir} or it won't build on 64 bit machines properly.
- You tried to build for 64 bit, so the library is in the wrong location: needs to be in /usr/lib64/
- Have a look at:
  http://fedoraproject.org/wiki/PackagingGuidelines#Exceptions_2

Comment 2 Mario Santagiuliana 2011-08-15 08:57:06 UTC
I update the spec file:
http://marionline.fedorapeople.org/packages/SPECS/pjproject.spec
and the src.rpm file:
http://marionline.fedorapeople.org/packages/SRPMS/pjproject-1.10-2.fc14.src.rpm

Now I can't create package for 64 bit and mock give me error...I don't undestand why...The installation try to put all the *.a files in the /usr/lib.

Comment 3 Mario Santagiuliana 2011-08-15 09:21:51 UTC
I try a scratch build using koji, here:
http://koji.fedoraproject.org/koji/taskinfo?taskID=3272842

Comment 4 Thomas Spura 2011-08-15 10:53:12 UTC
(In reply to comment #3)
> I try a scratch build using koji, here:
> http://koji.fedoraproject.org/koji/taskinfo?taskID=3272842

This failed because of:
sed -e "s!@PREFIX@!/builddir/build/BUILDROOT/pjproject-1.10-2.fc14.x86_64/usr!" libpjproject.pc.in

You could patch the install script to call this instead:
sed -e "s!@PREFIX@!/usr!" libpjproject.pc.in

(Don't know the autotools solution for that...)

Other issues:
- http://fedoraproject.org/wiki/PackagingGuidelines#Parallel_make
- Here the library isn't build at all:
  File not found by glob: ~/rpmbuild/BUILDROOT/pjproject-1.10-2.fc15.x86_64/usr/lib64/*.a

Comment 5 Christoph Wickert 2011-08-15 11:35:28 UTC
(In reply to comment #4)
> You could patch the install script to call this instead:
> sed -e "s!@PREFIX@!/usr!" libpjproject.pc.in

Please don't hardcode "/usr", use the macro "%{_prefix}" instead.

Comment 6 Thomas Spura 2011-08-15 12:03:47 UTC
(In reply to comment #5)
> (In reply to comment #4)
> > You could patch the install script to call this instead:
> > sed -e "s!@PREFIX@!/usr!" libpjproject.pc.in
> 
> Please don't hardcode "/usr", use the macro "%{_prefix}" instead.

That will not work, when you patch it in the buildsystem of the program, only if you use the sed in the spec file - depends on how Mario decides to get this program building,

Comment 7 Christoph Wickert 2011-08-15 12:27:28 UTC
(In reply to comment #6)
> That will not work, when you patch it in the buildsystem of the program, only
> if you use the sed in the spec file

Right, that's what I meant. Sorry if I was unclear.

The root of the problem may be that --program-prefix= in the configure call is empty, setting --program-prefix=%{_prefix} is worth a try.

Comment 8 Mario Santagiuliana 2011-08-15 12:32:46 UTC
Hi,
thank you Christoph, I will test the opstion --program-prefix now...but I don't know if it works because in the Makefile is report "/lib" clearly.

I develop a little patch to fix Makefile, I'm testing it...

Comment 9 Mario Santagiuliana 2011-08-15 13:18:26 UTC
Ok I create a patch for the Makefile and another file. I will contact the developer to ask them to add the "--libdir" option to configure file.

Now I can create the packages without problems...hope the spec file is correct:
SPEC: http://marionline.fedorapeople.org/packages/SPECS/pjproject.spec
SRPMS: http://marionline.fedorapeople.org/packages/SRPMS/pjproject-1.10-4.fc14.src.rpm

Koji scratch build for fedora 15:
http://koji.fedoraproject.org/koji/taskinfo?taskID=3273319

For fedora 14:
http://koji.fedoraproject.org/koji/taskinfo?taskID=3273314

Comment 10 Rex Dieter 2011-12-27 18:38:18 UTC
I can help review this.

Comment 11 Rex Dieter 2011-12-27 18:56:57 UTC
A few initial comments, 

As there's only a static library, 

1.  MUST drop ldconfig scriptlet(s).

2.  there's no need that I can tell for any main runtime package here.
MUST move %{_libdir}/lib*.a to -devel subpkg

3.  MUST add Provides: %{name}-static = %{version}-%{release} to -devel

4.  SHOULD drop --libdir=%{_libdir} , %%configure macro already includes that by default

Oh my,
/usr/lib64/libpjsip-simple-x86_64-unknown-linux-gnu.a
wtf are they embedding the platform into the library name.  I suppose if that's how this library is expected to work, so be it, but that's ... unconventional.

5.  MUST fix libpjproject.pc on my x86_64 install, 1.10-4 still contains
libdir=${exec_prefix}/lib

Comment 12 Mario Santagiuliana 2011-12-27 19:07:33 UTC
Thank you Rex for your reply.
I try to update my rpm package the next year...I am on vacation :) so I don't think I can do it in these week...sorry...

I report here my update as soon as possible!

Comment 13 Mario Santagiuliana 2011-12-29 18:08:01 UTC
I update the spec file:
SPEC: http://marionline.fedorapeople.org/packages/SPECS/pjproject.spec
SRPM: http://marionline.fedorapeople.org/packages/SRPMS/pjproject-1.10-5.fc16.src.rpm

I don't understand the point 5.
I will update the package with new release (1.12) as soon as possible.

Comment 14 Rex Dieter 2012-01-04 19:41:41 UTC
point 5 is look in
%{_libdir}/libpjproject.pc file
it's containing
libdir=${exec_prefix}/lib
is wrong on many fedora 64bit platforms (like x86_64) where 
_%libdir = /usr/lib64

Comment 15 Rex Dieter 2012-01-07 14:48:03 UTC
some more now,

6.  Licensing.   using licensecheck too, seems all files include the gpl 'or later' clause, so we can go with
License: GPLv2+

7. use the included configure script (esp to control build options, see 8).  unless there's some good reasons not to, and if so, please document them in a .spec comment

8.  bundled libraries in third_party, to better ensure they're not used, add build options:
--with-external-speex
--with-external-gsm
--with-external-pa
will require additional BuildRequires for each of these, like
BuildRequires: speex-devel
BuildRequires: gsm-devel
BuildRequires: portaudio-devel
respectively

(there's other stuff in there that requires more scrutiny, but this is a good first effort)

9. document in %build section comment that %{?_smp_mflags} cannot be used

10. drop/omit empty main pkg, ie, remove 
%files
and only do
%files devel
...

Comment 16 Mario Santagiuliana 2012-01-07 19:15:51 UTC
5) should be ok now...I update the patch;

6) done;

7) 8) done;

9) if I add %{?_smp_mflags} the package is not build...Done;

10) done.

SPEC: http://marionline.fedorapeople.org/packages/SPECS/pjproject.spec
SRPM:
http://marionline.fedorapeople.org/packages/SRPMS/pjproject-1.10-6.fc16.src.rpm

Comment 17 Rex Dieter 2012-01-07 20:07:17 UTC
Excellent!

I'm reviewing the remaining third_party bits.


in the meantime, one piece of advice, I see stuff like
%files devel
%dir %{_includedir}/pj++/
%{_includedir}/pj++/*.hpp

you can simplify these 2 down to 1 line:
%{_includedir}/pj++/

(listing a directory will own it, and recursively everything under it)
which, for me at least, is simpler and easier to read.

Comment 18 Rex Dieter 2012-01-07 20:42:13 UTC
OK, found 2 bundled libraries that require clarification
third_party/resample  => libresample
third_party/srtp  => libsrtp

both of these are included in fedora already, and it's not clear
1.  why it's bundled, and distributing it's own copies of these libraries
2.  why external/system copies cannot be used.

See also,
https://fedoraproject.org/wiki/Packaging:Treatment_Of_Bundled_Libraries

if we are to justify an attempt to use the bundled libraries in this fedora package, could you contact pjproject upstream to provide the answers to these:
https://fedoraproject.org/wiki/Packaging:No_Bundled_Libraries#Standard_questions

Comment 19 nucleo 2012-01-07 20:58:52 UTC
There is also bundled iLBC codec.
See about iLBC http://lists.fedoraproject.org/pipermail/legal/2011-November/001755.html
and http://lists.fedoraproject.org/pipermail/legal/2011-November/001756.html

What about building shared pjproject library?

Comment 20 Rex Dieter 2012-01-07 21:38:13 UTC
OK, ilbc will need to be stripped out (somehow), until the legal issues are sorted out.

shared library... well, that's upstream's call, whether they are willing to support an ABI or not.

Comment 21 Mario Santagiuliana 2012-01-08 10:44:52 UTC
Reply to comment 17:
Thanks Rex! :)
Should be ok now...isn't?

SPEC: http://marionline.fedorapeople.org/packages/SPECS/pjproject.spec
SRPM:
http://marionline.fedorapeople.org/packages/SRPMS/pjproject-1.10-7.fc16.src.rpm

I write to upstream ML to understand if I can and how compile pjproject using external libresample and libsrtp libraries already included in fedora repository.

For the iLBC, are there news? Should we ask to fedora-legal-list?

Comment 22 Tom "spot" Callaway 2012-01-09 14:45:13 UTC
Blocking FE-Legal, pending iLBC.

Comment 23 Mario Santagiuliana 2012-01-12 18:14:52 UTC
Waiting a legal clarification I update the package to version 1.12.

SPEC: http://marionline.fedorapeople.org/packages/SPECS/pjproject.spec
SRPM:
http://marionline.fedorapeople.org/packages/SRPMS/pjproject-1.12-0.fc16.src.rpm

Comment 24 Mario Santagiuliana 2012-01-23 17:11:00 UTC
Just to understand. The pjproject website report this license for iLBC codec:
http://www.pjsip.org/licensing.htm
If I understand clearly, they use the webrtc package for iLBC so iLBC in pjproject is release under webrtc license and for Fedora shouldn't be problems with iLBC in this package...Am I wrong?

Comment 25 Rex Dieter 2012-01-23 18:32:04 UTC
Licensing is not at issue here, it is patents.

Comment 26 Tom "spot" Callaway 2012-04-04 14:48:51 UTC
Lifting FE-Legal, iLBC is okay to include.

Comment 27 Peter Lemenkov 2012-04-04 14:55:16 UTC
(In reply to comment #26)
> Lifting FE-Legal, iLBC is okay to include.

Great!
This is perhaps the most awesome news from FE-LEGAL I've heard so far.

Comment 28 Mario Santagiuliana 2012-04-04 16:24:54 UTC
Wonderful, now it should be resolved these issues:
- compile using libresample and libsrtp already included in Fedora repo;
- use Fedora iLBC library? Is there an rpm library for this?

Comment 29 Karel Volný 2012-04-06 15:22:12 UTC
ping?

I just came across a recommendation for sflphone, and I see its inclusion in Fedora is blocked by this review request, is there any progress?

Comment 30 Mario Santagiuliana 2012-04-07 08:29:33 UTC
I am waiting to understand how to compile the library with external official fedora packages. I report in comment 28 the two issues.

Comment 31 Tom "spot" Callaway 2012-04-11 19:58:14 UTC
(In reply to comment #30)
> I am waiting to understand how to compile the library with external official
> fedora packages. I report in comment 28 the two issues.

Took a look at this. The "resample" they use is not the same libresample that Fedora has, ours has a completely different API. It looks like at some point, someone took the application "resample" and converted it into a simple library. I think the pjsip upstream knows about this too, see:

http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/2007-September/000064.html

Given that, I don't see how we can sanely replace the bundled resample with the system libresample.

srtp is a different story, that was straightforward to do. I've attached a new spec and patch that uses the system libsrtp.

(P.S. In the future, start Release at "1", not "0")

Comment 32 Tom "spot" Callaway 2012-04-11 19:59:00 UTC
Created attachment 576866 [details]
Updated spec file

Comment 33 Tom "spot" Callaway 2012-04-11 19:59:51 UTC
Created attachment 576867 [details]
patch to use system libsrtp

Comment 34 Colin Macdonald 2012-04-16 08:01:00 UTC
Thank you Mario and Tom.  I tested the latest SPEC file.  I modified Tom's patch to remove the .system from file names (otherwise it just kept asking me manually which files to patch).

Unfortunately, then it only builds -devel and -debuginfo packages for me:

Here's a snip from the output:

Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.DnFuok
+ umask 022
+ cd /home/cbm/src/fedora/rpmbuild/BUILD

----8<----

sed -e "s!@PJ_INSTALL_CFLAGS@!-I/usr/include -DPJ_AUTOCONF=1	-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4  -m32 -march=i686 -mtune=atom -fasynchronous-unwind-tables -DPJ_IS_BIG_ENDIAN=0 -DPJ_IS_LITTLE_ENDIAN=1!" > /home/cbm/src/fedora/rpmbuild/BUILDROOT/pjproject-1.12-1.fc16.i386//usr/lib/pkgconfig/libpjproject.pc
+ /usr/lib/rpm/find-debuginfo.sh --strict-build-id /home/cbm/src/fedora/rpmbuild/BUILD/pjproject-1.12
find: `debug': No such file or directory
+ /usr/lib/rpm/check-buildroot
+ /usr/lib/rpm/redhat/brp-compress
+ /usr/lib/rpm/redhat/brp-strip-static-archive /usr/bin/strip
+ /usr/lib/rpm/brp-python-bytecompile /usr/bin/python 1
+ /usr/lib/rpm/redhat/brp-python-hardlink
+ /usr/lib/rpm/redhat/brp-java-repack-jars
Processing files: pjproject-devel-1.12-1.fc16.i686

----8<----

Processing files: pjproject-debuginfo-1.12-1.fc16.i686
Checking for unpackaged file(s): /usr/lib/rpm/check-files /home/cbm/src/fedora/rpmbuild/BUILDROOT/pjproject-1.12-1.fc16.i386
Wrote: /home/cbm/src/fedora/rpmbuild/RPMS/i686/pjproject-devel-1.12-1.fc16.i686.rpm
Wrote: /home/cbm/src/fedora/rpmbuild/RPMS/i686/pjproject-debuginfo-1.12-1.fc16.i686.rpm
Executing(%clean): /bin/sh -e /var/tmp/rpm-tmp.qfVZW9
+ umask 022
+ cd /home/cbm/src/fedora/rpmbuild/BUILD
+ cd pjproject-1.12
+ /bin/rm -rf /home/cbm/src/fedora/rpmbuild/BUILDROOT/pjproject-1.12-1.fc16.i386
+ exit 0

Comment 35 Colin Macdonald 2012-04-16 08:02:25 UTC
Created attachment 577648 [details]
pjproject-1.12-use-system-srtp.patch

I manually deleted the .system from each file path/name.

Comment 36 Thomas Spura 2012-04-16 08:21:24 UTC
(In reply to comment #34)
> Unfortunately, then it only builds -devel and -debuginfo packages for me:

Isn't this expected?
In %files only a devel package is listed, so building a devel and debuginfo package is the right thing to do.

When you can build a shared library, the versioned one can go to the "normal" pjproject package and only *.so to -devel (and *.a needs to be in -static):


When that is not possible/wanted/needed, it looks fine for me.
(Only looked at the spec file, no deeper look into the package.)

Comment 37 Colin Macdonald 2012-04-16 08:44:03 UTC
I'm not sure what's expected.  But when I tried to install the resulting -devel rpm it wanted the "normal" package as a dependency...

$ rpm -ivh RPMS/i686/pjproject-devel-1.12-1.fc16.i686.rpm 
error: Failed dependencies:
	pjproject = 1.12-1.fc16 is needed by pjproject-devel-1.12-1.fc16.i686
$

Comment 38 Thomas Spura 2012-04-16 08:51:06 UTC
(In reply to comment #37)
> I'm not sure what's expected.  But when I tried to install the resulting -devel
> rpm it wanted the "normal" package as a dependency...
> 
> $ rpm -ivh RPMS/i686/pjproject-devel-1.12-1.fc16.i686.rpm 
> error: Failed dependencies:
>  pjproject = 1.12-1.fc16 is needed by pjproject-devel-1.12-1.fc16.i686
> $

Yes, this is expected, when you have a library in -devel (*.so), which symlinks to the proper versioned one (e.g. *.so.1.0.0), which is in the pjproject package.

But as you only have the static one...

Then you need to delete "Requires:       %{name} = %{version}-%{release}".

Comment 39 Mario Santagiuliana 2012-04-16 09:55:18 UTC
Update package:
Spec URL: http://marionline.fedorapeople.org/packages/SPECS/pjproject.spec
SRPM URL:
http://marionline.fedorapeople.org/packages/SRPMS/pjproject-1.12-2.fc16.src.rpm

Thank you Spot!

If I run rpmlint I have got a lot of errors...

> (P.S. In the future, start Release at "1", not "0")
Ok, sorry...

@Colin, I don't understand why you change the patch...For me spot's patch works...

Now we need to resolve:
- compile using libresample already included in Fedora repo;
- use Fedora iLBC library? Is there an rpm library for this?
- resolve rpmlint error (but we need a fix on upstream, I think).

Thanks to all



-- 
Fedora Bugzappers volunteer triage team
https://fedoraproject.org/wiki/BugZappers

Comment 40 Tom "spot" Callaway 2012-04-16 13:41:55 UTC
(In reply to comment #39)

> Now we need to resolve:
> - compile using libresample already included in Fedora repo;

As I pointed out, this isn't going to be straightforward. Someone will need to port the code to the libresample API. It may be simpler to just ask for a bundling exception here.

> - use Fedora iLBC library? Is there an rpm library for this?

Not that I am aware of. I think webrtc is the iLBC codebase, but their website is rather... confusing.

Comment 41 Peter Lemenkov 2012-04-16 13:51:29 UTC
Just FYI - I'm working on proper packaging WebRTC and here are some preliminary results:

http://peter.fedorapeople.org/WebRTC/webrtc.spec
http://peter.fedorapeople.org/WebRTC/webrtc-0-0.7.svn1950.fc17.src.rpm

I'm using it (some libraries - audiocodecs and something else) for my own project since January and it works quite fine.

Comment 42 Colin Macdonald 2012-04-16 14:29:45 UTC
@Mario: not sure, maybe its a local problem (but its a pretty stock F16 system)

Here's the output using the patch from comment #33:

$ rpmbuild -bb SPECS/pjproject.spec 
Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.SCKXit
+ umask 022
+ cd /home/cbm/src/fedora/rpmbuild/BUILD
+ LANG=C
+ export LANG
+ unset DISPLAY
+ cd /home/cbm/src/fedora/rpmbuild/BUILD
+ rm -rf pjproject-1.12
+ /usr/bin/bzip2 -dc /home/cbm/src/fedora/rpmbuild/SOURCES/pjproject-1.12.tar.bz2
+ /bin/tar -xf -
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd pjproject-1.12
+ /bin/chmod -Rf a+rX,u+w,g-w,o-w .
+ echo 'Patch #0 (pjproject-1.12_fix_libdir.patch):'
Patch #0 (pjproject-1.12_fix_libdir.patch):
+ /bin/cat /home/cbm/src/fedora/rpmbuild/SOURCES/pjproject-1.12_fix_libdir.patch
+ /usr/bin/patch -s -p1 --fuzz=0
+ echo 'Patch #1 (pjproject-1.12-use-system-srtp.patch):'
Patch #1 (pjproject-1.12-use-system-srtp.patch):
+ /bin/cat /home/cbm/src/fedora/rpmbuild/SOURCES/pjproject-1.12-use-system-srtp.patch
+ /usr/bin/patch -s -p1 -b --suffix .system --fuzz=0
The text leading up to this was:
--------------------------
|--- pjproject-1.12/build.mak.in.system	2012-04-11 15:23:17.995573089 -0400
|+++ pjproject-1.12/build.mak.in.system	2012-04-11 15:23:17.999573058 -0400
--------------------------
File to patch: 


---------

I followed Thomas's suggestion in comment #38 and now it builds and installs.  @Mario: I suppose you should delete that line from your spec file?

Comment 43 Mario Santagiuliana 2012-04-16 14:55:43 UTC
@Colin, from source package in comment 39 I can create packages for fedora 16 x86_64 and i386 without problems using mock...
And yes I could delete the requires package because all file are in -devel...

@Spot, yes, I read it...I am not a C/C++ developer or expert...I can't create a patch to resolve this issue...sorry...



-- 
Fedora Bugzappers volunteer triage team
https://fedoraproject.org/wiki/BugZappers

Comment 44 Rex Dieter 2012-04-19 12:24:27 UTC
sorry I suck, but will have to drop out as official reviewer of this pkg for now, at least until I have more time to help finish it up.

Comment 45 Pavel Alexeev 2012-04-22 12:21:34 UTC
I can review that. But as I think there unresolved stop issue libresample/resample?
@Mario, would you like ask exception for that because it is not system library and modified program as Tom point before??

@Peter do you willing post your WebRTC to review?

@Mario, did you try link it with WebRTC instead of iLBC or ask upstream authors?

Comment 46 Mario Santagiuliana 2012-04-23 07:45:37 UTC
Pavel, thank you for you interest.

I think that ask an exception is the best thing...the library was modified and pjsip developers are releasing a new version of pjproject and I understand that have a lot of new features and functionalities...so this version will not be update...and a patch to use libresample means to change a lot of code (I am not a C/C++ developer, I don't know if it could be patch easly).

I will try to link WebRTC using Peter package...but there is not a review request yet.

Thank you!



-- 
Fedora Bugzappers volunteer triage team
https://fedoraproject.org/wiki/BugZappers

Comment 47 Pavel Alexeev 2012-04-23 09:23:26 UTC
If exception will be granted and Peter will not add WebRTC into Fedora, I may help with it. But do not forward so, go step by step.

Comment 48 Mario Santagiuliana 2012-05-26 17:30:27 UTC
Sorry for my late...

A new version of pjsip was released...It has the possibility to use ffmpeg that is included in rpmfusion repository.

I start to create this package to help sflphone rpm review request and to see a free sip software client for KDE into fedora repository. I don't think that sflphone use new version of pjproject/pjsip nearly. So maybe it is better to continue with this package version and when sflphone use new version of pjsip update this package...but without ffmpeg support...

I open my exception here:
https://fedorahosted.org/fpc/ticket/179

Thank you!

Comment 49 Peter Lemenkov 2012-08-02 10:54:15 UTC
Folks, heads up!
Sorry for being late. I didn't submit full WebRTC suite for the review yet (it requires a lot of work, really) but I've just submitted ilbc - stripped down from WebRTC version. latter we'll replace it with some WebRTC sub-packages but I wouldn't hold my breath waiting for WebRTC in repos. See bug #845221 for further details.

Comment 50 Christian Fredrik Kalager Schaller 2012-10-05 13:31:35 UTC
Ok, thought I mentioned that I filed a separate packaging request for the extracted echo-cancellation from webrtc as it might affect the effort happening in this bug if there is code overlap.

The upstream for this package is here:
http://www.freedesktop.org/software/pulseaudio/webrtc-audio-processing/

The bug report I filed is here:
https://bugzilla.redhat.com/show_bug.cgi?id=863437

Comment 51 Peter Lemenkov 2012-10-05 13:39:37 UTC
(In reply to comment #50)
> Ok, thought I mentioned that I filed a separate packaging request for the
> extracted echo-cancellation from webrtc as it might affect the effort
> happening in this bug if there is code overlap.
> 
> The upstream for this package is here:
> http://www.freedesktop.org/software/pulseaudio/webrtc-audio-processing/
> 
> The bug report I filed is here:
> https://bugzilla.redhat.com/show_bug.cgi?id=863437

I started thinking that maybe it's time to pull in the entire WebRTC stack instead of cherry-picking some particular pieces.

Comment 52 Christian Fredrik Kalager Schaller 2012-10-05 13:51:00 UTC
(In reply to comment #51)
I started thinking that maybe it's time to pull in the entire WebRTC stack
> instead of cherry-picking some particular pieces.

I don't have any opinion on that apart from wanting something ready in time for F18 so we can have working echo cancellation in PulseAudio and Empathy. If PulseAudio links to the library I packaged above or a properly packaged full webrtc library is equally fine for me. But I don't want to block on that comprehensive packaging.

Comment 53 Martin-Gomez Pablo 2013-02-10 13:51:35 UTC
Since SFLphone 1.2.1 (http://sflphone.org/news/stable-version-121-released) use the version 2.0.1 of pjsip, is there any plans to update this review request ?

Comment 54 Mario Santagiuliana 2013-02-10 16:32:22 UTC
Yes, it is planning but I need a bit of time to do so...

Comment 55 Mario Santagiuliana 2013-02-16 14:37:48 UTC
I update the package:
Spec URL: http://marionline.fedorapeople.org/packages/SPECS/pjproject.spec
SRPM URL: http://marionline.fedorapeople.org/packages/SRPMS/pjproject-2.0.1-1.fc18.src.rpm

We should resolve:
- compile using libresample already included in Fedora repo (I don't understand if new version check if it is already installed);
- use Fedora iLBC library... I don't understand how to do this.
- resolve rpmlint error (but we need a fix on upstream).

Thank you

Comment 56 Christopher Meng 2013-06-04 16:57:03 UTC
Any news here?

I started packaging sflphone but there is a block in front of me.

Comment 57 Karel Volný 2013-07-31 14:44:53 UTC
(In reply to Mario Santagiuliana from comment #55)
> I update the package:
> Spec URL: http://marionline.fedorapeople.org/packages/SPECS/pjproject.spec
> SRPM URL:
> http://marionline.fedorapeople.org/packages/SRPMS/pjproject-2.0.1-1.fc18.src.
> rpm
> 
> We should resolve:
> - compile using libresample already included in Fedora repo (I don't
> understand if new version check if it is already installed);

I got some inspiration here: http://svn.pjsip.org/repos/pjproject/trunk/third_party/build/samplerate/README.txt

and I'm able to build the package with the following changes in the specfile:

--- pjproject.spec~     2013-02-16 15:16:03.000000000 +0100
+++ pjproject.spec      2013-07-31 15:22:29.408377163 +0200
@@ -17,6 +17,7 @@
 BuildRequires: gsm-devel
 BuildRequires: portaudio-devel
 BuildRequires: libsrtp-devel
+BuildRequires: libsamplerate-devel
 
 %description
 This package provides the Open Source, comprehensive, high
@@ -48,11 +49,24 @@
 %setup -q
 %patch0 -p1
 %patch1 -p1
-
+# make sure we don't bundle this code
+rm -rf third_party/resample
+# remove hardcoded references in ldflags
+sed -i -e "/ac_resample_dll/,+8 d" build.mak.in
+# this one seems unused: sed -i -e "s/-lresample-\$(TARGET_NAME)//" build/os-linux.mak
+# fix include path to use the system library
+sed -i -e "s#../../third_party/libsamplerate/src/samplerate.h#samplerate.h#" pjmedia/src/pjmedia/resample_libsamplerate.c
 
 %build
 env CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" \
-%configure --with-external-speex --with-external-gsm --with-external-pa --libdir=%{_libdir} --disable-ffmpeg
+%configure --with-external-speex --with-external-gsm --with-external-pa --libdir=%{_libdir} --disable-ffmpeg --enable-libsamplerate
+# don't know where this comes from so modify Makefile directly
+# to prevent the attempt to build the removed code
+sed -i -e "s/resample//" third_party/build/Makefile
+# the default value is PJMEDIA_RESAMPLE_LIBRESAMPLE
+# and it is not redefined by configure after enabling libsamplerate
+# so change that to PJMEDIA_RESAMPLE_LIBSAMPLERATE manually
+echo "#define PJMEDIA_RESAMPLE_IMP PJMEDIA_RESAMPLE_LIBSAMPLERATE" > pjlib/include/pj/config_site.h
 make dep
 make clean
 make # cannot use %{?_smp_mflags}, the package will not build if used


... of course this is just a proof of concept, sed should be replaced with proper patches and we should patch configure rather than to modify third_party/build/Makefile after it gets configured, and try to get the changes upstream, but I guess this is a good start


> - use Fedora iLBC library... I don't understand how to do this.

I'd call Peter for help here (NEEDINFO)


> - resolve rpmlint error (but we need a fix on upstream).

you mean the FSF address issue? - this is not a blocker, but ... have you contacted upstream already?

Comment 58 Anthony Messina 2013-10-06 17:27:57 UTC
Fedora packages Asterisk.  Asterisk 12 will also need pjproject, but unfortunately, will not be able to use the upstream source and needs to be compiled especially for shared library usage.

Instructions are available here: https://wiki.asterisk.org/wiki/display/AST/Installing+pjproject

And Asterisk's fork of pjproject is here:
https://github.com/asterisk/pjproject

I'm not sure if this helps or hurts, but I'm wondering if packaging Asterisk's fork might resolve some issues with shared libraries.

Comment 59 Jared Smith 2013-10-08 18:25:19 UTC
Most of the Asterisk changes to pjproject are related to the build system, so that pjproject can be built as a shared object.  While attending the AstriCon conference this week, this was discussed at length, and the changes are being pushed back upstream to the pjproject, and should hopefully appear in a future version of pjproject.  

In the meatime, I'd add my voice to those in support of using the Asterisk version of pjproject, at least in the short term.

Comment 60 cervajs 2013-11-13 18:53:10 UTC
vote for pjproject patched asterisk 12 compatible version

Comment 61 Dale Macartney 2014-01-16 18:57:05 UTC
Hi folks, 

Has there been any change to this BZ? It seems there are multiple packages depending on pjproject. (Asterisk, slfphone). 

Is it fair to say we are waiting on upstream to provide an update? 2.1.x? 

Happy to help where needed.

Comment 62 Jared Smith 2014-01-17 13:52:42 UTC
In the short term, we should try to take the Asterisk version of pjproject and try to package it up, as it's been modified to build as a shared object.  It was my intention to try packaging this up, but I haven't had a chance to get to it. 

The Asterisk version is at https://github.com/asterisk/pjproject, and some additional build instructions (at least with regards to Asterisk) are at https://wiki.asterisk.org/wiki/display/AST/Installing+pjproject

In particular, you'll want to pay close attention to the ./configure line on that wiki page.

In the long term, I'm hoping that pjproject will incorporate the Asterisk changes (so that pjproject can easily be built as a shared library), as well as eliminate the code from the third_party directory so that we don't have bundling issues.

If you're willing to work on packaging this up (using the spec files above), I'd appreciate it.  I'd be happy to help review and help suggest changes -- I just don't have time at the moment to do the package myself, as I'm getting ready to leave on vacation :-/

Comment 63 Anthony Messina 2014-01-17 14:31:00 UTC
(In reply to Jared Smith from comment #62)
> In the short term, we should try to take the Asterisk version of pjproject
> and try to package it up, as it's been modified to build as a shared object.
> It was my intention to try packaging this up, but I haven't had a chance to
> get to it. 
> 
> The Asterisk version is at https://github.com/asterisk/pjproject, and some
> additional build instructions (at least with regards to Asterisk) are at
> https://wiki.asterisk.org/wiki/display/AST/Installing+pjproject
> 
> In particular, you'll want to pay close attention to the ./configure line on
> that wiki page.
> 
> In the long term, I'm hoping that pjproject will incorporate the Asterisk
> changes (so that pjproject can easily be built as a shared library), as well
> as eliminate the code from the third_party directory so that we don't have
> bundling issues.
> 
> If you're willing to work on packaging this up (using the spec files above),
> I'd appreciate it.  I'd be happy to help review and help suggest changes --
> I just don't have time at the moment to do the package myself, as I'm
> getting ready to leave on vacation :-/

If it helps, feel free to refer to the spec I'm using here: https://messinet.com/rpms/browser/pjproject which works well with Asterisk 12, which I've also been building here: https://messinet.com/rpms/browser/asterisk

Comment 64 Dale Macartney 2014-01-17 16:45:43 UTC
> 
> If it helps, feel free to refer to the spec I'm using here:
> https://messinet.com/rpms/browser/pjproject which works well with Asterisk
> 12, which I've also been building here:
> https://messinet.com/rpms/browser/asterisk

Thanks Antony

I have made a couple of changes to your spec. rpmlint was reporting a few warnings and errors. I've shortened the summary and moved the libraries into the -devel package. 

There is still an error reporting relating to the license.. "incorrect-fsf-address", However I mailed upstream and I was informed this morning that the license has been corrected and will be available in the next release. 

Remaining errors as follows

[mac@rhodey rpmbuild]$ rpmlint SPECS/pjproject.spec SRPMS/pjproject-2.1-0.6.git217740d.fc20.src.rpm RPMS/x86_64/pjproject-2.1-0.6.git217740d.fc20.x86_64.rpm 
pjproject.x86_64: E: no-binary
pjproject.x86_64: E: incorrect-fsf-address /usr/share/doc/pjproject/COPYING
2 packages and 1 specfiles checked; 2 errors, 0 warnings.
[mac@rhodey rpmbuild]$

SPEC: http://dbmacartney.fedorapeople.org/pjproject/pjproject.spec
SRPM: http://dbmacartney.fedorapeople.org/pjproject/pjproject-2.1-0.6.git217740d.fc20.src.rpm

Successful scratch build below. 

http://koji.fedoraproject.org/koji/taskinfo?taskID=6420303

Comment 65 Ralf Corsepius 2014-01-17 17:13:31 UTC
Just some "drive-by" comments:

- The --prefix= in the call below is redundant to %configure
%configure --prefix=%{_prefix}    \

It doesn't hurt, but it can be removed.


- You are shipping static libs:
 %{_libdir}/*.a

These are multiply problematic.

1. Shipping static libs is strongly discouraged in Fedora.
Please read: 
https://fedoraproject.org/wiki/Packaging:Guidelines#Packaging_Static_Libraries

2. Their naming is weird naming, which technically reduces their applicability.

3. Static libs MUST be shipped in a *-static subpackage and not in *-devel


- %doc contains superflous documents:
README-RTEMS is not of any relevance to Fedora users and INSTALL.txt is not of use to users of Fedora packages.

Comment 66 Ralf Corsepius 2014-01-17 17:16:59 UTC
Just noticed another issue:
The *.pc's contain the CFLAGS having been used during compilation of this package.
..
-I${includedir} -I/usr/include -DPJ_AUTOCONF=1  -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
..

This is not useful.

Somewhat oversimplified, in general, *.pc's should only contain paths (-I, -L) and libraries (-l). -W/-f flags do not belong into *.pcs.

Comment 67 Jared Smith 2014-02-28 18:43:08 UTC
pjproject released version 2.2 yesterday, which fixes up all the items that were addressed by the Asterisk fork.

I've put together an update .spec file and SRPM at

http://jsmith.fedorapeople.org/Packaging/pjproject/pjproject.spec
http://jsmith.fedorapeople.org/Packaging/pjproject/pjproject-2.2-2.fc20.src.rpm

The only outstanding item that I'm aware of is that we're still using the bundled copy of ilbc, instead of using the system library.  I would appreciate some help from those more skilled at hacking build systems to help me write a patch to use the system iLBC library instead of the bundled version.  Everything else in the "third_party" directory has been eliminated.

Comment 68 Jared Smith 2014-02-28 20:04:30 UTC
I've fixed a number items that rpmlint caught, and have updated a newer version of the spec file and SPRM:

http://jsmith.fedorapeople.org/Packaging/pjproject/pjproject.spec
http://jsmith.fedorapeople.org/Packaging/pjproject/pjproject-2.2-3.fc20.src.rpm

The only two warnings from rpmlint refer to an issue in ilbc that I hope we can resolve by using the system ilbc library and not using the bundled version, and the fact that the -devel subpackage has no documentation.

[jsmith@slapshot pjproject]$ rpmlint pjproject.spec /home/jsmith/rpmbuild/SRPMS/pjproject-2.2-3.fc20.src.rpm /home/jsmith/rpmbuild/RPMS/x86_64/pjproject-2.2-3.fc20.x86_64.rpm /home/jsmith/rpmbuild/RPMS/x86_64/pjproject-devel-2.2-3.fc20.x86_64.rpm
pjproject.x86_64: W: shared-lib-calls-exit /usr/lib64/libilbccodec.so.2 exit.5
pjproject-devel.x86_64: W: no-documentation
3 packages and 1 specfiles checked; 0 errors, 2 warnings.

Comment 69 Jared Smith 2014-03-03 15:56:23 UTC
Since Asterisk doesn't use any of the pjmedia-codec support at all, I'm tempted to build this package without ilbc support in order to get this in and packaged sooner rather than later.  That being said, I know there are probably other potential users of this library (sflphone, for example), that might want this built with ilbc support.

Thoughts?  Concerns?

Comment 70 Anthony Messina 2014-03-08 15:22:59 UTC
(In reply to Jared Smith from comment #69)
> Since Asterisk doesn't use any of the pjmedia-codec support at all, I'm
> tempted to build this package without ilbc support in order to get this in
> and packaged sooner rather than later.  That being said, I know there are
> probably other potential users of this library (sflphone, for example), that
> might want this built with ilbc support.
> 
> Thoughts?  Concerns?

This sounds reasonable for the initial package.  Since this package doesn't exist yet, it's primarily the update to Asterisk 12 that will require it as a dep.

Comment 71 Anthony Messina 2014-03-08 16:27:18 UTC
Asterisk 12 will fail to build if the pj/config_site.h file is not present :(

/usr/include/pj/config.h:287:28: fatal error: pj/config_site.h: No such file or directory

Comment 72 Jared Smith 2014-03-09 12:00:39 UTC
(In reply to Anthony Messina from comment #71)
> Asterisk 12 will fail to build if the pj/config_site.h file is not present :(
> 
> /usr/include/pj/config.h:287:28: fatal error: pj/config_site.h: No such file
> or directory

Yuck -- I removed the file, because rpmlint was complaining about it being an empty file.  I guess instead of deleting it, I'll change it to be non-empty.

http://jsmith.fedorapeople.org/Packaging/pjproject/pjproject.spec
http://jsmith.fedorapeople.org/Packaging/pjproject/pjproject-2.2-4.fc20.src.rpm

Anthony, can you test these and see if they work better for you in packaging up Asterisk 12?

Comment 73 Anthony Messina 2014-03-09 15:41:04 UTC
(In reply to Jared Smith from comment #72)
> (In reply to Anthony Messina from comment #71)
> > Asterisk 12 will fail to build if the pj/config_site.h file is not present :(
> > 
> > /usr/include/pj/config.h:287:28: fatal error: pj/config_site.h: No such file
> > or directory
> 
> Yuck -- I removed the file, because rpmlint was complaining about it being
> an empty file.  I guess instead of deleting it, I'll change it to be
> non-empty.
> 
> http://jsmith.fedorapeople.org/Packaging/pjproject/pjproject.spec
> http://jsmith.fedorapeople.org/Packaging/pjproject/pjproject-2.2-4.fc20.src.
> rpm
> 
> Anthony, can you test these and see if they work better for you in packaging
> up Asterisk 12?

For reference, I've merged in your changes to my own spec to build in a private Koji instance.  I've also disabled building iLBC for now and updated the no_third_party patch accordingly.  Note, I'm also still using alpha/post gittag notations in the version to separate my package from the future upstream (for now) and to ensure that future patches from Asterisk's devs can be easily included.  The remainder of the spec file should be usable.

Using the files located here

https://messinet.com/rpms/browser/pjproject/?rev=521998e499bbc39b42daa6cf7125d5b200ed4a6b

I'm able to build pjproject without rpmlint errors.  I am also able to build Asterisk 12.1.0 against this updated prjproject.

I was wondering if your patch for the FSF address was submitted upstream to pjproject?  I ask because it appears like they updated the COPYING file in their source, but not the header files.

Perhaps some of the Asterisk devs would help getting a --use-external-ilbc patch upstream since they were able to get everything else they did upstream ;)

Comment 74 Dale Macartney 2014-03-11 14:21:36 UTC
(In reply to Anthony Messina from comment #73)
> I was wondering if your patch for the FSF address was submitted upstream to
> pjproject?  I ask because it appears like they updated the COPYING file in
> their source, but not the header files.

I mailed the guys at pjsip a little while ago about the FSF errors and they have corrected the license upsteam. This was prior to 2.2 being released so I presume it should be resolved soon(ish) in a future release if it hasn't been corrected already.

Comment 75 Jeffrey C. Ollie 2014-06-19 19:41:53 UTC
Any updates on this package?  This needs to be accepted into Fedora before I'll even consider updating the Asterisk package to v12.  I'm not in a super hurry because it'll probably be August before I have time to look at the upgrade.

Comment 76 Anthony Messina 2014-06-20 10:13:22 UTC
(In reply to Jeffrey C. Ollie from comment #75)
> Any updates on this package?  This needs to be accepted into Fedora before
> I'll even consider updating the Asterisk package to v12.  I'm not in a super
> hurry because it'll probably be August before I have time to look at the
> upgrade.

Jeffery, as an aside, I have done a lot of work (based entirely on your Fedora spec for Asterisk) to upgrade to Asterisk 12, and have been using it for some time with great success.  Perhaps it may be of use to you when you are able to upgrade:

https://messinet.com/rpms/browser/asterisk/?rev=d3df130e6e1f9cfb85eb696269b7f2ada976c1de

Comment 77 Jared Smith 2014-06-20 15:59:15 UTC
OK, I've updated my package for the new 2.2.1 release.  Upstream still hasn't fixed the FSF address, so we're still carrying around a 500k patch just to correct that.  Nothing has changed with regards to the packaging.

http://jsmith.fedorapeople.org/Packaging/pjproject/pjproject.spec
http://jsmith.fedorapeople.org/Packaging/pjproject/pjproject-2.2.1-1.fc21.src.rpm

Comment 78 Sandro Mani 2014-08-10 22:58:24 UTC
Created attachment 925597 [details]
licensecheck

I'll take over the review if no-one minds.

- Group unnecessary
- lconfig on devel unnecessary
- could use %make_install
- run make selftest in %check?
- the undefined-non-weak-symbol should be easily fixable
- what is the status of ilbc resp what is preventing its unbundling?
- review licences
- fully versioned dependency on -devel


Package Review
==============

Legend:
[x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated
[ ] = Manual review needed



===== MUST items =====

C/C++:
[x]: Package does not contain kernel modules.
[x]: Package contains no static executables.
[x]: Header files in -devel subpackage, if present.
[x]: ldconfig called in %post and %postun if required.
[x]: Package does not contain any libtool archives (.la)
[x]: Rpath absent or only used for internal libs.
[x]: Development (unversioned) .so files in -devel subpackage, if present.

Generic:
[x]: Package is licensed with an open-source compatible license and meets
     other legal requirements as defined in the legal section of Packaging
     Guidelines.
[!]: License field in the package spec file matches the actual license.
     Note: Checking patched sources after %prep for licenses. Licenses found:
     "LGPL (v2 or later)", "GPL (v2 or later)", "Unknown or generated", "*No
     copyright* Public domain". 320 files have unknown license. Detailed
     output of licensecheck attached.
     => Two files are LGPL (v2 or later), these actually are a bundled and slightly modified getopt
        pjproject-2.2.1/pjlib-util/include/pjlib-util/getopt.h
        pjproject-2.2.1/pjlib-util/src/pjlib-util/getopt.c

[x]: License file installed when any subpackage combination is installed.
[x]: %build honors applicable compiler flags or justifies otherwise.
[!]: Package contains no bundled libraries without FPC exception.
[x]: Changelog in prescribed format.
[x]: Sources contain only permissible code or content.
[-]: Package contains desktop file if it is a GUI application.
[x]: Development files must be in a -devel package
[x]: Package uses nothing in %doc for runtime.
[x]: Package consistently uses macros (instead of hard-coded directory names).
[x]: Package is named according to the Package Naming Guidelines.
[x]: Package does not generate any conflict.
[x]: Package obeys FHS, except libexecdir and /usr/target.
[-]: If the package is a rename of another package, proper Obsoletes and
     Provides are present.
[x]: Requires correct, justified where necessary.
[x]: Spec file is legible and written in American English.
[-]: Package contains systemd file(s) if in need.
[x]: Useful -debuginfo package or justification otherwise.
[x]: Package is not known to require an ExcludeArch tag.
[-]: Large documentation must go in a -doc subpackage. Large could be size
     (~1MB) or number of files.
     Note: Documentation size is 61440 bytes in 4 files.
[x]: Package complies to the Packaging Guidelines
[x]: Package successfully compiles and builds into binary rpms on at least one
     supported primary architecture.
[x]: Package installs properly.
[x]: Rpmlint is run on all rpms the build produces.
     Note: There are rpmlint messages (see attachment).
[x]: If (and only if) the source package includes the text of the license(s)
     in its own file, then that file, containing the text of the license(s)
     for the package is included in %doc.
[x]: Package requires other packages for directories it uses.
[x]: Package must own all directories that it creates.
[x]: Package does not own files or directories owned by other packages.
[x]: All build dependencies are listed in BuildRequires, except for any that
     are listed in the exceptions section of Packaging Guidelines.
[x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT
[x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
     beginning of %install.
[x]: Macros in Summary, %description expandable at SRPM build time.
[x]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[x]: Package use %makeinstall only when make install' ' DESTDIR=... doesn't
     work.
[x]: Package is named using only allowed ASCII characters.
[x]: Package do not use a name that already exist
[x]: Package is not relocatable.
[x]: Sources used to build the package match the upstream source, as provided
     in the spec URL.
[x]: Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
[x]: File names are valid UTF-8.
[x]: Packages must not store files under /srv, /opt or /usr/local

===== SHOULD items =====

Generic:
[-]: If the source package does not include license text(s) as a separate file
     from upstream, the packager SHOULD query upstream to include it.
[x]: Final provides and requires are sane (see attachments).
[!]: Fully versioned dependency in subpackages if applicable.
     Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in pjproject-
     devel
[?]: Package functions as described.
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[x]: Patches link to upstream bugs/comments/lists or are otherwise justified.
[x]: Scriptlets must be sane, if used.
[-]: Description and summary sections in the package spec file contains
     translations for supported Non-English languages, if available.
[?]: Package should compile and build into binary rpms on all supported
     architectures.
[!]: %check is present and all tests pass.
[x]: Packages should try to preserve timestamps of original installed files.
[x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file
[x]: Sources can be downloaded from URI in Source: tag
[x]: Reviewer should test that the package builds in mock.
[x]: Buildroot is not present
[x]: Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)
[x]: Dist tag is present (not strictly required in GL).
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: Uses parallel make %{?_smp_mflags} macro.
[x]: The placement of pkgconfig(.pc) files are correct.
[x]: SourceX is a working URL.
[x]: Spec use %global instead of %define unless justified.

===== EXTRA items =====

Generic:
[x]: Rpmlint is run on all installed packages.
     Note: There are rpmlint messages (see attachment).
[x]: Large data in /usr/share should live in a noarch subpackage if package is
     arched.
[x]: Spec file according to URL is the same as in SRPM.


Rpmlint
-------
Checking: pjproject-2.2.1-1.fc22.x86_64.rpm
          pjproject-devel-2.2.1-1.fc22.x86_64.rpm
          pjproject-2.2.1-1.fc22.src.rpm
pjproject.x86_64: W: shared-lib-calls-exit /usr/lib64/libilbccodec.so.2 exit.5
pjproject-devel.x86_64: W: only-non-binary-in-usr-lib
pjproject-devel.x86_64: W: no-documentation
3 packages and 0 specfiles checked; 0 errors, 3 warnings.




Rpmlint (installed packages)
----------------------------
# rpmlint pjproject-devel pjproject
pjproject-devel.x86_64: W: only-non-binary-in-usr-lib
pjproject-devel.x86_64: W: no-documentation
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-videodev.so.2 /lib64/libpj.so.2
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-videodev.so.2 /lib64/libilbccodec.so.2
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-videodev.so.2 /lib64/libsrtp.so.0
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-videodev.so.2 /lib64/libgsm.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-videodev.so.2 /lib64/libspeex.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-videodev.so.2 /lib64/libspeexdsp.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-videodev.so.2 /lib64/libuuid.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-videodev.so.2 /lib64/libm.so.6
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-videodev.so.2 /lib64/librt.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-videodev.so.2 /lib64/libpthread.so.0
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-videodev.so.2 /lib64/libcrypto.so.10
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-videodev.so.2 /lib64/libssl.so.10
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-codec.so.2 /lib64/libsrtp.so.0
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-codec.so.2 /lib64/libspeexdsp.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-codec.so.2 /lib64/libuuid.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-codec.so.2 /lib64/libm.so.6
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-codec.so.2 /lib64/librt.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-codec.so.2 /lib64/libpthread.so.0
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-codec.so.2 /lib64/libcrypto.so.10
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-codec.so.2 /lib64/libssl.so.10
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip-simple.so.2 /lib64/libilbccodec.so.2
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip-simple.so.2 /lib64/libsrtp.so.0
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip-simple.so.2 /lib64/libgsm.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip-simple.so.2 /lib64/libspeex.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip-simple.so.2 /lib64/libspeexdsp.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip-simple.so.2 /lib64/libuuid.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip-simple.so.2 /lib64/libm.so.6
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip-simple.so.2 /lib64/librt.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip-simple.so.2 /lib64/libpthread.so.0
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip-simple.so.2 /lib64/libcrypto.so.10
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip-simple.so.2 /lib64/libssl.so.10
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-audiodev.so.2 /lib64/libilbccodec.so.2
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-audiodev.so.2 /lib64/libsrtp.so.0
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-audiodev.so.2 /lib64/libgsm.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-audiodev.so.2 /lib64/libspeex.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-audiodev.so.2 /lib64/libspeexdsp.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-audiodev.so.2 /lib64/libuuid.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-audiodev.so.2 /lib64/libm.so.6
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-audiodev.so.2 /lib64/librt.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-audiodev.so.2 /lib64/libpthread.so.0
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-audiodev.so.2 /lib64/libcrypto.so.10
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia-audiodev.so.2 /lib64/libssl.so.10
pjproject.x86_64: W: undefined-non-weak-symbol /usr/lib64/libilbccodec.so.2 sqrtf
pjproject.x86_64: W: undefined-non-weak-symbol /usr/lib64/libilbccodec.so.2 cos
pjproject.x86_64: W: undefined-non-weak-symbol /usr/lib64/libilbccodec.so.2 pow
pjproject.x86_64: W: undefined-non-weak-symbol /usr/lib64/libilbccodec.so.2 log10
pjproject.x86_64: W: undefined-non-weak-symbol /usr/lib64/libilbccodec.so.2 sqrt
pjproject.x86_64: W: shared-lib-calls-exit /usr/lib64/libilbccodec.so.2 exit.5
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsua2.so.2 /lib64/libpjsip-ua.so.2
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsua2.so.2 /lib64/libpjmedia-videodev.so.2
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsua2.so.2 /lib64/libpjmedia-codec.so.2
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsua2.so.2 /lib64/libpjnath.so.2
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsua2.so.2 /lib64/libilbccodec.so.2
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsua2.so.2 /lib64/libsrtp.so.0
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsua2.so.2 /lib64/libgsm.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsua2.so.2 /lib64/libspeex.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsua2.so.2 /lib64/libspeexdsp.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsua2.so.2 /lib64/libuuid.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsua2.so.2 /lib64/libm.so.6
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsua2.so.2 /lib64/librt.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsua2.so.2 /lib64/libcrypto.so.10
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsua2.so.2 /lib64/libssl.so.10
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip.so.2 /lib64/libilbccodec.so.2
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip.so.2 /lib64/libsrtp.so.0
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip.so.2 /lib64/libgsm.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip.so.2 /lib64/libspeex.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip.so.2 /lib64/libspeexdsp.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip.so.2 /lib64/libuuid.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip.so.2 /lib64/libm.so.6
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip.so.2 /lib64/librt.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip.so.2 /lib64/libpthread.so.0
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip.so.2 /lib64/libcrypto.so.10
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip.so.2 /lib64/libssl.so.10
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip-ua.so.2 /lib64/libilbccodec.so.2
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip-ua.so.2 /lib64/libsrtp.so.0
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip-ua.so.2 /lib64/libgsm.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip-ua.so.2 /lib64/libspeex.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip-ua.so.2 /lib64/libspeexdsp.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip-ua.so.2 /lib64/libuuid.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip-ua.so.2 /lib64/libm.so.6
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip-ua.so.2 /lib64/librt.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip-ua.so.2 /lib64/libpthread.so.0
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip-ua.so.2 /lib64/libcrypto.so.10
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsip-ua.so.2 /lib64/libssl.so.10
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia.so.2 /lib64/libpjmedia-videodev.so.2
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia.so.2 /lib64/libilbccodec.so.2
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia.so.2 /lib64/libgsm.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia.so.2 /lib64/libspeex.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia.so.2 /lib64/libuuid.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia.so.2 /lib64/librt.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia.so.2 /lib64/libpthread.so.0
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia.so.2 /lib64/libcrypto.so.10
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjmedia.so.2 /lib64/libssl.so.10
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjlib-util.so.2 /lib64/libuuid.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjlib-util.so.2 /lib64/libm.so.6
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjlib-util.so.2 /lib64/librt.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjlib-util.so.2 /lib64/libpthread.so.0
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjlib-util.so.2 /lib64/libcrypto.so.10
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjlib-util.so.2 /lib64/libssl.so.10
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsua.so.2 /lib64/libpjmedia-videodev.so.2
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsua.so.2 /lib64/libilbccodec.so.2
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsua.so.2 /lib64/libsrtp.so.0
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsua.so.2 /lib64/libgsm.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsua.so.2 /lib64/libspeex.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsua.so.2 /lib64/libspeexdsp.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsua.so.2 /lib64/libuuid.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsua.so.2 /lib64/libm.so.6
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsua.so.2 /lib64/librt.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsua.so.2 /lib64/libpthread.so.0
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsua.so.2 /lib64/libcrypto.so.10
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjsua.so.2 /lib64/libssl.so.10
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjnath.so.2 /lib64/libuuid.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjnath.so.2 /lib64/libm.so.6
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjnath.so.2 /lib64/librt.so.1
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjnath.so.2 /lib64/libpthread.so.0
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjnath.so.2 /lib64/libcrypto.so.10
pjproject.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libpjnath.so.2 /lib64/libssl.so.10
2 packages and 0 specfiles checked; 0 errors, 119 warnings.
# echo 'rpmlint-done:'



Requires
--------
pjproject-devel (rpmlib, GLIBC filtered):
    /sbin/ldconfig
    /usr/bin/pkg-config
    libilbccodec.so.2()(64bit)
    libpj.so.2()(64bit)
    libpjlib-util.so.2()(64bit)
    libpjmedia-audiodev.so.2()(64bit)
    libpjmedia-codec.so.2()(64bit)
    libpjmedia-videodev.so.2()(64bit)
    libpjmedia.so.2()(64bit)
    libpjnath.so.2()(64bit)
    libpjsip-simple.so.2()(64bit)
    libpjsip-ua.so.2()(64bit)
    libpjsip.so.2()(64bit)
    libpjsua.so.2()(64bit)
    libpjsua2.so.2()(64bit)
    pjproject

pjproject (rpmlib, GLIBC filtered):
    /sbin/ldconfig
    libc.so.6()(64bit)
    libcrypto.so.10()(64bit)
    libcrypto.so.10(libcrypto.so.10)(64bit)
    libgcc_s.so.1()(64bit)
    libgcc_s.so.1(GCC_3.0)(64bit)
    libgsm.so.1()(64bit)
    libilbccodec.so.2()(64bit)
    libm.so.6()(64bit)
    libpj.so.2()(64bit)
    libpjlib-util.so.2()(64bit)
    libpjmedia-audiodev.so.2()(64bit)
    libpjmedia-codec.so.2()(64bit)
    libpjmedia-videodev.so.2()(64bit)
    libpjmedia.so.2()(64bit)
    libpjnath.so.2()(64bit)
    libpjsip-simple.so.2()(64bit)
    libpjsip-ua.so.2()(64bit)
    libpjsip.so.2()(64bit)
    libpjsua.so.2()(64bit)
    libpthread.so.0()(64bit)
    librt.so.1()(64bit)
    libspeex.so.1()(64bit)
    libspeexdsp.so.1()(64bit)
    libsrtp.so.0()(64bit)
    libssl.so.10()(64bit)
    libssl.so.10(libssl.so.10)(64bit)
    libstdc++.so.6()(64bit)
    libstdc++.so.6(CXXABI_1.3)(64bit)
    libuuid.so.1()(64bit)
    libuuid.so.1(UUID_1.0)(64bit)
    rtld(GNU_HASH)



Provides
--------
pjproject-devel:
    pjproject-devel
    pjproject-devel(x86-64)
    pkgconfig(libpjproject)

pjproject:
    libilbccodec.so.2()(64bit)
    libpj.so.2()(64bit)
    libpjlib-util.so.2()(64bit)
    libpjmedia-audiodev.so.2()(64bit)
    libpjmedia-codec.so.2()(64bit)
    libpjmedia-videodev.so.2()(64bit)
    libpjmedia.so.2()(64bit)
    libpjnath.so.2()(64bit)
    libpjsip-simple.so.2()(64bit)
    libpjsip-ua.so.2()(64bit)
    libpjsip.so.2()(64bit)
    libpjsua.so.2()(64bit)
    libpjsua2.so.2()(64bit)
    pjproject
    pjproject(x86-64)



Source checksums
----------------
http://www.pjsip.org/release/2.2.1/pjproject-2.2.1.tar.bz2 :
  CHECKSUM(SHA256) this package     : da1933336b38b65ff2254bed05ea1076531b16915777a252ea999cf7f3284cb3
  CHECKSUM(SHA256) upstream package : da1933336b38b65ff2254bed05ea1076531b16915777a252ea999cf7f3284cb3


Generated by fedora-review 0.5.2 (63c24cb) last change: 2014-07-14
Command line :/usr/bin/fedora-review -b 728302
Buildroot used: fedora-rawhide-x86_64
Active plugins: Generic, Shell-api, C/C++
Disabled plugins: Java, Python, fonts, SugarActivity, Ocaml, Perl, Haskell, R, PHP, Ruby
Disabled flags: EXARCH, EPEL5, BATCH, DISTTAG

Comment 79 Sandro Mani 2014-08-10 23:31:34 UTC
Reading through the above I see that unbundling the ilbc is simply a matter of hacking the build scripts. This seems to be feasible, I'll try to post a patch by tomorrow.

Comment 80 Christopher Meng 2014-08-11 01:24:38 UTC
Notes:

I've seen ilbc in many opensource projects, chromium, freeswitch. As ilbc is part of webrtc now, I still can download it from the original homepage:

http://www.soft-switch.org/downloads/voipcodecs/

Should I use the ilbc from googlecode or just keep going from the old place?

Thanks.

Comment 81 Tristan Matthews 2014-08-11 02:03:17 UTC
FYI, ilbc is already packaged for Fedora:
https://apps.fedoraproject.org/packages/ilbc

Comment 82 Christopher Meng 2014-08-11 02:52:26 UTC
(In reply to Tristan Matthews from comment #81)
> FYI, ilbc is already packaged for Fedora:
> https://apps.fedoraproject.org/packages/ilbc

Thanks. Then I think ilbc in Fedora needs an update maybe.

Comment 83 Sandro Mani 2014-08-11 21:15:08 UTC
Ok here we go:

Patch: https://smani.fedorapeople.org/review/pjproject_no_third_party.patch
SPEC: https://smani.fedorapeople.org/review/pjproject.spec
SRPM: https://smani.fedorapeople.org/review/pjproject-2.2.1-2.fc22.src.rpm

Made a few trivial changes to the SPEC while on the way:
%changelog
* Mon Aug 11 2014 Sandro Mani <manisandro> - 2.2.1-2
- Build against external ilbc
- Remove ldconfig for -devel
- Run make selftest in %%check
- Use %%make_install

Note that selftest fails (and hence the || exit 0), with the following error:
DEBUG: 23:13:32.327   draft-denis-behave-rfc3489bis-test-vectors-02
DEBUG: 23:13:32.327     Running test 0/1
DEBUG: 23:13:32.327     Request authentication failed: Unauthorized
DEBUG: 23:13:32.327 ..ERROR(-1070)
DEBUG: Makefile:97: recipe for target 'pjnath-test' failed

Haven't investigated though.

Comment 84 Thomas Spura 2014-08-12 08:47:25 UTC
I'm a bit confused.

The last comment of the reporter is from 2013-02-16 and since then there have been plenty SPEC/SRPM postings from different people.

Who is now the review requestee and who is the reviewer?

Comment 85 Sandro Mani 2014-08-12 09:13:58 UTC
My view is that Jared Smith has taken over the packaging effort, and requested help for unbundling ilbc in comment 67. And I would be the reviewer.

Comment 86 Thomas Spura 2014-08-19 17:42:32 UTC
(In reply to Sandro Mani from comment #85)
> My view is that Jared Smith has taken over the packaging effort, and
> requested help for unbundling ilbc in comment 67. And I would be the
> reviewer.

He should then open a own review request and close this one as a duplicate, if Mario doesn't respond in proper time or has given up interest in this review request.

Comment 87 Jared Smith 2014-09-10 17:03:28 UTC
I haven't seen any other response from Mario, so I'm opening a new review request (BZ#1140324), and closing this one as a duplicate.  FWIW, I have successfully updated the packaging to the recent 2.3 release, and removed the bundled ilbc codec support.

*** This bug has been marked as a duplicate of bug 1140324 ***


Note You need to log in before you can comment on or make changes to this bug.