So after a good hour or two of compiling the world, I was able to generate debian packages out of the 1.0.5-20100101-0400 snapshot. freeswitch can be started with: /opt/freeswitch/bin/freeswitch -u freeswitch -c -nf I'm not sure everything is in order. I can't get the IVR demo to work and i'm also having trouble with conferences. But simple SIP routing, echo tests and the nice tetris song work well. all in all, there are a few more libraries dynamicall downloaded during the build process, which makes the end picture look like this: apr json-c-0.8.tar.gz libsndfile sqlite apr-util lame-3.97 libteletone srtp broadvoice lame-3.97.tar.gz miniupnpc stfu celt-0.7.0-1 libdingaling mpg123 tiff-3.8.2 celt-0.7.0-1.tar.gz libedit mpg123.tar.gz udns curl libg722_1 openzap unimrcp esl libmemcached-0.32 pcre win32 iksemel libmemcached-0.32.tar.gz portaudio xmlrpc-c ilbc libnatpmp sofia-sip yaml js libshout-2.2.2 spandsp json-c-0.8 libshout-2.2.2.tar.gz speex So the externally downloaded (which are probably also duplicates of existing packages too) are: celt-0.7.0-1, json-c-0.8, lame-3.97, libmemcached-0.32, libshout-2.2.2 and mpg123 I suspect that lame and mpg123 are also non-free. I haven't found out how to get rid of those internal dependencies. Everything is hidden under a pile of automake stuff in upstream's Makefile.am. I *think* it all revolves around the CORE_LIBS variable, but that's as far as I got. So the way forward here would be probably to ask upstream how we're supposed to integrate this with existing distributions that already bundle those libraries. I can't believe we're actually support to package it this way, there's gotta be an easier way. Namely, upstream should provide a simpler tarball without all those libraries, and a way to link with existing ones in the automake toolchain directly. Then the package will need to be fixed to move out of /opt. I think that we could start with /usr/lib/freeswitch for now, but that's not quite standard, as we will need to split things around /usr... not sure how to do that by looking at the Makefile.am. Finally, non-free bits should be removed (lame and mpg123 come to mind). So bottomline, what's missing here is this: 1. get rid of the duplicate libraries, which involves: a. asking help upstream, which will imply: b. removing the library code from the tarball, and; c. link with existing libraries. 2. move the binaries out of /opt: a. try to move to /usr/lib/freeswitch, then; b. split configuration files, libraries and binaries in proper paths (/etc/freeswitch, /usr/lib, /usr/bin, etc) 3. remove non-free bits (mpg123 and lame on the radar right now) We're not there yet, but at least that looks like a reasonable task list... A. -- La guerre, c'est le massacre d'hommes qui ne se connaissent pas, au profit d'hommes qui se connaissent mais ne se massacreront pas. - Paul Valéry
Attachment:
signature.asc
Description: Digital signature