Hi Waldemar,
After editing toolchain/uClibc/headers/Makefile:
$ cat toolchain/uClibc/headers/Makefile | grep UCLIBC_EXTRA_CFLAGS -a9
define Host/Install PATH='$(TARGET_PATH)' $(MAKE) -C $(HOST_BUILD_DIR) \ PREFIX="$(BUILD_DIR_TOOLCHAIN)/$(LIBC)-dev/" \ DEVEL_PREFIX=/ \ RUNTIME_PREFIX="$(BUILD_DIR_TOOLCHAIN)/$(LIBC)-dev/" \ HOSTCC="$(HOSTCC)" \ CC="$(TARGET_CC)" \ CPU_CFLAGS="$(TARGET_CFLAGS)" \ UCLIBC_EXTRA_CFLAGS=" -I../../include" \ ARCH="$(CONFIG_ARCH)" \ pregen \ install_headers endef
$(eval $(call HostBuild))
issuing “$ make clean", and run “$ make" again, I see the flag, but the “make” output is still stopping with the error:
make -C /Volumes/Case-sensitive/Entware-ng/build_dir/toolchain-mipsel_mips32r2_gcc-5.3.0_uClibc-1.0.16/uClibc-ng-1.0.16 PREFIX="/Volumes/Case-sensitive/Entware-ng/build_dir/toolchain-mipsel_mips32r2_gcc-5.3.0_uClibc-1.0.16/uClibc-dev/" DEVEL_PREFIX=/ RUNTIME_PREFIX="/Volumes/Case-sensitive/Entware-ng/build_dir/toolchain-mipsel_mips32r2_gcc-5.3.0_uClibc-1.0.16/uClibc-dev/" HOSTCC="gcc" CC="mipsel-openwrt-linux-uclibc-gcc" CPU_CFLAGS="-O2 -pipe -mno-branch-likely -mips32r2 -mtune=mips32r2 -fno-caller-saves -fhonour-copts -Wno-error=unused-but-set-variable -Wno-error=unused-result -msoft-float" UCLIBC_EXTRA_CFLAGS=" -I../../include" ARCH=""mipsel"" pregen install_headers
However the Makefile result at /Volumes/Case-sensitive/Entware-ng/build_dir/toolchain-mipsel_mips32r2_gcc-5.3.0_uClibc-1.0.16/uClibc-ng-1.0.16/extra/locale, is missing this -I../../include flag:
/Applications/Xcode.app/Contents/Developer/usr/bin/make -C extra/locale locale_headers gcc ../../extra/locale/gen_locale.c -o ../..//extra/locale/gen_locale -Os -D_GNU_SOURCE -I../..//extra/locale
Possibly I haven’t yet understood how to insert extra CFLAGS for uClibc headers, or the UCLIBC_EXTRA_CFLAGS flag doesn’t flow down into the toolchain as it should.
-- Best regards, ~Ceriel
Op 22 nov. 2016, om 13:23 heeft Waldemar Brodkorb wbx@uclibc-ng.org het volgende geschreven:
Hi Ceriel, C. Jacobs wrote,
Hi,
Thank you for CONFIG_BUILD_NLS in .config.
Entware-ng make (on OS X) now bumps over the toolchain/uClibc/headers (which in fact is uClibc-ng-1.0.16) section: ... make[3] -C toolchain/kernel-headers install make[3] -C toolchain/uClibc/headers prepare make[3] -C toolchain/uClibc/headers compile make[3] -C toolchain/uClibc/headers install make[3] -C toolchain/gcc/initial prepare ...
I still would like to learn.
Where is the hook (read: correct location) to insert an additional include (-I../../include) property for the "toolchain/uClibc/headers install” phase?
Good question. Normally UCLIBC_EXTRA_CFLAGS can be used. In this case I would add this to toolchain/uClibc/headers/Makefile .