Bug 242665 - dns/knot2: [patch] upgrade to 2.9.2 + fix i386
Summary: dns/knot2: [patch] upgrade to 2.9.2 + fix i386
Status: Open
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: Alexey Dokuchaev
URL: https://www.knot-dns.cz/2019-12-12-ve...
Keywords:
Depends on:
Blocks:
 
Reported: 2019-12-16 15:09 UTC by Leo Vandewoestijne
Modified: 2020-02-24 10:23 UTC (History)
1 user (show)

See Also:
freebsd: maintainer-feedback+


Attachments
Knot DNS 2.9.2 (3.33 KB, patch)
2019-12-16 15:09 UTC, Leo Vandewoestijne
no flags Details | Diff
Knot DNS 2.9.2 but better? (3.34 KB, patch)
2019-12-19 10:12 UTC, Leo Vandewoestijne
freebsd: maintainer-approval-
Details | Diff
Knot DNS 2.9.2 - i386 still not fixed (3.75 KB, patch)
2020-01-22 15:19 UTC, Leo Vandewoestijne
freebsd: maintainer-approval-
Details | Diff
Knot DNS 2.9.2 - i386 fixed (3.69 KB, patch)
2020-02-03 03:15 UTC, Leo Vandewoestijne
freebsd: maintainer-approval+
Details | Diff
knot 2.9.2 - fix firstline (4.06 KB, patch)
2020-02-24 10:23 UTC, Leo Vandewoestijne
freebsd: maintainer-approval+
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Leo Vandewoestijne 2019-12-16 15:09:38 UTC
Created attachment 209996 [details]
Knot DNS 2.9.2

Hi,

Attached patch will update the dns/knot2 port from 2.9.1 to 2.9.2
This port affects dns/knot2-lib and dns/knot-resolver also.
I tested this port against all.

Also it should solve the i386 atomic problem, HOWEVER I'm not able to test if it truly does.
Can somebody do so, or help me to do it anyway?

Changes:
- upgrade from 2.9.1 to 2.9.2
- removed NOT_FOR_ARCHS
- set compiler to gcc-c++11-lib
- use libedit and liburcu only when building daemon
- added patch for src/libdnssec/Makefile.inc (at i386, to avoid atomic problems)

Leo.
Comment 1 Alexey Dokuchaev freebsd_committer 2019-12-19 09:03:54 UTC
> Also it should solve the i386 atomic problem, however I'm not able to test
> if it truly does. Can somebody do so, or help me to do it anyway?
I'm an avid i386 user, let's see if I can help.
Comment 2 Leo Vandewoestijne 2019-12-19 10:12:58 UTC
Created attachment 210055 [details]
Knot DNS 2.9.2 but better?

> I'm an avid i386 user, let's see if I can help.
>
Very welcome. I was able to make my poudriere do i386 again, so already able to do some puzzling, but didn't found the real solution yet.

Sascha Holzleiter came with a very useful pointer:
since PR 232284 (and the non-commited PR 231001) there's LLD_UNSAFE
Currently this causes trouble at libidn2 on 12.x (see PR 242171).
I don't remember why that was needed at that point, but without it already does things a lot better:
I had knot2-lib OK, knot-resolver OK, however knot2 on i386 not.

Further in attached patch I tried autoreconf as it was mentioned in 
https://www.knot-dns.cz/docs/2.9/singlehtml/index.html#configuring-and-generating-makefiles
I doubt if it's of any use.

And in the past NIC.CZ suggested it may be an option to remove $(LDFLAG_EXCLUDE_LIBS) from src/libdnssec/Makefile.inc as shown in above patch EXTRA_PATCHES
Looks like that's unneeded.
Comment 3 Leo Vandewoestijne 2019-12-19 18:42:25 UTC
PR 242726 mentioned the IDN problem also, however also makes evident libidn is used even when it's not selected.
In other words the ports Makefile doesn't properly disable it.
In a next patch I will add the line:

IDN_CONFIGURE_OFF=              --without-libidn
Comment 4 Leo Vandewoestijne 2020-01-22 15:19:58 UTC
Created attachment 210967 [details]
Knot DNS 2.9.2 - i386 still not fixed

This patch solves the problems in PR 242726 and PR 243374
However, doesn't seem to solve the i386 problem - at least not in my poudriere.
If somebody know how solve that problem (Alexey?), that would be nice.

Other than that it's ready to be used, that is: with the NOT_FOR_ARCHS lines in place, but without the other "if ${ARCH} == i386" section (and so without that extra patch).
Comment 5 Leo Vandewoestijne 2020-02-03 03:15:35 UTC
Created attachment 211311 [details]
Knot DNS 2.9.2 - i386 fixed

- upgrades to 2.9.2, and
- fixes the i386

Further:
- added LICENSE_FILE
- added mandir path
- added USES= autoreconf for i386
- added EXTRA_PATCHES for configure.ac -- thanks to NIC.CZ
- removed NOT_FOR_ARCHS
- removed NOT_FOR_ARCHS_REASON_i386
- removed libedit from general dependecies (because unneeded for utils- or lib-only)
- removed liburcu from general dependecies (because unneeded for utils- or lib-only)
- removed LLD_UNSAFE (not needed, created IDN problems for a while)
- fixed DOCS install (a: python dependecy, b: no install if OFF)
- fixed IDN OPTION (without libidn if OFF)
- switched from GNU_CONFIGURE to HAS_CONFIGURE
Comment 6 Leo Vandewoestijne 2020-02-24 10:23:44 UTC
Created attachment 211889 [details]
knot 2.9.2 - fix firstline

Seems the firstline wasn't copy/pasted at previous submit.
This caused patching on the Makefile to fail.

Same mutations - but now a a complete patch.