Re: kfreebsd-10_10.3~svn300087-7_source.changes REJECTED

2020-04-02 Thread Steven Chamberlain
Hello, Jess,

Jessica Clarke wrote:
> I suspect you're falling afoul of the fact that, although I made the orig
> tarball reproducible [...]

Actually, in this case, I did change the contents of the tarball.  I
believe I should have changed the source version as well.  I think
convention is to add something like +ds1 or +repack1.

Since I had a little bit of free time this week I have this roadmap:

  * Update kfreebsd-10 package to gcc-9 (done).
  * Add version 10.3 man pages into kfreebsd-source-10.3.
  * Build man pages related to kernel headers from
src:kfreebsd-kernel-headers instead of src:freebsd-manpages;
that way the man pages are in sync with the actual version of the
headers, but mainly: if k-k-h builds some arch-indep package, then
k-k-h could go back into sid, so that bootstrapping becomes possible
again.  (Then maybe Helmut could keep it on jenkins.d.n).
  * Similarly, get freebsd-utils back into sid.
  * Update the debian/copyright file for kfreebsd-10, then kfreebsd-11.
  * Get kfreebsd-11 through the NEW queue *maybe*

Although I'm only really focusing on kfreebsd-10 at first, to get kbsd
bootstrappable and debootstrappable *at all* with the least effort.  The
switch to a newer kernel is way bigger project than I probably have time
for.  But maybe then someone else feels like doing it!

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Bug#955210: kernel-wedge: regression causes kfreebsd-10 FTBFS

2020-03-29 Thread Steven Chamberlain
Hi!

Ben Hutchings wrote:
> Sorry about that.  I knew this was a relatively risky change, but
> thought I had test cases covering everything.

No problem.  The refactoring is much appreciated, and it is
understandable when regressions happen somewhere in this labyrinth of
sh/bash/perl.

> Would you mind adding a regression test for this case?

Good idea, I've done this now.  (By substituting $moddir with a symlink
to $moddir for all test cases;  having separate test series for
$moddir-is-symlink and $moddir-not-symlink would have been complicated).

Cyril Brulebois wrote:
> Feel free to push/upload as you see fit; thanks.

Thanks, I will do that.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Bug#955210: kernel-wedge: regression causes kfreebsd-10 FTBFS

2020-03-28 Thread Steven Chamberlain
tags -1 + patch
thanks
From 03477bf089926f7a599bbe89f67df53080b69bfa Mon Sep 17 00:00:00 2001
From: Steven Chamberlain 
Date: Sat, 28 Mar 2020 18:12:35 +
Subject: [PATCH] preprocess: If source directory is a symlink, follow it

Closes: #955210
---
 commands/preprocess | 9 +
 debian/changelog| 7 +++
 2 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/commands/preprocess b/commands/preprocess
index b60c0d7..0c77e52 100755
--- a/commands/preprocess
+++ b/commands/preprocess
@@ -25,15 +25,16 @@ my %loaded;
 sub find_all_modules {
 	my ($moddir) = @_;
 
-	File::Find::find(
-		sub {
+	File::Find::find({
+		follow => 1, # If $moddir is a symlink, follow it.
+		wanted => sub {
 			if (/\.ko$/) {
 push @module_files,
 File::Spec->abs2rel($File::Find::name,
 			$moddir);
 			}
-		},
-		$moddir);
+		}
+	}, $moddir);
 
 	if ($os eq 'linux') {
 		if (open(my $builtin, "$moddir/modules.builtin")) {
diff --git a/debian/changelog b/debian/changelog
index cf26ea1..46ffe4c 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+kernel-wedge (2.103) UNRELEASED; urgency=medium
+
+  * preprocess: If source directory is a symlink, follow it
+(Closes: #955210)
+
+ -- Steven Chamberlain   Sat, 28 Mar 2020 18:08:28 +
+
 kernel-wedge (2.102) unstable; urgency=medium
 
   * debian/tests: Correct expected exit code for preprocess missingdir case
-- 
2.1.4



signature.asc
Description: Digital signature


Bug#955210: kernel-wedge: regression causes kfreebsd-10 FTBFS

2020-03-28 Thread Steven Chamberlain
Package: kernel-wedge
Version: 2.102
Severity: important
X-Debbugs-Cc: debian-bsd@lists.debian.org

Hi,

kfreebsd-10 FTBFS, due to probably this change in kernel-wedge:
https://salsa.debian.org/installer-team/kernel-wedge/-/commit/3827f1ee9f53540b104c592a8a2695f78d8629ed

The kfreebsd-10 build process produces kernel modules including lpt.ko
and ppi.ko under:
debian/kfreebsd-image-10.3-0-amd64/lib/modules/10.3-0-amd64/

As of kernel-wedge=2.102, the preprocess step fails to find any modules:

KW_DEFCONFIG_DIR=debian/installer KW_CONFIG_DIR=debian/installer/amd64 \
perl -w /usr/share/kernel-wedge/commands/preprocess \
 debian/installer/amd64/modules/kfreebsd-amd64/parport-modules \
 debian/kfreebsd-image-10.3-0-amd64/lib/modules/10.3-0-amd64
missing module lpt
missing module ppi

but I notice that when adding a trailing slash to the second parameter
($moddir), then it does work again:

KW_DEFCONFIG_DIR=debian/installer KW_CONFIG_DIR=debian/installer/amd64 \
perl -w /usr/share/kernel-wedge/commands/preprocess \
 debian/installer/amd64/modules/kfreebsd-amd64/parport-modules \
 debian/kfreebsd-image-10.3-0-amd64/lib/modules/10.3-0-amd64/
lpt.ko
ppi.ko

Note that debian/kfreebsd-image-10.3-0-amd64/lib/modules/10.3-0-amd64
is a symlink, to ../../boot/modules/10.3-0-amd64

I think this has to do with a basename() somewhere removing the
"10.3-0-amd64" from the end of the path, so that it searches for .ko
files under:
debian/kfreebsd-image-10.3-0-amd64/lib/modules/
instead.

Thanks!

-- System Information:
Debian Release: 8.0
  APT prefers stable-kfreebsd-proposed-updates
  APT policy: (500, 'stable-kfreebsd-proposed-updates'), (500, 
'stable-kfreebsd')
Architecture: kfreebsd-amd64 (x86_64)

Kernel: kFreeBSD 10.1-0-amd64
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)


signature.asc
Description: Digital signature


Bug#955166: FTBFS with gcc-9: undefined reference to bsd_getopt, etc.

2020-03-27 Thread Steven Chamberlain
Package: src:kfreebsd-10
Version: 10.3~svn300087-5
Severity: serious
Tags: patch

kfreebsd-10 FTBFS with gcc-9 due to:

| gcc-9 -D_GNU_SOURCE -isystem /usr/include/freebsd 
-I/home/build/kfreebsd-10-10.3~svn300087/flavor-10.3-0-amd64/sys/modules/aic7xxx/aicasm
 -I../../../dev/aic7xxx/aicasm -std=gnu99  -fstack-protector -Wno-pointer-sign  
-Wno-missing-prototypes -ldb -lbsd -o aicasm aicasm.o aicasm_symbol.o 
aicasm_gram.o aicasm_macro_gram.o aicasm_scan.o aicasm_macro_scan.o -ll
| /usr/bin/ld: aicasm.o: in function `main':
| aicasm.c:(.text+0x4a1): undefined reference to `bsd_getopt'
| /usr/bin/ld: aicasm_symbol.o: in function `symtable_open':
| aicasm_symbol.c:(.text+0x220): undefined reference to `__db185_open'
| collect2: error: ld returned 1 exit status
| *** [aicasm] Error code 1

The linker invocation now adds the "--as-needed" parameter by default,
before -ldb and -lbsd, and furthermore those libraries were linked in
before the object files which use their functions:

| /usr/lib/gcc/x86_64-kfreebsd-gnu/9/collect2 -plugin 
/usr/lib/gcc/x86_64-kfreebsd-gnu/9/liblto_plugin.so 
-plugin-opt=/usr/lib/gcc/x86_64-kfreebsd-gnu/9/lto-wrapper 
-plugin-opt=-fresolution=/tmp/ccgJKsnR.res -plugin-opt=-pass-through=-lgcc 
-plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc 
-plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id 
--eh-frame-hdr -m elf_x86_64_fbsd --hash-style=gnu --as-needed -dynamic-linker 
/lib/ld-kfreebsd-x86-64.so.1 -pie -o aicasm 
/usr/lib/gcc/x86_64-kfreebsd-gnu/9/../../../x86_64-kfreebsd-gnu/Scrt1.o 
/usr/lib/gcc/x86_64-kfreebsd-gnu/9/../../../x86_64-kfreebsd-gnu/crti.o 
/usr/lib/gcc/x86_64-kfreebsd-gnu/9/crtbeginS.o 
-L/usr/lib/gcc/x86_64-kfreebsd-gnu/9 
-L/usr/lib/gcc/x86_64-kfreebsd-gnu/9/../../../x86_64-kfreebsd-gnu 
-L/usr/lib/gcc/x86_64-kfreebsd-gnu/9/../../../../lib -L/lib/x86_64-kfreebsd-gnu 
-L/lib/../lib -L/usr/lib/x86_64-kfreebsd-gnu -L/usr/lib/../lib 
-L/usr/lib/gcc/x86_64-kfreebsd-gnu/9/../../.. -ldb -lbsd a
 icasm.o aicasm_symbol.o aicasm_gram.o aicasm_macro_gram.o aicasm_scan.o 
aicasm_macro_scan.o -ll -lgcc --push-state --as-needed -lgcc_s --pop-state -lc 
-lgcc --push-state --as-needed -lgcc_s --pop-state 
/usr/lib/gcc/x86_64-kfreebsd-gnu/9/crtendS.o 
/usr/lib/gcc/x86_64-kfreebsd-gnu/9/../../../x86_64-kfreebsd-gnu/crtn.o

As a result, those libraries would not be linked in at all.  Object
files aicasm.o, aicasm_symbol.o subsequently cannot find find the
required functions.

I've fixed this by using LDADD within the Makefile, instead of
LDFLAGS within our debian/rules, to add the library dependencies.
Now the library dependencies are added after the object files,
as they should be.

-- System Information:
Debian Release: 8.0
  APT prefers stable-kfreebsd-proposed-updates
  APT policy: (500, 'stable-kfreebsd-proposed-updates'), (500, 
'stable-kfreebsd')
Architecture: kfreebsd-amd64 (x86_64)

Kernel: kFreeBSD 10.1-0-amd64
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)
Date: Fri, 27 Mar 2020 21:26:21 +0000
From: Steven Chamberlain 
Subject: Add extra libs required to build aicasm

--- a/sys/dev/aic7xxx/aicasm/Makefile
+++ b/sys/dev/aic7xxx/aicasm/Makefile
@@ -14,7 +14,7 @@ GENHDRS=  aicasm_gram.h aicasm_macro_gram
 SRCS=  ${GENHDRS} ${CSRCS} ${YSRCS} ${LSRCS}
 CLEANFILES+= ${GENHDRS} ${YSRCS:R:C/(.*)/\1.output/g}
 DPADD= ${LIBL}
-LDADD= -ll
+LDADD= -ldb -lbsd -ll
 WARNS?=0
 
 # Correct path for kernel builds


Re: Where is iso install image for kfreebsd ?

2018-07-31 Thread Steven Chamberlain
Hello!

SUGIMOTO Norimitsu wrote:
> I don't found a debian installer iso image for kfreebsd.
> https://d-i.debian.org/daily-images/kfreebsd-amd64/
> 
> Please let me know which ISO file should be used
> to install kfreebsd.

http://jenkins.kfreebsd.tw/jenkins/view/cd/job/debian-cd_jessie-kfreebsd_kfreebsd-amd64/ws/build/debian-unofficial-kfreebsd-amd64-NETINST-1.iso
SHA256: 6fb8700dd6a6e9a20b8aefbef90ede0d896b6a9aa0903f8a2a8fa6a59aee4fa7

http://jenkins.kfreebsd.tw/jenkins/view/cd/job/debian-cd_jessie-kfreebsd_kfreebsd-i386/ws/build/debian-unofficial-kfreebsd-i386-NETINST-1.iso
SHA256: d9173e2728cdda54f5d561139b5f95b5d5f4dc2664923c5e9ff01578469a85a4

Those images I built in December 2017, based on Debian jessie.
I hope they work for you!

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Request for kFreeBSD (and Hurd) porters

2018-07-30 Thread Steven Chamberlain
Hi,

Svante Signell wrote:
> The Debian GNU/kFreeBSD port recently obtained a buildd building
> packages for the sid distribution, kamp. Thank you very much for your
> effort making this happening jrtc27 :)

Thanks very much for this James!  It was a really nice surprise to see
packages building again.

May I ask who has provided the hardware/hosting?  And what is the DNS
hostname of the machine?  (kamp.buildd.org does not resolve for me).

Also, how are the i386 builds done:  is that a kfreebsd-i386 chroot on a
kfreebsd-amd64 system?  Or is it a separate VM running "natively" on the
32-bit kernel?

By the way, since 4 days or so many packages are Built but not Installed
in the archive.  Is that because a DD must manually check and sign them?

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Future of kFreeBSD in Debian unstable

2018-01-15 Thread Steven Chamberlain
Hi Ansgar,

Ansgar Burchardt wrote:
> however with the kFreeBSD buildds gone, we would also need at least some
> people willing to maintain buildds (this is limited to Debian Developers
> as long as the port lives on ftp.debian.org).

Assuming I could find/maintain a couple of VMs to build kfreebsd sid,
how exactly could the .debs be uploaded to ftp.d.o?  Are they simply
uploaded with ftp/scp along with a .changes/.buildinfo, just like a
binNMU or source package upload?

Would the buildds need their own GPG keys, added into some keyring also?
That's possible even for non-DSA maintained buildds?

Thanks,
Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Who is still here?

2017-12-25 Thread Steven Chamberlain
Hello,

Sorry for this late response.  I've been away for a long time.
I've not been able to do any development work, or even keep up with
emails on the lists.  Sorry.

I'm actually still using GNU/kFreeBSD in some places, find it very
useful, and perceive it has advantages over Debian GNU/Linux.  

I've no objection to the current infrastructure going away.  I'd be more
interested in starting fresh with new ideas, such as:  if Debian starts
to do reproducible building or use cloud providers, we could try to do
the same;  or when a new live system or installer appears, we could try
to port to it.

Restarting GNU/kFreeBSD development would be a long-term project, it may
take 2-5 years to see a new release.

If I do find time to work on this, my first thought would be to archive
the most important parts:  source code in the "glibc-bsd" Subversion
repository, including the kernel and packaging of libraries and
utilities.  The Debian-provided Subversion infrastructure will likely go
away in favour of salsa.debian.org (GitLab), so I'd like to restart the
discussion on changing to Git.

This could be a nice opportunity to bring in new contributors.  GitLab
might be friendlier to newcomers, or to those who already tried to
contribute but we didn't have a good workflow to integrate their work.

I think GNU/kFreeBSD wouldn't survive as ~3 people doing the bulk of the
development work.  But there is hope, if we find ways of making it easier
for other people to work on it, and then if there's enough interest.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Bug#868929: kfreebsd-10: FTBFS: ../../../compat/ia32/ia32_genassym.c:1:0: error: code model kernel does not support PIC mode

2017-08-16 Thread Steven Chamberlain
severity 868929 important
thanks

(linux-)amd64 is not in this package's Architectures: field, therefore
FTBFS on that arch cannot be a RC bug?  (Though I'd be interested in
fixing it someday).

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: debian-installer now available in Ports

2017-04-12 Thread Steven Chamberlain
I've set up some additional jobs at
http://jenkins.kfreebsd.eu/jenkins/view/cd/

and after much trial-and-error, there are now (untested) sid netinst
images built for:
hurd-i386 kfreebsd-amd64 kfreebsd-i386 powerpc

You can find the .iso images within each job's workspace e.g.:
http://jenkins.kfreebsd.eu/jenkins/view/cd/job/debian-cd_sid_hurd-i386/ws/build/

It's building on a kfreebsd-amd64 host, in a jessie-kfreebsd chroot,
with current Git master of debian-cd, my patches for #860187 and
#860204 applied, and the attached diff against CONF.sh.  I started each
build like this:

$ export CODENAME=sid
$ export ARCHES=hurd-i386
$ CONF.sh && ./build.sh

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org
diff --git a/CONF.sh b/CONF.sh
index 99e58ad..08ffbd7 100644
--- a/CONF.sh
+++ b/CONF.sh
@@ -62,11 +62,15 @@ export BASEDIR=`pwd`
 # export CDNAME=debian
 
 # Building $codename cd set ...
-export CODENAME=stretch
+#export CODENAME=stretch
 
 # By default use Debian installer packages from $CODENAME
 if [ -z "$DI_CODENAME" ]; then
-	export DI_CODENAME=$CODENAME
+	if [ "${CODENAME}" = "jessie-kfreebsd" ]; then
+		export DI_CODENAME=${CODENAME}-proposed-updates
+	else
+		export DI_CODENAME=${CODENAME}
+	fi
 fi
 # If you want backported d-i (e.g. by setting
 # DI_CODENAME=jessie-backports, then you'll almost definitely also
@@ -86,7 +90,7 @@ fi
 #export DI_WWW_HOME=default
 
 # Version number, "2.2 r0", "2.2 r1" etc.
-export DEBVERSION="9.0"
+export DEBVERSION="unofficial"
 
 # Official or non-official set.
 # NOTE: THE "OFFICIAL" DESIGNATION IS ONLY ALLOWED FOR IMAGES AVAILABLE
@@ -119,17 +123,17 @@ fi
 #	  images, however. Also, if you are using an NFS partition for
 #	  some part of this, you must use this option.
 # Paths to the mirrors
-export MIRROR=/srv/mirror/debian
+export MIRROR=/srv/ftp.debian.org
 
 # Path of the temporary directory
-export TDIR=/srv/mirror/tmp
+export TDIR=/home/cd/tmp
 
 # Path where the images will be written
-export OUT=/srv/mirror/debian-cd-test
+export OUT=/home/cd/out
 
 # Where we keep the temporary apt stuff.
 # This cannot reside on an NFS mount.
-export APTTMP=/srv/mirror/tmp/apt
+export APTTMP=$TDIR/apt
 
 # Do I want to have NONFREE merged in the CD set
 # export NONFREE=1
@@ -164,7 +168,9 @@ export CONTRIB=1
 # Note that on the CDs it will not be visible where packages came from:
 # from the released archive or from proposed updates archive.
 # NOTE: intended to be used for pre-release testing, not for publication!
-#export PROPOSED_UPDATES=$CODENAME-proposed-updates
+if [ "${CODENAME}" = "jessie-kfreebsd" ]; then
+	export PROPOSED_UPDATES=$CODENAME-proposed-updates
+fi
 
 # Sparc only : bootdir (location of cd.b and second.b)
 # export BOOTDIR=/boot
@@ -175,7 +181,7 @@ export CONTRIB=1
 # Use this to force copying the files instead of symlinking or hardlinking
 # them. This is useful if your destination directories are on a different
 # partition than your source files.
-# export COPYLINK=1
+export COPYLINK=1
 
 # Options
 # export MKISOFS=mkisofs
@@ -190,6 +196,12 @@ export CONTRIB=1
 #export i386_MKISOFS_OPTS="-as mkisofs -r -checksum_algorithm_iso md5,sha1"
 #export amd64_MKISOFS="xorriso"
 #export amd64_MKISOFS_OPTS="-as mkisofs -r -checksum_algorithm_iso md5,sha1"
+export hurd_i386_MKISOFS="xorriso"
+export hurd_i386_MKISOFS_OPTS="-as mkisofs -r -checksum_algorithm_iso sha256"
+export kfreebsd_i386_MKISOFS="xorriso"
+export kfreebsd_i386_MKISOFS_OPTS="-as mkisofs -r -checksum_algorithm_iso sha256"
+export kfreebsd_amd64_MKISOFS="xorriso"
+export kfreebsd_amd64_MKISOFS_OPTS="-as mkisofs -r -checksum_algorithm_iso sha256"
 
 # Keyring (defaults):
 #ARCHIVE_KEYRING_PACKAGE=debian-archive-keyring
@@ -233,7 +245,7 @@ ATTEMPT_FALLBACK=yes
 # STICK4GB:  4GB USB stick or similar
 # STICK8GB:  8GB USB stick or similar
 # CUSTOM:up to you - specify a size to go with it (in 2K blocks)
-export DISKTYPE=CD
+export DISKTYPE=NETINST
 #export DISKTYPE=CUSTOM
 #export CUSTOMSIZE=
 # If you want to over-ride this choice (e.g. to make a larger version of a given disk),
@@ -242,7 +254,7 @@ export DISKTYPE=CD
 # export FORCE_CD_SIZE1= to change the size of disk 1 (only)
 
 # Extra variants to enable. See docs/README.variants for more information.
-export VARIANTS=
+export VARIANTS=light
 
 # We don't want certain packages to take up space on CD1...
 #export EXCLUDE1=exclude
@@ -375,8 +387,8 @@ export SNAPURL=Debian=http://snapshot.debian.org/archive/debian/SNAPDATETIME/
 # INSTALLER_CD=0: nothing special (default)
 # INSTALLER_CD=1: just add debian-installer (use TASK=debian-installer)
 # INSTALLER_CD=2: add d-i and base (use TASK=debian-installer+kernel)
-#export INSTALLER_CD=2
-#export TASK=debian-installer+kernel
+export INSTALLER_CD

Bug#860204: debian-cd: Fix update_tasks on non-Linux arches

2017-04-12 Thread Steven Chamberlain
Source: debian-cd
Version: 3.1.20
Tags: patch
User: debian-bsd@lists.debian.org
Usertags: kfreebsd
X-Debbugs-Cc: debian-bsd@lists.debian.org

Hi!

tools/update_tasks was failing for me on kfreebsd, with:
update_tasks: Can't determine arch

In the filename of the coreutils .deb, the architecture part
may contain a hyphen in the case of hurd-i386 or kfreebsd-*.
But it currently only matches alpha or numeric.

Patch is attached.  Thanks!

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org
From c0104be3e511052c5cab4d561b5887abd4b4dd89 Mon Sep 17 00:00:00 2001
From: Steven Chamberlain <ste...@pyro.eu.org>
Date: Wed, 12 Apr 2017 20:05:15 +0100
Subject: [PATCH] Fix update_tasks on non-Linux arches

In the filename of the coreutils .deb, the architecture part
may also contain a hyphen in the case of hurd-i386 or
kfreebsd-*
---
 tools/update_tasks | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/update_tasks b/tools/update_tasks
index b9fe207..03e03ac 100755
--- a/tools/update_tasks
+++ b/tools/update_tasks
@@ -44,7 +44,7 @@ if (defined($ENV{'FORCE_SID_TASKSEL'}) and $ENV{'FORCE_SID_TASKSEL'} eq '1') {
 # is a non -all package) to determine a valid arch for the rest of
 # this script
 my $coreutils_deb = `$basedir/tools/which_deb $mirror $codename coreutils binary`;
-if ($coreutils_deb =~ m/_([[:alnum:]]+)\.deb/) {
+if ($coreutils_deb =~ m/_([[:alnum:]-]+)\.deb/) {
 $arch = $1;
 } else {
 die "update_tasks: Can't determine arch!\n";
-- 
1.8.4.rc3



signature.asc
Description: Digital signature


Bug#860187: debian-cd: Fix which_deb handling of non-Linux arches

2017-04-12 Thread Steven Chamberlain
Source: debian-cd
Version: 3.1.20
Tags: patch
User: debian-bsd@lists.debian.org
Usertags: kfreebsd
X-Debbugs-Cc: debian-bsd@lists.debian.org

Hi!

When which_deb finds "*i386" or "*amd64" entries in the ARCHES list,
it will wrongly change them to "i386" to "amd64" respectively (which
is wrong in the case of kfreebsd-* or hurd-*).

My attached patch makes the same changes here that were already made to
identical code in generate_di_list, to fix #758512 (commits
771f754516b161f248c132ee9d698e33a6330de0 and
2ef5d3288cdc772cdcbb7b5d11192305dd05b063).

Thanks!
Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org
From 544806f93e860f01f6f1167af2b4462074479af7 Mon Sep 17 00:00:00 2001
From: Steven Chamberlain <stev...@debian.org>
Date: Wed, 12 Apr 2017 17:19:28 +0100
Subject: [PATCH] Fix which_deb handling of non-Linux arches

When which_deb finds "*i386" or "*amd64" entries in the ARCHES list,
it will wrongly change them to "i386" to "amd64" respectively (which
is wrong in the case of kfreebsd-* or hurd-*).

Make the same changes here that were already made to identical code in
generate_di_list, to fix #758512 (commits
771f754516b161f248c132ee9d698e33a6330de0 and
2ef5d3288cdc772cdcbb7b5d11192305dd05b063).
---
 tools/which_deb | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/tools/which_deb b/tools/which_deb
index d5a5a94..e23c721 100755
--- a/tools/which_deb
+++ b/tools/which_deb
@@ -29,9 +29,9 @@ if (!defined ($output)) {
 # Give preference to i386 and amd64, if specified
 my @ARCHES;
 if ( $ENV{ARCHES} ) {
-push @ARCHES, 'i386' if $ENV{ARCHES} =~ /i386/;
-push @ARCHES, 'amd64' if $ENV{ARCHES} =~ /amd64/;
-push @ARCHES, grep { !/source|i386|amd64/ } split /\s+/, $ENV{ARCHES};
+push @ARCHES, 'i386' if $ENV{ARCHES} =~ /(^|\s)i386(\s|$)/;
+push @ARCHES, 'amd64' if $ENV{ARCHES} =~ /(^|\s)amd64(\s|$)/;
+push @ARCHES, grep { !/^(source|i386|amd64)$/ } split /\s+/, $ENV{ARCHES};
 }
 
 # We seem to be building a source-only CD. Check for whatever binary
-- 
1.8.4.rc3



signature.asc
Description: Digital signature


Re: debian-installer now available in Ports

2017-04-12 Thread Steven Chamberlain
Hello,

John Paul Adrian Glaubitz wrote:
> Thus, I was wondering whether any volunteers would be willing to help building
> ISO images for the various architectures.

I'm already doing this for kfreebsd-amd64, but only the jessie-kfreebsd
suite:
http://jenkins.kfreebsd.eu/jenkins/view/cd/job/debian-cd_jessie-kfreebsd/lastBuild/console
and I had to patch debian-cd before it worked.  (Didn't yet find time to
file bugs or submit those patches).

I could probably set up similar jobs for kfreebsd-* sid now.

> It's not necessary to run debian-cd on the same architecture as the
> target architecture of the ISO images.

I did not even realise that.  So I will add kfreebsd-i386 next.

I expect there might be problems trying to build linux arches from a
kfreebsd host.  But we should try to find out, and then maybe fix it.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: GNU/KFreeBSD on Sun Microsystems X2200 M2 AMD 64bit

2017-03-19 Thread Steven Chamberlain
Hello,

(please make sure to use debian-bsd@lists.debian.org for
these kinds of questions/discussion)

pdb wrote:
> i would like to know if i can install GNU/KFreeBSD on my Sun Microsystems
> X2200 M2 AMD 64 bit Quad Core 2.3 Ghz

I would really like one of those myself!

It should be a good choice for running kfreebsd-amd64, but there are two
important things to check:

  * Ethernet chipset

Earlier Sun Fire (v20z) used a Broadcom chipset requiring non-free
microcode, that means the FreeBSD kernel supports it but the (free
software) Debian kernel does not.  I think the X2200 M2 has the same.

That would make it difficult to install kfreebsd.  A good solution is to
install an Intel PCIe dual/quad Gigabit NIC and use that instead of the
built-in Ethernet ports (this is not so expensive).

  * SATA/RAID chipset

This server sometimes comes with an LSI SAS/SATA RAID controller (PCIe
card), which should be okay (but you have to configure RAID via the
BIOS, you would not be able to reconfigure that within kfreebsd).

Otherwise, the server may only come with onboard NVIDIA SATA, and I
don't know how well that works with kfreebsd (probably okay).

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: kfreebsd-* buildd issues

2017-02-22 Thread Steven Chamberlain
Christoph Egger wrote:
> Steven Chamberlain <ste...@pyro.eu.org> writes:
> > Would this be possible again please :/  psmisc is still not fixed, and
> > there are still surprisingly many gcc-6 uploads.
> 
> And gcc-5. Done

And, again please :)

> > (Maybe even a daily cron for this would be a good idea...)
> 
> that cron would need to run as buildd user at the very least and
> reliably detect the situation .. maybe ;-) I'll gather information the
> next time this happens and see.

At the moment it happens almost daily!  (Had a lot of GCC uploads this
week).

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: kfreebsd-* buildd issues

2017-02-21 Thread Steven Chamberlain
Hi Christoph,

Steven Chamberlain wrote:
> please could somebody once again kill the hung gdb
> processes?

Would this be possible again please :/  psmisc is still not fixed, and
there are still surprisingly many gcc-6 uploads.

(Maybe even a daily cron for this would be a good idea...)

Thanks,
Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Bug#853751: unbound: FTBFS[!linux]: missing getentropy implementations

2017-02-16 Thread Steven Chamberlain
Hello,

Guillem pointed out to me that libunbound.pc actually should declare
Requires.private: libbsd
when libunbound.a was compiled against it.  That's for the benefit of
anyone static linking against libunbound (though I think in Debian no
packages are doing that at the moment).

My attached v5 patch is updated with this anyway.  I should see about
upstreaming this now.

Thanks,
Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org
Date: Thu, 16 Feb 2017 12:37:41 +
From: Steven Chamberlain <ste...@pyro.eu.org>
Subject: enable use of portable libbsd functions

Add a new configure option `--with-libbsd', which allows to use libbsd's
portable implementations of:
strlcpy strlcat arc4random arc4random_uniform reallocarray
instead of the embedded code copies in contrib/, which will be
difficult to maintain in the long term.

Also patch util/random.c so that, when building with libbsd and without
OpenSSL, arc4random can still be used as the PRNG.  Otherwise, building
with libnettle would need a kernel-specific getentropy implementation,
and libbsd does not export one.

diff --git a/configure.ac b/configure.ac
index d850539..9744388 100644
--- a/configure.ac
+++ b/configure.ac
@@ -707,6 +707,19 @@ AC_INCLUDES_DEFAULT
 fi
 AC_SUBST(SSLLIB)
 
+# libbsd
+AC_ARG_WITH([libbsd], AC_HELP_STRING([--with-libbsd], [Use portable libbsd functions]), [
+	AC_CHECK_HEADERS([bsd/string.h bsd/stdlib.h],,, [AC_INCLUDES_DEFAULT])
+	if test "x$ac_cv_header_bsd_string_h" = xyes -a "x$ac_cv_header_bsd_stdlib_h" = xyes; then
+		for func in strlcpy strlcat arc4random arc4random_uniform reallocarray; do
+			AC_SEARCH_LIBS([$func], [bsd], [
+AC_DEFINE(HAVE_LIBBSD, 1, [Use portable libbsd functions])
+PC_LIBBSD_DEPENDENCY=libbsd
+AC_SUBST(PC_LIBBSD_DEPENDENCY)
+			])
+		done
+	fi
+])
 
 AC_ARG_ENABLE(sha2, AC_HELP_STRING([--disable-sha2], [Disable SHA256 and SHA512 RRSIG support]))
 case "$enable_sha2" in
@@ -1469,6 +1482,11 @@ struct tm;
 char *strptime(const char *s, const char *format, struct tm *tm);
 #endif
 
+#ifdef HAVE_LIBBSD
+#include 
+#include 
+#endif
+
 #ifdef HAVE_LIBRESSL
 #  if !HAVE_DECL_STRLCPY
 size_t strlcpy(char *dst, const char *src, size_t siz);
diff --git a/contrib/libunbound.pc.in b/contrib/libunbound.pc.in
index 130bef5..ba191eb 100644
--- a/contrib/libunbound.pc.in
+++ b/contrib/libunbound.pc.in
@@ -8,6 +8,7 @@ Description: Library with validating, recursive, and caching DNS resolver
 URL: http://www.unbound.net
 Version: @PACKAGE_VERSION@
 Requires: libcrypto libssl @PC_LIBEVENT_DEPENDENCY@ @PC_PY_DEPENDENCY@
+Requires.private: @PC_LIBBSD_DEPENDENCY@
 Libs: -L${libdir} -lunbound
 Libs.private: @SSLLIB@ @LIBS@
 Cflags: -I${includedir} 
diff --git a/util/random.c b/util/random.c
index 8332960..b86c548 100644
--- a/util/random.c
+++ b/util/random.c
@@ -78,7 +78,7 @@
  */
 #define MAX_VALUE 0x7fff
 
-#if defined(HAVE_SSL)
+#if defined(HAVE_SSL) || defined(HAVE_LIBBSD)
 void
 ub_systemseed(unsigned int ATTR_UNUSED(seed))
 {
@@ -208,10 +208,10 @@ long int ub_random(struct ub_randstate* s)
 	}
 	return x & MAX_VALUE;
 }
-#endif /* HAVE_SSL or HAVE_NSS or HAVE_NETTLE */
+#endif /* HAVE_SSL or HAVE_LIBBSD or HAVE_NSS or HAVE_NETTLE */
 
 
-#if defined(HAVE_NSS) || defined(HAVE_NETTLE)
+#if defined(HAVE_NSS) || defined(HAVE_NETTLE) && !defined(HAVE_LIBBSD)
 long int
 ub_random_max(struct ub_randstate* state, long int x)
 {
@@ -223,7 +223,7 @@ ub_random_max(struct ub_randstate* state, long int x)
 		v = ub_random(state);
 	return (v % x);
 }
-#endif /* HAVE_NSS or HAVE_NETTLE */
+#endif /* HAVE_NSS or HAVE_NETTLE and !HAVE_LIBBSD */
 
 void 
 ub_randfree(struct ub_randstate* s)
diff --git a/debian/control b/debian/control
index f27c922..001428c 100644
--- a/debian/control
+++ b/debian/control
@@ -15,6 +15,7 @@ Build-Depends:
  dh-systemd ,
  dpkg-dev (>= 1.16.1~),
  flex,
+ libbsd-dev (>= 0.8.1~) [!linux-any],
  libevent-dev,
  libexpat1-dev,
  libfstrm-dev ,
diff --git a/debian/rules b/debian/rules
index f978494..3e5c216 100755
--- a/debian/rules
+++ b/debian/rules
@@ -7,6 +7,10 @@ ifneq ($(DEB_HOST_ARCH), amd64)
 CONFIGURE_ARGS = --disable-flto
 endif
 
+ifneq ($(DEB_HOST_ARCH_OS), linux)
+CONFIGURE_ARGS = --with-libbsd
+endif
+
 LIBRARY = libunbound2
 DOPACKAGES = $(shell dh_listpackages)
 


signature.asc
Description: Digital signature


Re: Bug#853751: unbound: FTBFS[!linux]: missing getentropy implementations

2017-02-16 Thread Steven Chamberlain
Hello again,

I've attached *another* revision of this patch.

Thanks to Guillem's comments in IRC, I realise reverse-depends need not
link against -lbsd because libunbound.so does so already.  So I must not
change libunbound.pc as I did.  -lbsd already gets added to Libs.private
when configuring --with-libbsd (which is only relevant for static
linking).

It also means, there's no need for a soname bump, transition, or
patching of reverse-depends if linux arches enabled --with-libbsd.

The debian part of the patch is unchanged since last time.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org
Date: Thu, 16 Feb 2017 10:28:12 +
From: Steven Chamberlain <ste...@pyro.eu.org>
Subject: enable use of portable libbsd functions

Add a new configure option `--with-libbsd', which allows to use libbsd's
portable implementations of:
strlcpy strlcat arc4random arc4random_uniform reallocarray
instead of the embedded code copies in contrib/, which will be
difficult to maintain in the long term.

Also patch util/random.c so that, when building with libbsd and without
OpenSSL, arc4random can still be used as the PRNG.  Otherwise, building
with libnettle would need a kernel-specific getentropy implementation,
and libbsd does not export one.

diff --git a/configure.ac b/configure.ac
index d850539..a21af87 100644
--- a/configure.ac
+++ b/configure.ac
@@ -707,6 +707,17 @@ AC_INCLUDES_DEFAULT
 fi
 AC_SUBST(SSLLIB)
 
+# libbsd
+AC_ARG_WITH([libbsd], AC_HELP_STRING([--with-libbsd], [Use portable libbsd functions]), [
+	AC_CHECK_HEADERS([bsd/string.h bsd/stdlib.h],,, [AC_INCLUDES_DEFAULT])
+	if test "x$ac_cv_header_bsd_string_h" = xyes -a "x$ac_cv_header_bsd_stdlib_h" = xyes; then
+		for func in strlcpy strlcat arc4random arc4random_uniform reallocarray; do
+			AC_SEARCH_LIBS([$func], [bsd], [
+AC_DEFINE(HAVE_LIBBSD, 1, [Use portable libbsd functions])
+			])
+		done
+	fi
+])
 
 AC_ARG_ENABLE(sha2, AC_HELP_STRING([--disable-sha2], [Disable SHA256 and SHA512 RRSIG support]))
 case "$enable_sha2" in
@@ -1469,6 +1480,11 @@ struct tm;
 char *strptime(const char *s, const char *format, struct tm *tm);
 #endif
 
+#ifdef HAVE_LIBBSD
+#include 
+#include 
+#endif
+
 #ifdef HAVE_LIBRESSL
 #  if !HAVE_DECL_STRLCPY
 size_t strlcpy(char *dst, const char *src, size_t siz);
diff --git a/util/random.c b/util/random.c
index 8332960..b86c548 100644
--- a/util/random.c
+++ b/util/random.c
@@ -78,7 +78,7 @@
  */
 #define MAX_VALUE 0x7fff
 
-#if defined(HAVE_SSL)
+#if defined(HAVE_SSL) || defined(HAVE_LIBBSD)
 void
 ub_systemseed(unsigned int ATTR_UNUSED(seed))
 {
@@ -208,10 +208,10 @@ long int ub_random(struct ub_randstate* s)
 	}
 	return x & MAX_VALUE;
 }
-#endif /* HAVE_SSL or HAVE_NSS or HAVE_NETTLE */
+#endif /* HAVE_SSL or HAVE_LIBBSD or HAVE_NSS or HAVE_NETTLE */
 
 
-#if defined(HAVE_NSS) || defined(HAVE_NETTLE)
+#if defined(HAVE_NSS) || defined(HAVE_NETTLE) && !defined(HAVE_LIBBSD)
 long int
 ub_random_max(struct ub_randstate* state, long int x)
 {
@@ -223,7 +223,7 @@ ub_random_max(struct ub_randstate* state, long int x)
 		v = ub_random(state);
 	return (v % x);
 }
-#endif /* HAVE_NSS or HAVE_NETTLE */
+#endif /* HAVE_NSS or HAVE_NETTLE and !HAVE_LIBBSD */
 
 void 
 ub_randfree(struct ub_randstate* s)
diff --git a/debian/control b/debian/control
index f27c922..001428c 100644
--- a/debian/control
+++ b/debian/control
@@ -15,6 +15,7 @@ Build-Depends:
  dh-systemd ,
  dpkg-dev (>= 1.16.1~),
  flex,
+ libbsd-dev (>= 0.8.1~) [!linux-any],
  libevent-dev,
  libexpat1-dev,
  libfstrm-dev ,
diff --git a/debian/rules b/debian/rules
index f978494..3e5c216 100755
--- a/debian/rules
+++ b/debian/rules
@@ -7,6 +7,10 @@ ifneq ($(DEB_HOST_ARCH), amd64)
 CONFIGURE_ARGS = --disable-flto
 endif
 
+ifneq ($(DEB_HOST_ARCH_OS), linux)
+CONFIGURE_ARGS = --with-libbsd
+endif
+
 LIBRARY = libunbound2
 DOPACKAGES = $(shell dh_listpackages)
 


signature.asc
Description: Digital signature


Re: Bug#853751: unbound: FTBFS[!linux]: missing getentropy implementations

2017-02-15 Thread Steven Chamberlain
Steven Chamberlain wrote:
> Attached is [...]

Oops.

-- 
Steven Chamberlain
ste...@pyro.eu.org
Date: Wed, 15 Feb 2017 12:44:13 +
From: Steven Chamberlain <ste...@pyro.eu.org>
Subject: enable use of portable libbsd functions

Add a new configure option `--with-libbsd', which allows to use libbsd's
portable implementations of:
strlcpy strlcat arc4random arc4random_uniform reallocarray
instead of the embedded code copies in contrib/, which will be
difficult to maintain in the long term.

Also patch util/random.c so that, when building with libbsd and without
OpenSSL, arc4random can still be used as the PRNG.  Otherwise, building
with libnettle would need a kernel-specific getentropy implementation,
and libbsd does not export one.

diff --git a/configure.ac b/configure.ac
index d850539..9744388 100644
--- a/configure.ac
+++ b/configure.ac
@@ -707,6 +707,19 @@ AC_INCLUDES_DEFAULT
 fi
 AC_SUBST(SSLLIB)
 
+# libbsd
+AC_ARG_WITH([libbsd], AC_HELP_STRING([--with-libbsd=path], [Use portable libbsd functions]), [
+	AC_CHECK_HEADERS([bsd/string.h bsd/stdlib.h],,, [AC_INCLUDES_DEFAULT])
+	if test "x$ac_cv_header_bsd_string_h" = xyes -a "x$ac_cv_header_bsd_stdlib_h" = xyes; then
+		for func in strlcpy strlcat arc4random arc4random_uniform reallocarray; do
+			AC_SEARCH_LIBS([$func], [bsd], [
+AC_DEFINE(HAVE_LIBBSD, 1, [Use portable libbsd functions])
+PC_LIBBSD_DEPENDENCY=libbsd
+AC_SUBST(PC_LIBBSD_DEPENDENCY)
+			])
+		done
+	fi
+])
 
 AC_ARG_ENABLE(sha2, AC_HELP_STRING([--disable-sha2], [Disable SHA256 and SHA512 RRSIG support]))
 case "$enable_sha2" in
@@ -1469,6 +1482,11 @@ struct tm;
 char *strptime(const char *s, const char *format, struct tm *tm);
 #endif
 
+#ifdef HAVE_LIBBSD
+#include 
+#include 
+#endif
+
 #ifdef HAVE_LIBRESSL
 #  if !HAVE_DECL_STRLCPY
 size_t strlcpy(char *dst, const char *src, size_t siz);
diff --git a/contrib/libunbound.pc.in b/contrib/libunbound.pc.in
index 130bef5..b6aec29 100644
--- a/contrib/libunbound.pc.in
+++ b/contrib/libunbound.pc.in
@@ -7,7 +7,7 @@ Name: unbound
 Description: Library with validating, recursive, and caching DNS resolver
 URL: http://www.unbound.net
 Version: @PACKAGE_VERSION@
-Requires: libcrypto libssl @PC_LIBEVENT_DEPENDENCY@ @PC_PY_DEPENDENCY@
+Requires: libcrypto libssl @PC_LIBEVENT_DEPENDENCY@ @PC_PY_DEPENDENCY@ @PC_LIBBSD_DEPENDENCY@
 Libs: -L${libdir} -lunbound
 Libs.private: @SSLLIB@ @LIBS@
 Cflags: -I${includedir} 
diff --git a/util/random.c b/util/random.c
index 8332960..b86c548 100644
--- a/util/random.c
+++ b/util/random.c
@@ -78,7 +78,7 @@
  */
 #define MAX_VALUE 0x7fff
 
-#if defined(HAVE_SSL)
+#if defined(HAVE_SSL) || defined(HAVE_LIBBSD)
 void
 ub_systemseed(unsigned int ATTR_UNUSED(seed))
 {
@@ -208,10 +208,10 @@ long int ub_random(struct ub_randstate* s)
 	}
 	return x & MAX_VALUE;
 }
-#endif /* HAVE_SSL or HAVE_NSS or HAVE_NETTLE */
+#endif /* HAVE_SSL or HAVE_LIBBSD or HAVE_NSS or HAVE_NETTLE */
 
 
-#if defined(HAVE_NSS) || defined(HAVE_NETTLE)
+#if defined(HAVE_NSS) || defined(HAVE_NETTLE) && !defined(HAVE_LIBBSD)
 long int
 ub_random_max(struct ub_randstate* state, long int x)
 {
@@ -223,7 +223,7 @@ ub_random_max(struct ub_randstate* state, long int x)
 		v = ub_random(state);
 	return (v % x);
 }
-#endif /* HAVE_NSS or HAVE_NETTLE */
+#endif /* HAVE_NSS or HAVE_NETTLE and !HAVE_LIBBSD */
 
 void 
 ub_randfree(struct ub_randstate* s)
diff --git a/debian/control b/debian/control
index f27c922..001428c 100644
--- a/debian/control
+++ b/debian/control
@@ -15,6 +15,7 @@ Build-Depends:
  dh-systemd ,
  dpkg-dev (>= 1.16.1~),
  flex,
+ libbsd-dev (>= 0.8.1~) [!linux-any],
  libevent-dev,
  libexpat1-dev,
  libfstrm-dev ,
diff --git a/debian/rules b/debian/rules
index f978494..3e5c216 100755
--- a/debian/rules
+++ b/debian/rules
@@ -7,6 +7,10 @@ ifneq ($(DEB_HOST_ARCH), amd64)
 CONFIGURE_ARGS = --disable-flto
 endif
 
+ifneq ($(DEB_HOST_ARCH_OS), linux)
+CONFIGURE_ARGS = --with-libbsd
+endif
+
 LIBRARY = libunbound2
 DOPACKAGES = $(shell dh_listpackages)
 


signature.asc
Description: Digital signature


Re: Bug#853751: unbound: FTBFS[!linux]: missing getentropy implementations

2017-02-15 Thread Steven Chamberlain
Control: tags -1 + patch

Hi again,

Attached is an updated patch, that I hope is more suitable for upstream.
It adds a configure option `--with-libbsd' allowing to use it if
desired (instead of using the overlay);  and it updates libunbound.pc if
necessary, to tell users of -lunbound to also use -lbsd.

Also attached is a patch for the unbound Debian packaging, which would
use that option on non-Linux architectures.  libunbound would then build
with portable implementations of getentropy, arc4random etc. from
libbsd, fixing the current FTBFS.  This shouldn't break any
reverse-depends because those already FTBFS on kfreebsd and hurd, and
those architectures are not in testing.

In future, if libbsd was enabled on linux architectures too, then there
perhaps should be a soname bump / transition where reverse-depends (e.g.
gnutls28) switch to using pkg-config, so that they themselves link with
-lbsd if necessary, and not simply -lunbound as most do currently.
Helmut Grohne suggested uploading to experimental in that case, and then
I could file patches for all the reverse-depends.

Thanks for considering,
Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Bug#853751: unbound: FTBFS[!linux]: missing getentropy implementations

2017-02-14 Thread Steven Chamberlain
Control: tags -1 - patch

Hi,

This change, if it was made on all architectures, could cause a
regression for reverse-depends of libunbound-dev, since they would also
need to link with -lbsd and not just -lunbound.

For kfreebsd and hurd, that doesn't matter yet, because the
reverse-depends all FTBFS or are BD-Uninstallable waiting on
unbound >= 1.5.10 (gnutls28 for example).

But eventually, we should try to fix all reverse-depends to get the
correct linker flags with pkg-config, instead of assuming "-lunbound" to
be sufficient.

And so firstly, I must rewrite my patch to add -lbsd to the Libs.private
field of libunbound.pc, whenever it is necessary.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Bug#855072: freebsd-buildutils: fmtree doesn't support documented -K sha256digest

2017-02-13 Thread Steven Chamberlain
Control: tags -1 + pending

Hello!

John Goerzen wrote:
> The fmtree manpage describes sha256digest, sha1digest, and md5digest.
> 
> None of these are actually supported by -K:

When this was packaged in 2005, we did not have libmd.  Since recently,
we have this now in sid/stretch, so I shall enable this feature :)

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Bug#855027: guile-2.0: FTBFS[kfreebsd-amd64]: 00-repl-server.test "Resource temporarily unavailable"

2017-02-13 Thread Steven Chamberlain
Package: src:guile-2.0
Version: 2.0.13+1-2
Severity: important
User: debian-bsd@lists.debian.org
Usertags: kfreebsd

Hello,

guile-2.0 FTBFS on kfreebsd-amd64, since the addition of
0003-tests-Avoid-race-condition-in-REPL-server-test.patch in 2.0.13+1-4

https://buildd.debian.org/status/fetch.php?pkg=guile-2.0=kfreebsd-amd64=2.0.13%2B1-4=1481333083=0
| FAIL: 00-repl-server.test: repl-server: simple expression - arguments:
| (expected-value "scheme@(repl-server)> $1 = 42\n" actual-value:
| scheme@(repl-server)> While reading expression:
| ERROR: In procedure fport_fill_input: Resource temporarily unavailable
| scheme@(repl-server)> While reading expression:
| ERROR: In procedure fport_fill_input: Resource temporarily unavailable
| scheme@(repl-server)> While reading expression:
| ERROR: In procedure fport_fill_input: Resource temporarily unavailable

I think the newly-added call to select() is returning EAGAIN:

+
+  ;; Wait until 'repl-reader' in boot-9 has written the prompt.
+  ;; Otherwise, if we write too quickly, 'repl-reader' checks for
+  ;; 'char-ready?' and doesn't print the prompt.
+  (match (select (list socket) '() (list socket) 3)
+(((_) () ())
+ (display "(+ 40 2)\n(quit)\n" socket)
+ (read-string socket)

But I think that is quite normal, at least on kfreebsd.  In
http://man7.org/linux/man-pages/man2/select.2.html it is stated that
"Portable programs may wish to check for EAGAIN and loop, just as with
EINTR."

I'm unfortunately not a Guile programmer so I wouldn't know how to do
that here.

I chose severity 'important' because, although kfreebsd is not a release
architecture, src:guile-2.0 is a build-dependency of some of the
build-essential packages in sid.

Thanks!

-- System Information:
Debian Release: stretch/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: kfreebsd-amd64 (x86_64)

Kernel: kFreeBSD 10.1-0-amd64
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)



Re: Bug#852215: FTBFS on non-release architectures

2017-02-08 Thread Steven Chamberlain
Cyril Brulebois wrote:
> [...] kfreebsd-* (which currently FTBFS anyway…).

Regarding that, is it okay I commit to sid this specific change for
kfreebsd-amd64:

--- a/build/Makefile
+++ b/build/Makefile
@@ -149,7 +149,7 @@ ifeq ($(DEB_HOST_ARCH),kfreebsd-i386)
 MFSROOT_LIMIT := 42m
 else ifeq ($(DEB_HOST_ARCH),kfreebsd-amd64)
 # See Bug#783773 for derivation.
-MFSROOT_LIMIT := 74m
+MFSROOT_LIMIT := 78m
 endif
 
 define mkfs.ufs1

Thanks,
Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: kfreebsd-* buildd issues

2017-02-08 Thread Steven Chamberlain
> >> Steven Chamberlain <ste...@pyro.eu.org> writes:
> >> > Please could someone check the gcc-7 build on fayrfax, to see of it is
> >> > stuck again with hung gdb processes?
[...]
> > Please could you do the same again... some/all of the buildds are stuck
> > building gcc-snapshot.

Christoph Egger wrote:
> Only fayrfax and fils it seems (or someone killed the others already)

I think someone else already took care of it that time.

But now we had new uploads of gcc-6 and gcc-snapshot... psmisc is not
yet fixed in sid... please could somebody once again kill the hung gdb
processes?

Many thanks,
Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: kfreebsd-* buildd issues

2017-02-04 Thread Steven Chamberlain
Hello,

Christoph Egger wrote:
> Steven Chamberlain <ste...@pyro.eu.org> writes:
> > Please could someone check the gcc-7 build on fayrfax, to see of it is
> > stuck again with hung gdb processes?
> 
> It is, will kill it in a minute just need to remember my sudo password
> 
> > Also, I can't see that buildd fano has built much recently either.
> 
> Building gcc 6.3 and stuck there

Please could you do the same again... some/all of the buildds are stuck
building gcc-snapshot.

Hopefully soon there may be a procps upload fixing this.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Bug#854074: gcc-6: please enable PIE hardening flags by default on kfreebsd-*

2017-02-03 Thread Steven Chamberlain
Hi,

Matthias Klose wrote:
> [CCing porters, please also leave feedback in #835148 for non-release 
> architectures]

Since that bug is done/closed/actioned, I've cloned a new one for this
request.

> On 29.09.2016 21:39, Niels Thykier wrote:
> > As agreed on during the [meeting], if there are no major concerns to
> > this proposal in general within a week, I shall file a bug against GCC
> > requesting PIE by default on all release architectures (with backing
> > porters).

I think we are ready for this now;  please enable PIE by default on
kfreebsd-* when it is practical (or rather, allow dpkg-buildflags to
enable it).

Thanks,
Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Bug#853751: unbound: FTBFS[!linux]: missing getentropy implementations

2017-02-03 Thread Steven Chamberlain
Hi,

Here's un updated patch including the missing part, and now using a
proper invocation of pkg-config suitable for cross-builds, as pointed
out to me by helmutg@

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org
--- a/debian/control  
+++ b/debian/control  
@@ -15,6 +15,7 @@ Build-Depends:  
  dh-systemd ,  
  dpkg-dev (>= 1.16.1~),  
  flex,   
+ libbsd-dev (>= 0.8.1~) [!linux-any],
  libevent-dev,   
  libexpat1-dev,  
  libfstrm-dev ,
--- a/debian/rules
+++ b/debian/rules
@@ -14,6 +14,12 @@ export DEB_BUILD_MAINT_OPTIONS = hardening=+all
 DPKG_EXPORT_BUILDFLAGS = 1
 include /usr/share/dpkg/buildflags.mk
 
+ifneq ($(DEB_HOST_ARCH_OS), linux)
+# libbsd can provide strlcpy, strlcat, arc4random*, reallocarray
+CFLAGS += $(shell $(DEB_HOST_GNU_TYPE)-pkg-config --cflags libbsd-overlay)
+LDFLAGS += $(shell $(DEB_HOST_GNU_TYPE)-pkg-config --libs libbsd-overlay)
+endif
+
 clean:
 	dh_autotools-dev_restoreconfig
 	dh_autoreconf_clean
@@ -31,7 +37,7 @@ binary-arch: build
 ifneq (,$(filter unbound unbound-anchor unbound-host,$(DOPACKAGES)))
 	# first build -- build unbound daemon
 	PYTHON_VERSION="$(shell py3versions -vd)" \
-	CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="-Wl,--as-needed $(LDFLAGS)" \
+	CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS) -Wl,--as-needed" \
 		dh_auto_configure -- \
 		--disable-rpath \
 		--with-pidfile=/run/unbound.pid \
@@ -48,7 +54,7 @@ ifneq (,$(filter unbound unbound-anchor unbound-host,$(DOPACKAGES)))
 endif
 
 	# second build -- build libunbound only, against nettle
-	CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="-Wl,--as-needed $(LDFLAGS)" \
+	CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS) -Wl,--as-needed" \
 		dh_auto_configure -- \
 		--disable-rpath \
 		--with-libunbound-only \
@@ -67,7 +73,7 @@ endif
 ifneq (,$(filter python-unbound,$(DOPACKAGES)))
 	# third build - pyunbound for Python 2
 	PYTHON_VERSION="$(shell pyversions -vd)" \
-	CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="-Wl,--as-needed $(LDFLAGS)" \
+	CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS) -Wl,--as-needed" \
 		dh_auto_configure -- \
 		--disable-rpath \
 		--with-pythonmodule \
@@ -86,7 +92,7 @@ endif
 ifneq (,$(filter python3-unbound,$(DOPACKAGES)))
 	# fourth build - pyunbound for Python 3
 	PYTHON_VERSION="$(shell py3versions -vd)" \
-	CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="-Wl,--as-needed $(LDFLAGS)" \
+	CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS) -Wl,--as-needed" \
 		dh_auto_configure -- \
 		--disable-rpath \
 		--with-pythonmodule \
diff --git a/configure.ac b/configure.ac
index d850539..f83f003 100644
--- a/configure.ac
+++ b/configure.ac
@@ -674,6 +674,14 @@ if grep VERSION_TEXT $ssldir/include/openssl/opensslv.h | grep "LibreSSL" >/dev/
 	AC_CHECK_DECLS([strlcpy,strlcat,arc4random,arc4random_uniform,reallocarray])
 else
 	AC_MSG_RESULT([no])
+
+	# Otherwise see if libbsd can provide these functions
+	AC_CHECK_DECLS([strlcpy,strlcat], [], [], [
+#include 
+])
+	AC_CHECK_DECLS([arc4random,arc4random_uniform,reallocarray], [], [], [
+#include 
+])
 fi
 AC_CHECK_HEADERS([openssl/conf.h openssl/engine.h openssl/bn.h openssl/dh.h openssl/dsa.h openssl/rsa.h],,, [AC_INCLUDES_DEFAULT])
 AC_CHECK_FUNCS([OPENSSL_config EVP_sha1 EVP_sha256 EVP_sha512 FIPS_mode EVP_MD_CTX_new OpenSSL_add_all_digests OPENSSL_init_crypto EVP_cleanup ERR_load_crypto_strings CRYPTO_cleanup_all_ex_data ERR_free_strings RAND_cleanup DSA_SIG_set0 EVP_dss1])


signature.asc
Description: Digital signature


Re: [Pkg-dns-devel] Bug#853751: unbound: FTBFS[!linux]: missing getentropy implementations

2017-02-01 Thread Steven Chamberlain
Hello,

Robert Edmonds wrote:
> Thanks for this patch. Is this needed before stretch releases? (IIUC,
> kfreebsd and hurd are not release architectures?)

Indeed, this isn't relevant to stretch, this is not urgent.

> I agree with this reasoning, but I'd rather have the libbsd support in
> an upstream Unbound release rather than in the Debian package. I'll see
> about producing a patch suitable for upstream.

Yes, the configure.ac part is something we should propose to upstream:
libbsd exists in other distros and, samba uses it for example.

Thanks!
Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Bug#853751: unbound: FTBFS[!linux]: missing getentropy implementations

2017-01-31 Thread Steven Chamberlain
Hi,

I forgot an important piece of the patch which is actually adding the
build-dependency:

--- a/debian/control
+++ b/debian/control
@@ -15,6 +15,7 @@ Build-Depends:
  dh-systemd ,
  dpkg-dev (>= 1.16.1~),
  flex,
+ libbsd-dev (>= 0.8.1~) [!linux-any],
  libevent-dev,
  libexpat1-dev,
  libfstrm-dev ,

0.8.1 was the first version to implement a modern arc4random (using
ChaCha20 cipher) and implement genentropy on kfreebsd and hurd.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Bug#853751: unbound: FTBFS[!linux]: missing getentropy implementations

2017-01-31 Thread Steven Chamberlain
tags 853751 + patch
user helm...@debian.org
usertags 853751 + rebootstrap
thanks

Hi,

This bug has become important, since src:unbound became part of the
build-essential closure (due to Build-Depends of gnutls28).  So this is
now a blocking issue for rebootstrapping kfreebsd and hurd.

Andreas Beckmann wrote:
> unbound FTBFS on hurd-i386 and kfreebsd-* due to usage of linux specific
> headers linux/types.h and sys/mount.h:

This is still the case in sid:
https://buildd.debian.org/status/fetch.php?pkg=unbound=hurd-i386=1.6.0-2=1482097724=0
https://buildd.debian.org/status/fetch.php?pkg=unbound=kfreebsd-amd64=1.6.0-2=1482453042=0
https://buildd.debian.org/status/fetch.php?pkg=unbound=kfreebsd-i386=1.6.0-2=1482578818=0

| compat/getentropy_linux.c:56:25: fatal error: linux/types.h: No such file or 
directory

The reason is, unbound requires an arc4random(3) implementation.  For
platforms not having that in their libc, it bundles its own embedded
code copy (in compat/) but that only supports Linux, OS/X and Solaris.

We have in Debian a good arc4random(3) implementation provided by
libbsd, which is already ported to all architectures.  Please use it on
kfreebsd and hurd, at least.  I've attached a patch to do exactly that,
and fixes the current FTBFS there.

(It was necessary that the LDFLAGS of libbsd-overlay.pc come *before*
-Wl,--as-needed, or else the AC_REPLACE_FUNCS configure checks fail --
I'm not sure what is the reason for that?)

You could perhaps use libbsd unconditionally - on linux arches too - and
then the copy in compat/ would no longer be used.

There is a long history of software embedding copies of arc4random, and
then forgetting to maintain them.  There is a longer discussion of that
here:  https://wiki.debian.org/arc4random

I hold the opinion that packages should use the libbsd implementation
whereever possible, and then in Debian we would only need to maintain it
in one place, to the benefit of all reverse-deps.

Many thanks,
Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org
diff --git a/configure.ac b/configure.ac
index d850539..f83f003 100644
--- a/configure.ac
+++ b/configure.ac
@@ -674,6 +674,14 @@ if grep VERSION_TEXT $ssldir/include/openssl/opensslv.h | grep "LibreSSL" >/dev/
 	AC_CHECK_DECLS([strlcpy,strlcat,arc4random,arc4random_uniform,reallocarray])
 else
 	AC_MSG_RESULT([no])
+
+	# Otherwise see if libbsd can provide these functions
+	AC_CHECK_DECLS([strlcpy,strlcat], [], [], [
+#include 
+])
+	AC_CHECK_DECLS([arc4random,arc4random_uniform,reallocarray], [], [], [
+#include 
+])
 fi
 AC_CHECK_HEADERS([openssl/conf.h openssl/engine.h openssl/bn.h openssl/dh.h openssl/dsa.h openssl/rsa.h],,, [AC_INCLUDES_DEFAULT])
 AC_CHECK_FUNCS([OPENSSL_config EVP_sha1 EVP_sha256 EVP_sha512 FIPS_mode EVP_MD_CTX_new OpenSSL_add_all_digests OPENSSL_init_crypto EVP_cleanup ERR_load_crypto_strings CRYPTO_cleanup_all_ex_data ERR_free_strings RAND_cleanup DSA_SIG_set0 EVP_dss1])
diff --git a/debian/rules b/debian/rules
index f978494..ede0d90 100755
--- a/debian/rules
+++ b/debian/rules
@@ -14,6 +14,12 @@ export DEB_BUILD_MAINT_OPTIONS = hardening=+all
 DPKG_EXPORT_BUILDFLAGS = 1
 include /usr/share/dpkg/buildflags.mk
 
+ifneq ($(DEB_HOST_ARCH_OS), linux)
+# libbsd can provide strlcpy, strlcat, arc4random*, reallocarray
+CFLAGS += $(shell pkg-config --cflags libbsd-overlay)
+LDFLAGS += $(shell pkg-config --libs libbsd-overlay)
+endif
+
 clean:
 	dh_autotools-dev_restoreconfig
 	dh_autoreconf_clean
@@ -31,7 +37,7 @@ binary-arch: build
 ifneq (,$(filter unbound unbound-anchor unbound-host,$(DOPACKAGES)))
 	# first build -- build unbound daemon
 	PYTHON_VERSION="$(shell py3versions -vd)" \
-	CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="-Wl,--as-needed $(LDFLAGS)" \
+	CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS) -Wl,--as-needed" \
 		dh_auto_configure -- \
 		--disable-rpath \
 		--with-pidfile=/run/unbound.pid \
@@ -48,7 +54,7 @@ ifneq (,$(filter unbound unbound-anchor unbound-host,$(DOPACKAGES)))
 endif
 
 	# second build -- build libunbound only, against nettle
-	CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="-Wl,--as-needed $(LDFLAGS)" \
+	CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS) -Wl,--as-needed" \
 		dh_auto_configure -- \
 		--disable-rpath \
 		--with-libunbound-only \
@@ -67,7 +73,7 @@ endif
 ifneq (,$(filter python-unbound,$(DOPACKAGES)))
 	# third build - pyunbound for Python 2
 	PYTHON_VERSION="$(shell pyversions -vd)" \
-	CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="-Wl,--as-needed $(LDFLAGS)" \
+	CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS) -Wl,--as-needed" \
 		dh_auto_configure -- \
 		--disable-rpath \
 		--with-pythonmodule \
@@ -86,7 +92,7 @@ endif
 ifneq (,$(filter python3-unbound,$(DOPACKA

Re: kfreebsd-* buildd issues

2017-01-26 Thread Steven Chamberlain
Hello,

Please could someone check the gcc-7 build on fayrfax, to see of it is
stuck again with hung gdb processes?

Also, I can't see that buildd fano has built much recently either.

Many thanks,
Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Bug#852507: mame: FTBFS[kfreebsd]: wrong path for dirent.h

2017-01-24 Thread Steven Chamberlain
Source: mame
Version: 0.181-1
Tags: upstream patch
X-Debbugs-Cc: debian-bsd@lists.debian.org
User: debian-bsd@lists.debian.org
Usertags: kfreebsd

Hi!

mame/0.181-1 FTBFS on kfreebsd-* because:

| Compiling 3rdparty/bgfx/3rdparty/ocornut-imgui/imgui.cpp...
| In file included from 
../../../../../3rdparty/bgfx/3rdparty/ocornut-imgui/widgets/file_list.inl:2:0,
|  from 
../../../../../3rdparty/bgfx/3rdparty/ocornut-imgui/imgui_user.inl:75,
|  from 
../../../../../3rdparty/bgfx/3rdparty/ocornut-imgui/imgui.cpp:9799:
| ../../../../../3rdparty/bx/include/compat/freebsd/dirent.h:1:24: fatal error: 
sys/dirent.h: No such file or directory

Attached is a simple patch for this.  It is similar to two other fixes
already applied upstream.  I'll take responsibility for upstreaming this
(in "bx" and then in mame).

My patch fixes only the issue described above.  I don't know yet if this
is the *only* reason for FTBFS because I'm still building it on falla.

Thanks!
Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org
diff --git a/3rdparty/bx/include/compat/freebsd/dirent.h b/3rdparty/bx/include/compat/freebsd/dirent.h
index b4f586b..5f52d2d 100644
--- a/3rdparty/bx/include/compat/freebsd/dirent.h
+++ b/3rdparty/bx/include/compat/freebsd/dirent.h
@@ -1 +1,5 @@
-#include 
+#if defined(__GLIBC__)
+#   include_next 
+#else
+#   include 
+#endif


signature.asc
Description: Digital signature


Re: Bug#851053: openjdk-8-jre-headless: Can't run a command with Runtime.exec() on kfreebsd-* - errcode 127

2017-01-13 Thread Steven Chamberlain
Hello,

Gilles Filippini wrote:
> While investigating about ant FTBFS on kfreebsd-* [1][2], I tried the
> very simple testcase below. It fails with errcode 127 on kfreebsd-*:

Many thanks for the report and test case.  With that I could easily find
the underlying issue:

 31280 java CALL  vfork
 31280 java RET   vfork 31281/0x7a31
 31281 java RET   fork 0
 31281 java CALL  execve(0x8041e6970,0x8026b34c0,0x7fffe610)
 31281 java NAMI
"/usr/lib/jvm/java-8-openjdk-kfreebsd-amd64/jre/lib/jspawnhelper"
 31281 java RET   execve -1 errno 2 No such file or directory
 31281 java CALL  exit(0x7f)

AFAIK only kfreebsd uses jspawnhelper, but ISTR it was the most suitable
implementation of exec() for us to use at the moment.

The file is actually located at
/usr/lib/jvm/java-8-openjdk-kfreebsd-amd64/jre/lib/amd64/jspawnhelper

Perhaps I need to update something in the kfreebsd jdk patchset;
although it maybe makes more sense to install that file to
/usr/lib/jvm/java-8-openjdk-kfreebsd-amd64/jre/lib/jspawnhelper
since the pathname is already multiarched.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Bug#850841: gcc-6: [kfreebsd] guality tests hang on kfreebsd

2017-01-10 Thread Steven Chamberlain
Maybe it's an error on FreeBSD to try to ptrace your own parent process.
From https://www.freebsd.org/cgi/man.cgi?query=ptrace:

| For the duration of the tracing session, the traced process will be
| ``re-parented'', with its parent process ID (and resulting behavior)
| changed to the tracing process.

gdb seems fine attaching to other pids than its parent process.
But this simple testcase of attaching to the parent process, shows the
same issue as the guality tests:

$ cat attach-self.sh 
#!/bin/sh -e
echo "attach $$" | gdb -nx -nw

| GNU gdb (Debian 7.12-4) 7.12
| Copyright (C) 2016 Free Software Foundation, Inc.
| License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
| This is free software: you are free to change and redistribute it.
| There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
| and "show warranty" for details.
| This GDB was configured as "x86_64-kfreebsd-gnu".
| Type "show configuration" for configuration details.
| For bug reporting instructions, please see:
| <http://www.gnu.org/software/gdb/bugs/>.
| Find the GDB manual and other documentation resources online at:
| <http://www.gnu.org/software/gdb/documentation/>.
| For help, type "help".
| Type "apropos word" to search for commands related to "word".
| (gdb) Attaching to process 95320
| Couldn't get registers: Device or resource busy.
| Couldn't get registers: Device or resource busy.
| (gdb) quit
| A debugging session is active.
| 
| Inferior 1 [process 95320] will be detached.
| 
| Quit anyway? (y or n) [answered Y; input not from terminal]
| Detaching from program: , process 95320
| ptrace: Device or resource busy.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Bug#850841: gcc-6: [kfreebsd] guality tests hang on kfreebsd

2017-01-10 Thread Steven Chamberlain
/home/stevenc/gcc-6-6.3.0/src/gcc/testsuite/gcc.dg/guality/guality.h:335
| 335 while (--timeout && !guality_attached)

For reference, the instructions that were sent to gdb are:

| |  85526 guality_check15612. GIO   fd 4 wrote 172 bytes
| |"set height 0
| | handle SIGINT pass nostop
| | handle SIGTERM pass nostop
| | handle SIGSEGV pass nostop
| | handle SIGBUS pass nostop
| | attach 85526
| | set guality_attached = 1
| | b 351
| | continue
| |"
| | 
| |  85526 guality_check15612. GIO   fd 4 wrote 282 bytes
| |"up
| | set $value1 = 0
| | set $value1 = (varl)
| | set $value2 = -1
| | set $value2 = (varl)
| | set $value3 = $value1 - 1
| | set $value4 = $value1 + 1
| | set $value3 = (varl)++
| | set $value4 = --(varl)
| | down
| | set xvalue = $value1
| | set unavailable = $value1 != $value2 ? -1 : $value3 != $value4 ? 1 
: 0
| | continue
| |"

pid 85526 is seen telling gdb to attach to pid 85526.  That seems odd,
but I think that really is intended.

Thanks,
Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: gcc 7, 6 builds killed on kfreebsd

2017-01-10 Thread Steven Chamberlain
Steven Chamberlain wrote:
> Christoph Egger wrote:
> > | WARNING: 30 signals -- adjust and recompile.
> 
> That comes from pkill, which recently stopped working.  This means, the
> build already hung / timed out and sbuild is merely failing to kill it.

The warning messages from libprocps are seemingly benign, but in this
case I think they stopped sbuild from timing out the build (because
there was still 'activity' on stderr).  I still don't know where those
messages came from (I couldn't find any pgrep/pkill invocation for
example).

Some testcases such as guality_check15612.exe seem to hang.  That may be
a regression, or it may be that something was previously killing it
after some timeout, and now is not.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Bug#850717: procps: [kfreebsd] pkill fails, number_of_signals changed

2017-01-10 Thread Steven Chamberlain
Hi,

I was wrong that this bug breaks functionality of pkill.  It still
works, despite printing the warning.

So this bug is mostly cosmetic, however, it does have an incidental
side-effect on the gcc-6 builds, where the message printed on stderr
causes sbuild to never time out the build...

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: gcc 7, 6 builds killed on kfreebsd

2017-01-09 Thread Steven Chamberlain
Christoph Egger wrote:
> | WARNING: 30 signals -- adjust and recompile.

That comes from pkill, which recently stopped working.  This means, the
build already hung / timed out and sbuild is merely failing to kill it.

For that I've just filed Bug#850717 against
procps: [kfreebsd] pkill fails, number_of_signals changed

I still need to find out why the gcc-6/-snapshot builds hang.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Bug#850717: procps: [kfreebsd] pkill fails, number_of_signals changed

2017-01-09 Thread Steven Chamberlain
Package: procps
Version: 2:3.3.12-3
Severity: important
Tags: upstream patch
X-Debbugs-Cc: debian-bsd@lists.debian.org
User: debian-bsd@lists.debian.org
Usertags: kfreebsd

Hello,

Jon's patch[0] unfortunately causes number_of_signals to differ
between Linux and other kernels not having SIGPWR.  pkill from the
Debian procps/2:3.3.12-3 package has this issue on kfreebsd arches:

$ pkill -2 foobar
WARNING: 30 signals -- adjust and recompile.

In proc/sig.c:

289 /* sanity check */
290 static int init_signal_list(void) __attribute__((constructor));
291 static int init_signal_list(void){
292   if(number_of_signals != 31){
293 fprintf(stderr, "WARNING: %d signals -- adjust and recompile.\n", 
number_of_signals);
294   }
295   return 0;
296 }

it may be counter-productive to maintain an expected number_of_signals
for each platform.  May I suggest to only do the sanity check on Linux?
(patch attached, tested on kfreebsd-amd64)

[0]: 
https://gitlab.com/procps-ng/procps/commit/8abd0c92ab7576280b2a601c12ff749ab41c117f

Many thanks,
Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org
From 7741344069d31d5e7f4206534ed1989ed1180e49 Mon Sep 17 00:00:00 2001
From: Steven Chamberlain <ste...@pyro.eu.org>
Date: Mon, 9 Jan 2017 15:46:36 +
Subject: [PATCH] library: only check number_of_signals on Linux

number_of_signals is expected to differ across platforms.  Rather than
try to define the expected values on each architecture, only perform the
sanity check on Linux builds.
---
 proc/sig.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/proc/sig.c b/proc/sig.c
index 461db1d..0a4 100644
--- a/proc/sig.c
+++ b/proc/sig.c
@@ -287,8 +287,10 @@ void unix_print_signals(void){
 /* sanity check */
 static int init_signal_list(void) __attribute__((constructor));
 static int init_signal_list(void){
+#ifdef __linux__
   if(number_of_signals != 31){
 fprintf(stderr, "WARNING: %d signals -- adjust and recompile.\n", number_of_signals);
   }
+#endif
   return 0;
 }
-- 
2.5.1



signature.asc
Description: Digital signature


Re: gcc 7, 6 builds killed on kfreebsd

2017-01-09 Thread Steven Chamberlain
Hi!

Christoph Egger wrote:
> I've just killed the gcc builds on kfreebsd. THey're all looping with a
> 
> | WARNING: 30 signals -- adjust and recompile.

Thanks;  it seems to have happened again though on kfreebsd-amd64 (stuck
building gcc-6 and gcc-snapshot for 5+ days).

I will look into this problem ASAP but maybe those builds can be marked as
'Failed' so that other packages build in the meantime?

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: bwn0 interface

2016-12-31 Thread Steven Chamberlain
Herbert Fortes wrote:
> Hi Steven Chamberlain,
> > You may need this non-free package installed for the microcode:
> > https://packages.debian.org/jessie/firmware-brcm80211
> 
> The package does not list 4312.

Ah okay.  Perhaps we do not have a package with this microcode.
You may need to use a non-free kfreebsd (kernel) package including the
sourceless parts.

Which kernel version are you using? (`uname -r`)

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: bwn0 interface

2016-12-30 Thread Steven Chamberlain
Hello,

Herbert Fortes wrote:
> bwn_v4_lp_ucode15: could not load firmware image, error 2
> 
> bwn0: the fw file(bw_v4_lp_ucode15) not found

You may need this non-free package installed for the microcode:
https://packages.debian.org/jessie/firmware-brcm80211

Then to test it, try something like:

# modprobe if_bwn
# ifconfig wlan0 create wlandev bwn0 mode 11g
# ifconfig wlan0 up scan

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


kfreebsd-* buildd issues

2016-12-04 Thread Steven Chamberlain
Hi!

Did we lose the kfreebsd-* buildds?

The queues are huge, and the current wanna-build state has this:

Building2   1: arb (77d 22h 13m, non-free, fano), notmuch (3d 1h 
37m, fayrfax)
Building1   1: notmuch (3d 6h 42m, fils)

Thanks,
Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Bug#846635: openmpi: broken on kfreebsd since 2.x

2016-12-03 Thread Steven Chamberlain
Control: tags -1 + pending

Alastair McKinstry wrote:
> This is fixed  with 2.0.2~git.2015125-1, currently in experimental
> (which FTBFS due to a build dependency on flex, being fixed now).

Okay, that's very cool!

(Also it seems to be missing a build-dependency on libevent-dev?)

I'm not sure how they fixed it.  What I've been doing since yesterday is
writing support to check peer credentials on a socket the FreeBSD way
(using LOCAL_PEERCRED) in pmix.  I was able to fix the issue that way.

In OpenMPI 2.0.2, they still didn't implement that, but somehow the
issue is fixed.  Do you possibly know what they changed, or even the
specific Git commit where they fixed this?

(Also I was wrong that FreeBSD Ports doesn't have OpenMPI 2.x - they
do have an openmpi2 port since very recently).

Many thanks,
Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Bug#846635: openmpi: broken on kfreebsd since 2.x

2016-12-02 Thread Steven Chamberlain
Package: openmpi
Version: 2.0.1-7
Severity: important
Tags: upstream
User: debian-bsd@lists.debian.org
Usertags: kfreebsd

Hi,

(Greetings from the BSP at TU-Dresden, 2016!)

Updating mpirun-bin from 1.10.2-14 to 2.0.1-7 breaks the testsuite
of dune-common (error below), but also this simple testcase too:

| #include 
| 
| int main(int argc, char *argv[]) {
| MPI_Init(, );
| MPI_Finalize();
| return 0;
| }

fails with:

> $ OMPI_MCA_plm_rsh_agent=/bin/false ./testcase
> 
> [hostname.example.com:96346] PMIX ERROR: UNREACHABLE in file
> src/client/pmix_client.c at line 983
> [hostname.example.com:96347] PMIX ERROR: NOT-SUPPORTED in file
> src/server/pmix_server_listener.c at line 540
> [hostname.example.com:96346] PMIX ERROR: UNREACHABLE in file
> src/client/pmix_client.c at line 199
> --
> It looks like orte_init failed for some reason; your parallel process is
> likely to abort.  There are many reasons that a parallel process can
> fail during orte_init; some of which are due to configuration or
> environment problems.  This failure appears to be an internal failure;
> here's some additional information (which may only be relevant to an
> Open MPI developer):
> 
>   init pmix failed
>   --> Returned value Unreachable (-12) instead of ORTE_SUCCESS

It is the same error in dune-common:

> FAIL: mpicollectivecommunication
> 
> 
> [falla:96461] PMIX ERROR: UNREACHABLE in file src/client/pmix_client.c
> at line 983
> [falla:96461] PMIX ERROR: UNREACHABLE in file src/client/pmix_client.c
> at line 199
> [falla:96489] PMIX ERROR: NOT-SUPPORTED in file
> src/server/pmix_server_listener.c at line 540
> --
> It looks like orte_init failed for some reason; your parallel process is
> likely to abort.  There are many reasons that a parallel process can
> fail during orte_init; some of which are due to configuration or
> environment problems.  This failure appears to be an internal failure;
> here's some additional information (which may only be relevant to an
> Open MPI developer):
> 
>   init pmix failed
>   --> Returned value Unreachable (-12) instead of ORTE_SUCCESS

What I understand so far is that, since MPI version 2.x, pmix_native.c
tries to check peer credentials on a socket.  But FreeBSD lacks
SO_PEERCRED and there isn't yet code to implement this any other way.

FreeBSD ports hasn't packed MPI version 2.x yet so, probably this
is just unimplemented/unported yet.

-- System Information:
Debian Release: stretch/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: kfreebsd-amd64 (x86_64)

Kernel: kFreeBSD 10.1-0-amd64
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)



Bug#845105: mk-freebsd: bsd.cpu.mk sets -mfloat-abi=softfp on armhf

2016-11-30 Thread Steven Chamberlain
Adrian Bunk wrote:
> The root cause of this ctfutils FTBFS is that -mfloat-abi=softfp
> is passed to the compiler on armhf, which seems to come from
> /usr/share/mk-freebsd/bsd.cpu.mk

Thanks for pointing that out!

All arm* architectures were being mapped to the FreeBSD MACHINE_TYPE
"armv6" which targets the soft-float ABI.

I've defined a new MACHINE_TYPE "armv6hf" and mapped armhf to that
instead (as well as kfreebsd-armhf, for when it exists).

ctfutils was given back and rebuild successfully after this change.
armel should work as before.  We don't yet have arm64 support;  that
will happen in time.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Trying to use kFreeBSD as a firewall, but it won't forward packets

2016-11-29 Thread Steven Chamberlain
Hi!

Rich Wales wrote:
> I can connect between my LAN and the firewall (via its LAN interface) --
> and I can reach the Internet from the firewall (via its WAN interface)

So, the kFreeBSD box has a correct default route out to the Internet?
# route get -n 0.0.0.0

> -- but I can't manage to go *through* the firewall from my LAN to the
> Internet (I've set up another box to use the kFreeBSD firewall as its
> gateway, but packets are simply being dropped).

The LAN interface will need to have an appropriate IP address and
netmask assigned on it, and the interface must be 'UP' of course.

Does the kFreeBSD box have a correct route to the source?
# route get -n 192.168.1.2
(or whatever is the IP of that other box)

> I have *net.inet.ip.forwarding* enabled,

That's required, yes.

> I'm using a minimal PF
> configuration that does NAT and passes everything in and out on both
> network interfaces.

Please check if the ruleset is correctly loaded and enabled, e.g. with
# pfctl -ef /etc/pf.conf

It may be useful to check the output from
# pfctl -vsa

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: FreeBSD kernel don't upgrade?

2016-11-21 Thread Steven Chamberlain
Hello!

邹 佳庆 wrote:
> I'm debian/kfreebsd user, i want update freebsd kernel to
> 11.0-current, but i can't upgrade it.

I have not yet got FreeBSD 11.0 working yet.

There were some experimental packages:
ftp://ftp.debian.org/debian/pool/main/k/kfreebsd-11/kfreebsd-image-11-amd64_11.0%7Esvn295083-1%7Edebug1_kfreebsd-amd64.deb
ftp://ftp.debian.org/debian/pool/main/k/kfreebsd-11/kfreebsd-image-11.0-0-amd64_11.0%7Esvn295083-1%7Edebug1_kfreebsd-amd64.deb

but those are now quite old.  And I think there were some problems.
Be careful, if you decide to try using those - the system might not
boot.

I think, sometime next year we will make Debian packages for the
FreeBSD 11.1 kernel.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org



Re: Building kFreeBSD

2016-11-10 Thread Steven Chamberlain
Hi!

Jonathan Moore wrote:
> I'm new coming from FreeBSD how does one build the kFreeBSD kernel and
> install it.

A problem is that if you're not already running Debian GNU/kFreeBSD, you
likely don't have everything necessary to build or install it.  Such as:
Debian packaging tools, dpkg, some GNU utilities and scripts to automate
the GRUB2 configuration.

Typically with Debian, users run the installer and install our pre-built
binaries.  After that you can easily re-build any parts yourself from
source.  Our kernel is in the Debian source package "kfreebsd-10" and
the procedure to build it is the same as for any Debian package (see
below).

$ apt-get source kfreebsd-10
$ sudo apt-get build-dep kfreebsd-10
$ cd kfreebsd-10-*/ && dpkg-buildpackage -g

And here is a log from a Debian build machine building that package:
https://buildd.debian.org/status/fetch.php?pkg=kfreebsd-10=kfreebsd-amd64=10.3~svn300087-1=1464439605

But if you're coming from FreeBSD I understand your preference to build
it yourself from source.

You can actually run the Debian GNU/kFreeBSD userland in a chroot or
jail, with the original FreeBSD kernel.  It perhaps makes more sense to
start there.  But building all of that yourself is difficult without
starting from a minimal chroot with some pre-built binaries.  I could
make a tarball of this available, or perhaps a shellscript that builds
such a chroot from .deb files (we have something like that already
for Debian GNU/Linux called multistrap).

What would be ideal is if that all could be cross-built from regular
FreeBSD, or from Debian GNU/Linux, so that you don't need to trust any
binaries provided by me/us.  This is an area of ongoing research.

We also have the Reproducible Builds effort so that, multiple parties
shall soon be able to build the Debian packages from source and attest
that the binaries Debian provides are authentic and trustworthy.

> I installed the sources with synaptic but the makefile
> fails. Thanks for the help.

What OS were you trying to build it on?

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org



Re: Bug#827319: vim: FTBFS[alpha,kfreebsd-*]: Test_tagcase() failed

2016-11-05 Thread Steven Chamberlain
Hello,

James McCoy wrote:
> What about just disabling the Perl bindings on kfreebsd-any for now?

If you'd be happy to do that, yes please.  But keeping the bug open.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Bug#827319: vim: FTBFS[alpha,kfreebsd-*]: Test_tagcase() failed

2016-11-04 Thread Steven Chamberlain
Hi,

If you've no objection, I may build vim on the kfreebsd-* porterboxes
with DEB_BUILD_OPTIONS=nocheck, and binNMU the result.

The problem would still be there, and it would be RC-severity if
kfreebsd were part of the stable release, but it's currently not.

Doing this would fix debootstrap of sid in the meantime.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Bug#837289: kfreebsd-10: FTBFS: objcopy:linux32_vdso.so: Invalid bfd target

2016-10-27 Thread Steven Chamberlain
severity 837289 important
thanks

Hi,

Lucas Nussbaum wrote:
> Severity: serious
> Justification: FTBFS on amd64

This package's Architecture: fields do not include [linux-]amd64, so I
think this is not release-critical.  It is desirable though that we can
fix it to become possible (again) to build it on linux.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Please dak copy-installer for jessie-kfreebsd

2016-10-21 Thread Steven Chamberlain
Hi,

Steven Chamberlain wrote:
> I have uploaded debian-installer/20150422+kbsd8u2+deb8u4 [...]

That has been superseded already by 20150422+kbsd8u3, which seems to
have already been processed through BYHAND, perhaps automatically.

You may wish to remove 20150422+kbsd8u2+deb8u4 from the BYHAND queue
unless that is automatically decrufted sometime.

> Please could you 'dak copy-installer' as appropriate?

Also that was not the right thing to ask.  It merely needed unpacking;
dak's scripts/debian/byhand-di does this.  AFAICT the procedure is (in
case this ever needs to be done by hand in future) :

# cd /srv/ftp-master.debian.org/queue/byhand
# /srv/ftp-master.debian.org/dak/scripts/debian/byhand-di 
debian-installer-images_20150422+kbsd8u3_kfreebsd-amd64.tar.gz 20150422+kbsd8u3 
kfreebsd-amd64 debian-installer_20150422+kbsd8u3_kfreebsd-amd64.changes 
jessie-kfreebsd-proposed-updates
# /srv/ftp-master.debian.org/dak/scripts/debian/byhand-di 
debian-installer-images_20150422+kbsd8u3_kfreebsd-amd64.tar.gz 20150422+kbsd8u3 
kfreebsd-i386 debian-installer_20150422+kbsd8u3_kfreebsd-i386.changes 
jessie-kfreebsd-proposed-updates

Thanks,
Regards,
-- 
Steven Chamberlain
stev...@debian.org


signature.asc
Description: Digital signature


Re: Bug#827319: vim: FTBFS[alpha,kfreebsd-*]: Test_tagcase() failed

2016-10-15 Thread Steven Chamberlain
In case it is helpful to know this later:

  1561 100852 vim  0.016031 NAMI "/home/stevenc/vim-8.0.0022/src/vim-gtk/po"
  1561 100852 vim  0.016033 RET   __getcwd 0
  1561 100852 vim  0.016065 CALL  break(0x136b000)
  1561 100852 vim  0.016071 RET   break 0
  1561 100852 vim  0.016110 CALL  gettimeofday(0xbfbfe548,0)
  1561 100852 vim  0.016113 RET   gettimeofday 0
  1561 100852 vim  0.016251 CALL  stat(0x134bf98,0xbfbfe3b0)
  1561 100852 vim  0.016256 NAMI  "/usr/share/vim/vim80"
  1561 100852 vim  0.016269 RET   stat -1 errno 2 No such file or directory
  1561 100852 vim  0.016273 CALL  stat(0x134bf98,0xbfbfe3b0)
  1561 100852 vim  0.016276 NAMI  "/usr/share/vim/runtime"
  1561 100852 vim  0.016283 RET   stat -1 errno 2 No such file or directory
  1561 100852 vim  0.016313 CALL  ioctl(0x1,0x402c7413,0xbfbfe4a4)
  1561 100852 vim  0.016317 RET   ioctl 0
  1561 100852 vim  0.016364 PSIG  SIGSEGV SIG_DFL code=SEGV_MAPERR
  1561 100852 vim  0.016370 NAMI  "vim.core"

the ioctl there is TIOCGETA (type 0x74, number 0x13) and it is reading
0x2c = 44 bytes (struct termios) to a stack variable, for fd 0x1
(stdout).

That part looks okay;  the segfault happens sometime after it.

The only code that would seem to use that ioctl is os_unix.c's
mch_settmode() which normally does a tcgetattr followed by a tcsetattr.
This is a wild guess, but maybe the segfault is in that function?
(HAVE_TERMIOS_H is defined here on kfreebsd-i386).

Nothing here seems related to large file support, though.  Are you sure
the crashed triggered by large file support is really the same issue?
(Does the end of the ktrace look like the above?)

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Bug#827319: vim: FTBFS[alpha,kfreebsd-*]: Test_tagcase() failed

2016-10-15 Thread Steven Chamberlain
James McCoy wrote:
> Lo and behold, configuring without --enable-perlinterp but adding
> "-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" to PERL_CFLAGS in
> src/auto/config.mk reproduces the issue.
[...]
> Which begs the question, why does configure think the defines aren't
> necessary?

That seems to not be the issue.  It is just testing if lseeko() is
declared already, without explicitly asking for -D_LARGEFILE_SOURCE.
The result on both kfreebsd and linux is that it is not needed to use
-D_LARGEFILE_SOURCE at all.

So the linux arches already build option.c with -D_LARGEFILE_SOURCE and
-D_FILE_OFFSET_BITS=64, and most other sources without.  I wonder what
are the implications.  -D_FILE_OFFSET_BITS=64 has some effects on 32-bit
arches, but not on 64-bit where relevant types are 64 bits long anyway.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Bug#827319: vim: FTBFS[alpha,kfreebsd-*]: Test_tagcase() failed

2016-10-15 Thread Steven Chamberlain
James McCoy wrote:
> And why does Perl's build think they are necessary, advertising them as
> required to build against Perl?

Even in Linux architectures (amd64 and armhf for example) Perl
advertises -D_LARGEFILE_SOURCE as a necessary compiler flag:

$ perl -MExtUtils::Embed -e ccopts
 -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
-I/usr/lib/x86_64-linux-gnu/perl/5.20/CORE 

According to feature_test_macros(7) it should not be necessary and is
now discouraged;  but it reads like _LARGEFILE_SOURCE should be defined
by default anyway.  Maybe that is the issue we have on kfreebsd-i386.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Bug#827319: vim: FTBFS[alpha,kfreebsd-*]: Test_tagcase() failed

2016-10-15 Thread Steven Chamberlain
Steven Chamberlain wrote:
> If I override that flag with -fno-wrapv:
> 
> + $(CCC) $(LUA_CFLAGS) $(PERL_CFLAGS) -fno-wrapv $(PYTHON_CFLAGS) 
> $(PYTHON3_CFLAGS) $(RUBY_CFLAGS) $(TCL_CFLAGS) -o $@ option.c
> 
> then it no longer segfaults, and all vim-gtk tests pass :)

Or, I possibly mis-compiled it without Perl bindings.  I'd better
double-check this first.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Bug#827319: vim: FTBFS[alpha,kfreebsd-*]: Test_tagcase() failed

2016-10-15 Thread Steven Chamberlain
Hi!

James McCoy wrote:
> That pattern continued and Vim patch 7.4.1065[0] appears to be what
> broke Vim for kFreeBSD.

Thanks for narrowing it down to that patch.  Most of it only relates
to --enable-perlinterp=dynamic and not to --enable-perlinterp[=yes] so
the changes are mostly no-ops...

What actually seems to make a difference is:

src/Makefile:
-   $(CCC) -o $@ option.c
+   $(CCC) $(LUA_CFLAGS) $(PERL_CFLAGS) $(PYTHON_CFLAGS) $(PYTHON3_CFLAGS) 
$(RUBY_CFLAGS) -o $@ option.c

where

S["PERL_CFLAGS"]=" -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv 
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 
-I/usr/lib/i386-kfreebsd-gnu/perl/5.24/CORE "

and -fwrapv significantly changes the code generated in
objects/option.o.  If I override that flag with -fno-wrapv:

+   $(CCC) $(LUA_CFLAGS) $(PERL_CFLAGS) -fno-wrapv $(PYTHON_CFLAGS) 
$(PYTHON3_CFLAGS) $(RUBY_CFLAGS) $(TCL_CFLAGS) -o $@ option.c

then it no longer segfaults, and all vim-gtk tests pass :)

So maybe there is a signed integer overflow in option.c (not
necessarily in code related to Perl at all).

But the linux-i386 build compiles option.c with -fwrapv, and yet it does
not segfault;  I'm not sure why.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Bug#827319: vim: FTBFS[alpha,kfreebsd-*]: Test_tagcase() failed

2016-10-13 Thread Steven Chamberlain
Steven Chamberlain wrote:
> I didn't see a segfault yet on fischer, only this:

Never mind, I can reproduce it with

~/vim-8.0.0022/src/vim-gtk/po$ ktrace -di -- ../vim -u NONE -e -X -S check.vim 
-c "if error == 0 | q | endif" -c cq af.po

I'm reading over the kdump output now.

I'm not sure what's with gdb.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Bug#827319: vim: FTBFS[alpha,kfreebsd-*]: Test_tagcase() failed

2016-10-13 Thread Steven Chamberlain
Hi,

James McCoy wrote:
> I've solved the fifo test failure, and now am able to see the segfault
> on fischer.  However, gdb has been pretty useless for me on kfreebsd.
> 
> Is there something else that I should try using instead?

I would usually enable core dumps and look at those in gdb first, but
most of the time ktrace explains better what led up to the crash.

I usually use `ktrace -di -- executable` and `kdump -EHf ktrace.out`.
Please show me the output of that, if you can reproduce the crash that
way.

Thanks,
Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Please dak copy-installer for jessie-kfreebsd

2016-10-12 Thread Steven Chamberlain
Dear FTP masters,

I have uploaded debian-installer/20150422+kbsd8u2+deb8u4 to
stable-kfreebsd-proposed-updates and the binaries are built+uploaded on
both kfreebsd-* arches.  These are now waiting in BYHAND and I think
just need to be installed now.

Please could you 'dak copy-installer' as appropriate?

I think the destination suite is stable-kfreebsd-proposed-updates:
http://ftp.debian.org/debian/dists/stable-kfreebsd-proposed-updates/main/installer-kfreebsd-amd64/
Possibly the source suite is also stable-kfreebsd-proposed-updates?

Many thanks,
Regards,
-- 
Steven Chamberlain
stev...@debian.org


signature.asc
Description: Digital signature


Re: Bug#827319: vim: FTBFS[alpha,kfreebsd-*]: Test_tagcase() failed

2016-10-01 Thread Steven Chamberlain
retitle 827319 vim: FTBFS[alpha,kfreebsd-*]: Test_tagcase() failed
found 827319 src:vim/2:7.4.2330-1
thanks

Hi,

The error is slightly different now.

Test_communicate was fixed upstream:
|   1621  7.4.2154  Test_communicate() fails sometimes

But now, a new error is being seen on kfreebsd and interestingly, also
on linux-alpha:

| Found errors in Test_tagcase():
| Caught exception in Test_tagcase(): Vim(edit):E37: No write since last change 
(add ! to override) @ function RunTheTest[9]..Test_tagcase, line 3
| TEST FAILURE

The regression appeared somewhere between
2:7.4.1829-1 and 2:7.4.2330-1.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: hashcat build in kFreeBSD

2016-08-24 Thread Steven Chamberlain
Steven Chamberlain wrote:
> The attached patch

Oops, really attached this time.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org
diff --git a/include/common.h b/include/common.h
index c36a3e0..43b9505 100644
--- a/include/common.h
+++ b/include/common.h
@@ -52,7 +52,7 @@
 #include 
 #endif
 
-#ifdef __FreeBSD__
+#ifdef __FreeBSD_kernel__
 #include 
 #include 
 #endif
diff --git a/include/ext_OpenCL.h b/include/ext_OpenCL.h
index 49021a9..fb63746 100644
--- a/include/ext_OpenCL.h
+++ b/include/ext_OpenCL.h
@@ -25,7 +25,7 @@
 #include 
 #endif
 
-#ifdef __FreeBSD__
+#ifdef __FreeBSD_kernel__
 #include 
 #endif
 
diff --git a/src/Makefile b/src/Makefile
index afc1328..668ebd3 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -17,6 +17,9 @@ UNAME:= $(shell uname -s)
 # we need to strip the windows version number to be able to build hashcat on cygwin hosts
 UNAME:= $(patsubst CYGWIN_NT-%,CYGWIN_NT-,$(UNAME))
 
+# :XXX: treat GNU/kFreeBSD, Hurd and Linux
+UNAME:= $(patsubst GNU%,Linux,$(UNAME))
+
 ifeq (,$(filter $(UNAME),Linux Darwin CYGWIN_NT- FreeBSD))
 $(error "! Your Operating System ($(UNAME)) is not supported by $(PROG_NAME) Makefile")
 endif
diff --git a/src/shared.c b/src/shared.c
index f52d762..f15516c 100644
--- a/src/shared.c
+++ b/src/shared.c
@@ -18,6 +18,11 @@
 #include 
 #include 
 
+#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
+#include 
+#include 
+#endif
+
 /**
  * basic bit handling
  */
@@ -2387,7 +2392,7 @@ int tty_fix()
 }
 #endif
 
-#if defined(__APPLE__) || defined(__FreeBSD__)
+#if defined(__APPLE__) || defined(__FreeBSD_kernel__)
 static struct termios savemodes;
 static int havemodes = 0;
 
@@ -4378,9 +4383,7 @@ char *get_exec_path ()
 
   const int len = strlen (exec_path);
 
-  #elif __FreeBSD__
-
-  #include 
+  #elif __FreeBSD_kernel__
 
   int mib[4];
   mib[0] = CTL_KERN;


signature.asc
Description: Digital signature


Re: hashcat build in kFreeBSD

2016-08-24 Thread Steven Chamberlain
Hi Daniel,

Daniel Echeverry wrote:
> I am trying to build hashcat in kFreeBSD because the upstream added
> support to FreeBSD[1],

That's good news!  I look forward to having this on GNU/kFreeBSD also.

The attached patch is unfinished - needs cleaning up before sending
upstream - but with it I can already build hashcat on GNU/kFreeBSD sid.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Bug#834864: hisat2: FTBFS on kfreebsd-amd64: help2man: can't get `--help' info from ./hisat2

2016-08-21 Thread Steven Chamberlain
Tags: 834864 + patch
User: debian-bsd@lists.debian.org
Usertags: kfreebsd

Hello,

The hisat2 binary actually had this problem on kfreebsd:

| $ ./hisat2
| (ERR): Expected hisat2 to be in same directory with hisat-align:
| /build/hisat2-2.0.4/
| Exiting now ...

which happens because it looks for a different filename, when the OS is
not "linux" or "darwin".

Please see the attached patch to correctly recognise *freebsd platforms.
It fixes the hisat2 binary and the Debian package build.

(Though I might suggest to upstream, that they change the test to
"os_is_windows" and use the ordinary filename otherwise).

Thanks!
Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org
Date: Sun, 21 Aug 2016 21:32:59 +0100
From: Steven Chamberlain <stev...@debian.org>
Subject: Identify *freebsd as a UNIX-like OS

Match "gnukfreebsd" or "freebsd", when assigning $os_is_nix.

--- a/hisat2
+++ b/hisat2
@@ -45,7 +45,7 @@
 
 ($vol,$script_path,$prog) 
 = File::Spec->splitpath($prog);
-my $os_is_nix   = ($^O eq "linux") || ($^O eq "darwin");
+my $os_is_nix   = ($^O eq "linux") || ($^O eq "darwin") || ($^O =~ /freebsd$/);
 my $align_bin_s = $os_is_nix ? 'hisat2-align-s' : 'hisat2-align-s.exe'; 
 my $build_bin   = $os_is_nix ? 'hisat2-build' : 'hisat2-build.exe';
   
 my $align_bin_l = $os_is_nix ? 'hisat2-align-l' : 'hisat2-align-l.exe'; 


signature.asc
Description: Digital signature


Bug#686402: kfreebsd-kernel-headers: several headers assume _BSD_SOURCE

2016-08-12 Thread Steven Chamberlain
# no longer an issue for ITK
affects 686402 - src:insighttoolkit4
# still affects kfreebsd-kernel-headers
reopen 686402
thanks


signature.asc
Description: Digital signature


Re: Bug#830894: override: initscripts:admin/optional

2016-07-27 Thread Steven Chamberlain
Hi,

Michael Biebl wrote:
> Afaics, there weren't any concerns raised by our -hurd@ and -bsd@
> maintainers so far. If you need more time to evaluate the change, please
> speak up now. Otherwise I'd ask the ftp-masters to proceed with
> implementing the change.

I don't foresee any problems.  I presume this doesn't affect the
installer;  when we start to build live images we'll ensure the
necessary init system packages get installed;  if any packages need to
be manually specified now when debootstrapping a BSD jail, I will update
the Wiki instructions (we don't actually need /sbin/init for those, so
this change is probably an improvement)..

Thanks for heads-up.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Bug#826061: nginx: FTBFS on kfreebsd: incomplete type 'struct in6_pktinfo'

2016-07-16 Thread Steven Chamberlain
tags 826061 + patch
user debian-bsd@lists.debian.org
usertags 826061 + kfreebsd
thanks

Hello,

Andreas Beckmann wrote:
> src/event/ngx_event_accept.c:65:17: warning: implicit declaration of function 
> 'accept4' [-Wimplicit-function-declaration]
> src/event/ngx_event_accept.c:348:55: error: invalid application of 'sizeof' 
> to incomplete type 'struct in6_pktinfo'
> src/event/ngx_event_accept.c:546:43: error: dereferencing pointer to 
> incomplete type 'struct in6_pktinfo'

Please find a simple patch for this attached.  Thanks!

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org
Date: Sat, 16 Jul 2016 23:52:50 +0100
From: Steven Chamberlain <stev...@debian.org>
Subject: Use _GNU_SOURCE on GNU/kFreeBSD

Define _GNU_SOURCE not only on GNU/Hurd, but also other glibc-based
platforms including GNU/kFreeBSD.

diff --git a/src/os/unix/ngx_posix_config.h b/src/os/unix/ngx_posix_config.h
index 5d1358e..69b8dd1 100644
--- a/src/os/unix/ngx_posix_config.h
+++ b/src/os/unix/ngx_posix_config.h
@@ -21,10 +21,13 @@
 #endif
 
 
-#if (NGX_GNU_HURD)
+#if defined(__GLIBC__)
 #ifndef _GNU_SOURCE
 #define _GNU_SOURCE /* accept4() */
 #endif
+#endif
+
+#if (NGX_GNU_HURD)
 #define _FILE_OFFSET_BITS   64
 #endif
 


signature.asc
Description: Digital signature


Re: Bug#831348: procps: includes /bin/kill.procps/kill on kfreebsd

2016-07-16 Thread Steven Chamberlain
Hi,

Sven Joachim wrote:
> Attached is a patch which should fix that.  I am fairly confident that
> it works, but as I don't have a kfreebsd system it is not tested.

I've tested this from procps Git, but currently not working:

| mkdir /home/steven/procps/debian/tmp/bbin
| mv /home/steven/procps/debian/tmp/bin/kill 
/home/steven/procps/debian/tmp/bbin/
| mv /home/steven/procps/debian/tmp/bin/ps /home/steven/procps/debian/tmp/bbin/
| # Rename w as there are two of them
| (cd /home/steven/procps/debian/tmp/bin && mv w w.procps )
| (cd /home/steven/procps/debian/tmp/usr/share/man/man1 && mv w.1 w.procps.1 )
| rm -f \
|   /home/steven/procps/debian/tmp/bin/slabtop \
|   /home/steven/procps/debian/tmp/usr/share/man/man1/slabtop.1 \
|   /home/steven/procps/debian/tmp/sbin/sysctl \
|   /home/steven/procps/debian/tmp/usr/share/man/man8/sysctl.8 \
|   /home/steven/procps/debian/tmp/usr/share/man/man5/sysctl.conf.5 \
|   
| (cd /home/steven/procps/debian/tmp/bin && mv kill kill.procps )
| mv: cannot stat ‘kill’: No such file or directory
| debian/rules:44: recipe for target 'override_dh_auto_install' failed
| make[1]: *** [override_dh_auto_install] Error 1
| make[1]: Leaving directory '/home/steven/procps'
| debian/rules:24: recipe for target 'binary-arch' failed
| make: *** [binary-arch] Error 2

$ ls debian/tmp/bin
free   pkill  pwdx   snice  top vmstat  w.procps
pgrep  pmap   skill  tload  uptime  watch

$ ls debian/tmp/bbin
kill  ps

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Bug#830974: mame: FTBFS[kfreebsd-*]: multiple issues

2016-07-13 Thread Steven Chamberlain
Package: mame
Version: 0.175-1
Tags: patch
User: debian-bsd@lists.debian.org
Usertags: kfreebsd
Forwarded: https://github.com/mamedev/mame/pull/1093

Hi,

mame currently FTBFS on kfreebsd-* with:
| ../../../../../3rdparty/bgfx/3rdparty/ocornut-imgui/imgui_draw.cpp:439:100: 
error: 'alloca' was not declared in this scope
https://buildd.debian.org/status/fetch.php?pkg=mame=kfreebsd-amd64=0.175-1=1468325637

There are many other small issues later in the build.

Please find patches in the attached kfreebsd.patch or upstream pull
request at 

Please avoid building a bundled libuv if possible, as it has portability
bugs that are fixed in the Debian-packaged libuv.  (see attached
use_system_lib_uv.patch)

And please consider showing the compile and link command lines in the
build output.  debian/rules does already set VERBOSE=1, but it seems that
should rather be verbose=1 (attached verbose_build_log.patch)

Thanks!

-- System Information:
Debian Release: stretch/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: kfreebsd-amd64 (x86_64)

Kernel: kFreeBSD 10.1-0-amd64
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)
diff --git a/3rdparty/bx/include/bx/thread.h b/3rdparty/bx/include/bx/thread.h
index add66ab..9e105db 100644
--- a/3rdparty/bx/include/bx/thread.h
+++ b/3rdparty/bx/include/bx/thread.h
@@ -8,7 +8,7 @@
 
 #if BX_PLATFORM_POSIX
 #	include 
-#	if BX_PLATFORM_BSD
+#	if defined(BX_PLATFORM_BSD) && !defined(__GLIBC__)
 #		include 
 #	endif
 #	if defined(__GLIBC__) && !( (__GLIBC__ > 2) || ( (__GLIBC__ == 2) && (__GLIBC_MINOR__ >= 12) ) )
@@ -157,12 +157,10 @@ namespace bx
 		{
 #if BX_PLATFORM_OSX || BX_PLATFORM_IOS
 			pthread_setname_np(_name);
-#elif BX_PLATFORM_LINUX
-#	if defined(__GLIBC__) && (__GLIBC__ > 2) || ( (__GLIBC__ == 2) && (__GLIBC_MINOR__ >= 12) )
+#elif defined(__GLIBC__) && (__GLIBC__ > 2) || ( (__GLIBC__ == 2) && (__GLIBC_MINOR__ >= 12) )
 			pthread_setname_np(m_handle, _name);
-#	else
+#elif BX_PLATFORM_LINUX
 			prctl(PR_SET_NAME,_name, 0, 0, 0);
-#	endif // defined(__GLIBC__) ...
 #elif BX_PLATFORM_BSD
 #ifdef __NetBSD__
 			pthread_setname_np(m_handle, "%s", (void *)_name);
diff --git a/3rdparty/bx/include/compat/freebsd/alloca.h b/3rdparty/bx/include/compat/freebsd/alloca.h
index c8b49f2..12a69ea 100644
--- a/3rdparty/bx/include/compat/freebsd/alloca.h
+++ b/3rdparty/bx/include/compat/freebsd/alloca.h
@@ -1 +1,5 @@
+#ifdef __GLIBC__
+#include_next 
+#else
 #include 
+#endif
diff --git a/3rdparty/bx/include/compat/freebsd/signal.h b/3rdparty/bx/include/compat/freebsd/signal.h
index fd7d90f..3040b56 100644
--- a/3rdparty/bx/include/compat/freebsd/signal.h
+++ b/3rdparty/bx/include/compat/freebsd/signal.h
@@ -1 +1,5 @@
+#ifdef __GLIBC__
+#include_next 
+#else
 #include 
+#endif
diff --git a/scripts/src/osd/sdl.lua b/scripts/src/osd/sdl.lua
index 4094e48..ce45034 100644
--- a/scripts/src/osd/sdl.lua
+++ b/scripts/src/osd/sdl.lua
@@ -340,7 +340,7 @@ project ("qtdbg_" .. _OPTIONS["osd"])
 		MAME_DIR .. "src/osd/modules/render",
 		MAME_DIR .. "3rdparty",
 	}
-	configuration { "linux-*" }
+	configuration { "linux-* or freebsd" }
 		buildoptions {
 			"-fPIC",
 		}
diff --git a/src/osd/modules/file/posixptty.cpp b/src/osd/modules/file/posixptty.cpp
index 164c2fc..3eab9e4 100644
--- a/src/osd/modules/file/posixptty.cpp
+++ b/src/osd/modules/file/posixptty.cpp
@@ -19,7 +19,7 @@
 #include 
 #include 
 
-#if defined(__FreeBSD__) || defined(__DragonFly__)
+#if defined(__FreeBSD_kernel__) || defined(__DragonFly__)
 #include 
 #include 
 #elif defined(__NetBSD__) || defined(__OpenBSD__) || defined(__APPLE__) || defined(__ANDROID__)
diff -Nru a/mame-0.175/debian/control b/mame-0.175/debian/control
--- a/mame-0.175/debian/control	2016-07-05 10:07:37.0 +0100
+++ b/mame-0.175/debian/control	2016-07-13 13:23:26.128012799 +0100
@@ -15,6 +15,7 @@
  libsdl2-ttf-dev,
  libsdl2-dev,
  libsqlite3-dev,
+ libuv1-dev,
  libxinerama-dev,
  portaudio19-dev,
  python-dev,
diff -Nru a/mame-0.175/debian/rules b/mame-0.175/debian/rules
--- a/mame-0.175/debian/rules	2016-07-05 17:12:42.0 +0100
+++ b/mame-0.175/debian/rules	2016-07-13 13:11:55.683060773 +0100
@@ -45,7 +45,8 @@
 USE_SYSTEM_LIB_LUA=lua5.3:/usr/include/lua5.3 \
 USE_SYSTEM_LIB_SQLITE3=1 \
 USE_SYSTEM_LIB_PORTMIDI=1 \
-USE_SYSTEM_LIB_PORTAUDIO=1
+USE_SYSTEM_LIB_PORTAUDIO=1 \
+USE_SYSTEM_LIB_UV=1
 
 # Override make variables for specific archs
 # Linux architectures
diff -Nru a/mame-0.175/debian/rules b/mame-0.175/debian/rules
--- a/mame-0.175/debian/rules	2016-07-05 17:12:42.0 +0100
+++ b/mame-0.175/debian/rules	2016-07-13 13:11:55.683060773 +0100
@@ -153,7 +154,7 @@
 
 # Enable full building log when verbose output required
 ifdef DH_VERBOSE
-DEB_OPTS += VERBOSE=1
+DEB_OPTS += verbose=1
 endif
 
 DEB_MAME_OPTS = \


Re: Bug#827935: libqt5core5a: [kfreebsd] QProcessPrivate::createPipe: Cannot create pipe - Function not implemented

2016-06-27 Thread Steven Chamberlain
Hi Dmitry,

Dmitry Shachnev wrote:
> It was on both -i386 and -amd64 with libqt5core5a 5.6.1+dfsg-2 (and -1).

I was confused, why don't I see it in the kfreebsd-amd64 build log then?

I still see the linker warnings about dup3 and pipe2, but the test
passed?

> Actually, it would be very nice if you could reply to the message linked
> in Forwarded field of this bug:
> 
> https://lists.debian.org/debian-bsd/2016/06/msg00081.html

I don't have an account, but my first thought is that it is not
desirable to add special code upstream for GNU/kFreeBSD.

Today I wrote an implementation of dup3, I will try to do the same for
pipe2 and hopefully we can provide these in our glibc - which may be
useful to other packages than this one.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Bug#827935: libqt5core5a: [kfreebsd] QProcessPrivate::createPipe: Cannot create pipe - Function not implemented

2016-06-27 Thread Steven Chamberlain
Hi,

Sandro Knauß wrote:
> with QtCore 5.6.1-2 the test of owncloud-client fails for kfreebsds
> archs with:
> 
> PASS   : TestFileSystem::initTestCase()
> QWARN  : TestFileSystem::testMd5Calc() QProcessPrivate::createPipe:
> Cannot create pipe 0x805c6b4: Function not implemented
> QDEBUG : TestFileSystem::testMd5Calc() File:
> "/tmp/test_1063922729/file_a.bin"
> QDEBUG : TestFileSystem::testMd5Calc() calculated
> "d42aa14361a6c0ad4d2f9f7ecac57d15" versus md5sum: ""
> 
> https://buildd.debian.org/status/fetch.php?pkg=owncloud-client=kfreebsd-i386=2.2.1%2Bdfsg-2=1466599432

That seemed to only be on kfreebsd-i386?  Which is odd.

On kfreebsd-amd64, I couldn't reproduce it, and it passed on the buildds
using libqt5core5a 5.5.1+dfsg-17 also:

|   Start 33: FileSystemTest
| 33/36 Test #33: FileSystemTest ...   Passed0.05 sec
| [..]
| 100% tests passed, 0 tests failed out of 36
https://buildd.debian.org/status/fetch.php?pkg=owncloud-client=kfreebsd-amd64=2.2.1%2Bdfsg-1=1465383829

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Bug#824451: libarchive: FTBFS on kFreeBSD: tar/test/test_option_older_than.c:70: File should exist

2016-06-26 Thread Steven Chamberlain
Hello!

Thanks for looking into this.  It is probably specific to UFS (not ZFS)
and maybe only when soft-updates are enabled (which is default, and I
think enabled on the buildds).  It defers writing of some metadata to
disk until the next sync or after some time has elapsed.

> [Andreas Henriksson]
> > a/ working around a really serious potential data loss bug in kfreebsd
> > b/ hiding a race in the testsuite by making it less likely to trigger

I think this is a kernel bug, but shouldn't cause data loss.

I wouldn't suggest working around it in libarchive, unless you are in a
hurry to have it built again and don't mind carying that patch.  It may
take some time to produce a test case for upstream FreeBSD, fix it, and
get our buildds running a fixed kernel.

> > Neither really sounds like we're getting the correct fix, but maybe
> > I'm wrong.
> 
> Would be useful if some kFreeBSD expert would comment on this. :)

If stat or access system calls return old data, instead of what's in a
cache to be written out, that certainly sounds like a bug.

> suspect posix require that open/write/close should cause a following
> access() to see the freshly created file, but can not quite which
> requirement that would be. :)

Sanity?  Common sense?  POLA?

It should be even quicker to return from the cache than read some
outdated metadata from disk...

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Bug#825514: GNU/kFreeBSD patch for openjdk-8

2016-06-13 Thread Steven Chamberlain
Steven Chamberlain wrote:
> I wonder though, in this context, is it referring to the kernel (so we
> should return "BSD" here) or userland traits (we are actually more like
> (GNU/)"LINUX").

In this context, the only difference it makes is whether to use vfork()
or posix_spawn().  Linux and FreeBSD each implement both.  The former is
somewhat deprecated and the latter more portable (any glibc-based
platform will have it), so I would go with:

if (osName.equals("Linux")) { return LINUX; }
if (osName.contains("GNU")) { return BSD; }

even if the "BSD" enum is a bit confusing.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Bug#825514: GNU/kFreeBSD patch for openjdk-8

2016-06-13 Thread Steven Chamberlain
Hi,

Jon Boden wrote:
> We had the exact same problem on ubuntuBSD and fixed it with this patch:
> 
> https://bazaar.launchpad.net/~ubuntubsd/ubuntubsd/patches-xenial/download/jon%40ubuntubsd.org-20160613204145-fp9vhvrndudghxhj/openjdk8.diff-20160613204118-vadi6g4wfrmictbr-1/openjdk-8.diff

Thank you very much for this!

I wonder though, in this context, is it referring to the kernel (so we
should return "BSD" here) or userland traits (we are actually more like
(GNU/)"LINUX").

And while here, I would consider how to handle GNU/Hurd (to save
patching again someday for that).  If we decided to return "LINUX" here,
we might want to match on .contains("GNU") to be more generic.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Bug#827072: kfreebsd-10: use notify-reboot-required

2016-06-11 Thread Steven Chamberlain
Control: tags -1 + pending

Hi,

Jon Boden wrote:
> notify-reboot-required is the Ubuntu way packages tell the user that a
> reboot is required (usually after an upgrade).

Patch applied in SVN, thanks!

Debian has this too (update-notifier-common) but I'm not sure if
it is typically installed.  If the reboot-required notification turns
out to be annoying for users, we can reconsider how to handle this, but
I'm happy to apply it in the meantime.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Installer for stable or testing

2016-06-11 Thread Steven Chamberlain
Hi,

Philipp Martis wrote:
> besides the problems I mentioned in my previous two mails from today
> and yesterday, the netboot daily images don't allow for installing a
> version other than sid.

There isn't a kfreebsd "testing" suite at the moment.  Only:
wheezy, jessie-kfreebsd, and sid.

> (I'm a bit confused since Steven prefigured it for "1-2 weeks" on 24th 
> November).

It has always been 1-2 weeks away ;)  I think I first said that in April
2015...

The finished jessie-kfreebsd system, including installer, is staged in
jessie-kfreebsd-proposed-updates suite.  But I haven't been able to get
it copied into the main jessie-kfreebsd suite though, which prevents us
from building official images.

I opened an ftpmaster bug ticket open for that:
https://bugs.debian.org/819253 but there a few people who could action
it, and it is probably a non-trivial thing we are asking of them.

What I did in the meantime is build a custom installer image with
the jessie-kfreebsd-proposed-updates suite enabled.  You can find it
here:
http://jenkins.kfreebsd.eu/jenkins/job/debian-installer_jessie-kfreebsd/ws/debian-8.4-kfreebsd-amd64-CD-1.iso

SHA-256: dae659788f2fd7d92e59a0a62f3144887d7a44f308703a93a46d3b7bca10ab2e

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: kfreebsd -- encryption options

2016-06-11 Thread Steven Chamberlain
Hello,

Philipp Martis wrote:
> I checked a few other images, namely the daily netboot builds from
> 05/12, 05/18, 06/05 and 06/11 (today).   They all have the same
> problem: "physical volume for encryption" doesn't show up during
> partitioning,

I should probably write this up in the Wiki...

We don't support it yet in the installer, but it is potentially
possible, if you install some part that is unencrypted and set up
encrypted partitions later.

My laptop boots a very small unencrypted root (similar to an initramfs).
An early /etc/rcS.d script prompts me to unlock a geli partition, inside
which I have a ZFS pool which is mounted after that.

The (encrypted) ZFS filesystems can be mounted anywhere - you could
encrypt only /home if you prefer - or even over the top of /usr or /
(the latter would be similar to doing a pivot_root, which is how
full-disk encryption is usually implemented on Linux).

Remember to move /lib/modules into /boot in this case, and put a symlink
back from /lib/modules -> /boot/modules

There are still other ways.  Regular OpenSSH can be used for a
dropbear-type setup.  The FreeBSD kernel has some way to mount an
encrypted root partition by itself;  and GRUB2 supports encryption and
GPG verification of things it loads too.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Bug#826906: uid-wrapper: FTBFS[!linux]: only supports libc.so.[0-9] filename

2016-06-09 Thread Steven Chamberlain
Package: uid-wrapper
Version: 1.2.0+dfsg1-1
Severity: normal
Tags: patch
User: debian-bsd@lists.debian.org
Usertags: kfreebsd

Hi,

uid-wrapper FTBFS on kfreebsd because of segfaults running every test:

| Program terminated with signal 11, Segmentation fault.
| #0  0x0008006156e1 in _dl_close () from /lib/ld-kfreebsd-x86-64.so.1
| #1  0x00080060f7d4 in _dl_catch_error () from /lib/ld-kfreebsd-x86-64.so.1
| #2  0x000800f99511 in _dlerror_run () from 
/lib/x86_64-kfreebsd-gnu/libdl.so.2
| #3  0x000800f98fef in dlclose () from /lib/x86_64-kfreebsd-gnu/libdl.so.2
| #4  0x000800825281 in uwrap_destructor () at
| /home/steven/uid-wrapper-1.2.0+dfsg1/src/uid_wrapper.c:2133
| u = 
| #5  0x00080060ff17 in _dl_fini () from /lib/ld-kfreebsd-x86-64.so.1
| #6  0x000800c69a78 in __run_exit_handlers () from 
/lib/x86_64-kfreebsd-gnu/libc.so.0.1
| #7  0x000800c69ac5 in exit () from /lib/x86_64-kfreebsd-gnu/libc.so.0.1
| #8  0x000800c551a7 in __libc_start_main () from 
/lib/x86_64-kfreebsd-gnu/libc.so.0.1
| #9  0x00400847 in _start ()
https://buildd.debian.org/status/fetch.php?pkg=uid-wrapper=kfreebsd-amd64=1.2.0%2Bdfsg1-1=1449681825

I found this happens because src/uid_wrapper.c doesn't detect the libc's
filename.  It matches libc.so.[0-9] whereas on kfreebsd it is named
libc.so.0.1 currently.

The same problem will affect hurd too, which has libc.so.0.3 (although
there are other reasons for FTBFS on hurd).

Please consider the attached patch to detect libc.so.0.[0-9] as well.
Unless there is some neater way to do this.  Thanks a lot!

-- System Information:
Debian Release: stretch/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: kfreebsd-amd64 (x86_64)

Kernel: kFreeBSD 10.1-0-amd64
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)
Date: Fri, 10 Jun 2016 02:06:45 +0100
From: Steven Chamberlain <ste...@pyro.eu.org>
Subject: support libc soname 0.x

On some glibc-based platforms, the libc soname is not an integer, such
as 0.1 on kfreebsd and 0.3 on hurd.

--- a/src/uid_wrapper.c
+++ b/src/uid_wrapper.c
@@ -407,6 +407,11 @@
 if (handle != NULL) {
 	break;
 }
+snprintf(soname, sizeof(soname), "libc.so.0.%d", i);
+handle = dlopen(soname, flags);
+if (handle != NULL) {
+	break;
+}
 			}
 
 			uwrap.libc.handle = handle;


Bug#826836: bmon: FTBFS on kfreebsd: error: 'struct if_data' has no member named 'ifi_recvquota'

2016-06-09 Thread Steven Chamberlain
Package: bmon
Version: 1:3.8-2
Followup-For: Bug #826836

Hi,

In upstream code for BSD-ish systems, support was added for some Apple
Darwin features that are not available on other platforms.

Please find a patch attached for this.  I've run-time tested it on
kfreebsd-amd64 and it works beautifully, I wish I'd known about this
tool a long time ago!

Thanks.

-- System Information:
Debian Release: stretch/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: kfreebsd-amd64 (x86_64)

Kernel: kFreeBSD 10.1-0-amd64
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)
Date: Fri, 10 Jun 2016 01:36:33 +0100
From: Steven Chamberlain <ste...@pyro.eu.org>
Subject: guard Darwin-specific features with #ifdef

Fix building on FreeBSD-based systems, by guarding Darwin-specific
features with an #ifdef

--- a/src/in_sysctl.c
+++ b/src/in_sysctl.c
@@ -232,11 +232,13 @@
 		snprintf(info_buf, sizeof(info_buf), "%u", ifm->ifm_data.ifi_metric);
 		element_update_info(e, "Metric", info_buf);
 
+#ifdef __APPLE__
 		snprintf(info_buf, sizeof(info_buf), "%u", ifm->ifm_data.ifi_recvquota);
 		element_update_info(e, "RX-Quota", info_buf);
 
 		snprintf(info_buf, sizeof(info_buf), "%u", ifm->ifm_data.ifi_xmitquota);
 		element_update_info(e, "TX-Quota", info_buf);
+#endif
 
 		element_notify_update(e, NULL);
 		element_lifesign(e, 1);


Bug#816764: zfsutils: Could be switched to use system libmd

2016-06-09 Thread Steven Chamberlain
Control: tags -1 + pending

Hi Guillem,

Guillem Jover wrote:
> On Sat, 2016-03-05 at 00:30:23 +0100, Guillem Jover wrote:
> > I noticed that this package contains an embedded version of libmd from
> > FreeBSD. This package could be switched to use the now packaged libmd
> > from the system.
> 
> I've implemented this now, but not build-tested it, just made sure the
> patch applies. Attached.

This is great, thanks a lot!

I've applied this against new upstream version 10.3, and I'm uploading
this to experimental for now.

I've done some simple run-time tests, but I think the parts that use
libmd are mostly zfs send/receive, when pools have de-duplication
enabled, which I haven't tried.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Bug#766250: eject: [kfreebsd] fails to open cdrom tray

2016-06-07 Thread Steven Chamberlain
Source-Version: 2.1.5+deb1+cvs20081104-13.1

Closing this old bug now, as it is fixed in jessie-kfreebsd.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org



Bug#826332: gcc-5: FTBFS[kfreebsd-*]: patch hunk already applied

2016-06-04 Thread Steven Chamberlain
Package: src:gcc-5
Version: 5.4.0-2
Severity: important
Tags: patch

Hi,

Part of ada-kfreebsd.diff has been applied upstream.  The Debian 5.4.0-2
package defines function clock_getres again, causing it to FTBFS.

| s-osinte.ads:223:13: "clock_getres" conflicts with declaration at line 218
| s-osinte.ads:226:22: at most one Convention/Export/Import pragma is allowed
https://buildd.debian.org/status/fetch.php?pkg=gcc-5=kfreebsd-amd64=5.4.0-2=1465025776

Attached is an updated ada-kfreebsd.diff removing that part.
Thanks!

-- System Information:
Debian Release: stretch/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: kfreebsd-amd64 (x86_64)

Kernel: kFreeBSD 10.1-0-amd64
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)
# DP: add support for GNU/kFreeBSD.

Index: b/src/gcc/ada/terminals.c
===
--- a/src/gcc/ada/terminals.c
+++ b/src/gcc/ada/terminals.c
@@ -1071,6 +1071,7 @@ __gnat_setup_winsize (void *desc, int ro
 /* On some system termio is either absent or including it will disable termios
(HP-UX) */
 #if ! defined (__hpux__) && ! defined (FREEBSD) && \
+! defined (__FreeBSD_kernel__) && ! defined (__GNU__) && \
 ! defined (__APPLE__) && ! defined(__rtems__)
 #   include 
 #endif
Index: b/src/gcc/ada/s-osinte-kfreebsd-gnu.adb
===
--- /dev/null
+++ b/src/gcc/ada/s-osinte-kfreebsd-gnu.adb
@@ -0,0 +1,158 @@
+--
+--  --
+-- GNAT RUN-TIME LIBRARY (GNARL) COMPONENTS --
+--  --
+--   S Y S T E M . O S _ I N T E R F A C E  --
+--  --
+--   B o d y--
+--  --
+-- Copyright (C) 1991-1994, Florida State University--
+-- Copyright (C) 1995-2006, AdaCore --
+--  --
+-- GNARL is free software; you can  redistribute it  and/or modify it under --
+-- terms of the  GNU General Public License as published  by the Free Soft- --
+-- ware  Foundation;  either version 2,  or (at your option) any later ver- --
+-- sion. GNARL is distributed in the hope that it will be useful, but WITH- --
+-- OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY --
+-- or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License --
+-- for  more details.  You should have  received  a copy of the GNU General --
+-- Public License  distributed with GNARL; see file COPYING.  If not, write --
+-- to  the  Free Software Foundation,  51  Franklin  Street,  Fifth  Floor, --
+-- Boston, MA 02110-1301, USA.  --
+--  --
+-- As a special exception,  if other files  instantiate  generics from this --
+-- unit, or you link  this unit with other files  to produce an executable, --
+-- this  unit  does not  by itself cause  the resulting  executable  to  be --
+-- covered  by the  GNU  General  Public  License.  This exception does not --
+-- however invalidate  any other reasons why  the executable file  might be --
+-- covered by the  GNU Public License.  --
+--  --
+-- GNARL was developed by the GNARL team at Florida State University.   --
+-- Extensive contributions were provided by Ada Core Technologies, Inc. --
+--  --
+--
+
+--  This is the GNU/kFreeBSD version of this package.
+
+pragma Polling (Off);
+--  Turn off polling, we do not want ATC polling to take place during
+--  tasking operations. It causes infinite loops and other problems.
+
+--  This package encapsulates all direct interfaces to OS services
+--  that are needed by children of System.
+
+package body System.OS_Interface is
+
+   
+   -- Get_Stack_Base --
+   
+
+   function Get_Stack_Base (thread : pthread_t) return Address is
+  pragma Warnings (Off, thread);
+
+   begin
+  return Null_Address;
+   end Get_Stack_Base;
+
+   --
+   -- pthread_init --
+   --
+
+   procedure pthread_init is
+   begin
+  null;
+   end 

Re: Bug#825268: zfsutils,zutils: error when trying to install together

2016-05-30 Thread Steven Chamberlain
retitle 825268 zfsutils,zutils: error when trying to install together
thanks

Hi,

Daniel Baumann wrote:
> how about renaming ztest in zfsutils to zfstest?

That sounds good to me.  We'll rename it on kfreebsd if you want to do
the same on linux.

In the Debian archive, I can't find anything using it;  it's really a
standalone tool for developers (or could make a good Debian c-i test
someday).

Ironically, there is the same name conflict in upstream FreeBSD:
http://www.freebsd.org/cgi/man.cgi?query=ztest
(the only manpage found, refers to zutils' ztest).

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: kfreebsd 10.3 userland

2016-05-30 Thread Steven Chamberlain
Hi,

kfreebsd 10.3 (kernel) and essential packages are now in sid and now
being used in our buildd chroots.  If you find regressions, please let
us know.

Thanks!
Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Bug#825504: clang-3.6: clang++-3.6 does not find libstdc++ headers on !linux

2016-05-28 Thread Steven Chamberlain
Hi,

Andreas Beckmann wrote:
> clang++-3.6 does not work properly on kfreebsd-amd64, and I'd expect the
> same happens on the other non-linux architectures, too:

I think this is related to https://bugs.debian.org/806241
though I will check sometime if the patch there fixes this too.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Somebody to fix bug #823662

2016-05-25 Thread Steven Chamberlain
Hi,

Christian Marillat wrote:
> As I don't have a clean environment, I can't do a NMU.
> 
> The bug report :
> 
> ,
> | This release is really old (April 2012) and forked-daap now use libinotify
> | but with the missing inotify_init1() function in 20120419-1, but this
> | function is now in the latest git.
> | 
> | 
> https://github.com/dmatveev/libinotify-kqueue/search?utf8=%E2%9C%93=inotify_init1
> | 
> | So it is posssible to have new packages build from the latest git ?
> `

Why was this sent to debian-bsd@?  I can't see how it is related
because src:inotify-tools only builds on linux?

Thanks,
Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Bug#824604: kfreebsd-10: CVE-2016-1886: Buffer overflow in keyboard driver

2016-05-17 Thread Steven Chamberlain
Package: src:kfreebsd-10
Version: 10.1~svn274115-4+kbsd8u3
Severity: grave
Tags: security

https://security.FreeBSD.org/advisories/FreeBSD-SA-16:18.atkbd.asc

Incorrect signedness comparison in the ioctl(2) handler allows a
malicious local user to overwrite a portion of the kernel memory.

This affects 10.1 in sid and jessie;  9.0 in wheezy;
10.3 and 11.1 in experimental.

-- System Information:
Debian Release: stretch/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: kfreebsd-amd64 (x86_64)

Kernel: kFreeBSD 10.1-0-amd64
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)



Bug#824605: kfreebsd-10: CVE-2016-1887: Incorrect argument handling in sendmsg(2)

2016-05-17 Thread Steven Chamberlain
Package: src:kfreebsd-10
Version: 10.1~svn274115-4+kbsd8u3
Severity: grave
Tags: security

https://security.FreeBSD.org/advisories/FreeBSD-SA-16:19.sendmsg.asc

Incorrect argument handling in the socket code allows malicious local
user to overwrite large portion of the kernel memory.

This affects 10.1 in sid and jessie;  10.3 and 11.1 in experimental.
It was not reported to affect 9.0.

-- System Information:
Debian Release: stretch/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: kfreebsd-amd64 (x86_64)

Kernel: kFreeBSD 10.1-0-amd64
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)



Bug#813727: kfreebsd-10: update clang version

2016-05-17 Thread Steven Chamberlain
Hi,

Mattia Rizzolo wrote:
> you may have stopped using it during the build, but you still have the
> build-dep.

The package in sid still uses clang;  the one in experimental has
switched to GCC and I hope to get that into sid within a week or so.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org



Re: GNU/kFreeBSD at DebConf16

2016-05-14 Thread Steven Chamberlain
Steven Chamberlain wrote:
> This weekend I'll submit the talk proposal, probably titled "putting
> GNU/kFreeBSD into production".

Proposed synopsis is:

| Debian GNU/kFreeBSD is still under active development.  I'll show some
| projects that have been ongoing since the last DebConf, and some new
| features being planned for stretch.
| 
| Then I'd like to show what GNU/kFreeBSD's users are doing with it.  I'll
| describe some more potential use cases, using free software in place of
| proprietary appliances, which could apply to Debian and ZFS more
| generally.  We even have a downstream distribution now, and we'll see
| how that's been a useful collaboration.

So as a user, please let us know how you're using GNU/kFreeBSD, so I can
tell more people about it, and also because it helps us decide which way
to expend our development efforts.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


GNU/kFreeBSD at DebConf16

2016-05-12 Thread Steven Chamberlain
Hi!

Thanks to Debian's wonderful sponsors and organisers, I should be able
to make it to DebConf again this year.  Will there be any other folks
going who are / have been involved with GNU/kFreeBSD?

I'll volunteer to give a talk again.  I open to ideas for topics to
cover, but mostly want to give some kind of progress report, and I'll
mention related projects like ubuntuBSD and the implications.

This weekend I'll submit the talk proposal, probably titled "putting
GNU/kFreeBSD into production".  I can give a lot of examples of where
I've put it to use, how others have, and maybe some ideas of things it
is useful for.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Bug#823983: kfreebsd-10.3: hangs at boot mounting root ZFS pool

2016-05-10 Thread Steven Chamberlain
Package: src:kfreebsd-10
Version: 10.3~svn297264-1~debug1
Severity: important
Tags: experimental

I have a few systems running this kernel, amd64 arch, having a ZFS
root filesystem.  Most are working fine, but one in particular
hangs at boot, right after kernel message "Mounting root/root..." or
similar.

The boot partition is plain UFS.  GRUB doesn't need to access the
ZFS pool during boot, although it is able to.  d-i can mount the pool
and that way I was able to revert back to 10.1 kernel, which is fine.

The pool is comprised of only one device, which is an msdos primary
partition.  System has only 1GiB RAM which may be relevant, though
with 10.1 it had been stable for months.

-- System Information:
Debian Release: stretch/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: kfreebsd-amd64 (x86_64)

Kernel: kFreeBSD 10.3-0-amd64
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)



Bug#823877: dpkg-buildflags: please allow PIE on kfreebsd

2016-05-09 Thread Steven Chamberlain
Package: dpkg-dev
Version: 1.18.6
Severity: normal
Tags: patch
User: debian-bsd@lists.debian.org
Usertags: kfreebsd

Hi Guillem,

Please allow dpkg-buildflags to use PIE on kfreebsd.  Due to an ancient
bug (#430455) it remains disabled.  But kfreebsd-10, -9 and probably -8
support PIE binaries.

kfreebsd (upstream kernel) doesn't implement ASLR yet, but when it does,
I'd like as many binaries as possible to be already compiled as PIE.

Thanks a lot!

--- a/scripts/Dpkg/Vendor/Debian.pm 2016-05-09 08:56:46.0 +
+++ b/scripts/Dpkg/Vendor/Debian.pm 2016-05-09 22:06:52.743169571 +
@@ -271,9 +271,8 @@
 $self->_parse_feature_area('hardening', \%use_feature);
 
 # Mask features that are not available on certain architectures.
-if ($os !~ /^(?:linux|knetbsd|hurd)$/ or
+if ($os !~ /^(?:linux|kfreebsd|knetbsd|hurd)$/ or
$cpu =~ /^(?:hppa|avr32)$/) {
-   # Disabled on non-linux/knetbsd/hurd (see #430455 and #586215).
# Disabled on hppa, avr32
#  (#574716).
$use_feature{pie} = 0;

-- System Information:
Debian Release: stretch/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: kfreebsd-amd64 (x86_64)

Kernel: kFreeBSD 10.1-0-amd64
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)



Re: util-linux: chrt no longer being built on non-linux Debian archs

2016-05-08 Thread Steven Chamberlain
Hi Andreas,

Andreas Henriksson wrote:
> Since util-linux 2.28(-rc*) the chrt utility seems to no longer build
> for us on non-linux Debian architectures (eg. kfreebsd and hurd).

I don't see that in the build log for 2.28-4;  chrt seems to still build
on kfreebsd?

https://buildd.debian.org/status/fetch.php?pkg=util-linux=kfreebsd-amd64=2.28-4=1462659576
| libtool: install: /usr/bin/install -c chrt 
/«PKGBUILDDIR»/debian/tmp/usr/bin/chrt

But on hurd the issue seems to be:

https://buildd.debian.org/status/fetch.php?pkg=util-linux=hurd-i386=2.28-4=1462659622
| configure: WARNING: sched_set functions not found; not building chrt

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Re: Bug#823682: libc0.1-dev: can't link PIE executable on kfreebsd

2016-05-07 Thread Steven Chamberlain
close 823682
notfound 823682 glibc/2.22-6
thanks

Steven Chamberlain wrote:
> $ cc -fPIE -Wl,-pie -o foo foo.c
> /usr/bin/ld: 
> /usr/lib/gcc/x86_64-kfreebsd-gnu/5/../../../x86_64-kfreebsd-gnu/crt1.o: 
> relocation R_X86_64_32S against `__libc_csu_fini' can not be used when making 
> a shared object; recompile with -fPIC
> /usr/lib/gcc/x86_64-kfreebsd-gnu/5/../../../x86_64-kfreebsd-gnu/crt1.o: error 
> adding symbols: Bad value
> collect2: error: ld returned 1 exit status

> Is that the right file to link with, or should it rather use Scrt1.o or
> something else?

Sorry, my fault, I'd passed -pie as a linker option, but not to the
compiler.  This works - and it uses Scrt1.o instead:

$ cc -fPIE -pie -o foo foo.c

I'll file a new bug about the change needed in dpkg-dev.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature


Bug#823684: util-linux: FTBFS[!linux]: missing uuidd

2016-05-07 Thread Steven Chamberlain
Package: util-linux
Version: 2.28-1
Severity: important
Tags: patch
User: debian-bsd@lists.debian.org
Usertags: kfreebsd

Hi,

util-linux since 2.28 FTBFS on kfreebsd and hurd, because uuidd (daemon)
now depends on non-portable sys/signalfd.h

Please mark the binary as [linux-any] in the uuid-runtime.install file,
as in the attached patch.  Thanks.

-- System Information:
Debian Release: stretch/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: kfreebsd-amd64 (x86_64)

Kernel: kFreeBSD 10.1-0-amd64
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
--- util-linux-2.28.orig/debian/uuid-runtime.install	2016-04-12 15:10:54.0 +0100
+++ util-linux-2.28/debian/uuid-runtime.install	2016-05-07 16:18:08.467243744 +0100
@@ -1,6 +1,6 @@
 #!/usr/bin/dh-exec
 lib/systemd/system/uuidd.*  [linux-any]
 usr/bin/uuidgen
-usr/sbin/uuidd
+usr/sbin/uuidd			[linux-any]
 usr/share/man/man1/uuidgen.*
-usr/share/man/man8/uuidd.*
+usr/share/man/man8/uuidd.*	[linux-any]


Bug#823682: libc0.1-dev: can't link PIE executable on kfreebsd

2016-05-07 Thread Steven Chamberlain
Package: libc0.1-dev
Version: 2.22-6
Severity: normal
User: debian-bsd@lists.debian.org
Usertags: kfreebsd

Hi,

It seems that ever since Bug #430455, dpkg-buildflags thinks kfreebsd
does not support Position-Independent Executable, so does not enable it
even if specifically requested with
DEB_BUILD_MAINT_OPTIONS=hardening=+pie

Fixing dpkg-dev's /usr/share/perl5/Dpkg/Vendor/Debian.pm to permit use
of PIC on kfreebsd, still doesn't enable it by default.

Trying to compile+link anything as PIE, actually seems to fail at the
moment:

$ cc -fPIE -Wl,-pie -o foo foo.c
/usr/bin/ld: 
/usr/lib/gcc/x86_64-kfreebsd-gnu/5/../../../x86_64-kfreebsd-gnu/crt1.o: 
relocation R_X86_64_32S against `__libc_csu_fini' can not be used when making a 
shared object; recompile with -fPIC
/usr/lib/gcc/x86_64-kfreebsd-gnu/5/../../../x86_64-kfreebsd-gnu/crt1.o: error 
adding symbols: Bad value
collect2: error: ld returned 1 exit status

The C runtime has been compiled as relocatable code, not PIC:

$ file /usr/lib/x86_64-kfreebsd-gnu/crt1.o
/usr/lib/x86_64-kfreebsd-gnu/crt1.o: ELF 64-bit LSB relocatable, x86-64, 
version 1 (FreeBSD), for GNU/kFreeBSD 8.3.0, not stripped

Is that the right file to link with, or should it rather use Scrt1.o or
something else?

Or does this mean PIC/PIE must be enabled somewhere in glibc first? 
It's not clear to me how that is done, or how/why this works at the
moment on linux-amd64 but not kfreebsd-amd64.

Thanks!

p.s. the kernel of FreeBSD didn't implement ASLR yet, but when it does,
we'd like to have as much as possible compiled as PIC/PIE already.

-- System Information:
Debian Release: stretch/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: kfreebsd-amd64 (x86_64)

Kernel: kFreeBSD 10.1-0-amd64
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash



  1   2   3   4   5   6   7   8   9   10   >