Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 1/2] Match whole words when changing .config options
@ 2010-07-18 20:16 Malte Starostik
  2010-07-18 20:16 ` [Buildroot] [PATCH 2/2] Choose host/target ldconfig based on availability Malte Starostik
  2010-07-18 20:43 ` [Buildroot] [PATCH 1/2] Match whole words when changing .config options Peter Korsgaard
  0 siblings, 2 replies; 3+ messages in thread
From: Malte Starostik @ 2010-07-18 20:16 UTC (permalink / raw)
  To: buildroot

Make KCONFIG_{ENABLE,DISABLE,SET}_OPT match whole words only.
Fixes that BR_INET_IPV6 enables CONFIG_IPV6 in the kernel's
.config, but also nukes everything with "CONFIG_IPV6" in its name, e.g.
CONFIG_IPV6_PRIVACY.  This in turn causes any IPv6 options in a custom
kernel .config to be lost and oldconfig going interactive.
---
 package/Makefile.package.in |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/package/Makefile.package.in b/package/Makefile.package.in
index c476de9..d76b791 100644
--- a/package/Makefile.package.in
+++ b/package/Makefile.package.in
@@ -41,17 +41,17 @@ UPPERCASE = $(strip $(eval __tmp := $1) \
      $(__tmp))
 
 define KCONFIG_ENABLE_OPT
-       $(SED) "/$(1)/d" $(2)
+       $(SED) "/\\<$(1)\\>/d" $(2)
        echo "$(1)=y" >> $(2)
 endef
 
 define KCONFIG_SET_OPT
-       $(SED) "/$(1)/d" $(3)
+       $(SED) "/\\<$(1)\\>/d" $(3)
        echo "$(1)=$(2)" >> $(3)
 endef
 
 define KCONFIG_DISABLE_OPT
-       $(SED) "/$(1)/d" $(2)
+       $(SED) "/\\<$(1)\\>/d" $(2)
        echo "# $(1) is not set" >> $(2)
 endef
 
-- 
1.7.1

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [Buildroot] [PATCH 2/2] Choose host/target ldconfig based on availability
  2010-07-18 20:16 [Buildroot] [PATCH 1/2] Match whole words when changing .config options Malte Starostik
@ 2010-07-18 20:16 ` Malte Starostik
  2010-07-18 20:43 ` [Buildroot] [PATCH 1/2] Match whole words when changing .config options Peter Korsgaard
  1 sibling, 0 replies; 3+ messages in thread
From: Malte Starostik @ 2010-07-18 20:16 UTC (permalink / raw)
  To: buildroot

Decide whether to use the host or target ldconfig based on an
availability check instead of internal/external toolchain selection.  An
external toolchain may very well provide an ldconfig while the host's
one may fail.
External toolchain generated by Gentoo crossdev:

$ LC_ALL=C i686-pc-linux-uclibc-ldconfig -r output/target/; echo $?
i686-pc-linux-uclibc-ldconfig: skipping /usr/lib: No such file or directory
0

vs. the host (x86_64-pc-linux-gnu) version:

$ LC_ALL=C /sbin/ldconfig -r output/target/; echo $?
/sbin/ldconfig: Can't open configuration file
output/target/etc/ld.so.conf: No such file or directory
/sbin/ldconfig: Can't open cache file /var/cache/ldconfig/aux-cache
: No such file or directory
1
---
 package/Makefile.in |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/package/Makefile.in b/package/Makefile.in
index 189806d..1962466 100644
--- a/package/Makefile.in
+++ b/package/Makefile.in
@@ -127,10 +127,10 @@ TARGET_RANLIB   = $(TARGET_CROSS)ranlib
 TARGET_OBJCOPY  = $(TARGET_CROSS)objcopy
 TARGET_OBJDUMP  = $(TARGET_CROSS)objdump
 
-ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y)
-TARGET_LDCONFIG = $(TARGET_CROSS)ldconfig
-else ifeq ($(BR2_TOOLCHAIN_EXTERNAL),y)
+ifeq ($(shell $(SHELL) -c "command -v $(TARGET_CROSS)ldconfig"),)
 TARGET_LDCONFIG = /sbin/ldconfig
+else
+TARGET_LDCONFIG = $(TARGET_CROSS)ldconfig
 endif
 
 ifeq ($(BR2_STRIP_strip),y)
-- 
1.7.1

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [Buildroot] [PATCH 1/2] Match whole words when changing .config options
  2010-07-18 20:16 [Buildroot] [PATCH 1/2] Match whole words when changing .config options Malte Starostik
  2010-07-18 20:16 ` [Buildroot] [PATCH 2/2] Choose host/target ldconfig based on availability Malte Starostik
@ 2010-07-18 20:43 ` Peter Korsgaard
  1 sibling, 0 replies; 3+ messages in thread
From: Peter Korsgaard @ 2010-07-18 20:43 UTC (permalink / raw)
  To: buildroot

>>>>> "Malte" == Malte Starostik <m-starostik@versanet.de> writes:

 Malte> Make KCONFIG_{ENABLE,DISABLE,SET}_OPT match whole words only.
 Malte> Fixes that BR_INET_IPV6 enables CONFIG_IPV6 in the kernel's
 Malte> .config, but also nukes everything with "CONFIG_IPV6" in its name, e.g.
 Malte> CONFIG_IPV6_PRIVACY.  This in turn causes any IPv6 options in a custom
 Malte> kernel .config to be lost and oldconfig going interactive.

Committed both, thanks.

In the future, don't forget to sign off on your patches (use -s).

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2010-07-18 20:43 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-07-18 20:16 [Buildroot] [PATCH 1/2] Match whole words when changing .config options Malte Starostik
2010-07-18 20:16 ` [Buildroot] [PATCH 2/2] Choose host/target ldconfig based on availability Malte Starostik
2010-07-18 20:43 ` [Buildroot] [PATCH 1/2] Match whole words when changing .config options Peter Korsgaard

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox