Summary:ASTERISK-27729: [patch] install_prereq: Add NetBSD.
Reporter:Alexander Traud (traud)Labels:patch webrtc
Date Opened:2018-03-08 11:14:00.000-0600Date Closed:2018-03-13 18:25:01
Versions:13.19.2 Frequency of
Environment:NetBSD 7.1.1Attachments:( 0) NetBSD_install_prereq.patch
Description:When it comes to NetBSD, Asterisk has seen many contributions from the community in the past, all started in August 2004 with Mantis 2274 (now ASTERISK-2244). Since then, the NetBSD team maintained a package of Asterisk and keeps that current. Currently, they offer Asterisk 13 LTS.

Although many of those NetBSD users are likely to go for the pre-compiled package, the NetBSD support should be as complete as possible within Asterisk already. One puzzle piece is the script {{./contrib/scripts/install_prereq}}, which allows a first-time user to install required libraries to compile all Asterisk modules.

After tests in NetBSD 7.1.1 the following differences to FreeBSD were revealed (see ASTERISK-27686):

*undetected* by {{./configure}}
* binutils, see ASTERISK-27641

Even when ASTERISK-27641 is solved, it is not going to work because the sym-link 'libbfd.so' is missing. After creating that, you are going to notice that the headers are missing. After installing binutils for those headers, you are going to notice that libiberty is required. However, the version of libiberty in NetBSD is too old and does not contain the symbols filename_\{n\}cmp.

*not added* because not found:
* Bluetooth ([BlueZ|http://www.bluez.org/])
* [Corosync|http://corosync.github.io/]
* [Hoard|http://hoard.org/]
* Not Erik's Windowing Toolkit ([newt|http://pagure.io/newt])
* libresample, not API compatible with libsamplerate either
* libSRTP2, FreeBSD is still using the original libSRTP
* Open Settlement Protocol Toolkit (OSPTK)
* Voicetronix (libvpb)
* [WebRTC iLBC|http://github.com/dekkers/libilbc]

*not added*:
* gcc, because base compiler is installed already (gcc 4.8.5)
* jack
* xmlstarlet, see ASTERISK-27606

The module app_jack -- the only module which requires jack -- requires libresample as well. libresample was not found. Therefore, no reason was found to install jack, although that is available as port.

iksemel installs the shell bash as dependency. However, when xmlstarlet and bash are installed, Asterisk runs into that ASTERISK-27606. In NetBSD, {{make install}} aborts with {{sh: bad substitution}}. Therefore, xmlstarlet was not added to the list, yet.

The following packages are installed already on NetBSD 7.1.1:
editline sqlite3 openssl lua5.3 flex libzip openldap-client. I am not sure whether it is better not to add them explicitly.
Comments:By: Asterisk Team (asteriskteam) 2018-03-08 11:14:01.446-0600

Thanks for creating a report! The issue has entered the triage process. That means the issue will wait in this status until a Bug Marshal has an opportunity to review the issue. Once the issue has been reviewed you will receive comments regarding the next steps towards resolution.

A good first step is for you to review the [Asterisk Issue Guidelines|https://wiki.asterisk.org/wiki/display/AST/Asterisk+Issue+Guidelines] if you haven't already. The guidelines detail what is expected from an Asterisk issue report.

Then, if you are submitting a patch, please review the [Patch Contribution Process|https://wiki.asterisk.org/wiki/display/AST/Patch+Contribution+Process].

By: Friendly Automation (friendly-automation) 2018-03-13 18:25:02.201-0500

Change 8480 merged by Jenkins2:
install_prereq: Add NetBSD.


By: Friendly Automation (friendly-automation) 2018-03-13 18:28:56.442-0500

Change 8481 merged by Jenkins2:
install_prereq: Add NetBSD.


By: Friendly Automation (friendly-automation) 2018-03-13 18:36:17.354-0500

Change 8482 merged by Jenkins2:
install_prereq: Add NetBSD.