Skip to contentSkip to conversation

New: Package batman_adv Makefile is missing include header directory

Buildroot bugzilla at busybox.net 1 participant 7 messages Mar 15, 2018 – Aug 15, 2019

lore
Share & tools
lore
#0 lore raw

https://bugs.busybox.net/show_bug.cgi?id=10861

Bug ID: 10861
Host: ARM
Build: X86_64
Summary: Package batman_adv Makefile is missing include header
directory
Product: buildroot
Version: 2018.02
Hardware: All
OS: Linux
Status: NEW
Severity: normal
Priority: P5
Component: Other
Assignee: unassigned at buildroot.uclibc.org
Reporter: miltos.koutsokeras at iccs.gr
CC: buildroot at uclibc.org
Target Milestone: ---

Created attachment 7511
--> https://bugs.busybox.net/attachment.cgi?id=7511&action=edit
batman_adv package Makefile fix

Bug found in package/batman-adv/batman-adv.mk leading to compilation error due to missing headers:

fatal error: uapi/linux/batman_adv.h: No such file or directory
#include <uapi/linux/batman_adv.h>

There is an extra include directory (-I$(PWD)/include/) added in batman_adv source Makefile in commit:

https://git.open-mesh.org/batman-adv.git/blobdiff/14adbd701dec0717606bff4f0c8c084827bf4735..2b20eb572f271edca0d0fd1abd5350876c315d28:/Makefile

but the extra directory is missing from the Buildroot package/batman-adv/batman-adv.mk:

BATMAN_ADV_CFLAGS = \
        -I$(@D)/compat-include/ \
        -include $(@D)/compat.h \
        -DBATADV_SOURCE_VERSION=\"\\\"$(BATMAN_ADV_VERSION)\\\"\"

Patch attached fixes the issue and the build finishes properly.

Signature · 2 lines
You are receiving this mail because:
You are on the CC list for the bug.
#1 lore raw

[Buildroot] [Bug 10861] Package batman_adv Makefile is missing include header directory

https://bugs.busybox.net/show_bug.cgi?id=10861

--- Comment #1 from Thomas Petazzoni <[email protected]> --- I'm sorry, but I can't reproduce this problem with the version of batman-adv in Buildroot today (2017.0.1). I.e the following defconfig builds fine:

BR2_arm=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/br-arm-full-2018.02-891-g046c5e2.tar.bz2" BR2_TOOLCHAIN_EXTERNAL_GCC_4_9=y
BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_1=y
BR2_TOOLCHAIN_EXTERNAL_LOCALE=y
# BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG is not set
BR2_TOOLCHAIN_EXTERNAL_CXX=y
BR2_INIT_NONE=y
BR2_SYSTEM_BIN_SH_NONE=y
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.11"
BR2_LINUX_KERNEL_DEFCONFIG="mvebu_v5"
# BR2_PACKAGE_BUSYBOX is not set
BR2_PACKAGE_BATMAN_ADV=y
BR2_PACKAGE_BATMAN_ADV_DEBUG=y
BR2_PACKAGE_BATMAN_ADV_NC=y
BR2_PACKAGE_BATMAN_ADV_BATMAN_V=y
# BR2_TARGET_ROOTFS_TAR is not set

If I bump batman-adv to 2018.1, I indeed need this header path to be added in the compiler flags. But not with the existing 2017.0.1, so I'm a bit surprised how you ran into this issue.

Could you share an example Buildroot configuration (preferably minimal) that exhibits the problem ? Thanks!

Signature · 2 lines
You are receiving this mail because:
You are on the CC list for the bug.
#2 lore raw

[Buildroot] [Bug 10861] Package batman_adv Makefile is missing include header directory

In reply to bugzilla at busybox.net

https://bugs.busybox.net/show_bug.cgi?id=10861

--- Comment #2 from Miltiadis Koutsokeras <[email protected]> --- I need to go back in my Git repo and find the exact defconfig of that period and strip it down to the minimal reproducing case. It has changed since then.

Apart from that I'm quite confident that your minimal defconfig differs from mine in these:

1) We do not use the upstream Linux kernel, we use this:
https://github.com/linux4sam/linux-at91.git, version 4.4 (tag linux4sam_5.5) and 4.9 (tag linux4sam_5.7) were tested.

2) We use a Buildroot generated toolchain.

3) Custom Linux kernel configuration (got to find specific version from Git repo).

Thank you for your time, I will come back with more info and a minimal defconfig that reproduces the problem.

Signature · 2 lines
You are receiving this mail because:
You are on the CC list for the bug.
#3 lore raw

[Buildroot] [Bug 10861] Package batman_adv Makefile is missing include header directory

In reply to bugzilla at busybox.net

https://bugs.busybox.net/show_bug.cgi?id=10861

--- Comment #3 from Miltiadis Koutsokeras <[email protected]> --- Hi again and sorry for the delayed response,

I managed to strip down my external configuration directory to a version that reproduces the problem exactly as I encountered it months ago. I will attach the external configuration directory and the captured standard output of the process.

The build was performed with these commands in a Debian 9 host:
cd path/to/reproduce
make V=1 O="$(pwd)" -C "path/to/buildroot-2018.02" BR2_EXTERNAL="path/to/buildroot-external" "shiratech_sparkgate-7_InternalNAND_defconfig"
make V=1 O="$(pwd)" -C "path/to/buildroot-2018.02"

I will attach the external configuration directory archived in 'buildroot-external-bug-10861.tar.gz' and the standard output of the commands in 'reproduce.log'. The errors at the end summarized (paths changed for easier searching):

--------------------------------------------
/usr/bin/make -f ./scripts/Makefile.build obj=path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv
path/to/reproduce/host/bin/arm-buildroot-linux-uclibcgnueabihf-gcc
-Wp,-MD,path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/.bat_algo.o.d -Ipath/to/reproduce/build/batman-adv-2017.0.1/compat-include/ -include path/to/reproduce/build/batman-adv-2017.0.1/compat.h -DBATADV_SOURCE_VERSION="\"2017.0.1\"" -I./arch/arm/include -Iarch/arm/include/generated/uapi -Iarch/arm/include/generated -Iinclude -I./arch/arm/include/uapi -Iarch/arm/include/generated/uapi -I./include/uapi -Iinclude/generated/uapi -include ./include/linux/kconfig.h -D__KERNEL__ -mlittle-endian -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -fno-dwarf2-cfi-asm -fno-ipa-sra -mabi=aapcs-linux -mno-thumb-interwork -mfpu=vfp -funwind-tables -marm -D__LINUX_ARM_ARCH__=7 -march=armv7-a -msoft-float -Uarm -fno-delete-null-pointer-checks -Wno-maybe-uninitialized -O2 --param=allow-store-data-races=0 -Wframe-larger-than=1024 -fno-stack-protector -Wno-unused-but-set-variable -Wno-unused-const-variable -fomit-frame-pointer -fno-var-tracking-assignments -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fconserve-stack -Werror=implicit-int -Werror=strict-prototypes -Werror=date-time -DCC_HAVE_ASM_GOTO -DMODULE -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(bat_algo)" -D"KBUILD_MODNAME=KBUILD_STR(batman_adv)" -c -o path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/bat_algo.o path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/bat_algo.c
path/to/reproduce/host/bin/arm-buildroot-linux-uclibcgnueabihf-gcc
-Wp,-MD,path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/.bat_iv_ogm.o.d -Ipath/to/reproduce/build/batman-adv-2017.0.1/compat-include/ -include path/to/reproduce/build/batman-adv-2017.0.1/compat.h -DBATADV_SOURCE_VERSION="\"2017.0.1\"" -I./arch/arm/include -Iarch/arm/include/generated/uapi -Iarch/arm/include/generated -Iinclude -I./arch/arm/include/uapi -Iarch/arm/include/generated/uapi -I./include/uapi -Iinclude/generated/uapi -include ./include/linux/kconfig.h -D__KERNEL__ -mlittle-endian -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -fno-dwarf2-cfi-asm -fno-ipa-sra -mabi=aapcs-linux -mno-thumb-interwork -mfpu=vfp -funwind-tables -marm -D__LINUX_ARM_ARCH__=7 -march=armv7-a -msoft-float -Uarm -fno-delete-null-pointer-checks -Wno-maybe-uninitialized -O2 --param=allow-store-data-races=0 -Wframe-larger-than=1024 -fno-stack-protector -Wno-unused-but-set-variable -Wno-unused-const-variable -fomit-frame-pointer -fno-var-tracking-assignments -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fconserve-stack -Werror=implicit-int -Werror=strict-prototypes -Werror=date-time -DCC_HAVE_ASM_GOTO -DMODULE -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(bat_iv_ogm)" -D"KBUILD_MODNAME=KBUILD_STR(batman_adv)" -c -o path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/bat_iv_ogm.o path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/bat_iv_ogm.c
path/to/reproduce/host/bin/arm-buildroot-linux-uclibcgnueabihf-gcc
-Wp,-MD,path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/.bitarray.o.d -Ipath/to/reproduce/build/batman-adv-2017.0.1/compat-include/ -include path/to/reproduce/build/batman-adv-2017.0.1/compat.h -DBATADV_SOURCE_VERSION="\"2017.0.1\"" -I./arch/arm/include -Iarch/arm/include/generated/uapi -Iarch/arm/include/generated -Iinclude -I./arch/arm/include/uapi -Iarch/arm/include/generated/uapi -I./include/uapi -Iinclude/generated/uapi -include ./include/linux/kconfig.h -D__KERNEL__ -mlittle-endian -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -fno-dwarf2-cfi-asm -fno-ipa-sra -mabi=aapcs-linux -mno-thumb-interwork -mfpu=vfp -funwind-tables -marm -D__LINUX_ARM_ARCH__=7 -march=armv7-a -msoft-float -Uarm -fno-delete-null-pointer-checks -Wno-maybe-uninitialized -O2 --param=allow-store-data-races=0 -Wframe-larger-than=1024 -fno-stack-protector -Wno-unused-but-set-variable -Wno-unused-const-variable -fomit-frame-pointer -fno-var-tracking-assignments -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fconserve-stack -Werror=implicit-int -Werror=strict-prototypes -Werror=date-time -DCC_HAVE_ASM_GOTO -DMODULE -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(bitarray)" -D"KBUILD_MODNAME=KBUILD_STR(batman_adv)" -c -o path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/bitarray.o path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/bitarray.c
path/to/reproduce/host/bin/arm-buildroot-linux-uclibcgnueabihf-gcc
-Wp,-MD,path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/.distributed-arp-table.o.d -Ipath/to/reproduce/build/batman-adv-2017.0.1/compat-include/ -include path/to/reproduce/build/batman-adv-2017.0.1/compat.h -DBATADV_SOURCE_VERSION="\"2017.0.1\"" -I./arch/arm/include -Iarch/arm/include/generated/uapi -Iarch/arm/include/generated -Iinclude -I./arch/arm/include/uapi -Iarch/arm/include/generated/uapi -I./include/uapi -Iinclude/generated/uapi -include ./include/linux/kconfig.h -D__KERNEL__ -mlittle-endian -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -fno-dwarf2-cfi-asm -fno-ipa-sra -mabi=aapcs-linux -mno-thumb-interwork -mfpu=vfp -funwind-tables -marm -D__LINUX_ARM_ARCH__=7 -march=armv7-a -msoft-float -Uarm -fno-delete-null-pointer-checks -Wno-maybe-uninitialized -O2 --param=allow-store-data-races=0 -Wframe-larger-than=1024 -fno-stack-protector -Wno-unused-but-set-variable -Wno-unused-const-variable -fomit-frame-pointer -fno-var-tracking-assignments -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fconserve-stack -Werror=implicit-int -Werror=strict-prototypes -Werror=date-time -DCC_HAVE_ASM_GOTO -DMODULE -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(distributed_arp_table)" -D"KBUILD_MODNAME=KBUILD_STR(batman_adv)" -c -o path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/distributed-arp-table.o path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/distributed-arp-table.c
path/to/reproduce/host/bin/arm-buildroot-linux-uclibcgnueabihf-gcc
-Wp,-MD,path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/.bridge_loop_avoidance.o.d -Ipath/to/reproduce/build/batman-adv-2017.0.1/compat-include/ -include path/to/reproduce/build/batman-adv-2017.0.1/compat.h -DBATADV_SOURCE_VERSION="\"2017.0.1\"" -I./arch/arm/include -Iarch/arm/include/generated/uapi -Iarch/arm/include/generated -Iinclude -I./arch/arm/include/uapi -Iarch/arm/include/generated/uapi -I./include/uapi -Iinclude/generated/uapi -include ./include/linux/kconfig.h -D__KERNEL__ -mlittle-endian -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -fno-dwarf2-cfi-asm -fno-ipa-sra -mabi=aapcs-linux -mno-thumb-interwork -mfpu=vfp -funwind-tables -marm -D__LINUX_ARM_ARCH__=7 -march=armv7-a -msoft-float -Uarm -fno-delete-null-pointer-checks -Wno-maybe-uninitialized -O2 --param=allow-store-data-races=0 -Wframe-larger-than=1024 -fno-stack-protector -Wno-unused-but-set-variable -Wno-unused-const-variable -fomit-frame-pointer -fno-var-tracking-assignments -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fconserve-stack -Werror=implicit-int -Werror=strict-prototypes -Werror=date-time -DCC_HAVE_ASM_GOTO -DMODULE -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(bridge_loop_avoidance)" -D"KBUILD_MODNAME=KBUILD_STR(batman_adv)" -c -o path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/bridge_loop_avoidance.o path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/bridge_loop_avoidance.c In file included from path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/main.h:196:0,
from
path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/bat_algo.c:18:
path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/types.h:37:10: fatal
error: uapi/linux/batman_adv.h: No such file or directory

 #include <uapi/linux/batman_adv.h>
          ^~~~~~~~~~~~~~~~~~~~~~~~~

compilation terminated.
scripts/Makefile.build:258: recipe for target 'path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/bat_algo.o' failed make[2]: *** [path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/bat_algo.o] Error 1 make[2]: *** Waiting for unfinished jobs....
In file included from path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/main.h:196:0,
from
path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/bridge_loop_avoidance.h:21,
from
path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/bridge_loop_avoidance.c:18:
path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/types.h:37:10: fatal
error: uapi/linux/batman_adv.h: No such file or directory

 #include <uapi/linux/batman_adv.h>
          ^~~~~~~~~~~~~~~~~~~~~~~~~

compilation terminated.
In file included from path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/main.h:196:0,
from
path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/distributed-arp-table.h:21,
from
path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/distributed-arp-table.c:18:
path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/types.h:37:10: fatal
error: uapi/linux/batman_adv.h: No such file or directory

 #include <uapi/linux/batman_adv.h>
          ^~~~~~~~~~~~~~~~~~~~~~~~~

scripts/Makefile.build:258: recipe for target 'path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/bridge_loop_avoidance.o' failed
make[2]: *** [path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/bridge_loop_avoidance.o] Error 1
compilation terminated.
scripts/Makefile.build:258: recipe for target 'path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/distributed-arp-table.o' failed
make[2]: *** [path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/distributed-arp-table.o] Error 1
In file included from path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/main.h:196:0,
from
path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/bat_iv_ogm.h:21,
from
path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/bat_iv_ogm.c:18:
path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/types.h:37:10: fatal
error: uapi/linux/batman_adv.h: No such file or directory

 #include <uapi/linux/batman_adv.h>
          ^~~~~~~~~~~~~~~~~~~~~~~~~

compilation terminated.
In file included from path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/main.h:196:0,
from
path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/bitarray.h:21,
from
path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/bitarray.c:18:
path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/types.h:37:10: fatal
error: uapi/linux/batman_adv.h: No such file or directory

 #include <uapi/linux/batman_adv.h>
          ^~~~~~~~~~~~~~~~~~~~~~~~~

compilation terminated.
scripts/Makefile.build:258: recipe for target 'path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/bat_iv_ogm.o' failed
make[2]: *** [path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/bat_iv_ogm.o] Error 1
scripts/Makefile.build:258: recipe for target 'path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/bitarray.o' failed make[2]: *** [path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv/bitarray.o] Error 1 Makefile:1400: recipe for target '_module_path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv' failed make[1]: *** [_module_path/to/reproduce/build/batman-adv-2017.0.1/net/batman-adv] Error 2 make[1]: Leaving directory 'path/to/reproduce/build/linux-linux4sam_5.5' package/pkg-generic.mk:247: recipe for target 'path/to/reproduce/build/batman-adv-2017.0.1/.stamp_built' failed
make: *** [path/to/reproduce/build/batman-adv-2017.0.1/.stamp_built] Error 2
make: Leaving directory '/home/isense/Development/Embedded/Buildroot/buildroot-2018.02'
--------------------------------------------

Again, I'm really sorry for the delay.

Thank you for your time,
Miltos

Signature · 2 lines
You are receiving this mail because:
You are on the CC list for the bug.
#4 lore raw

[Buildroot] [Bug 10861] Package batman_adv Makefile is missing include header directory

In reply to bugzilla at busybox.net

https://bugs.busybox.net/show_bug.cgi?id=10861

--- Comment #4 from Miltiadis Koutsokeras <[email protected]> --- Created attachment 7676
--> https://bugs.busybox.net/attachment.cgi?id=7676&action=edit
br2-external tree that reproduces the problem

Signature · 2 lines
You are receiving this mail because:
You are on the CC list for the bug.
#5 lore raw

[Buildroot] [Bug 10861] Package batman_adv Makefile is missing include header directory

In reply to bugzilla at busybox.net

https://bugs.busybox.net/show_bug.cgi?id=10861

--- Comment #5 from Miltiadis Koutsokeras <[email protected]> --- Created attachment 7681
--> https://bugs.busybox.net/attachment.cgi?id=7681&action=edit
full standard output of BUG reproduction

Signature · 2 lines
You are receiving this mail because:
You are on the CC list for the bug.
#6 lore raw

[Buildroot] [Bug 10861] Package batman_adv Makefile is missing include header directory

In reply to bugzilla at busybox.net

https://bugs.busybox.net/show_bug.cgi?id=10861

Thomas Petazzoni <[email protected]> changed:

What |Removed |Added
----------------------------------------------------------------------------

             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED

--- Comment #6 from Thomas Petazzoni <[email protected]> --- Fixed by
https://git.buildroot.org/buildroot/commit/?id=5020cf0ae0298afb6e6f02c347e7bd476fc424ce.
Thanks!

Signature · 2 lines
You are receiving this mail because:
You are on the CC list for the bug.