dhcpcd: fix build on old toolchains (sa_family_t)
PATCH 1/2 dhcpcd: fix build on old toolchains (sa_family_t)
Fixes error such as:
.../sysroot/usr/include/linux/netlink.h:31:2: error: unknown type name 'sa_family_t' .../sysroot/usr/include/linux/netlink.h:31:2: error: expected specifier-qualifier-list before 'sa_family_t'
And autobuild failures:
http://autobuild.buildroot.net/results/d92/d92e7f2af0e64bc40f7b5c9ea081471de98bf8e8/
http://autobuild.buildroot.net/results/e97/e97e980a2f1e0ff4138a6dc03d86ad3ff0973e4a/
http://autobuild.buildroot.net/results/ca3/ca32c4de8b645c96cedb80b6270a792e9601ad84/
--- ...ix-missing-sa_familiy_t-on-old-toolchains.patch | 35 ++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 package/dhcpcd/0001-Fix-missing-sa_familiy_t-on-old-toolchains.patch
package/dhcpcd/0001-Fix-missing-sa_familiy_t-on-old-toolchains.patch new file +35 -0
@@ -0,0 +1,35 @@ +From da2b6a5180a9620e1011f52143512b69cd518bad Mon Sep 17 00:00:00 2001 +From: Luca Ceresoli <[email protected]> +Date: Tue, 30 Dec 2014 16:08:05 +0100 +Subject: [PATCH] Fix missing sa_familiy_t on old toolchains + +Fixes error such as: + .../sysroot/usr/include/linux/netlink.h:31:2: error: unknown type name 'sa_family_t' + .../sysroot/usr/include/linux/netlink.h:31:2: error: expected specifier-qualifier-list before 'sa_family_t' + +And autobuild failures: + http://autobuild.buildroot.net/results/d92/d92e7f2af0e64bc40f7b5c9ea081471de98bf8e8/ + http://autobuild.buildroot.net/results/e97/e97e980a2f1e0ff4138a6dc03d86ad3ff0973e4a/ + http://autobuild.buildroot.net/results/ca3/ca32c4de8b645c96cedb80b6270a792e9601ad84/ + +Signed-off-by: Luca Ceresoli <[email protected]> + +--- + configure | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/configure b/configure +index f250d01..93919df 100755 +--- a/configure ++++ b/configure +@@ -368,6 +368,7 @@ linux*) + echo "DHCPCD_SRCS+= if-linux.c" >>$CONFIG_MK + # for RTM_NEWADDR and friends + echo "#include <asm/types.h> /* fix broken headers */" >>$CONFIG_H ++ echo "#include <sys/socket.h> /* for sa_family_t on old toolchains */" >>$CONFIG_H + echo "#include <linux/rtnetlink.h>" >>$CONFIG_H + ;; + kfreebsd*) +-- +1.9.1 +
Signature · 1 line
1.9.1
PATCH 1/2 dhcpcd: fix build on old toolchains (sa_family_t)
Hi Baruch, All,
Quoted 11 lines · Luca Ceresoli
Fixes error such as:
.../sysroot/usr/include/linux/netlink.h:31:2: error: unknown type name 'sa_family_t'.../sysroot/usr/include/linux/netlink.h:31:2: error: expected specifier-qualifier-list before 'sa_family_t'And autobuild failures:
http://autobuild.buildroot.net/results/d92/d92e7f2af0e64bc40f7b5c9ea081471de98bf8e8/ http://autobuild.buildroot.net/results/e97/e97e980a2f1e0ff4138a6dc03d86ad3ff0973e4a/ http://autobuild.buildroot.net/results/ca3/ca32c4de8b645c96cedb80b6270a792e9601ad84/Signed-off-by Luca Ceresoli <[email protected]>Signed-off-by Baruch Siach <[email protected]>
Ouch, this should be instead:
Cc: Baruch Siach <[email protected]>
Sorry, that was a silly copy-paste mistake!
Signature · 1 line
Luca
PATCH 2/2 Revert "dhcpcd: blacklist Sourcery PowerPC toolchains"
In reply to Luca CeresoliThis reverts commit dfbfa6ef00ed32127bf01f5b4f525889921c3006 ("dhcpcd: blacklist Sourcery PowerPC toolchains").
Blacklisting those toolchains is not useful anymore, since a patch for dhcpcd 6.6.7 fixed the issue.
--- package/dhcpcd/Config.in | 2 -- 1 file changed, 2 deletions(-)
package/dhcpcd/Config.in +0 -2
@@ -2,8 +2,6 @@ config BR2_PACKAGE_DHCPCD bool "dhcpcd" # No support for AI_ADDRCONFIG depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2 - # bad headers, no sa_family_t in linux/socket.h - depends on !(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201103 || BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201009) help An RFC2131 compliant DHCP client
Signature · 1 line
1.9.1
PATCH 2/2 Revert "dhcpcd: blacklist Sourcery PowerPC toolchains"
Hi Baruch, All,
Quoted 8 lines · Luca Ceresoli
This reverts commit
dfbfa6ef00ed32127bf01f5b4f525889921c3006("dhcpcd: blacklist Sourcery PowerPC toolchains").Blacklisting those toolchains is not useful anymore, since a patch for dhcpcd 6.6.7 fixed the issue.
Signed-off-by Luca Ceresoli <[email protected]>Signed-off-by Baruch Siach <[email protected]>
Ouch, this should be instead:
Cc: Baruch Siach <[email protected]>
Sorry, that was a silly copy-paste mistake!
Signature · 1 line
Luca
PATCH 1/2 dhcpcd: fix build on old toolchains (sa_family_t)
In reply to Luca CeresoliDear Luca Ceresoli,
Quoted 11 lines · Luca Ceresoli
Fixes error such as:
.../sysroot/usr/include/linux/netlink.h:31:2: error: unknown type name 'sa_family_t'.../sysroot/usr/include/linux/netlink.h:31:2: error: expected specifier-qualifier-list before 'sa_family_t'And autobuild failures:
http://autobuild.buildroot.net/results/d92/d92e7f2af0e64bc40f7b5c9ea081471de98bf8e8/
http://autobuild.buildroot.net/results/e97/e97e980a2f1e0ff4138a6dc03d86ad3ff0973e4a/
http://autobuild.buildroot.net/results/ca3/ca32c4de8b645c96cedb80b6270a792e9601ad84/Signed-off-by Luca Ceresoli <[email protected]>Signed-off-by Baruch Siach <[email protected]>
But if it's actually the toolchain that is broken, should we instead have a patch against the toolchain headers? There are other packages that had similar problems with these toolchains.
Best regards,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH 1/2 dhcpcd: fix build on old toolchains (sa_family_t)
Hi Thomas,
Quoted 12 lines · Thomas Petazzoni
Dear Luca Ceresoli,
Quoted 9 lines · Luca Ceresoli
Fixes error such as:
.../sysroot/usr/include/linux/netlink.h:31:2: error: unknown type name 'sa_family_t'.../sysroot/usr/include/linux/netlink.h:31:2: error: expected specifier-qualifier-list before 'sa_family_t'And autobuild failures:
http://autobuild.buildroot.net/results/d92/d92e7f2af0e64bc40f7b5c9ea081471de98bf8e8/ http://autobuild.buildroot.net/results/e97/e97e980a2f1e0ff4138a6dc03d86ad3ff0973e4a/ http://autobuild.buildroot.net/results/ca3/ca32c4de8b645c96cedb80b6270a792e9601ad84/
Quoted 6 lines
Quoted 2 lines
Signed-off-by Luca Ceresoli <[email protected]>Signed-off-by Baruch Siach <[email protected]>But if it's actually the toolchain that is broken, should we instead have a patch against the toolchain headers? There are other packages that had similar problems with these toolchains.
Honestly I don't know. A few days ago I had the same problem with dhcpcd 6.6.7 and a pretty old custom toolchain. The issue only emerged since dhcpcd 6.6.6 (BWHAHAHA!). Changing toolchain was not an option here, so I came up with this quick fix.
When I saw Baruch's patch today on the list I thought I'd propose my patch. Maybe I was too quick and should have asked before sending...
At least my solution (o workaround, or whatever) is in the archives, and anybody with the same problem can find this workaround until a better solution is available.
Signature · 1 line
Luca