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 =

Reply via email to