Re: Hello! Also, packaging baresip for Fedora

2013-09-30 Thread Michael Schwendt
On Mon, 30 Sep 2013 10:35:33 +0300, Oron Peled wrote:

> 
> On Sunday 29 September 2013 21:22:24 Lars Kellogg-Stedman wrote:
> > I went ahead and generated a patch to the Makefile that uses the
> > package version for the library version.
> 
> That's wrong, as library versions represent API/ABI changes and
> the numbering has different *semantics* than package version numbering.
> 
> [the libtool info file has a good introduction to ABI version numbering]

The way it has been done, any minor version update would break dependencies:

  $ rpm -qp --provides libre-0.4.4-5.fc20.x86_64.rpm 
  libre = 0.4.4-5.fc20
  libre(x86-64) = 0.4.4-5.fc20
  libre.so.0.4.4()(64bit)

That's the opposite scenario of "no soname", where every new upstream release
might break the ABI/API. Which is more dangerous, if such changes are not
noticed with rpmsodiff or abi checker tools. That may not be seen as a problem
to you, however, if you plan to check new releases painstakingly.

There are no guidelines about it.
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: Hello! Also, packaging baresip for Fedora

2013-09-30 Thread Michael Schwendt
On Sun, 29 Sep 2013 12:38:25 -0400, Lars Kellogg-Stedman wrote:

> [...] what the upstream Makefile
> currently produces.  I wasn't sure how invasive I should be in terms
> of patching the upstream build process.

The build output is "silent" using '@' command invocations in the Makefile.
Patching that confirmed that Fedora's compiler flags aren't used:

  https://fedoraproject.org/wiki/Packaging:Guidelines#Compiler_flags

Nowadays, some packagers apply a trick similar to

  %build
  %configure || :
  make …

or

  %build
  [ -f configure ] || touch configure ; chmod +x configure
  %configure
  make …

for exporting CFLAGS (and more) properly.
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: Hello! Also, packaging baresip for Fedora

2013-09-30 Thread Oron Peled

On Sunday 29 September 2013 21:22:24 Lars Kellogg-Stedman wrote:
> I went ahead and generated a patch to the Makefile that uses the
> package version for the library version.

That's wrong, as library versions represent API/ABI changes and
the numbering has different *semantics* than package version numbering.

[the libtool info file has a good introduction to ABI version numbering]

IMO, there are two alternatives:
 * If upstream decide to manage ABI versions that's best.
 * Otherwise, you can number the library as .0.0 and increment
for every new upstream release -- which means we assume each
   of them breaks ABI compatibility :-(
   (since currently, this library has only one client, it shouldn't
   be too painful).

-- 
Oron Peled Voice: +972-4-8228492
o...@actcom.co.il  http://users.actcom.co.il/~oron
"I love deadlines, especially the whooshing sound they make as they go by." 
  -- Douglas Adams

-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: Hello! Also, packaging baresip for Fedora

2013-09-29 Thread Lars Kellogg-Stedman
On Sun, Sep 29, 2013 at 12:38:25PM -0400, Lars Kellogg-Stedman wrote:
> On Sun, Sep 29, 2013 at 06:14:30PM +0200, Michael Schwendt wrote:
> > A version-less library is less than ideal, however. How stable is the 
> > API/ABI?
> 
> Yeah, that's my feeling, too, but that's what the upstream Makefile
> currently produces.  I wasn't sure how invasive I should be in terms
> of patching the upstream build process.

I went ahead and generated a patch to the Makefile that uses the
package version for the library version.

-- 
Lars Kellogg-Stedman 

-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: Hello! Also, packaging baresip for Fedora

2013-09-29 Thread Lars Kellogg-Stedman
On Sun, Sep 29, 2013 at 06:14:30PM +0200, Michael Schwendt wrote:
> Doesn't look too bad ;) judging based on very brief look at the spec file,
> but it violates the Static Library Packaging Guidelines, and I wonder
> who "owns" %{_datadir}/re?

I've removed the static library and made the package an explicit owner
of %{_datadir}/re.  

> > %{_libdir}/libre.so
> 
> A version-less library is less than ideal, however. How stable is the API/ABI?

Yeah, that's my feeling, too, but that's what the upstream Makefile
currently produces.  I wasn't sure how invasive I should be in terms
of patching the upstream build process.

-- 
Lars Kellogg-Stedman 

-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: Hello! Also, packaging baresip for Fedora

2013-09-29 Thread Michael Schwendt
On Sun, 29 Sep 2013 11:59:43 -0400, Lars Kellogg-Stedman wrote:

> Hello everyone,
> 
> I've just submitted my first package review request to Fedora
> (https://bugzilla.redhat.com/show_bug.cgi?id=1013363), which is for
> "libre" (http://www.creytiv.com/re.html).  This is a dependency for
> "baresip" (http://www.creytiv.com/baresip.html), which is a barebones
> SIP client that I've found very useful for testing SIP connectivity.
> I would ultimately like to get baresip into Fedora, but I will first
> need to get the libre and librem libraries packaged first.
> 
> I've done a lot of packaging in the past for personal and/or work
> related projects, but this is my first time trying to share work with
> the larger community.

Doesn't look too bad ;) judging based on very brief look at the spec file,
but it violates the Static Library Packaging Guidelines, and I wonder
who "owns" %{_datadir}/re?

* https://fedoraproject.org/wiki/Packaging:Guidelines#Packaging_Static_Libraries
* 
https://fedoraproject.org/wiki/Packaging:Guidelines#File_and_Directory_Ownership
 -> https://fedoraproject.org/wiki/Packaging:UnownedDirectories

> %{_libdir}/libre.so

A version-less library is less than ideal, however. How stable is the API/ABI?
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Hello! Also, packaging baresip for Fedora

2013-09-29 Thread Lars Kellogg-Stedman
Hello everyone,

I've just submitted my first package review request to Fedora
(https://bugzilla.redhat.com/show_bug.cgi?id=1013363), which is for
"libre" (http://www.creytiv.com/re.html).  This is a dependency for
"baresip" (http://www.creytiv.com/baresip.html), which is a barebones
SIP client that I've found very useful for testing SIP connectivity.
I would ultimately like to get baresip into Fedora, but I will first
need to get the libre and librem libraries packaged first.

I've done a lot of packaging in the past for personal and/or work
related projects, but this is my first time trying to share work with
the larger community.

Cheers,

-- 
Lars Kellogg-Stedman 

-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct