On 15 February 2016 at 09:10, Guillem Jover <[email protected]> wrote:
> Well, given that cloudabi is not a kernel, I'd use a Debian arch name
> with a three elements-form, so that it does not get confused with a
> kernel. Similar to the musl or uclibc arches, but with none for
> kernel. Say «cloudabi-none-<cpu> cloudabi-none-<cpu>».
Thanks again for your guidance. Here's the revised patch.
For the record using dpkg binaries built with this patch, and the
attached patch to binutils-<ver>/debian/ results in the two new binary
packages
- binutils-aarch64-cloudabi installing to /usr/aarch64-cloudabi
- binutils-x86-64-cloudabi installing to /usr/x86_64-cloudabi
I'm not 100% sure whether the directories should be the full GNU
triplets (e.g. /usr/aarch64-unknonw-cloudabi) or not. I'll investigate
further.
Alex
--- ostable 2015-11-26 23:53:38.000000000 +0000
+++ ostable 2016-02-15 11:40:09.000000000 +0000
@@ -37,3 +37,4 @@
uclibceabi-uclinux uclinux-uclibceabi uclinux[^-]*-uclibceabi
uclibc-uclinux uclinux-uclibc uclinux[^-]*(-uclibc.*)?
tos-mint mint mint[^-]*
+cloudabi-none cloudabi cloudabi[^-]*
--- scripts/t/Dpkg_Arch.t 2015-12-25 03:53:50.000000000 +0000
+++ scripts/t/Dpkg_Arch.t 2016-02-09 15:46:22.000000000 +0000
@@ -98,7 +98,7 @@
is(gnutriplet_to_debarch('unknown-unknown-unknown'), undef, 'unknown gnutriplet');
is(gnutriplet_to_debarch('x86_64-linux-gnu'), 'amd64', 'known gnutriplet');
-is(scalar get_valid_arches(), 417, 'expected amount of known architectures');
+is(scalar get_valid_arches(), 446, 'expected amount of known architectures');
{
local $ENV{CC} = 'false';
--- triplettable 2015-11-26 23:53:41.000000000 +0000
+++ triplettable 2016-02-15 14:49:45.000000000 +0000
@@ -30,3 +30,4 @@
uclibceabi-uclinux-arm uclinux-armel
uclibc-uclinux-<cpu> uclinux-<cpu>
tos-mint-m68k mint-m68k
+cloudabi-none-<cpu> cloudabi-none-<cpu>
diff --git a/changelog b/changelog
index d1f1528..9e1ee24 100644
--- a/changelog
+++ b/changelog
@@ -1,3 +1,12 @@
+binutils (2.26-3ubuntu1cloudabi2) UNRELEASED; urgency=medium
+
+ * Build binutils-<cpu>-unknown-cloudabi packages
+ - Add cloudabi-amd64 and cloudabi-aarch64 targets.
+ - Regenerate the control file.
+ - Bump dpkg-dev requirement.
+
+ -- Alex Willmer <[email protected]> Tue, 09 Feb 2016 14:04:33 +0000
+
binutils (2.26-3ubuntu1) xenial; urgency=medium
* Merge with Debian; remaining changes:
diff --git a/control b/control
index f832d84..a2eccdf 100644
--- a/control
+++ b/control
@@ -5,7 +5,7 @@ Maintainer: Ubuntu Core developers <[email protected]>
XSBC-Original-Maintainer: Matthias Klose <[email protected]>
Uploaders: James Troup <[email protected]>, Daniel Jacobowitz <[email protected]>
Standards-Version: 3.9.6
-Build-Depends: autoconf (>= 2.64), dpkg-dev (>= 1.17.11),
+Build-Depends: autoconf (>= 2.64), dpkg-dev (>= 1.18.4ubuntu1cloudabi1),
bison, flex, gettext, texinfo, dejagnu, quilt, chrpath,
python3:any, file, xz-utils, lsb-release, zlib1g-dev
XS-Testsuite: autopkgtest
@@ -338,3 +338,29 @@ Description: GNU binary utilities, for sparc64-linux-gnu target
.
You don't need this package unless you plan to cross-compile programs
for sparc64-linux-gnu.
+
+Package: binutils-x86-64-cloudabi
+Architecture: amd64 i386 x32 arm64
+Depends: binutils (= ${binary:Version}), ${shlibs:Depends}
+Suggests: binutils-doc (= ${source:Version})
+Provides:
+Priority: extra
+Description: GNU binary utilities, for x86-64-cloudabi target
+ This package provides GNU assembler, linker and binary utilities
+ for x86-64-cloudabi target, for use in a cross-compilation environment.
+ .
+ You don't need this package unless you plan to cross-compile programs
+ for x86-64-cloudabi.
+
+Package: binutils-aarch64-cloudabi
+Architecture: amd64 i386 x32 arm64
+Depends: binutils (= ${binary:Version}), ${shlibs:Depends}
+Suggests: binutils-doc (= ${source:Version})
+Provides:
+Priority: extra
+Description: GNU binary utilities, for aarch64-cloudabi target
+ This package provides GNU assembler, linker and binary utilities
+ for aarch64-cloudabi target, for use in a cross-compilation environment.
+ .
+ You don't need this package unless you plan to cross-compile programs
+ for aarch64-cloudabi.
diff --git a/rules b/rules
index 526a7b2..f2ec6a4 100755
--- a/rules
+++ b/rules
@@ -89,6 +89,7 @@ ifeq ($(src_name),binutils)
CROSS_ARCHS ?= s390x ppc64el powerpc arm64 armhf armel mips mipsel
CROSS_ARCHS += alpha hppa m68k mips64 mips64el powerpcspe ppc64 sh4 sparc64
#CROSS_ARCHS += kfreebsd-amd64 kfreebsd-i386 hurd-i386
+ CROSS_ARCHS += cloudabi-none-amd64 cloudabi-none-arm64
else
# binutils-ports ...
with_cross = yes
@@ -122,6 +123,9 @@ HOST_ARCHS_kfreebsd-amd64 = amd64 i386 x32
HOST_ARCHS_kfreebsd-i386 = amd64 i386 x32
HOST_ARCHS_hurd-i386 = amd64 i386 x32
+HOST_ARCHS_cloudabi-none-amd64 = amd64 i386 x32 arm64
+HOST_ARCHS_cloudabi-none-arm64 = amd64 i386 x32 arm64
+
ifneq (,$(filter $(DEB_HOST_ARCH), amd64 i386 x32))
#
else ifeq ($(DEB_HOST_ARCH),arm64)
@@ -254,7 +258,7 @@ MULTI_VERSION = $(VERSION)-multiarch
HPPA64_VERSION= $(VERSION)-hppa64
ifeq (,$(filter $(distrelease),lenny etch squeeze wheezy dapper hardy jaunty karmic lucid maverick natty oneiric precise quantal raring saucy trusty utopic))
- DPKG_DEV = dpkg-dev (>= 1.17.11),
+ DPKG_DEV = dpkg-dev (>= 1.18.4ubuntu1cloudabi1),
endif
NJOBS =