lwfinger/rtl8852au

Build is broken due to erros in macro definitions

Closed this issue · 2 comments

After commit 696f3fe (rtw8852au: Remove reliance on old form of ENDIAN.) build on amd64 platform is broken.

Terminal output:

In file included from /home/sergey/project/github.com/rtl8852au/phl/hal_g6/phy/bb/halbb_export_fun.h:43,
                 from /home/sergey/project/github.com/rtl8852au/phl/hal_g6/hal_api_bb.c:17:
/home/sergey/project/github.com/rtl8852au/phl/hal_g6/phy/bb/halbb_ch_info_ex.h:66:16: ошибка: имена макросов должны быть идентификаторами
   66 |         #ifdef (__LITTLE_ENDIAN)
      |                ^
/home/sergey/project/github.com/rtl8852au/phl/hal_g6/phy/bb/halbb_ch_info_ex.h:75:16: ошибка: имена макросов должны быть идентификаторами
   75 |         #ifdef (__LITTLE_ENDIAN)
      |                ^
/home/sergey/project/github.com/rtl8852au/phl/hal_g6/phy/bb/halbb_ch_info_ex.h:95:16: ошибка: имена макросов должны быть идентификаторами
   95 |         #ifdef (__LITTLE_ENDIAN)
      |                ^
make[2]: *** [scripts/Makefile.build:249: /home/sergey/project/github.com/rtl8852au/phl/hal_g6/hal_api_bb.o] Ошибка 1
make[1]: *** [Makefile:1852: /home/sergey/project/github.com/rtl8852au] Ошибка 2
make[1]: выход из каталога «/usr/lib/modules/6.0.5-arch1-1/build»
make: *** [Makefile:639: modules] Ошибка 2

Sorry for localized messages. They mean:

(ru) ошибка: имена макросов должны быть идентификаторами
(en)  error: macro names    must   be   identifiers

I fixed build by removing brackets from the definitions:

#ifdef __LITTLE_ENDIAN

Platform info:

Operating System: Arch Linux
Kernel Version: 6.0.5-arch1-1 (64-bit)
Processors: 12 × Intel® Core™ i5-10500 CPU @ 3.10GHz

[sergey@serenity rtl8852au]$ gcc -v --version
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-linux-gnu/12.2.0/lto-wrapper
gcc (GCC) 12.2.0

I just pushed a fix.

I appreciate it.