[Build-System] Add ARM64 support, extend Debian helper scripts.
Co-authored-by: s3rj1k <evasive.gyron@gmail.com>
This commit is contained in:
parent
3e5c58c11c
commit
8224bb8e65
|
@ -65,6 +65,9 @@ avoid_mods=(
|
|||
avoid_mods_armhf=(
|
||||
languages/mod_v8
|
||||
)
|
||||
avoid_mods_arm64=(
|
||||
languages/mod_v8
|
||||
)
|
||||
avoid_mods_sid=(
|
||||
directories/mod_ldap
|
||||
)
|
||||
|
@ -352,7 +355,7 @@ EOF
|
|||
print_core_control () {
|
||||
cat <<EOF
|
||||
Package: freeswitch-all
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: freeswitch-meta-all (= \${binary:Version}), freeswitch-meta-all-dbg (= \${binary:Version})
|
||||
Conflicts: freeswitch-all (<= 1.6.7)
|
||||
Description: Cross-Platform Scalable Multi-Protocol Soft Switch
|
||||
|
@ -361,7 +364,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
|
|||
This is a package which depends on all packaged FreeSWITCH modules.
|
||||
|
||||
Package: freeswitch
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${shlibs:Depends}, \${perl:Depends}, \${misc:Depends},
|
||||
libfreeswitch1 (= \${binary:Version})
|
||||
Recommends:
|
||||
|
@ -373,7 +376,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
|
|||
This package contains the FreeSWITCH core.
|
||||
|
||||
Package: libfreeswitch1
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${shlibs:Depends}, \${misc:Depends}, libsofia-sip-ua0 (>= 1.13.17)
|
||||
Recommends:
|
||||
Suggests: libfreeswitch1-dbg
|
||||
|
@ -385,7 +388,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
|
|||
|
||||
Package: python-esl
|
||||
Section: python
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${shlibs:Depends}, \${misc:Depends}, \${python:Depends}
|
||||
Description: Cross-Platform Scalable Multi-Protocol Soft Switch
|
||||
$(debian_wrap "${fs_description}")
|
||||
|
@ -394,7 +397,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
|
|||
|
||||
Package: libesl-perl
|
||||
Section: perl
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${shlibs:Depends}, \${misc:Depends}, \${perl:Depends}
|
||||
Description: Cross-Platform Scalable Multi-Protocol Soft Switch
|
||||
$(debian_wrap "${fs_description}")
|
||||
|
@ -402,7 +405,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
|
|||
This package contains the Perl binding for FreeSWITCH Event Socket Library (ESL).
|
||||
|
||||
Package: freeswitch-meta-bare
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${misc:Depends}, freeswitch (= \${binary:Version})
|
||||
Recommends:
|
||||
freeswitch-doc (= \${binary:Version}),
|
||||
|
@ -420,7 +423,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
|
|||
bare FreeSWITCH install.
|
||||
|
||||
Package: freeswitch-meta-default
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${misc:Depends}, freeswitch (= \${binary:Version}),
|
||||
freeswitch-mod-commands (= \${binary:Version}),
|
||||
freeswitch-mod-conference (= \${binary:Version}),
|
||||
|
@ -462,7 +465,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
|
|||
reasonably basic FreeSWITCH install.
|
||||
|
||||
Package: freeswitch-meta-vanilla
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${misc:Depends}, freeswitch (= \${binary:Version}),
|
||||
freeswitch-init,
|
||||
freeswitch-mod-console (= \${binary:Version}),
|
||||
|
@ -511,7 +514,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
|
|||
running the FreeSWITCH vanilla example configuration.
|
||||
|
||||
Package: freeswitch-meta-sorbet
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${misc:Depends}, freeswitch (= \${binary:Version}),
|
||||
Recommends:
|
||||
freeswitch-init,
|
||||
|
@ -594,7 +597,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
|
|||
modules except a few which aren't recommended.
|
||||
|
||||
Package: freeswitch-meta-all
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${misc:Depends}, freeswitch (= \${binary:Version}),
|
||||
freeswitch-init,
|
||||
freeswitch-lang (= \${binary:Version}),
|
||||
|
@ -705,7 +708,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
|
|||
FreeSWITCH modules.
|
||||
|
||||
Package: freeswitch-meta-codecs
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${misc:Depends}, freeswitch (= \${binary:Version}),
|
||||
freeswitch-mod-amr (= \${binary:Version}),
|
||||
freeswitch-mod-amrwb (= \${binary:Version}),
|
||||
|
@ -732,7 +735,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
|
|||
most FreeSWITCH codecs.
|
||||
|
||||
Package: freeswitch-meta-codecs-dbg
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${misc:Depends}, freeswitch (= \${binary:Version}),
|
||||
freeswitch-mod-amr-dbg (= \${binary:Version}),
|
||||
freeswitch-mod-amrwb-dbg (= \${binary:Version}),
|
||||
|
@ -759,7 +762,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
|
|||
most FreeSWITCH codecs.
|
||||
|
||||
Package: freeswitch-meta-conf
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${misc:Depends},
|
||||
freeswitch-conf-curl (= \${binary:Version}),
|
||||
freeswitch-conf-insideout (= \${binary:Version}),
|
||||
|
@ -773,7 +776,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
|
|||
examples for FreeSWITCH.
|
||||
|
||||
Package: freeswitch-meta-lang
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${misc:Depends},
|
||||
freeswitch-lang-de (= \${binary:Version}),
|
||||
freeswitch-lang-en (= \${binary:Version}),
|
||||
|
@ -789,7 +792,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
|
|||
FreeSWITCH.
|
||||
|
||||
Package: freeswitch-meta-mod-say
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${misc:Depends},
|
||||
freeswitch-mod-say-de (= \${binary:Version}),
|
||||
freeswitch-mod-say-en (= \${binary:Version}),
|
||||
|
@ -814,7 +817,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
|
|||
FreeSWITCH.
|
||||
|
||||
Package: freeswitch-meta-mod-say-dbg
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${misc:Depends},
|
||||
freeswitch-mod-say-de-dbg (= \${binary:Version}),
|
||||
freeswitch-mod-say-en-dbg (= \${binary:Version}),
|
||||
|
@ -839,7 +842,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
|
|||
FreeSWITCH.
|
||||
|
||||
Package: freeswitch-meta-all-dbg
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${misc:Depends}, freeswitch (= \${binary:Version}),
|
||||
freeswitch-meta-codecs-dbg (= \${binary:Version}),
|
||||
freeswitch-meta-mod-say (= \${binary:Version}),
|
||||
|
@ -943,7 +946,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
|
|||
Package: freeswitch-all-dbg
|
||||
Section: debug
|
||||
Priority: optional
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${misc:Depends}, freeswitch-meta-all (= \${binary:Version}), freeswitch-meta-all-dbg (= \${binary:Version})
|
||||
Description: debugging symbols for FreeSWITCH
|
||||
$(debian_wrap "${fs_description}")
|
||||
|
@ -953,7 +956,7 @@ Description: debugging symbols for FreeSWITCH
|
|||
Package: freeswitch-dbg
|
||||
Section: debug
|
||||
Priority: optional
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${misc:Depends}, freeswitch (= \${binary:Version})
|
||||
Description: debugging symbols for FreeSWITCH
|
||||
$(debian_wrap "${fs_description}")
|
||||
|
@ -963,7 +966,7 @@ Description: debugging symbols for FreeSWITCH
|
|||
Package: libfreeswitch1-dbg
|
||||
Section: debug
|
||||
Priority: optional
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${misc:Depends}, libfreeswitch1 (= \${binary:Version})
|
||||
Description: debugging symbols for FreeSWITCH
|
||||
$(debian_wrap "${fs_description}")
|
||||
|
@ -972,7 +975,7 @@ Description: debugging symbols for FreeSWITCH
|
|||
|
||||
Package: libfreeswitch-dev
|
||||
Section: libdevel
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${misc:Depends}, freeswitch
|
||||
Description: development libraries and header files for FreeSWITCH
|
||||
$(debian_wrap "${fs_description}")
|
||||
|
@ -981,7 +984,7 @@ Description: development libraries and header files for FreeSWITCH
|
|||
|
||||
Package: freeswitch-doc
|
||||
Section: doc
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${misc:Depends}
|
||||
Description: documentation for FreeSWITCH
|
||||
$(debian_wrap "${fs_description}")
|
||||
|
@ -994,7 +997,7 @@ Description: documentation for FreeSWITCH
|
|||
## languages
|
||||
|
||||
Package: freeswitch-lang
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${misc:Depends},
|
||||
freeswitch-lang-en (= \${binary:Version})
|
||||
Description: Language files for FreeSWITCH
|
||||
|
@ -1006,7 +1009,7 @@ Description: Language files for FreeSWITCH
|
|||
## timezones
|
||||
|
||||
Package: freeswitch-timezones
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${misc:Depends}
|
||||
Description: Timezone files for FreeSWITCH
|
||||
$(debian_wrap "${fs_description}")
|
||||
|
@ -1020,7 +1023,7 @@ EOF
|
|||
if [ ${use_sysvinit} = "true" ]; then
|
||||
cat <<EOF
|
||||
Package: freeswitch-sysvinit
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${misc:Depends}, lsb-base (>= 3.0-6), sysvinit | sysvinit-utils
|
||||
Conflicts: freeswitch-init
|
||||
Provides: freeswitch-init
|
||||
|
@ -1033,7 +1036,7 @@ EOF
|
|||
else
|
||||
cat <<EOF
|
||||
Package: freeswitch-systemd
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${misc:Depends}, systemd
|
||||
Conflicts: freeswitch-init, freeswitch-all (<= 1.6.7)
|
||||
Provides: freeswitch-init
|
||||
|
@ -1051,7 +1054,7 @@ print_mod_control () {
|
|||
cat <<EOF
|
||||
Package: freeswitch-${module_name//_/-}
|
||||
Section: ${m_section}
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
$(debian_wrap "Depends: \${shlibs:Depends}, \${misc:Depends}, libfreeswitch1 (= \${binary:Version}), ${depends}")
|
||||
$(debian_wrap "Recommends: ${recommends}")
|
||||
$(debian_wrap "Suggests: freeswitch-${module_name//_/-}-dbg, ${suggests}")
|
||||
|
@ -1066,7 +1069,7 @@ Description: ${description} for FreeSWITCH
|
|||
Package: freeswitch-${module_name//_/-}-dbg
|
||||
Section: debug
|
||||
Priority: optional
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${misc:Depends},
|
||||
freeswitch-${module_name//_/-} (= \${binary:Version})
|
||||
Description: ${description} for FreeSWITCH (debug)
|
||||
|
@ -1131,7 +1134,7 @@ print_conf_overrides () {
|
|||
print_conf_control () {
|
||||
cat <<EOF
|
||||
Package: freeswitch-conf-${conf//_/-}
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${misc:Depends}
|
||||
Conflicts: freeswitch-all (<= 1.6.7)
|
||||
Description: FreeSWITCH ${conf} configuration
|
||||
|
@ -1165,7 +1168,7 @@ print_lang_control () {
|
|||
esac
|
||||
cat <<EOF
|
||||
Package: freeswitch-lang-${lang//_/-}
|
||||
Architecture: amd64 armhf
|
||||
Architecture: amd64 armhf arm64
|
||||
Depends: \${misc:Depends}
|
||||
Recommends: freeswitch-sounds-${lang}
|
||||
Conflicts: freeswitch-all (<= 1.6.7)
|
||||
|
|
|
@ -140,14 +140,16 @@ prep_create_orig () {
|
|||
set -e
|
||||
|
||||
local OPTIND OPTARG
|
||||
local uver="" hrev="" bundle_deps=true
|
||||
local uver="" hrev="" bundle_deps=true soft_reset=false
|
||||
|
||||
while getopts 'bm:nv:z:' o "$@"; do
|
||||
while getopts 'bm:nv:V:xz:' o "$@"; do
|
||||
case "$o" in
|
||||
b) ;;
|
||||
m) ;;
|
||||
n) uver="nightly";;
|
||||
v) uver="$OPTARG";;
|
||||
V) uver="$OPTARG";;
|
||||
x) soft_reset=true;;
|
||||
z) ;;
|
||||
esac
|
||||
done
|
||||
|
@ -161,8 +163,12 @@ prep_create_orig () {
|
|||
local treeish="$1"
|
||||
[ -n "$treeish" ] || treeish="HEAD"
|
||||
|
||||
if $soft_reset; then
|
||||
git reset --soft "$treeish"
|
||||
else
|
||||
check_repo_clean
|
||||
git reset --hard "$treeish"
|
||||
fi
|
||||
|
||||
if $bundle_deps; then
|
||||
(cd libs && getlibs)
|
||||
|
@ -180,23 +186,29 @@ create_orig () {
|
|||
set -e
|
||||
|
||||
local OPTIND OPTARG
|
||||
local bundle_deps=true modules_list="" zl=9e
|
||||
local bundle_deps=true modules_list="" soft_reset=false auto_orig=false zl=9e
|
||||
|
||||
local uver="$(prep_create_orig "$@")"
|
||||
|
||||
while getopts 'bm:nv:z:' o "$@"; do
|
||||
while getopts 'bm:nv:V:xz:' o "$@"; do
|
||||
case "$o" in
|
||||
b) ;;
|
||||
m) modules_list="$OPTARG";;
|
||||
n) ;;
|
||||
v) ;;
|
||||
V) auto_orig=true;;
|
||||
x) soft_reset=true;;
|
||||
z) zl="$OPTARG";;
|
||||
esac
|
||||
done
|
||||
shift $(($OPTIND-1))
|
||||
|
||||
local dver="$(mk_dver "$uver")"
|
||||
local orig="../freeswitch_$dver~$(lsb_release -sc).orig.tar.xz"
|
||||
local orig
|
||||
if $auto_orig; then
|
||||
orig="../freeswitch_$(debian/version-omit_revision.pl).orig.tar.xz"
|
||||
else
|
||||
orig="../freeswitch_$(mk_dver "$uver")~$(lsb_release -sc).orig.tar.xz"
|
||||
fi
|
||||
|
||||
mv .gitattributes .gitattributes.orig
|
||||
|
||||
|
@ -223,7 +235,11 @@ create_orig () {
|
|||
|
||||
mv .gitattributes.orig .gitattributes
|
||||
|
||||
if $soft_reset; then
|
||||
git reset --soft HEAD^
|
||||
else
|
||||
git reset --hard HEAD^ && git clean -fdx
|
||||
fi
|
||||
} 1>&2
|
||||
echo $orig
|
||||
}
|
||||
|
@ -292,9 +308,9 @@ create_dsc () {
|
|||
|
||||
prep_create_dsc "$@"
|
||||
|
||||
local OPTIND OPTARG suite_postfix="" suite_postfix_p=false zl=9
|
||||
local OPTIND OPTARG suite_postfix="" suite_postfix_p=false soft_reset=false zl=9
|
||||
|
||||
while getopts 'a:f:m:p:s:u:z:' o "$@"; do
|
||||
while getopts 'a:f:m:p:s:u:xz:' o "$@"; do
|
||||
case "$o" in
|
||||
a) ;;
|
||||
f) ;;
|
||||
|
@ -302,6 +318,7 @@ create_dsc () {
|
|||
p) ;;
|
||||
s) ;;
|
||||
u) suite_postfix="$OPTARG"; suite_postfix_p=true;;
|
||||
x) soft_reset=true;;
|
||||
z) zl="$OPTARG";;
|
||||
esac
|
||||
done
|
||||
|
@ -328,7 +345,11 @@ create_dsc () {
|
|||
|
||||
local dsc="../$(dsc_base).dsc"
|
||||
|
||||
if $soft_reset; then
|
||||
git reset --soft HEAD^
|
||||
else
|
||||
git reset --hard HEAD^ && git clean -fdx
|
||||
fi
|
||||
} 1>&2
|
||||
echo $dsc
|
||||
}
|
||||
|
@ -686,6 +707,7 @@ commands:
|
|||
Set FS bootstrap/build -j flags
|
||||
-u <suite-postfix>
|
||||
Specify a custom suite postfix
|
||||
-x Use git soft reset instead of hard reset
|
||||
-z Set compression level
|
||||
|
||||
create-orig <treeish> (same for 'prep_create_orig')
|
||||
|
@ -694,6 +716,8 @@ commands:
|
|||
Choose custom list of modules to build
|
||||
-n Nightly build
|
||||
-v Set version
|
||||
-V Set version (without replacing every '-' to '~')
|
||||
-x Use git soft reset instead of hard reset
|
||||
-z Set compression level
|
||||
|
||||
EOF
|
||||
|
|
|
@ -0,0 +1,22 @@
|
|||
#!/usr/bin/perl
|
||||
use strict;
|
||||
use warnings;
|
||||
use Dpkg::Version;
|
||||
|
||||
my $version;
|
||||
|
||||
open(my $fh, '-|', 'dpkg-parsechangelog -S version') or die "Failed to execute dpkg-parsechangelog: $!";
|
||||
{
|
||||
local $/;
|
||||
$version = <$fh>;
|
||||
}
|
||||
close $fh;
|
||||
|
||||
$version =~ s/\s+$//;
|
||||
|
||||
die "No version found or empty output from dpkg-parsechangelog" unless defined $version and $version ne '';
|
||||
|
||||
my $v = Dpkg::Version->new($version);
|
||||
my $vs = $v->as_string(omit_epoch => 1, omit_revision => 1);
|
||||
|
||||
print "$vs\n";
|
Loading…
Reference in New Issue