Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FS#3955 - uboot-lantiq u-boot-2013.10 fails to compile related sha1 #9147

Closed
openwrt-bot opened this issue Jul 30, 2021 · 2 comments
Closed
Labels

Comments

@openwrt-bot
Copy link

jospezial:

This is with gcc-11 and latest kernel 5.10 in trunk.
Looks like #include <crypto/sha.h> is missing in lib/sha1.c

../common/image-fit.c: In function 'calculate_hash':
../common/image-fit.c:882:17: warning: implicit declaration of function 'sha1_csum_wd' [-Wimplicit-function-declaration]
882 | sha1_csum_wd((unsigned char *)data, data_len,
| ^~~~~~~~~~~~
gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -include /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include/libfdt_env.h -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include2 -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/lib/libfdt -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/tools -DCONFIG_SYS_TEXT_BASE=0x80002000 -DUSE_HOSTCC -D__KERNEL_STRICT_NAMES -D_GNU_SOURCE -o image-host.o image-host.c -c
gcc -g -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -include /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include/libfdt_env.h -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include2 -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/lib/libfdt -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/tools -DCONFIG_SYS_TEXT_BASE=0x80002000 -DUSE_HOSTCC -D__KERNEL_STRICT_NAMES -D_GNU_SOURCE -c -o image.o /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/common/image.c
gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -include /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include/libfdt_env.h -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include2 -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/lib/libfdt -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/tools -DCONFIG_SYS_TEXT_BASE=0x80002000 -DUSE_HOSTCC -D__KERNEL_STRICT_NAMES -D_GNU_SOURCE -o imximage.o imximage.c -c
gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -include /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include/libfdt_env.h -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include2 -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/lib/libfdt -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/tools -DCONFIG_SYS_TEXT_BASE=0x80002000 -DUSE_HOSTCC -D__KERNEL_STRICT_NAMES -D_GNU_SOURCE -o kwbimage.o kwbimage.c -c
gcc -g -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -include /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include/libfdt_env.h -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include2 -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/lib/libfdt -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/tools -DCONFIG_SYS_TEXT_BASE=0x80002000 -DUSE_HOSTCC -D__KERNEL_STRICT_NAMES -D_GNU_SOURCE -pedantic -c -o md5.o /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/lib/md5.c
gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -include /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include/libfdt_env.h -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include2 -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/lib/libfdt -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/tools -DCONFIG_SYS_TEXT_BASE=0x80002000 -DUSE_HOSTCC -D__KERNEL_STRICT_NAMES -D_GNU_SOURCE -o mkimage.o mkimage.c -c
gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -include /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include/libfdt_env.h -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include2 -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/lib/libfdt -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/tools -DCONFIG_SYS_TEXT_BASE=0x80002000 -DUSE_HOSTCC -D__KERNEL_STRICT_NAMES -D_GNU_SOURCE -o mxsimage.o mxsimage.c -c
gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -include /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include/libfdt_env.h -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include2 -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/lib/libfdt -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/tools -DCONFIG_SYS_TEXT_BASE=0x80002000 -DUSE_HOSTCC -D__KERNEL_STRICT_NAMES -D_GNU_SOURCE -o omapimage.o omapimage.c -c
gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -include /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include/libfdt_env.h -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include2 -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/lib/libfdt -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/tools -DCONFIG_SYS_TEXT_BASE=0x80002000 -DUSE_HOSTCC -D__KERNEL_STRICT_NAMES -D_GNU_SOURCE -o pblimage.o pblimage.c -c
gcc -g -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -include /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include/libfdt_env.h -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include2 -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/lib/libfdt -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/tools -DCONFIG_SYS_TEXT_BASE=0x80002000 -DUSE_HOSTCC -D__KERNEL_STRICT_NAMES -D_GNU_SOURCE -pedantic -c -o sha1.o /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/lib/sha1.c
../lib/sha1.c:64:19: error: unknown type name 'sha1_context'
64 | void sha1_starts (sha1_context * ctx)
| ^~~~~~~~~~~~
../lib/sha1.c:76:26: error: unknown type name 'sha1_context'
76 | static void sha1_process(sha1_context *ctx, const unsigned char data[64])
| ^~~~~~~~~~~~
../lib/sha1.c:233:18: error: unknown type name 'sha1_context'
233 | void sha1_update(sha1_context *ctx, const unsigned char *input,
| ^~~~~~~~~~~~
../lib/sha1.c:280:19: error: unknown type name 'sha1_context'
280 | void sha1_finish (sha1_context * ctx, unsigned char output[20])
| ^~~~~~~~~~~~
../lib/sha1.c: In function 'sha1_csum':
../lib/sha1.c:312:9: error: unknown type name 'sha1_context'
312 | sha1_context ctx;
| ^~~~~~~~~~~~
../lib/sha1.c:314:9: warning: implicit declaration of function 'sha1_starts' [-Wimplicit-function-declaration]
314 | sha1_starts (&ctx);
| ^~~~~~~~~~~
../lib/sha1.c:315:9: warning: implicit declaration of function 'sha1_update'; did you mean 'SHA1Update'? [-Wimplicit-function-declaration]
315 | sha1_update (&ctx, input, ilen);
| ^~~~~~~~~~~
| SHA1Update
../lib/sha1.c:316:9: warning: implicit declaration of function 'sha1_finish' [-Wimplicit-function-declaration]
316 | sha1_finish (&ctx, output);
| ^~~~~~~~~~~
../lib/sha1.c: In function 'sha1_csum_wd':
../lib/sha1.c:326:9: error: unknown type name 'sha1_context'
326 | sha1_context ctx;
| ^~~~~~~~~~~~
../lib/sha1.c: In function 'sha1_hmac':
../lib/sha1.c:360:9: error: unknown type name 'sha1_context'
360 | sha1_context ctx;
| ^~~~~~~~~~~~
../lib/sha1.c:389:34: error: 'sha1_context' undeclared (first use in this function)
389 | memset (&ctx, 0, sizeof (sha1_context));
| ^~~~~~~~~~~~
../lib/sha1.c:389:34: note: each undeclared identifier is reported only once for each function it appears in
At top level:
../lib/sha1.c:392:19: warning: '_sha1_src' defined but not used [-Wunused-const-variable=]
392 | static const char _sha1_src[] = "_sha1_src";
| ^~~~~~~~~
../lib/sha1.c:270:28: warning: 'sha1_padding' defined but not used [-Wunused-const-variable=]
270 | static const unsigned char sha1_padding[64] = {
| ^~~~~~~~~~~~
make[4]: *** [Makefile:264: sha1.o] Error 1
make[4]: Leaving directory '/home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/tools'
make[3]: *** [Makefile:663: tools] Error 2
make[3]: Leaving directory '/home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10'
make[2]: *** [Makefile:393: /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/.built] Error 2
make[2]: Leaving directory '/home/joerg/Downloads/openwrt6431/package/boot/uboot-lantiq'
time: package/boot/uboot-lantiq/vgv7510kw22_brn/compile#9.14#3.33#15.01
ERROR: package/boot/uboot-lantiq failed to build (build variant: vgv7510kw22_brn).
make[1]: *** [package/Makefile:116: package/boot/uboot-lantiq/compile] Error 1
make[1]: Leaving directory '/home/joerg/Downloads/openwrt6431'
make: *** [/home/joerg/Downloads/openwrt6431/include/toplevel.mk:230: package/boot/uboot-lantiq/compile] Fehler 2

Btw, could we update to a newer u-boot?
danielschwierzeck/u-boot-lantiq#19 (comment)
@danielschwierzeck recommended in 2019:
"The latest and most stable branch is openwrt/2014.07. This one has full support for Danube, VRX200 and GRX330 SoC's incl. NAND booting. I also use this branch in production in my company so I can provide support.
I think OpenWRT itself uses a modified patch set based on the 2013.10 branch. You can additionally look there too for more board support or other bugfixes.
With the lantiq/upstream branch I'm still trying to create a mainline version of the Lantiq port. But due to mainline changes like Kconfig, driver-model, device-tree support etc. the core code needs some bigger rewrite and refactoring for which I hadn't enough time or motivation yet ;)"

@openwrt-bot
Copy link
Author

Hauke:

This problem is seen when you have a /usr/include/sha1.h on your host system, see:
#4541 (comment)
There is a bug in the U-Boot build process which makes it use that file.

@openwrt-bot
Copy link
Author

Reiver:

Pending any potential u-boot update for lantiq, the following PR fixes the conflict;
#4626

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant