Makefile: unexport TARGET env variable
PATCH 1/1 Makefile: unexport TARGET env variable
If set this can may break package builds in some cases such as the host-icu build.
--- Makefile | 1 + 1 file changed, 1 insertion(+)
Makefile +1 -0
@@ -427,6 +427,7 @@ unexport GCC_COLORS unexport PLATFORM unexport OS unexport DEVICE_TREE +unexport TARGET GNU_HOST_NAME := $(shell support/gnuconfig/config.guess)
Signature · 6 lines
2.34.1 _______________________________________________ buildroot mailing list [email protected] https://lists.buildroot.org/mailman/listinfo/buildroot
James, All,
On 2022-09-05 14:20 -0600, James Hilliard spake thusly:
Quoted 1 line
If set this can may break package builds in some cases such as the
So, this is very probabilistic: 'can' and 'may'! ;-)
Quoted 1 line
host-icu build.
Can you provide an actual error message and an explanation on how that actually fails?
I've looked at the icu source code, and all I could see are plain assignments and references to TARGET. Variables assigned in a Makefile are supposed to take precedence to variables from the environment, so I am not sure I can see how that can actually fail...
See for example commits which describes the actual reasons it fails:
20ca008d0266 unexport TERMINFO to correct ncurses behavior 2e32330c4a49 Makefile: unexport O
d3910057c6ae Makefile: unexport 'DEVICE_TREE' environment variable 6cff741ebaf7 package/ccache: do not force colored diagnostics
Regards,
Yann E. MORIN.
Quoted 24 lines
Signed-off-by James Hilliard <[email protected]>--- Makefile | 1 + 1 file changed, 1 insertion(+)Makefile +1
-0@@ -427,6 +427,7 @@ unexport GCC_COLORS unexport PLATFORM unexport OS unexport DEVICE_TREE +unexport TARGET GNU_HOST_NAME := $(shell support/gnuconfig/config.guess)Signature · 6 lines
2.34.1 _______________________________________________ buildroot mailing list [email protected] https://lists.buildroot.org/mailman/listinfo/buildroot
Signature · 10 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------' _______________________________________________ buildroot mailing list [email protected] https://lists.buildroot.org/mailman/listinfo/buildroot
Quoted 7 lines · Yann E. MORIN
James, All,
On 2022-09-05 14:20 -0600, James Hilliard spake thusly:
Quoted 1 line
If set this can may break package builds in some cases such as the
So, this is very probabilistic: 'can' and 'may'! ;-)
Well I think the breaking behavior depends on what TARGET is set to.
Quoted 5 lines
Quoted 2 lines
host-icu build.
Can you provide an actual error message and an explanation on how that actually fails?
I had set this in my env(for some non-buildroot compiler testing), and noticed it broke buildroot builds unless cleared:
export TARGET=bpf
Quoted 1 line
Quoted 1 line
Quoted 1 line
host-icu 70-1 Building
PATH="/home/buildroot/buildroot/output/per-package/host-icu/host/bin:/home/buildroot/buildroot/output/per-package/host-icu/host/sbin:/home/buildroot/bin:/home/buildroot/.local/bin:/home/buildroot/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin" PKG_CONFIG="/home/buildroot/buildroot/output/per-package/host-icu/host/bin/pkg-config"
PKG_CONFIG_SYSROOT_DIR="/" PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1
PKG_CONFIG_ALLOW_SYSTEM_LIBS=1
PKG_CONFIG_LIBDIR="/home/buildroot/buildroot/output/per-package/host-icu/host/lib/pkgconfig:/home/buildroot/buildroot/output/per-package/host-icu/host/share/pkgconfig"
/usr/bin/make -j33 -C/home/buildroot/buildroot/output/build/host-icu-70-1/source
cd ./config; \
/usr/bin/make -f pkgdataMakefile
rm -rf config/icu-config
rebuilding config/icucross.mk
rebuilding config/icucross.inc/bin/bash ./mkinstalldirs lib/bin/bash ./mkinstalldirs bin/usr/bin/install -c ./config/icu-config-top config/icu-config
rm -rf pkgdata.inc
chmod u+w config/icu-config
mkdir lib
mkdir bin
LC_ALL=C /usr/bin/sed -f ./config/make2sh.sed < ./config/Makefile.inc
| grep -v '#M#' | uniq >> config/icu-config
config/icu-uc.pc updated.
config/icu-i18n.pc updated.
/usr/bin/make[2]: Making all' in stubdata'
LC_ALL=C /usr/bin/sed -f ./config/make2sh.sed < ./config/mh-linux |
grep -v '#M#' | uniq >> config/icu-config
cat ./config/icu-config-bottom >> config/icu-config
(deps) stubdata.cpp
chmod u-w config/icu-config
Note: rebuild with "/usr/bin/make VERBOSE=1 " to show all compiler parameters.
make[3]: *** No rule to make target 'bpf', needed by 'all-local'. Stop.
Quoted 5 lines
I've looked at the icu source code, and all I could see are plain assignments and references to TARGET. Variables assigned in a
Makefileare supposed to take precedence to variables from the environment, so I am not sure I can see how that can actually fail...
I assume it's not actually assigned in the makefile then?
Quoted 37 lines
See for example commits which describes the actual reasons it fails:
20ca008d0266unexport TERMINFO to correct ncurses behavior2e32330c4a49Makefile: unexport O
d3910057c6aeMakefile: unexport 'DEVICE_TREE' environment variable6cff741ebaf7package/ccache: do not force colored diagnosticsRegards,
Yann E. MORIN.Quoted 20 lines
Signed-off-by James Hilliard <[email protected]>--- Makefile | 1 + 1 file changed, 1 insertion(+)Makefile +1
-1@@ -427,6 +427,7 @@ unexport GCC_COLORS unexport PLATFORM unexport OS unexport DEVICE_TREE +unexport TARGET GNU_HOST_NAME := $(shell support/gnuconfig/config.guess) --2.34.1
Quoted 4 lines
_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot--
.-----------------.--------------------.------------------.--------------------.
Quoted 5 lines
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |'------------------------------^-------^------------------^--------------------'
_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
Quoted 55 lines · James Hilliard
Quoted 7 lines · Yann E. MORIN
James, All,
On 2022-09-05 14:20 -0600, James Hilliard spake thusly:
Quoted 1 line
If set this can may break package builds in some cases such as the
So, this is very probabilistic: 'can' and 'may'! ;-)
Well I think the breaking behavior depends on what TARGET is set to.
Quoted 5 lines
Quoted 2 lines
host-icu build.
Can you provide an actual error message and an explanation on how that actually fails?
I had set this in my env(for some non-buildroot compiler testing), and noticed it broke buildroot builds unless cleared:
export TARGET=bpfQuoted 1 line
Quoted 1 line
Quoted 1 line
host-icu 70-1 Building
PATH="/home/buildroot/buildroot/output/per-package/host-icu/host/bin:/home/buildroot/buildroot/output/per-package/host-icu/host/sbin:/home/buildroot/bin:/home/buildroot/.local/bin:/home/buildroot/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin" PKG_CONFIG="/home/buildroot/buildroot/output/per-package/host-icu/host/bin/pkg-config"
PKG_CONFIG_SYSROOT_DIR="/" PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1
PKG_CONFIG_ALLOW_SYSTEM_LIBS=1
PKG_CONFIG_LIBDIR="/home/buildroot/buildroot/output/per-package/host-icu/host/lib/pkgconfig:/home/buildroot/buildroot/output/per-package/host-icu/host/share/pkgconfig"
/usr/bin/make-j33 -C/home/buildroot/buildroot/output/build/host-icu-70-1/source
cd ./config; \
/usr/bin/make-f pkgdataMakefile
rm -rf config/icu-config
rebuildingconfig/icucross.mk
rebuilding config/icucross.inc/bin/bash./mkinstalldirs lib/bin/bash./mkinstalldirs bin/usr/bin/install-c ./config/icu-config-top config/icu-config
rm -rf pkgdata.inc
chmod u+w config/icu-config
mkdir lib
mkdir bin
LC_ALL=C/usr/bin/sed-f ./config/make2sh.sed < ./config/Makefile.inc
| grep -v '#M#' | uniq >> config/icu-config
config/icu-uc.pc updated.
config/icu-i18n.pc updated.
/usr/bin/make[2]: Makingall' instubdata'
LC_ALL=C/usr/bin/sed-f ./config/make2sh.sed < ./config/mh-linux |
grep -v '#M#' | uniq >> config/icu-config
cat ./config/icu-config-bottom >> config/icu-config
(deps) stubdata.cpp
chmod u-w config/icu-config
Note: rebuild with "/usr/bin/makeVERBOSE=1 " to show all compiler parameters.
make[3]: *** No rule to make target 'bpf', needed by 'all-local'. Stop.Quoted 1 line
Quoted 6 lines
Quoted 4 lines
I've looked at the icu source code, and all I could see are plain assignments and references to TARGET. Variables assigned in a
Makefileare supposed to take precedence to variables from the environment, so I am not sure I can see how that can actually fail...I assume it's not actually assigned in the makefile then?
It's conditionally assigned:
ifneq ($(ENABLE_STATIC),)
TARGET = $(STUBDATA_LIBDIR)$(LIBSICU)$(TARGET_STUBNAME)$(ICULIBSUFFIX).$(A) endif
There are a couple of Makefile.in where it's defined like that....
This does look like a very icu-specific thing though, so I think it should be
fixed in icu.mk itself, by setting TARGET= in the _ENV.
Regards,
Arnout
Quoted 43 lines
Quoted 38 lines
See for example commits which describes the actual reasons it fails:
20ca008d0266unexport TERMINFO to correct ncurses behavior2e32330c4a49Makefile: unexport O
d3910057c6aeMakefile: unexport 'DEVICE_TREE' environment variable6cff741ebaf7package/ccache: do not force colored diagnosticsRegards,
Yann E. MORIN.Quoted 20 lines
Signed-off-by James Hilliard <[email protected]>--- Makefile | 1 + 1 file changed, 1 insertion(+)Makefile +1
-1@@ -427,6 +427,7 @@ unexport GCC_COLORS unexport PLATFORM unexport OS unexport DEVICE_TREE +unexport TARGET GNU_HOST_NAME := $(shell support/gnuconfig/config.guess) --2.34.1
Quoted 4 lines
_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot--
.-----------------.--------------------.------------------.--------------------.Quoted 5 lines
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |'------------------------------^-------^------------------^--------------------'
Quoted 4 lines
_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
Quoted 68 lines · Arnout Vandecappelle
Quoted 55 lines · James Hilliard
Quoted 7 lines · Yann E. MORIN
James, All,
On 2022-09-05 14:20 -0600, James Hilliard spake thusly:
Quoted 1 line
If set this can may break package builds in some cases such as the
So, this is very probabilistic: 'can' and 'may'! ;-)
Well I think the breaking behavior depends on what TARGET is set to.
Quoted 5 lines
Quoted 2 lines
host-icu build.
Can you provide an actual error message and an explanation on how that actually fails?
I had set this in my env(for some non-buildroot compiler testing), and noticed it broke buildroot builds unless cleared:
export TARGET=bpfQuoted 1 line
Quoted 1 line
Quoted 1 line
host-icu 70-1 Building
PATH="/home/buildroot/buildroot/output/per-package/host-icu/host/bin:/home/buildroot/buildroot/output/per-package/host-icu/host/sbin:/home/buildroot/bin:/home/buildroot/.local/bin:/home/buildroot/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin" PKG_CONFIG="/home/buildroot/buildroot/output/per-package/host-icu/host/bin/pkg-config"
PKG_CONFIG_SYSROOT_DIR="/" PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1
PKG_CONFIG_ALLOW_SYSTEM_LIBS=1
PKG_CONFIG_LIBDIR="/home/buildroot/buildroot/output/per-package/host-icu/host/lib/pkgconfig:/home/buildroot/buildroot/output/per-package/host-icu/host/share/pkgconfig"
/usr/bin/make-j33 -C/home/buildroot/buildroot/output/build/host-icu-70-1/source
cd ./config; \
/usr/bin/make-f pkgdataMakefile
rm -rf config/icu-config
rebuildingconfig/icucross.mk
rebuilding config/icucross.inc/bin/bash./mkinstalldirs lib/bin/bash./mkinstalldirs bin/usr/bin/install-c ./config/icu-config-top config/icu-config
rm -rf pkgdata.inc
chmod u+w config/icu-config
mkdir lib
mkdir bin
LC_ALL=C/usr/bin/sed-f ./config/make2sh.sed < ./config/Makefile.inc
| grep -v '#M#' | uniq >> config/icu-config
config/icu-uc.pc updated.
config/icu-i18n.pc updated.
/usr/bin/make[2]: Makingall' instubdata'
LC_ALL=C/usr/bin/sed-f ./config/make2sh.sed < ./config/mh-linux |
grep -v '#M#' | uniq >> config/icu-config
cat ./config/icu-config-bottom >> config/icu-config
(deps) stubdata.cpp
chmod u-w config/icu-config
Note: rebuild with "/usr/bin/makeVERBOSE=1 " to show all compiler parameters.
make[3]: *** No rule to make target 'bpf', needed by 'all-local'. Stop.Quoted 1 line
Quoted 6 lines
Quoted 4 lines
I've looked at the icu source code, and all I could see are plain assignments and references to TARGET. Variables assigned in a
Makefileare supposed to take precedence to variables from the environment, so I am not sure I can see how that can actually fail...I assume it's not actually assigned in the makefile then?
It's conditionally assigned:
Quoted 8 lines
ifneq ($(ENABLE_STATIC),)
TARGET = $(STUBDATA_LIBDIR)$(LIBSICU)$(TARGET_STUBNAME)$(ICULIBSUFFIX).$(A) endifThere are a couple of Makefile.in where it's defined like that....
This does look like a very icu-specific thing though, so I think it should be
fixed in icu.mk itself, by setting TARGET= in the_ENV.
Set to empty like this?ICU_CONF_ENV += TARGET=""ICU_MAKE_ENV += TARGET=""
Quoted 52 lines
Regards,
ArnoutQuoted 47 lines
Quoted 38 lines
See for example commits which describes the actual reasons it fails:
20ca008d0266unexport TERMINFO to correct ncurses behavior2e32330c4a49Makefile: unexport O
d3910057c6aeMakefile: unexport 'DEVICE_TREE' environment variable6cff741ebaf7package/ccache: do not force colored diagnosticsRegards,
Yann E. MORIN.Quoted 20 lines
Signed-off-by James Hilliard <[email protected]>--- Makefile | 1 + 1 file changed, 1 insertion(+)Makefile +1
-1@@ -427,6 +427,7 @@ unexport GCC_COLORS unexport PLATFORM unexport OS unexport DEVICE_TREE +unexport TARGET GNU_HOST_NAME := $(shell support/gnuconfig/config.guess) --2.34.1
Quoted 4 lines
_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot--
.-----------------.--------------------.------------------.--------------------.Quoted 5 lines
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |'------------------------------^-------^------------------^--------------------'
_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
James, All,
On 2022-09-07 16:51 -0600, James Hilliard spake thusly:
Quoted 1 line · Arnout Vandecappelle
[--SNIP--]
Quoted 8 lines
Quoted 8 lines
Quoted 8 lines
Quoted 2 lines
Can you provide an actual error message and an explanation on how that actually fails?
I had set this in my env(for some non-buildroot compiler testing), and noticed it broke buildroot builds unless cleared:
export TARGET=bpfQuoted 1 line
Quoted 1 line
Quoted 1 line
host-icu 70-1 Building
[--SNIP--]
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
Note: rebuild with "
/usr/bin/makeVERBOSE=1 " to show all compiler parameters. make[3]: *** No rule to make target 'bpf', needed by 'all-local'. Stop.
OK, this (elided), should be part of the commit log.
[--SNIP--]
Quoted 6 lines
Quoted 6 lines
It's conditionally assigned:
ifneq ($(ENABLE_STATIC),)
TARGET = $(STUBDATA_LIBDIR)$(LIBSICU)$(TARGET_STUBNAME)$(ICULIBSUFFIX).$(A) endif
Quoted 8 lines
Quoted 4 lines
There are a couple of Makefile.in where it's defined like that....
This does look like a very icu-specific thing though, so I think it should be
fixed in icu.mk itself, by setting TARGET= in the_ENV.Set to empty like this?
ICU_CONF_ENV+= TARGET=""ICU_MAKE_ENV+= TARGET=""
Ues, this should do the trick.
Regards,
Yann E. MORIN.
Signature · 10 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------' _______________________________________________ buildroot mailing list [email protected] https://lists.buildroot.org/mailman/listinfo/buildroot