2
1
Эх сурвалжийг харах

busybox: fixup id applet on 1.13.0 for old uclibc versions

The id applet in 1.13.0 only compiles with uclibc < 0.9.30 if the
busybox internal passwd/grp functions are used.

Therefore, automatically enable CONFIG_USE_BB_PWD_GRP if that situation
is detected and warn the user.
Peter Korsgaard 16 жил өмнө
parent
commit
82569c48fe

+ 1 - 1
package/busybox/busybox-1.13.x.config

@@ -171,7 +171,7 @@ CONFIG_FOLD=y
 CONFIG_HEAD=y
 CONFIG_FEATURE_FANCY_HEAD=y
 CONFIG_HOSTID=y
-# CONFIG_ID is not set
+CONFIG_ID=y
 CONFIG_INSTALL=y
 CONFIG_FEATURE_INSTALL_LONG_OPTIONS=y
 CONFIG_LENGTH=y

+ 8 - 0
package/busybox/busybox.mk

@@ -60,6 +60,14 @@ ifeq ($(BR2_BUSYBOX_VERSION_1_2_2_1),y)
 	$(SED) s,^PREFIX=.*,CROSS_COMPILER_PREFIX=\"$(TARGET_CROSS)\", \
 		$(BUSYBOX_DIR)/.config
 endif
+# id applet breaks on 1.13.0 with old uclibc unless the bb pwd routines are used
+ifeq ($(BR2_BUSYBOX_VERSION_1_13_X)$(BR2_UCLIBC_VERSION_0_9_28_3)$(BR2_UCLIBC_VERSION_0_9_29),yy)
+	if grep -q 'CONFIG_ID=y' $(BUSYBOX_DIR)/.config; \
+	then \
+		echo 'warning: CONFIG_ID needs BB_PWD_GRP with old uclibc, enabling' >&2;\
+		$(SED) "s/^.*CONFIG_USE_BB_PWD_GRP.*/CONFIG_USE_BB_PWD_GRP=y/;" $(BUSYBOX_DIR)/.config; \
+	fi
+endif
 ifeq ($(BR2_PACKAGE_BUSYBOX_SNAPSHOT),y)
 	$(SED) s,^CROSS_COMPILER_PREFIX=.*,CROSS_COMPILER_PREFIX=\"$(TARGET_CROSS)\", \
 		$(BUSYBOX_DIR)/.config