Summary: | net-misc/asterisk-13.32.0: keyword request for arm, arm64, ppc, ppc64 | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Samuel Rajan D <samuelrajan747> |
Component: | Keywording | Assignee: | Jaco Kroon <jaco> |
Status: | RESOLVED FIXED | ||
Severity: | minor | CC: | gentoo |
Priority: | Normal | Keywords: | PullRequest |
Version: | unspecified | Flags: | nattka:
sanity-check+
|
Hardware: | All | ||
OS: | Linux | ||
See Also: |
https://github.com/gentoo/gentoo/pull/15154 https://github.com/gentoo/gentoo/pull/15246 https://github.com/gentoo/gentoo/pull/16708 https://bugs.gentoo.org/show_bug.cgi?id=732930 https://github.com/gentoo/gentoo/pull/16723 |
||
Whiteboard: | |||
Package list: |
net-misc/asterisk-13.33.0 ~arm ~arm64 ~ppc ~ppc64
net-misc/asterisk-16.10.0 ~arm ~arm64 ~ppc ~ppc64
dev-libs/iksemel-1.4-r1 ~arm ~arm64 ~ppc ~ppc64
net-libs/libpri-1.6.0 ~arm ~arm64 ~ppc ~ppc64
net-misc/dahdi-tools-3.1.0 ~arm ~arm64 ~ppc ~ppc64
net-libs/osptoolkit-4.13.0 ~arm ~arm64 ~ppc ~ppc64
net-libs/pjproject-2.9-r2 ~arm ~arm64 ~ppc ~ppc64
net-misc/dahdi-3.1.0-r1 ~arm ~arm64 ~ppc ~ppc64
net-misc/asterisk-moh-opsound-2.03-r1 ~arm ~arm64 ~ppc ~ppc64
net-misc/asterisk-core-sounds-1.6.1-r1 ~arm ~arm64 ~ppc ~ppc64
net-misc/asterisk-extra-sounds-1.5.2 ~arm ~arm64 ~ppc ~ppc64
media-libs/bcg729-1.0.4-r1 ~arm ~arm64 ~ppc ~ppc64
sys-cluster/corosync-2.4.2 ~arm
sys-cluster/libqb-1.9.0 ~arm
|
Runtime testing required: | No |
Bug Depends on: | 725888 | ||
Bug Blocks: |
Description
Samuel Rajan D
2020-04-06 09:04:20 UTC
An automated check of this bug failed - repoman reported dependency errors (15 lines truncated):
> dependency.bad net-misc/asterisk/asterisk-13.31.0.ebuild: DEPEND: ~arm64(default/linux/arm64/17.0) ['dev-libs/iksemel', 'net-libs/libpri', 'net-misc/dahdi-tools', 'net-libs/osptoolkit', 'net-libs/pjproject']
> dependency.bad net-misc/asterisk/asterisk-13.31.0.ebuild: RDEPEND: ~arm64(default/linux/arm64/17.0) ['dev-libs/iksemel', 'net-libs/libpri', 'net-misc/dahdi-tools', 'net-libs/osptoolkit', 'net-libs/pjproject', 'net-misc/asterisk-core-sounds', 'net-misc/asterisk-extra-sounds', 'net-misc/asterisk-moh-opsound']
> dependency.bad net-misc/asterisk/asterisk-13.31.0.ebuild: DEPEND: ~arm64(default/linux/arm64/17.0/desktop) ['dev-libs/iksemel', 'net-libs/libpri', 'net-misc/dahdi-tools', 'net-libs/osptoolkit', 'net-libs/pjproject']
An automated check of this bug failed - repoman reported dependency errors (21 lines truncated):
> dependency.bad net-misc/asterisk/asterisk-13.31.0.ebuild: RDEPEND: ~arm64(default/linux/arm64/17.0) ['net-misc/asterisk-core-sounds', 'net-misc/asterisk-extra-sounds', 'net-misc/asterisk-moh-opsound']
> dependency.bad net-misc/asterisk/asterisk-13.31.0.ebuild: RDEPEND: ~arm64(default/linux/arm64/17.0/desktop) ['net-misc/asterisk-core-sounds', 'net-misc/asterisk-extra-sounds', 'net-misc/asterisk-moh-opsound']
> dependency.bad net-misc/asterisk/asterisk-13.31.0.ebuild: RDEPEND: ~arm64(default/linux/arm64/17.0/desktop/gnome) ['net-misc/asterisk-core-sounds', 'net-misc/asterisk-extra-sounds', 'net-misc/asterisk-moh-opsound']
> dependency.bad net-misc/dahdi-tools/dahdi-tools-2.10.1.ebuild: DEPEND: ~arm64(default/linux/arm64/17.0) ['>=net-misc/dahdi-2.5.0']
> dependency.bad net-misc/dahdi-tools/dahdi-tools-2.10.1.ebuild: RDEPEND: ~arm64(default/linux/arm64/17.0) ['>=net-misc/dahdi-2.5.0']
> dependency.bad net-misc/dahdi-tools/dahdi-tools-2.10.1.ebuild: DEPEND: ~arm64(default/linux/arm64/17.0/desktop) ['>=net-misc/dahdi-2.5.0']
Sanity check failed:
> nonsolvable depset(depend) keyword(~arm64) stable profile (default/linux/arm64/17.0) (9 total): solutions: [ >=net-misc/dahdi-2.5.0 ]
> nonsolvable depset(rdepend) keyword(~arm64) stable profile (default/linux/arm64/17.0) (9 total): solutions: [ >=net-misc/dahdi-2.5.0 ]
> nonsolvable depset(rdepend) keyword(~arm64) stable profile (default/linux/arm64/17.0) (9 total): solutions: [ net-misc/asterisk-moh-opsound, net-misc/asterisk-core-sounds, net-misc/asterisk-extra-sounds ]
Some related DAHDI compile fixes required in net-misc/dahdi for the case where the kernel doesn't have PCI. Also other compile fixes as per requirements for 5.6 kernels. Unable to check for sanity:
> invalid package spec: net-libs/libpri-1.6.
Sanity check failed:
> nonsolvable depset(depend) keyword(~arm) dev profile (default/linux/arm/17.0/armv4) (31 total): solutions: [ media-libs/bcg729 ]
> nonsolvable depset(depend) keyword(~arm) dev profile (default/linux/arm/17.0/armv4) (31 total): solutions: [ sys-cluster/corosync ]
> nonsolvable depset(depend) keyword(~arm) stable profile (default/linux/arm/17.0) (1 total): solutions: [ sys-cluster/corosync ]
> nonsolvable depset(depend) keyword(~arm) stable profile (default/linux/arm/17.0) (10 total): solutions: [ media-libs/bcg729 ]
> nonsolvable depset(rdepend) keyword(~arm) dev profile (default/linux/arm/17.0/armv4) (31 total): solutions: [ media-libs/bcg729 ]
> nonsolvable depset(rdepend) keyword(~arm) dev profile (default/linux/arm/17.0/armv4) (31 total): solutions: [ sys-cluster/corosync ]
> nonsolvable depset(rdepend) keyword(~arm) stable profile (default/linux/arm/17.0) (1 total): solutions: [ sys-cluster/corosync ]
> nonsolvable depset(rdepend) keyword(~arm) stable profile (default/linux/arm/17.0) (10 total): solutions: [ media-libs/bcg729 ]
Sanity check failed:
> nonsolvable depset(depend) keyword(~arm) dev profile (default/linux/arm/17.0/armv4) (31 total): solutions: [ >=sys-cluster/libqb-0.14.4 ]
> nonsolvable depset(depend) keyword(~arm) stable profile (default/linux/arm/17.0) (1 total): solutions: [ >=sys-cluster/libqb-0.14.4 ]
> nonsolvable depset(rdepend) keyword(~arm) dev profile (default/linux/arm/17.0/armv4) (31 total): solutions: [ >=sys-cluster/libqb-0.14.4 ]
> nonsolvable depset(rdepend) keyword(~arm) stable profile (default/linux/arm/17.0) (1 total): solutions: [ >=sys-cluster/libqb-0.14.4 ]
(In reply to Samuel Rajan D from comment #0) > Hi, I've managed to successfully compile and start asterisk 13.31.0 on > arm64. The only extra step is executing `chown asterisk:root > /var/lib/astersik`. Would you mind adding arm64 as a keyword I did a clean merge check now and it seems sane on amd64. I used the ebuild for 13.32.0-r1 though, https://github.com/gentoo/gentoo/pull/15246 which is for bump for a nitty security issue we've had a for a few years now. I do recommend this gets updated to rather keywords net-misc/asterisk-13.32.0-r1 once that PR is merged. The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=597ea5a7c16cb7b3ead096d54f78c9369cd41e7b commit 597ea5a7c16cb7b3ead096d54f78c9369cd41e7b Author: Jaco Kroon <jaco@uls.co.za> AuthorDate: 2020-03-28 19:56:25 +0000 Commit: Joonas Niilola <juippis@gentoo.org> CommitDate: 2020-04-09 12:37:45 +0000 net-misc/dahdi: build fixes. There were still some cases where specific kernel versions wouldn't compile. This now compiles on all versions that I've got. Consolidated the patches for non-digium hardware (which is where most of the issues were). Added a patch for dealing with 64-bit division on PPC (works on amd64), untested on ppc where it's required. Will also affect ARM now - as per newest keyword request. Fix for systems without CONFIG_PCI. Nuke empty RDEPEND= and DEPEND= lines. Bug: https://bugs.gentoo.org/659488 Bug: https://bugs.gentoo.org/716426 Closes: https://bugs.gentoo.org/716226 Closes: https://bugs.gentoo.org/716468 Package-Manager: Portage-2.3.89, Repoman-2.3.20 Signed-off-by: Jaco Kroon <jaco@uls.co.za> Closes: https://github.com/gentoo/gentoo/pull/15154 Signed-off-by: Joonas Niilola <juippis@gentoo.org> net-misc/dahdi/Manifest | 2 +- net-misc/dahdi/dahdi-3.1.0-r1.ebuild | 5 +---- 2 files changed, 2 insertions(+), 5 deletions(-) Unable to check for sanity:
> no match for package: net-libs/pjproject-2.9-r1
All sanity-check issues have been resolved Unable to check for sanity:
> no match for package: net-misc/asterisk-13.33.0
All sanity-check issues have been resolved ~ppc/~ppc64 kryworded (In reply to Sergei Trofimovich from comment #14) > ~ppc/~ppc64 kryworded Hi Sergei, dahdi compiled without issues for ppc? So it has 64-bit division on-cpu I'm guessing and it's only arm that's still a possible issue here. (In reply to Jaco Kroon from comment #15) > > Hi Sergei, > > dahdi compiled without issues for ppc? So it has 64-bit division on-cpu I'm > guessing and it's only arm that's still a possible issue here. Whilst I'm no expert, I know a friend of mine was running asterisk on raspberry Pi's for a number of years now, and there is the distribution based on http://www.raspberry-asterisk.org/ so I'm imagining any problems aren't insurmountable for ARM. I'm obviously unsure about the move to use dahdi, which may bring it's own issues, but I'd be interested to see how the above project compares with upstream! Hope this helps a bit! Hi, (In reply to Michael 'veremitz' Everitt from comment #16) > (In reply to Jaco Kroon from comment #15) > > > > Hi Sergei, > > > > dahdi compiled without issues for ppc? So it has 64-bit division on-cpu I'm > > guessing and it's only arm that's still a possible issue here. > > Whilst I'm no expert, I know a friend of mine was running asterisk on > raspberry Pi's for a number of years now, and there is the distribution > based on http://www.raspberry-asterisk.org/ so I'm imagining any problems > aren't insurmountable for ARM. > > I'm obviously unsure about the move to use dahdi, which may bring it's own > issues, but I'd be interested to see how the above project compares with > upstream! Hope this helps a bit! The userspace tools honestly aren't an issue. gcc takes care of the 64 emulation where required. However, when we move into kernel world, on a pure 32-bit processor we suddenly can't divide 64-bit numbers. So when dahdi starts calculating exact timings and needs to divide these 64-bit timestamps to calculate stuff the wheels come of. On all arches the kernel provides convenient (well, kinda) functions to deal with 64-bit math like this, but a significant amount of code doesn't use these functions to perform divisions. On 32-bit with 64-bit instructions for this this isn't an issue, so for example on i686 when you divide you load a 64-bit bit number into edx:eax and then divide with ecx (32 bit) registers (from memory, so could be fuzzy). Pure 32-bit arches don't have this. And thus gcc calls a function normally provided by libc as I understand in order emulate this when 64-bit division is involved. Obviously the kernel doesn't provide said functions, but provide MACROs or inline functions to deal with this "in place". So it's just a matter of fixing the DAHDI code to use these MACROs. Thus if DAHDI compiles correctly on ppc, I'm assuming it does similar things at processor level as x86, however, I know for a fact (based on link-time errors produced during builds as has been reported) that arm does not. One of the Digium employees actually asked me straight up how I'm finding all these issues. (In reply to Jaco Kroon from comment #17) > Hi, <snip> > > Thus if DAHDI compiles correctly on ppc, I'm assuming it does similar things > at processor level as x86, however, I know for a fact (based on link-time > errors produced during builds as has been reported) that arm does not. One > of the Digium employees actually asked me straight up how I'm finding all > these issues. This is what we commonly call extensive testing ... ;) Thanks for your efforts, and explanation - hopefully we can get this over the hump! :) I seem to be getting stuck in the menuselect thing. (In reply to Sam James (sec padawan) from comment #19) > I seem to be getting stuck in the menuselect thing. menuselect thing? I'm not aware of (or it's slipping my mind) a menuselect thing? I wanted to look at the DAHDI thing more in depth today, but that unfortunately didn't happen. PING. asterisk's USE=ssl (menuselect infinite loop) should be fixed in: 13.33.0 13.34.0 16.10.0 16.11.1 So I see no reason for further blocking on this. Please advise if I overlooked something. The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0c0b75190b716e3a3bf222baacfb6d15ec39213d commit 0c0b75190b716e3a3bf222baacfb6d15ec39213d Author: Jaco Kroon <jaco@uls.co.za> AuthorDate: 2020-07-15 17:08:14 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2020-07-15 17:42:10 +0000 net-misc/dahdi: Add CONFIG_PCI as kernel config requirement. Picked up by Sam <sam@gentoo.org> whilst working on: Bug: https://bugs.gentoo.org/716426 Signed-off-by: Jaco Kroon <jaco@uls.co.za> Closes: https://github.com/gentoo/gentoo/pull/16708 Signed-off-by: Sam James <sam@gentoo.org> net-misc/dahdi/dahdi-3.1.0-r1.ebuild | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) ~arm64 added The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=535dcfcfed481a4b800f8b4056adab6961871230 commit 535dcfcfed481a4b800f8b4056adab6961871230 Author: Sam James <sam@gentoo.org> AuthorDate: 2020-07-16 18:09:46 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2020-07-16 18:33:19 +0000 profiles/arch/arm64: mask net-libs/osptoolkit Bug: https://bugs.gentoo.org/716426 Bug: https://bugs.gentoo.org/674346 Bug: https://bugs.gentoo.org/731250 Signed-off-by: Sam James <sam@gentoo.org> profiles/arch/arm64/package.mask | 7 +++++++ profiles/arch/arm64/package.use.mask | 5 +++++ 2 files changed, 12 insertions(+) ~arm added, closing The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c0b57275b2521986bf71bafe98ca406af26c3190 commit c0b57275b2521986bf71bafe98ca406af26c3190 Author: Jaco Kroon <jaco@uls.co.za> AuthorDate: 2020-07-19 08:06:22 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2020-07-20 21:02:45 +0000 net-misc/asterisk: forward ~arm and ~arm64 13.33.0 and 16.10.0 was marked for ~arm and ~arm64, but not 13.34.0 and 16.11.1. Add to all newer versions. Bug: https://bugs.gentoo.org/716426 Signed-off-by: Jaco Kroon <jaco@uls.co.za> Signed-off-by: Sam James <sam@gentoo.org> net-misc/asterisk/asterisk-13.34.0.ebuild | 2 +- net-misc/asterisk/asterisk-13.35.0.ebuild | 2 +- net-misc/asterisk/asterisk-16.11.1.ebuild | 2 +- net-misc/asterisk/asterisk-16.12.0.ebuild | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) |