Summary: | ASTERISK-27720: [patch] BuildSystem: Enable Advanced Linux Sound Architecture (ALSA) in NetBSD. | ||
Reporter: | Alexander Traud (traud) | Labels: | patch |
Date Opened: | 2018-03-05 10:03:25.000-0600 | Date Closed: | 2018-03-20 06:47:10 |
Priority: | Minor | Regression? | |
Status: | Closed/Complete | Components: | Channels/chan_alsa Core/BuildSystem |
Versions: | 13.19.2 15.2.2 | Frequency of Occurrence | |
Related Issues: | |||
Environment: | NetBSD 7.1.1 | Attachments: | ( 0) NetBSD_enable_alsa.patch |
Description: | A shared library should specify all its dependencies by itself. That way, a user (here: Asterisk) simply adds that library, for example:
{code}cc hello.c -lasound{code} Then, the platform loads the dependent libraries automatically. Therefore, looking for a library without any additional libraries should be the default. Everything else should be the exception. Since Autotools were added to Asterisk, the shared library {{libasound.so}} was always loaded together with -lm and -ldl, always. Why ever. The commit logs do not reveal which platform/version required that. Anyway, {{libdl.so}} is not available on BSD systems like NetBSD. Therefore, the attached patch first tries without any additional libraries. To keep compatibility with an unknown platform/version, the script {{./configure}} retries with those libraries as previously. Furthermore, the error code ESTRPIPE does not exist on NetBSD. Finally, a check for an external library should use a symbol actually used in Asterisk. {{snd_spcm_init(.)}} is not used but {{snd_pcm_open(.)}} is. | ||
Comments: | By: Asterisk Team (asteriskteam) 2018-03-05 10:03:26.603-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: Alexander Traud (traud) 2018-03-16 10:02:38.556-0500 bq. To keep compatibility with an unknown platform/version, the script ./configure retries with those libraries as previously. After retesting all officially supported platforms and their supported versions, and after retesting all platforms listed in the script {{./contrib/scripts/install_prereq}}, no installation required those additional libraries. Therefore, that second check with those additional libraries can be removed safely. By: Friendly Automation (friendly-automation) 2018-03-20 06:47:11.573-0500 Change 8433 merged by Jenkins2: BuildSystem: Enable Advanced Linux Sound Architecture (ALSA) in NetBSD. [https://gerrit.asterisk.org/8433|https://gerrit.asterisk.org/8433] By: Friendly Automation (friendly-automation) 2018-03-20 06:53:11.661-0500 Change 8435 merged by Joshua Colp: BuildSystem: Enable Advanced Linux Sound Architecture (ALSA) in NetBSD. [https://gerrit.asterisk.org/8435|https://gerrit.asterisk.org/8435] By: Friendly Automation (friendly-automation) 2018-03-20 06:55:34.540-0500 Change 8434 merged by Jenkins2: BuildSystem: Enable Advanced Linux Sound Architecture (ALSA) in NetBSD. [https://gerrit.asterisk.org/8434|https://gerrit.asterisk.org/8434] |