]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
FS-11972: [Build-System] Add Raspberry Pi support.
authorAndrey Volk <andywolk@gmail.com>
Mon, 29 Jul 2019 23:29:27 +0000 (03:29 +0400)
committerAndrey Volk <andywolk@gmail.com>
Wed, 31 Jul 2019 15:00:13 +0000 (19:00 +0400)
debian/bootstrap.sh
debian/util.sh

index 1ae65a89d00b6c6b1a2f07ba5d74a2a7d33eacc4..325265e39d3498100fcc21dd3a5870bf24292f7d 100755 (executable)
@@ -6,8 +6,9 @@ codename="sid"
 modulelist_opt=""
 modules_add=""
 use_sysvinit=""
-while getopts "c:m:p:v" o; do
+while getopts "a:c:m:p:v" o; do
   case "$o" in
+    a) avoid_mods_arch="$OPTARG" ;;
     c) codename="$OPTARG" ;;
     m) modulelist_opt="$OPTARG" ;;
     p) modules_add="$modules_add $OPTARG";;
@@ -62,6 +63,9 @@ avoid_mods=(
   xml_int/mod_xml_ldap
   xml_int/mod_xml_radius
 )
+avoid_mods_armhf=(
+  languages/mod_v8
+)
 avoid_mods_sid=(
   directories/mod_ldap
 )
@@ -163,7 +167,8 @@ postfix () {
 
 avoid_mod_filter () {
   local x="avoid_mods_$codename[@]"
-  local -a mods=("${avoid_mods[@]}" "${!x}")
+  local y="avoid_mods_$avoid_mods_arch[@]"
+  local -a mods=("${avoid_mods[@]}" "${!x}" "${!y}")
   for x in "${mods[@]}"; do
     if [ "$1" = "$x" ]; then
       [ "$2" = "show" ] && echo "excluding module $x" >&2
@@ -342,7 +347,7 @@ EOF
 print_core_control () {
 cat <<EOF
 Package: freeswitch-all
-Architecture: amd64
+Architecture: amd64 armhf
 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
@@ -351,7 +356,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
  This is a package which depends on all packaged FreeSWITCH modules.
 
 Package: freeswitch
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${shlibs:Depends}, \${perl:Depends}, \${misc:Depends},
  libfreeswitch1 (= \${binary:Version})
 Recommends:
@@ -363,7 +368,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
  This package contains the FreeSWITCH core.
 
 Package: libfreeswitch1
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${shlibs:Depends}, \${misc:Depends}
 Recommends:
 Suggests: libfreeswitch1-dbg
@@ -375,7 +380,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
 
 Package: python-esl
 Section: python
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${shlibs:Depends}, \${misc:Depends}, \${python:Depends}
 Description: Cross-Platform Scalable Multi-Protocol Soft Switch
  $(debian_wrap "${fs_description}")
@@ -384,7 +389,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
 
 Package: libesl-perl
 Section: perl
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${shlibs:Depends}, \${misc:Depends}, \${perl:Depends}
 Description: Cross-Platform Scalable Multi-Protocol Soft Switch
  $(debian_wrap "${fs_description}")
@@ -392,7 +397,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
+Architecture: amd64 armhf
 Depends: \${misc:Depends}, freeswitch (= \${binary:Version})
 Recommends:
  freeswitch-doc (= \${binary:Version}),
@@ -410,7 +415,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
  bare FreeSWITCH install.
 
 Package: freeswitch-meta-default
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${misc:Depends}, freeswitch (= \${binary:Version}),
  freeswitch-mod-commands (= \${binary:Version}),
  freeswitch-mod-conference (= \${binary:Version}),
@@ -452,7 +457,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
  reasonably basic FreeSWITCH install.
 
 Package: freeswitch-meta-vanilla
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${misc:Depends}, freeswitch (= \${binary:Version}),
  freeswitch-init,
  freeswitch-mod-console (= \${binary:Version}),
@@ -501,7 +506,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
  running the FreeSWITCH vanilla example configuration.
 
 Package: freeswitch-meta-sorbet
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${misc:Depends}, freeswitch (= \${binary:Version}),
 Recommends:
  freeswitch-init,
@@ -584,7 +589,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
  modules except a few which aren't recommended.
 
 Package: freeswitch-meta-all
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${misc:Depends}, freeswitch (= \${binary:Version}),
  freeswitch-init,
  freeswitch-lang (= \${binary:Version}),
@@ -698,7 +703,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
  FreeSWITCH modules.
 
 Package: freeswitch-meta-codecs
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${misc:Depends}, freeswitch (= \${binary:Version}),
  freeswitch-mod-amr (= \${binary:Version}),
  freeswitch-mod-amrwb (= \${binary:Version}),
@@ -725,7 +730,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
  most FreeSWITCH codecs.
 
 Package: freeswitch-meta-codecs-dbg
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${misc:Depends}, freeswitch (= \${binary:Version}),
  freeswitch-mod-amr-dbg (= \${binary:Version}),
  freeswitch-mod-amrwb-dbg (= \${binary:Version}),
@@ -752,7 +757,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
  most FreeSWITCH codecs.
 
 Package: freeswitch-meta-conf
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${misc:Depends},
  freeswitch-conf-curl (= \${binary:Version}),
  freeswitch-conf-insideout (= \${binary:Version}),
@@ -766,7 +771,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
  examples for FreeSWITCH.
 
 Package: freeswitch-meta-lang
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${misc:Depends},
  freeswitch-lang-de (= \${binary:Version}),
  freeswitch-lang-en (= \${binary:Version}),
@@ -782,7 +787,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
  FreeSWITCH.
 
 Package: freeswitch-meta-mod-say
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${misc:Depends},
  freeswitch-mod-say-de (= \${binary:Version}),
  freeswitch-mod-say-en (= \${binary:Version}),
@@ -807,7 +812,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
  FreeSWITCH.
 
 Package: freeswitch-meta-mod-say-dbg
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${misc:Depends},
  freeswitch-mod-say-de-dbg (= \${binary:Version}),
  freeswitch-mod-say-en-dbg (= \${binary:Version}),
@@ -832,7 +837,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
  FreeSWITCH.
 
 Package: freeswitch-meta-all-dbg
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${misc:Depends}, freeswitch (= \${binary:Version}),
  freeswitch-meta-codecs-dbg (= \${binary:Version}),
  freeswitch-meta-mod-say (= \${binary:Version}),
@@ -939,7 +944,7 @@ Description: Cross-Platform Scalable Multi-Protocol Soft Switch
 Package: freeswitch-all-dbg
 Section: debug
 Priority: extra
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${misc:Depends}, freeswitch-meta-all (= \${binary:Version}), freeswitch-meta-all-dbg (= \${binary:Version})
 Description: debugging symbols for FreeSWITCH
  $(debian_wrap "${fs_description}")
@@ -949,7 +954,7 @@ Description: debugging symbols for FreeSWITCH
 Package: freeswitch-dbg
 Section: debug
 Priority: extra
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${misc:Depends}, freeswitch (= \${binary:Version})
 Description: debugging symbols for FreeSWITCH
  $(debian_wrap "${fs_description}")
@@ -959,7 +964,7 @@ Description: debugging symbols for FreeSWITCH
 Package: libfreeswitch1-dbg
 Section: debug
 Priority: extra
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${misc:Depends}, libfreeswitch1 (= \${binary:Version})
 Description: debugging symbols for FreeSWITCH
  $(debian_wrap "${fs_description}")
@@ -968,7 +973,7 @@ Description: debugging symbols for FreeSWITCH
 
 Package: libfreeswitch-dev
 Section: libdevel
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${misc:Depends}, freeswitch
 Description: development libraries and header files for FreeSWITCH
  $(debian_wrap "${fs_description}")
@@ -977,7 +982,7 @@ Description: development libraries and header files for FreeSWITCH
 
 Package: freeswitch-doc
 Section: doc
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${misc:Depends}
 Description: documentation for FreeSWITCH
  $(debian_wrap "${fs_description}")
@@ -990,7 +995,7 @@ Description: documentation for FreeSWITCH
 ## languages
 
 Package: freeswitch-lang
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${misc:Depends},
  freeswitch-lang-en (= \${binary:Version})
 Description: Language files for FreeSWITCH
@@ -1002,7 +1007,7 @@ Description: Language files for FreeSWITCH
 ## timezones
 
 Package: freeswitch-timezones
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${misc:Depends}
 Description: Timezone files for FreeSWITCH
  $(debian_wrap "${fs_description}")
@@ -1016,7 +1021,7 @@ EOF
 if [ ${use_sysvinit} = "true" ]; then
     cat <<EOF
 Package: freeswitch-sysvinit
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${misc:Depends}, lsb-base (>= 3.0-6), sysvinit | sysvinit-utils
 Conflicts: freeswitch-init
 Provides: freeswitch-init
@@ -1029,7 +1034,7 @@ EOF
 else
     cat <<EOF
 Package: freeswitch-systemd
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${misc:Depends}, systemd
 Conflicts: freeswitch-init, freeswitch-all (<= 1.6.7)
 Provides: freeswitch-init
@@ -1047,7 +1052,7 @@ print_mod_control () {
   cat <<EOF
 Package: freeswitch-${module_name//_/-}
 Section: ${m_section}
-Architecture: amd64
+Architecture: amd64 armhf
 $(debian_wrap "Depends: \${shlibs:Depends}, \${misc:Depends}, libfreeswitch1 (= \${binary:Version}), ${depends}")
 $(debian_wrap "Recommends: ${recommends}")
 $(debian_wrap "Suggests: freeswitch-${module_name//_/-}-dbg, ${suggests}")
@@ -1062,7 +1067,7 @@ Description: ${description} for FreeSWITCH
 Package: freeswitch-${module_name//_/-}-dbg
 Section: debug
 Priority: extra
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${misc:Depends},
  freeswitch-${module_name//_/-} (= \${binary:Version})
 Description: ${description} for FreeSWITCH (debug)
@@ -1127,7 +1132,7 @@ print_conf_overrides () {
 print_conf_control () {
   cat <<EOF
 Package: freeswitch-conf-${conf//_/-}
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${misc:Depends}
 Conflicts: freeswitch-all (<= 1.6.7)
 Description: FreeSWITCH ${conf} configuration
@@ -1161,7 +1166,7 @@ print_lang_control () {
   esac
   cat <<EOF
 Package: freeswitch-lang-${lang//_/-}
-Architecture: amd64
+Architecture: amd64 armhf
 Depends: \${misc:Depends}
 Recommends: freeswitch-sounds-${lang}
 Conflicts: freeswitch-all (<= 1.6.7)
index 073ad422c30e1d6b3394f9bf8a38d8a48ba692e1..ccf38cdc2ae7270f6d803144ef9d575053c3b2a4 100755 (executable)
@@ -193,8 +193,9 @@ create_dsc () {
     set -e
     local OPTIND OPTARG modules_conf="" modules_list="" speed="normal" suite_postfix="" suite_postfix_p=false zl=9
     local modules_add=""
-    while getopts 'f:m:p:s:u:z:' o "$@"; do
+    while getopts 'a:f:m:p:s:u:z:' o "$@"; do
       case "$o" in
+        a) avoid_mods_arch="$OPTARG";;
         f) modules_conf="$OPTARG";;
         m) modules_list="$OPTARG";;
         p) modules_add="$modules_add $OPTARG";;
@@ -225,7 +226,7 @@ create_dsc () {
         bootstrap_args="$bootstrap_args -p${x}"
       done
     fi
-    (cd debian && ./bootstrap.sh -c $distro $bootstrap_args)
+    (cd debian && ./bootstrap.sh -a "$avoid_mods_arch" -c $distro $bootstrap_args)
     case "$speed" in
       paranoid) sed -i ./debian/rules \
         -e '/\.stamp-bootstrap:/{:l2 n; /\.\/bootstrap.sh -j/{s/ -j//; :l3 n; b l3}; b l2};' ;;