diff mbox

[4,of,5,v3] uclibc: convert to kconfig-package infrastructure

Message ID 431289c9a7bcae14267c.1406922826@localhost
State Superseded
Headers show

Commit Message

Thomas De Schampheleire Aug. 1, 2014, 7:53 p.m. UTC
This patch converts the uclibc package to the new kconfig-package
infrastructure, thus removing code duplication and ensuring a consistent
behavior of kconfig packages.

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>

---
v3: rebase after new initial patch
v2: kconfig-package is now a real package infrastructure, so remove call
    to generic-package

 package/uclibc/uclibc.mk |  34 ++++++++++------------------------
 1 files changed, 10 insertions(+), 24 deletions(-)

Comments

Yann E. MORIN Aug. 3, 2014, 8:22 a.m. UTC | #1
Thomas, All,

On 2014-08-01 21:53 +0200, Thomas De Schampheleire spake thusly:
> This patch converts the uclibc package to the new kconfig-package
> infrastructure, thus removing code duplication and ensuring a consistent
> behavior of kconfig packages.
> 
> Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>

Not removing my reviewed-by, but see below...

> diff -r fa937f090303 -r 431289c9a7bc package/uclibc/uclibc.mk
> --- a/package/uclibc/uclibc.mk	Thu Jul 24 20:54:50 2014 +0200
> +++ b/package/uclibc/uclibc.mk	Tue Jul 22 20:35:36 2014 +0200
[--SNIP--]
> +$(eval $(kconfig-package))
>  
>  # Before uClibc is built, we must have the second stage cross-compiler
>  $(UCLIBC_TARGET_BUILD): | host-gcc-intermediate

Maybe we should add a comment saying why this should be after the
$(eval...) line. Something like:

    # Before uClibc is built, we must have the second stage cross-compiler.
    # This *must* be after the eval-line, because UCLIBC_TARGET_BUILD is
    # defined in there.
    $(eval .....)

With the above fixed, keep my:
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>

Regards,
Yann E. MORIN.
diff mbox

Patch

diff -r fa937f090303 -r 431289c9a7bc package/uclibc/uclibc.mk
--- a/package/uclibc/uclibc.mk	Thu Jul 24 20:54:50 2014 +0200
+++ b/package/uclibc/uclibc.mk	Tue Jul 22 20:35:36 2014 +0200
@@ -37,6 +37,14 @@ 
 UCLIBC_CONFIG_FILE = $(call qstrip,$(BR2_UCLIBC_CONFIG))
 endif
 
+UCLIBC_KCONFIG_FILE = $(UCLIBC_CONFIG_FILE)
+
+UCLIBC_KCONFIG_OPT = \
+		$(UCLIBC_MAKE_FLAGS) \
+		PREFIX=$(STAGING_DIR) \
+		DEVEL_PREFIX=/usr/ \
+		RUNTIME_PREFIX=$(STAGING_DIR)/ \
+
 UCLIBC_TARGET_ARCH = $(call qstrip,$(BR2_UCLIBC_TARGET_ARCH))
 
 ifeq ($(GENERATE_LOCALE),)
@@ -393,7 +401,7 @@ 
 	UCLIBC_EXTRA_CFLAGS="$(UCLIBC_EXTRA_CFLAGS) $(TARGET_ABI)" \
 	HOSTCC="$(HOSTCC)"
 
-define UCLIBC_FIXUP_DOT_CONFIG
+define UCLIBC_KCONFIG_FIXUP_CMDS
 	$(call KCONFIG_SET_OPT,CROSS_COMPILER_PREFIX,"$(TARGET_CROSS)",$(@D)/.config)
 	$(call KCONFIG_ENABLE_OPT,TARGET_$(UCLIBC_TARGET_ARCH),$(@D)/.config)
 	$(call KCONFIG_SET_OPT,TARGET_ARCH,"$(UCLIBC_TARGET_ARCH)",$(@D)/.config)
@@ -531,29 +539,7 @@ 
 	$(UCLIBC_INSTALL_UTILS_STAGING)
 endef
 
-$(eval $(generic-package))
-
-$(UCLIBC_DIR)/.config: $(UCLIBC_CONFIG_FILE) | uclibc-patch
-	$(INSTALL) -m 0644 $(UCLIBC_CONFIG_FILE) $(UCLIBC_DIR)/.config
-
-$(UCLIBC_DIR)/.stamp_config_fixup_done: $(UCLIBC_DIR)/.config
-	$(UCLIBC_FIXUP_DOT_CONFIG)
-	$(Q)touch $@
-
-$(UCLIBC_TARGET_CONFIGURE): $(UCLIBC_DIR)/.stamp_config_fixup_done
-
-uclibc-menuconfig: $(UCLIBC_DIR)/.stamp_config_fixup_done
-	$(MAKE) -C $(UCLIBC_DIR) \
-		$(UCLIBC_MAKE_FLAGS) \
-		PREFIX=$(STAGING_DIR) \
-		DEVEL_PREFIX=/usr/ \
-		RUNTIME_PREFIX=$(STAGING_DIR)/ \
-		menuconfig
-	rm -f $(UCLIBC_DIR)/.stamp_{config_fixup_done,configured,built}
-	rm -f $(UCLIBC_DIR)/.stamp_{target,staging}_installed
-
-uclibc-update-config: $(UCLIBC_DIR)/.stamp_config_fixup_done
-	cp -f $(UCLIBC_DIR)/.config $(UCLIBC_CONFIG_FILE)
+$(eval $(kconfig-package))
 
 # Before uClibc is built, we must have the second stage cross-compiler
 $(UCLIBC_TARGET_BUILD): | host-gcc-intermediate