freeswitch/debian
Travis Cross 921de9446f debian: don't package the SWF slim player
We're not including the source code or build tools for the version of
the player we're distributing, so it fails The Debian Free Software
Guidelines (DFSG).
2012-05-10 18:55:48 +00:00
..
source debian: add new and vastly improved packaging for Debian 2012-05-05 11:54:05 +00:00
.gitignore debian: separate out libfreeswitch1 2012-05-09 23:15:02 +00:00
bootstrap.sh debian: don't package the SWF slim player 2012-05-10 18:55:48 +00:00
changelog debian: add new and vastly improved packaging for Debian 2012-05-05 11:54:05 +00:00
compat debian: add new and vastly improved packaging for Debian 2012-05-05 11:54:05 +00:00
control-modules debian: add mod_xml_scgi 2012-05-09 23:15:02 +00:00
copyright debian: fix issues raised by lintian on source package 2012-05-06 07:14:22 +00:00
docs debian: add new and vastly improved packaging for Debian 2012-05-05 11:54:05 +00:00
freeswitch-doc.docs debian: add new and vastly improved packaging for Debian 2012-05-05 11:54:05 +00:00
freeswitch-doc.install debian: add new and vastly improved packaging for Debian 2012-05-05 11:54:05 +00:00
freeswitch-htdocs-slim.install debian: add new and vastly improved packaging for Debian 2012-05-05 11:54:05 +00:00
freeswitch-mod-pocketsphinx.install.tmpl debian: add new and vastly improved packaging for Debian 2012-05-05 11:54:05 +00:00
freeswitch-systemd.freeswitch.service debian: add new and vastly improved packaging for Debian 2012-05-05 11:54:05 +00:00
freeswitch-systemd.install debian: add new and vastly improved packaging for Debian 2012-05-05 11:54:05 +00:00
freeswitch-sysvinit.freeswitch.default debian: add new and vastly improved packaging for Debian 2012-05-05 11:54:05 +00:00
freeswitch-sysvinit.freeswitch.init debian: add remote_fs and required-stop to init 2012-05-06 19:13:49 +00:00
freeswitch.install debian: separate out libfreeswitch1 2012-05-09 23:15:02 +00:00
freeswitch.postinst debian: whitespace 2012-05-06 22:46:36 +00:00
freeswitch.postrm debian: whitespace 2012-05-06 22:46:36 +00:00
freeswitch.preinst debian: whitespace 2012-05-06 22:46:36 +00:00
freeswitch.prerm debian: massage the prerm script to pass lintian 2012-05-07 16:17:11 +00:00
gbp.conf debian: add new and vastly improved packaging for Debian 2012-05-05 11:54:05 +00:00
libfreeswitch1.install debian: separate out libfreeswitch1 2012-05-09 23:15:02 +00:00
libfreeswitch-dev.install debian: don't distribute .la file with libfreeswitch-dev 2012-05-09 23:15:03 +00:00
README.Debian debian: add instructions on how to quickly setup a demo system 2012-05-05 23:43:39 +00:00
README.source debian: correct indentation level 2012-05-05 23:33:17 +00:00
rules don't use bootstrap.sh -j anywhere but devel-bootstrap.sh 2012-05-08 18:57:00 +00:00
util.sh debian: add a makefile rule to install build deps 2012-05-05 23:29:17 +00:00

FreeSWITCH for Debian
--------------

You may be reading this because you're wondering where all the files
are in debian/, such as control.

Because FreeSWITCH has so many modules it was necessary to create a
system to autogenerate the majority of the packaging.  This in done
mostly in the file debian/bootstrap.sh.  This bootstrap needs to run
before any other step of the packaging, though we do try to
autogenerate it when possible.

The build dependencies, runtime dependencies, and other details about
modules can be configured in the debian/control-modules file.  Even
though this file looks a bit like a debian control file and has a
similar format, we are parsing this file ourselves so the format is a
bit more restricted.

debian/control-modules currently supports the following fields:

  # lines that begin with the hash character are comments
  #
  # every block must start with a Module field
  Module: <category>/<module_name>
  Description: <short description>
   <long description> # empty lines with "."s are not yet supported
  Build-Depends: <build deps for this module>
  Depends: <runtime deps for this module>
  Recommends: <recommended packages>
  Suggests: <suggested packages>
  Distro-Conflicts: <distributions on which this module should not be built> # not yet implemented

During bootstrap we build a file control-modules.gen.  If the
control-modules file is properly formatted, this generated file should
be identical.  This is a sanity check mechanism for our parsing, as
well as a way to automatically reorganize the file.

If the file debian/modules.conf is present, we read that file and only
build and package the files listed there.  Otherwise, we build every
module except the ones that either should not be packaged, or for
which we don't yet have good packaging.

The format of debian/modules.conf is:

  ## comments should start with two hash characters
  <category>/<module_name>

To build this package, I recommend running the following from the root
directory of your FS git working tree:

  mkdir ../sounds
  export FS_SOUNDS_DIR=$(pwd)/../sounds
  git clean -fdx && git reset --hard HEAD
  (cd debian && ./bootstrap.sh)
  schedtool -B -e git-buildpackage --git-verbose -us -uc

 -- Travis Cross <tc@traviscross.com>, Sat,  5 May 2012 23:32:53 +0000