From 82b4fbd5071ac4065455dea391bba4949a5f9f38 Mon Sep 17 00:00:00 2001 From: Ivan Kluchnikov Date: Tue, 23 Sep 2014 13:49:09 +0400 Subject: [PATCH] debian: Add debian directory to ease building packages --- debian/autoreconf | 1 + debian/changelog | 5 ++ debian/compat | 1 + debian/control | 22 ++++++ debian/copyright | 39 ++++++++++ debian/docs | 1 + debian/osmo-bts.default | 2 + debian/osmo-bts.dirs | 3 + debian/osmo-bts.examples | 1 + debian/osmo-bts.init | 152 +++++++++++++++++++++++++++++++++++++++ debian/osmo-bts.install | 1 + debian/rules | 32 +++++++++ debian/source/format | 1 + 13 files changed, 261 insertions(+) create mode 100644 debian/autoreconf create mode 100644 debian/changelog create mode 100644 debian/compat create mode 100644 debian/control create mode 100644 debian/copyright create mode 100644 debian/docs create mode 100644 debian/osmo-bts.default create mode 100644 debian/osmo-bts.dirs create mode 100644 debian/osmo-bts.examples create mode 100755 debian/osmo-bts.init create mode 100644 debian/osmo-bts.install create mode 100755 debian/rules create mode 100644 debian/source/format diff --git a/debian/autoreconf b/debian/autoreconf new file mode 100644 index 000000000..9aea6112d --- /dev/null +++ b/debian/autoreconf @@ -0,0 +1 @@ +osmo-bts diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 000000000..025dd1beb --- /dev/null +++ b/debian/changelog @@ -0,0 +1,5 @@ +osmo-bts (0.3.0~fw-3) precise; urgency=low + + * Initial release + + -- Ivan Kluchnikov Mon, 5 Aug 2013 13:34:24 +0200 diff --git a/debian/compat b/debian/compat new file mode 100644 index 000000000..7f8f011eb --- /dev/null +++ b/debian/compat @@ -0,0 +1 @@ +7 diff --git a/debian/control b/debian/control new file mode 100644 index 000000000..d5a413f3f --- /dev/null +++ b/debian/control @@ -0,0 +1,22 @@ +Source: osmo-bts +Section: net +Priority: optional +Maintainer: Harald Welte +Build-Depends: debhelper (>= 7.0.0~), autotools-dev, pkg-config, libosmocore-dev, dh-autoreconf, libosmo-abis-dev, libortp-dev +Standards-Version: 0.3.0 +Homepage: http://openbsc.osmocom.org/trac/wiki/OsmoBTS +Vcs-Git: git://git.osmocom.org/osmo-bts +Vcs-Browser: http://cgit.osmocom.org/osmo-bts/ + +Package: osmo-bts +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends}, libosmocore +Description: Osmocom GSM BTS implementation. + +Package: osmo-bts-dbg +Architecture: any +Section: debug +Priority: extra +Depends: osmo-bts (= ${binary:Version}), ${misc:Depends} +Description: Debug symbols for the osmo-bts + Make debugging possible \ No newline at end of file diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 000000000..c0f8364bf --- /dev/null +++ b/debian/copyright @@ -0,0 +1,39 @@ +This work was packaged for Debian by: + + Ivan Kluchnikov on Mon, 5 Aug 2013 13:34:24 +0200 + +It was downloaded from: + + git://git.osmocom.org/osmo-bts + +Upstream Author(s): + + Harald Welte + Holger Hans Peter Freyther + Andreas Eversberg + +Copyright: + + Copyright (C) 2011-2013 Harald Welte + Copyright (C) 2011-2013 Holger Hans Peter Freyther + Copyright (C) 2011-2013 Andreas Eversberg + +License: + + GNU AFFERO GENERAL PUBLIC LICENSE Version 3 + +The Debian packaging is: + + Copyright (C) 2013 Ivan Kluchnikov + +# Please chose a license for your packaging work. If the program you package +# uses a mainstream license, using the same license is the safest choice. +# Please avoid to pick license terms that are more restrictive than the +# packaged work, as it may make Debian's contributions unacceptable upstream. +# If you just want it to be GPL version 3, leave the following lines in. + +and is licensed under the GPL version 3, +see "/usr/share/common-licenses/GPL-3". + +# Please also look if there are files or directories which have a +# different copyright/license attached and list them here. diff --git a/debian/docs b/debian/docs new file mode 100644 index 000000000..e845566c0 --- /dev/null +++ b/debian/docs @@ -0,0 +1 @@ +README diff --git a/debian/osmo-bts.default b/debian/osmo-bts.default new file mode 100644 index 000000000..538565161 --- /dev/null +++ b/debian/osmo-bts.default @@ -0,0 +1,2 @@ +CONFIG_FILE="/etc/osmocom/osmo-bts.cfg" + diff --git a/debian/osmo-bts.dirs b/debian/osmo-bts.dirs new file mode 100644 index 000000000..efbca2b74 --- /dev/null +++ b/debian/osmo-bts.dirs @@ -0,0 +1,3 @@ +/etc/osmocom +/var/log/osmocom +/var/lib/osmocom diff --git a/debian/osmo-bts.examples b/debian/osmo-bts.examples new file mode 100644 index 000000000..c5c3519b3 --- /dev/null +++ b/debian/osmo-bts.examples @@ -0,0 +1 @@ +doc/examples diff --git a/debian/osmo-bts.init b/debian/osmo-bts.init new file mode 100755 index 000000000..ff76072c2 --- /dev/null +++ b/debian/osmo-bts.init @@ -0,0 +1,152 @@ +#!/bin/sh +### BEGIN INIT INFO +# Provides: osmo-nitb +# Required-Start: $network $local_fs +# Required-Stop: +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: Osmocom GSM network-in-a-box +# Description: A minimal implementation of the GSM Base Station Controller, +# Mobile Switching Center, Home Location regster and all other +# components to run a self-contained GSM network. +### END INIT INFO + +# Author: Harald Welte + +# PATH should only include /usr/* if it runs after the mountnfs.sh script +PATH=/sbin:/usr/sbin:/bin:/usr/bin +NAME=osmo-bts # Introduce the short server's name here +DESC="Osmocom GSM Network-in-a-Box" # Introduce a short description here +DAEMON=/usr/bin/osmo-bts # Introduce the server's location here +SCRIPTNAME=/etc/init.d/osmo-bts + +# Exit if the package is not installed +[ -x $DAEMON ] || exit 0 + +# Read configuration variable file if it is present +[ -r /etc/default/osmo-bts ] && . /etc/default/osmo-bts + +# Load the VERBOSE setting and other rcS variables +. /lib/init/vars.sh + +# Define LSB log_* functions. +# Depend on lsb-base (>= 3.0-6) to ensure that this file is present. +. /lib/lsb/init-functions + +DAEMON_ARGS="$DAEMON_ARGS -D -c $CONFIG_FILE -l $HLR_FILE" + +# +# Function that starts the daemon/service +# +do_start() +{ + # Return + # 0 if daemon has been started + # 1 if daemon was already running + # 2 if daemon could not be started + start-stop-daemon --start --quiet --exec $DAEMON --test > /dev/null \ + || return 1 + start-stop-daemon --start --quiet --exec $DAEMON -- \ + $DAEMON_ARGS \ + || return 2 + # Add code here, if necessary, that waits for the process to be ready + # to handle requests from services started subsequently which depend + # on this one. As a last resort, sleep for some time. +} + +# +# Function that stops the daemon/service +# +do_stop() +{ + # Return + # 0 if daemon has been stopped + # 1 if daemon was already stopped + # 2 if daemon could not be stopped + # other if a failure occurred + start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --name $NAME + RETVAL="$?" + [ "$RETVAL" = 2 ] && return 2 + # Wait for children to finish too if this is a daemon that forks + # and if the daemon is only ever run from this initscript. + # If the above conditions are not satisfied then add some other code + # that waits for the process to drop all resources that could be + # needed by services started subsequently. A last resort is to + # sleep for some time. + start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON + [ "$?" = 2 ] && return 2 + return "$RETVAL" +} + +# +# Function that sends a SIGHUP to the daemon/service +# +do_reload() { + # + # If the daemon can reload its configuration without + # restarting (for example, when it is sent a SIGHUP), + # then implement that here. + # + start-stop-daemon --stop --signal 1 --quiet $PIDFILE --name $NAME + return 0 +} + +case "$1" in + start) + [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC " "$NAME" + do_start + case "$?" in + 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; + 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; + esac + ;; + stop) + [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME" + do_stop + case "$?" in + 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; + 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; + esac + ;; + status) + status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $? + ;; + #reload|force-reload) + # + # If do_reload() is not implemented then leave this commented out + # and leave 'force-reload' as an alias for 'restart'. + # + #log_daemon_msg "Reloading $DESC" "$NAME" + #do_reload + #log_end_msg $? + #;; + restart|force-reload) + # + # If the "reload" option is implemented then remove the + # 'force-reload' alias + # + log_daemon_msg "Restarting $DESC" "$NAME" + do_stop + case "$?" in + 0|1) + do_start + case "$?" in + 0) log_end_msg 0 ;; + 1) log_end_msg 1 ;; # Old process is still running + *) log_end_msg 1 ;; # Failed to start + esac + ;; + *) + # Failed to stop + log_end_msg 1 + ;; + esac + ;; + *) + #echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2 + echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2 + exit 3 + ;; +esac + +: diff --git a/debian/osmo-bts.install b/debian/osmo-bts.install new file mode 100644 index 000000000..3f372fc2a --- /dev/null +++ b/debian/osmo-bts.install @@ -0,0 +1 @@ +/usr/bin/osmobts-trx \ No newline at end of file diff --git a/debian/rules b/debian/rules new file mode 100755 index 000000000..ff5252f88 --- /dev/null +++ b/debian/rules @@ -0,0 +1,32 @@ +#!/usr/bin/make -f +# -*- makefile -*- +# Sample debian/rules that uses debhelper. +# +# This file was originally written by Joey Hess and Craig Small. +# As a special exception, when this file is copied by dh-make into a +# dh-make output file, you may use that output file without restriction. +# This special exception was added by Craig Small in version 0.37 of dh-make. +# +# Modified to make a template file for a multi-binary package with separated +# build-arch and build-indep targets by Bill Allombert 2001 + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +DEBIAN := $(shell dpkg-parsechangelog | grep ^Version: | cut -d' ' -f2) +DEBVERS := $(shell echo '$(DEBIAN)' | cut -d- -f1) +VERSION := $(shell echo '$(DEBVERS)' | sed -e 's/[+-].*//' -e 's/~//g') + +%: + dh --with autoreconf $@ + +# This is needed for debian stable (squeeze) +override_dh_autoreconf: + autoreconf --install --force + +override_dh_auto_configure: + echo $(VERSION) > .tarball-version + dh_auto_configure -- --enable-trx + +override_dh_strip: + dh_strip --dbg-package=osmo-bts-dbg diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 000000000..89ae9db8f --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (native)