Closed truedat101 closed 5 years ago
Good question. At some point in the near past, the packages for D (there were a handful: ldc, gdc, libphobos) fell out of maintenance (I want to say it was the GDC package, but this was awhile back). Consequently, the downstream project, ArchLinux ARM which uses these packages, couldn't pass through builds, and therefore, Kevin (from Arch Linux ARM) removed these packages from the downstream project. Since it looks like these packages are actively maintained, I'll bug Kevin about why these aren't re-added to his distributions.
see http://archlinuxarm.org package repo:
@kmihelich do you recall why all Dlang packages were removed from Arch Linux Arm aur packages? Specifically when I was working on this stuff a few years back, there was still a gdc, a phobos, and I think an ldc package. I vaguely recall you said the packages were broken and had lost their maintainer. It looks like someone is actively maintaining the upstream aur packages now. What do I need to do to help this along to get this back into Arch Linux Arm?
gdc was in the community repo, and was the only D compiler that built for ARM. When it was dropped from upstream Arch, I dropped it for ARM like any other discontinued upstream package. AUR packages aren't official Arch packages, and users are expected to build those themselves.
LDC is in the community repo now and supports both ARM and AArch64, would be good to get it back in.
What I'm scratching my head about, so Go is in there (in Arch Linux ARM) but is listed as community. Not sure I understand how this is supposed to work: https://archlinuxarm.org/packages/aarch64/go . How can I distinguish between official packages and AUR packages?
Community is an official repository. https://wiki.archlinux.org/index.php/Official_repositories
So LDC and gdc are in Community, correct?
Yep. Looks like gdc is back now.
Should we file a ticket or something on ArchLinux ARM. Not sure what the standard practice is to lobby for a package to get added back.
I'll look into it and see if it compiles.
I've added gdc for all architectures, ldc for v7 and v8.
Awesome! Thanks. I'll fire this up over the weekend on my espressobin.
See in archlinuxarm packages:
aarch64 | community | ldc | 2:1.12.0-1 | A D Compiler based on the LLVM Compiler Infrastructure including D runtime and libphobos2 |
---|---|---|---|---|
armv7h | community | ldc | 2:1.12.0-1 | A D Compiler based on the LLVM Compiler Infrastructure including D runtime and libphobos2 |
I verified the packages work great! Size of output binary is much smaller than the gdc:
-rwxr-xr-x 2 root root 4621088 Mar 12 03:32 dlang-testbench -rwxr-xr-x 1 root root 549120 Mar 12 03:32 dlang-testbench-ldc
ldc details:
ldc --version
LDC - the LLVM D compiler (1.14.0):
based on DMD v2.084.1 and LLVM 7.0.1
built with LDC - the LLVM D compiler (1.13.0)
Default target: aarch64-unknown-linux-gnu
Host CPU: cortex-a53
http://dlang.org - http://wiki.dlang.org/LDC
Registered Targets:
aarch64 - AArch64 (little endian)
aarch64_be - AArch64 (big endian)
amdgcn - AMD GCN GPUs
arm - ARM
arm64 - ARM64 (little endian)
armeb - ARM (big endian)
bpf - BPF (host endian)
bpfeb - BPF (big endian)
bpfel - BPF (little endian)
hexagon - Hexagon
lanai - Lanai
mips - Mips
mips64 - Mips64 [experimental]
mips64el - Mips64el [experimental]
mipsel - Mipsel
msp430 - MSP430 [experimental]
nvptx - NVIDIA PTX 32-bit
nvptx64 - NVIDIA PTX 64-bit
ppc32 - PowerPC 32
ppc64 - PowerPC 64
ppc64le - PowerPC 64 LE
r600 - AMD GPUs HD2XXX-HD6XXX
sparc - Sparc
sparcel - Sparc LE
sparcv9 - Sparc V9
systemz - SystemZ
thumb - Thumb
thumbeb - Thumb (big endian)
x86 - 32-bit X86: Pentium-Pro and above
x86-64 - 64-bit X86: EM64T and AMD64
xcore - XCore
There is no package maintainer any longer, at least, the maintained packages lost their maintainer, and so they also got pulled out of ArchLinux ARM's repository. I see from a search that there are a couple of packages that show up but these haven't made their way down to ArchLinux ARM. Possibly these are broken? Or just not current.
https://aur.archlinux.org/packages/?O=0&SeB=nd&K=ldc&outdated=&SB=n&SO=a&PP=50&do_Search=Go
Related issues #44 and #45 .