[Asterisk-Dev] asterisk (less hardware) ported to FreeBSD

Jim Mercer jim at reptiles.org
Sat Aug 2 10:14:46 MST 2003


On Sat, Aug 02, 2003 at 11:59:53AM -0500, Tilghman Lesher wrote:
> On Saturday 02 August 2003 11:16, Jim Mercer wrote:
> > i've ported asterisk to FreeBSD without hardware support.
> > work is moving forward on a BSD ztdummy driver.
> 
> Good work.

apparently digium will release the specs for their hardware under NDA,
so i'll try to encourage some BSD-like hardware/kernel people to poke at
more substantial support of hardware.

> > in the process of the porting, i've found a number of instances where
> > there were un-initialized variables and various cosmetic changes,
> > which are OS independent issues.
> 
> I'd be interested to see where these are; in most places where the
> compiler warns of "possibly uninitialized" variables, it is, in fact,
> getting set, just elsewhere.

i dunno, the compiler is pretty picky about that stuff.
the places i found had the variables init'd inside an if.
it is possible that the variable was not used outside that if, but in any
case, -Wall should be listened too, because it says good and useful things.

i managed to tweak and compile 99% of the code with -Wall -Werror.
(this is a standard porting method i use).

> > then there are a number of "adjustments" to make the stuff compile on
> > FreeBSD.
> 
> Why not just create an entry in the FreeBSD ports tree with your
> modifications?

the problem here is that asterisk is a "live" system.  a FreeBSD port
(in my opinion) should only be based on release tarballs.  there are already
enough hairy ports in the FreeBSD tree.

if we can get the asterisk codestream to stay non-linux specific via 
appropriate Makefile and #ifdef mechanisms, then CVS build becomes easier
for non-linux people.

> > and i have some ideas about making the build process a little less
> > linux specific (ie. putting configs in /usr/local/etc/asterisk or
> > other user defined location).
> 
> The location for the configuration files is configurable in the
> Makefile, so it can be customized per installation.  Note that the
> placement of configuration files in /usr/local/etc is not less Linux-
> specific; in fact, it's FreeBSD-specific.  And, before you call me a
> Linux-nazi, note that my email client is running on a FreeBSD desktop.

my terminology was in-accurate.

my comments were more related to the fact that while you can set some things
in the Makefile, there are a number of places in the code which use
static strings (ignoring the Makefile).

so saying "The location for the configuration files is configurable in the
Makefile" is misleading.  if you try that out of the box, you will find
that some files/modules/etc will not be found due to a hardcoded /etc/asterisk
or somesuch.

> > i am not comfortable with CVS update privileges, and i wonder if an
> > existing developer could take me under their wing, and submit my
> > patches on my behalf?
> 
> Go to http://bugs.digium.com and submit a bug report, with your patch.
> Unified diffs (cvs diff -u) are the patch format recommended.

that should work well enough.  how active are the core on picking up on
bugs submitted that way?  ie. what's a "normal" turnaround?

-- 
[ Jim Mercer        jim at reptiles.org         +1 416 410-5633 ]
[          I want to live forever, or die trying.            ]



More information about the asterisk-dev mailing list