* [Buildroot] [PATCH 1/2] introducing util-linux-ng as replacement for util-linux
2010-09-19 8:21 [Buildroot] ready for testing util-linux-NG and xfsprogs 3.1.3 Marcus Osdoba
@ 2010-09-19 8:21 ` Marcus Osdoba
2010-09-19 8:21 ` [Buildroot] [PATCH 2/2] updated xfsprogs to version 3.1.3 Marcus Osdoba
1 sibling, 0 replies; 4+ messages in thread
From: Marcus Osdoba @ 2010-09-19 8:21 UTC (permalink / raw)
To: buildroot
From: Marcus Osdoba <ossy1980@gmx.net>
mark util-linux as deprecated since next version (util-linux-ng) is available
needs toolchain with wchar support
Signed-off-by: Marcus Osdoba <marcus.osdoba@googlemail.com>
---
package/Config.in | 1 +
package/util-linux-ng/Config.in | 54 ++++++++++++++++++++++++++++
package/util-linux-ng/util-linux-ng.mk | 60 ++++++++++++++++++++++++++++++++
package/util-linux/Config.in | 1 +
4 files changed, 116 insertions(+), 0 deletions(-)
create mode 100644 package/util-linux-ng/Config.in
create mode 100644 package/util-linux-ng/util-linux-ng.mk
diff --git a/package/Config.in b/package/Config.in
index 2209b55..78e0e5c 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -465,6 +465,7 @@ source "package/psmisc/Config.in"
source "package/sysklogd/Config.in"
source "package/sysvinit/Config.in"
source "package/util-linux/Config.in"
+source "package/util-linux-ng/Config.in"
endif
endmenu
diff --git a/package/util-linux-ng/Config.in b/package/util-linux-ng/Config.in
new file mode 100644
index 0000000..19533e0
--- /dev/null
+++ b/package/util-linux-ng/Config.in
@@ -0,0 +1,54 @@
+config BR2_PACKAGE_UTIL_LINUX_NG
+ bool "util-linux-ng"
+ depends on (BR2_PROGRAM_INVOCATION && BR2_LARGEFILE && BR2_USE_WCHAR)
+ help
+ Fork of util-linux which consists of essential Linux utilities.
+
+ Things like mkfs, mkswap, swapon, fdisk, mount, dmesg, etc...
+ http://userweb.kernel.org/~kzak/util-linux-ng/
+
+comment "util-linux-ng requires a toolchain with PROGRAM_INVOCATION support"
+ depends on !BR2_PROGRAM_INVOCATION
+
+comment "util-linux-ng requires a toolchain with LARGEFILE support"
+ depends on !BR2_LARGEFILE
+
+comment "util-linux-ng requires a toolchain with WCHAR support"
+ depends on !BR2_USE_WCHAR
+
+comment "UUID library support activated in e2fsprogs, deactivate it there to use util-linux-ng implementation"
+ depends on BR2_PACKAGE_E2FSPROGS_LIBUUID
+
+if BR2_PACKAGE_UTIL_LINUX_NG
+comment "utils selection"
+
+config BR2_PACKAGE_UTIL_LINUX_NG_LIBBLKID
+ bool "The library and tools for blkid support."
+ help
+ This package provides the recent blkid support
+ (parallel versions exist in e2fsprogs and busybox)
+
+config BR2_PACKAGE_UTIL_LINUX_NG_LIBUUID
+ bool "The library and tools for uuid support."
+ depends on !BR2_PACKAGE_E2FSPROGS_LIBUUID
+ help
+ This package provides the recent uuid support
+ (parallel versions exist in e2fsprogs and busybox)
+
+
+config BR2_PACKAGE_UTIL_LINUX_NG_MOUNT_UTILS
+ bool "Devices mount/unmounting utilities"
+ depends on (BR2_PACKAGE_UTIL_LINUX_NG_LIBUUID || BR2_PACKAGE_E2FSPROGS_LIBUUID ) && BR2_PACKAGE_UTIL_LINUX_NG_LIBBLKID
+ help
+ This package contains utilities to mount/unmount devices.
+ Also provided by busybox.
+
+config BR2_PACKAGE_UTIL_LINUX_NG_FSCK
+ bool "Filesystem check"
+ depends on BR2_PACKAGE_UTIL_LINUX_NG_LIBUUID && BR2_PACKAGE_UTIL_LINUX_NG_LIBBLKID
+ help
+ Linux mainstream filesystem check.
+ Also provided by busybox.
+
+
+endif
diff --git a/package/util-linux-ng/util-linux-ng.mk b/package/util-linux-ng/util-linux-ng.mk
new file mode 100644
index 0000000..d02cdd6
--- /dev/null
+++ b/package/util-linux-ng/util-linux-ng.mk
@@ -0,0 +1,60 @@
+#############################################################
+#
+# UTIL_LINUX_NG
+#
+#############################################################
+UTIL_LINUX_NG_MAJORVERSION = 2.17
+UTIL_LINUX_NG_VERSION = $(UTIL_LINUX_NG_MAJORVERSION).2
+UTIL_LINUX_NG_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/util-linux-ng/v$(UTIL_LINUX_NG_MAJORVERSION)
+UTIL_LINUX_NG_SOURCE = util-linux-ng-$(UTIL_LINUX_NG_VERSION).tar.bz2
+UTIL_LINUX_NG_CONF_OPT = --disable-use-tty-group \
+ --enable-shared \
+ --without-libiconv-prefix \
+ --without-libintl-prefix \
+ --disable-rpath \
+ --disable-schedutils \
+ --disable-doc
+UTIL_LINUX_NG_LIBTOOL_PATCH = NO
+
+# otherwise some apps won't find uuid.h for example
+UTIL_LINUX_NG_INSTALL_STAGING = YES
+
+
+ifeq ($(BR2_PACKAGE_E2FSPROGS),y)
+ UTIL_LINUX_NG_DEPENDENCIES += e2fsprogs
+endif
+
+# make util-linux-ng win over links to busybox binary
+ifeq ($(BR2_PACKAGE_BUSYBOX),y)
+ UTIL_LINUX_NG_DEPENDENCIES += busybox
+endif
+
+ifeq ($(BR2_PACKAGE_NCURSES),y)
+ UTIL_LINUX_NG_CONF_OPT += --with-ncurses
+ UTIL_LINUX_NG_DEPENDENCIES += ncurses
+else
+ UTIL_LINUX_NG_CONF_OPT += --without-ncurses
+endif # BR2_PACKAGE_NCURSES
+
+ifneq ($(BR2_PACKAGE_ZLIB),y)
+ UTIL_LINUX_NG_CONF_OPT += --disable-cramfs
+endif
+
+ifneq ($(BR2_PACKAGE_UTIL_LINUX_NG_MOUNT_UTILS),y)
+ UTIL_LINUX_NG_CONF_OPT += --disable-mount
+endif
+
+ifneq ($(BR2_PACKAGE_UTIL_LINUX_NG_LIBUUID),y)
+ UTIL_LINUX_NG_CONF_OPT += --disable-libuuid
+endif
+
+ifneq ($(BR2_PACKAGE_UTIL_LINUX_NG_LIBBLKID),y)
+ UTIL_LINUX_NG_CONF_OPT += --disable-libblkid
+endif
+
+ifneq ($(BR2_PACKAGE_UTIL_LINUX_NG_FSCK),y)
+ UTIL_LINUX_NG_CONF_OPT += --disable-fsck
+endif
+
+
+$(eval $(call AUTOTARGETS,package,util-linux-ng))
diff --git a/package/util-linux/Config.in b/package/util-linux/Config.in
index 434dae9..00e9f88 100644
--- a/package/util-linux/Config.in
+++ b/package/util-linux/Config.in
@@ -3,6 +3,7 @@ config BR2_PACKAGE_UTIL-LINUX
select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE
select BR2_PACKAGE_LIBINTL if BR2_NEEDS_GETTEXT_IF_LOCALE
depends on BR2_INET_RPC
+ depends on BR2_DEPRECATED
help
Various useful/essential Linux utilities.
--
1.7.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH 2/2] updated xfsprogs to version 3.1.3
2010-09-19 8:21 [Buildroot] ready for testing util-linux-NG and xfsprogs 3.1.3 Marcus Osdoba
2010-09-19 8:21 ` [Buildroot] [PATCH 1/2] introducing util-linux-ng as replacement for util-linux Marcus Osdoba
@ 2010-09-19 8:21 ` Marcus Osdoba
2010-09-19 12:29 ` Baruch Siach
1 sibling, 1 reply; 4+ messages in thread
From: Marcus Osdoba @ 2010-09-19 8:21 UTC (permalink / raw)
To: buildroot
this version needs some uuidlibrary
it works with the one of e2fsprogs xor util-linux-ng
xfs is known to have problems on architectures with VIVT cache like ARM
Signed-off-by: Marcus Osdoba <marcus.osdoba@googlemail.com>
---
package/xfsprogs/Config.in | 14 ++++-
package/xfsprogs/xfsprogs.mk | 118 ++++++++++--------------------------------
2 files changed, 39 insertions(+), 93 deletions(-)
diff --git a/package/xfsprogs/Config.in b/package/xfsprogs/Config.in
index 12bc69e..1062395 100644
--- a/package/xfsprogs/Config.in
+++ b/package/xfsprogs/Config.in
@@ -2,14 +2,22 @@
comment "Note that xfsprogs needs a toolchain with UCLIBC_SV4_DEPRECATED and UCLIBC_HAS_OBSOLETE_BSD_SIGNAL enabled"
depends on BR2_PACKAGE_XFSPROGS
+comment "Note that some skripts of xfsprogs need getopts() support in the shell"
+ depends on BR2_PACKAGE_XFSPROGS
+
comment "xfsprogs requires a toolchain with LARGEFILE support"
- depends on !BR2_LARGEFILE
+ depends on !BR2_LARGEFILE
+
+comment "the XFS filesystem still does not have the same stablity than on non VIVT-cache platforms"
+ depends on BR2_arm
+
+comment "xfsprogs requires at least on UUID library (from e2fsprogs or from util-linux-ng)"
+ depends on !( BR2_PACKAGE_UTIL_LINUX_NG_LIBUUID || BR2_PACKAGE_E2FSPROGS_LIBUUID )
config BR2_PACKAGE_XFSPROGS
bool "xfsprogs"
depends on BR2_LARGEFILE
- select BR2_PACKAGE_E2FSPROGS
- select BR2_PACKAGE_E2FSPROGS_LIBUUID
+ depends on ( BR2_PACKAGE_UTIL_LINUX_NG_LIBUUID || BR2_PACKAGE_E2FSPROGS_LIBUUID )
help
The XFS file system utilities and libraries
diff --git a/package/xfsprogs/xfsprogs.mk b/package/xfsprogs/xfsprogs.mk
index 866e9b2..f2a80dc 100644
--- a/package/xfsprogs/xfsprogs.mk
+++ b/package/xfsprogs/xfsprogs.mk
@@ -3,96 +3,34 @@
# xfsprogs
#
#############################################################
-XFSPROGS_VERSION:=3.0.3
-XFSPROGS_SOURCE=xfsprogs-$(XFSPROGS_VERSION).tar.gz
-XFSPROGS_SITE=ftp://oss.sgi.com/projects/xfs/cmd_tars
-XFSPROGS_DIR=$(BUILD_DIR)/xfsprogs-$(XFSPROGS_VERSION)
-XFSPROGS_CAT:=$(ZCAT)
-XFSPROGS_BINARY:=mkfs/mkfs.xfs
-XFSPROGS_TARGET_BINARY:=sbin/mkfs.xfs
-
-XFSPROGS_STRIP:= fsck/fsck.xfs mkfile/xfs_mkfile rtcp/xfs_rtcp
-XFSPROGS_STRIP_LIBDEP:= \
- copy/xfs_copy db/xfs_db growfs/xfs_growfs io/xfs_io \
- logprint/xfs_logprint mkfs/fstyp mkfs/mkfs.xfs \
- repair/xfs_repair quota/xfs_quota
-
-$(DL_DIR)/$(XFSPROGS_SOURCE):
- $(call DOWNLOAD,$(XFSPROGS_SITE),$(XFSPROGS_SOURCE))
-
-xfsprogs-source: $(DL_DIR)/$(XFSPROGS_SOURCE)
-
-$(XFSPROGS_DIR)/.unpacked: $(DL_DIR)/$(XFSPROGS_SOURCE)
- $(XFSPROGS_CAT) $(DL_DIR)/$(XFSPROGS_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
- toolchain/patch-kernel.sh $(XFSPROGS_DIR) package/xfsprogs/ xfsprogs\*.patch
- touch $(XFSPROGS_DIR)/.unpacked
-
-#XFSPROGS_CONFIG_SHARED:=--disable-shared
-XFSPROGS_CONFIG_SHARED:=--enable-shared
-
-$(XFSPROGS_DIR)/.configured: $(XFSPROGS_DIR)/.unpacked
- (cd $(XFSPROGS_DIR); rm -rf config.cache; \
- ac_cv_header_aio_h=yes ac_cv_lib_rt_lio_listio=yes \
- $(TARGET_CONFIGURE_OPTS) \
- $(TARGET_CONFIGURE_ARGS) \
- CPPFLAGS="-I$(E2FSPROGS_DIR)/lib" \
- LDFLAGS="-L$(E2FSPROGS_DIR)/lib" \
- INSTALL_USER=$(shell whoami) \
- INSTALL_GROUP=$(shell groups | cut -d" " -f1) \
- ./configure $(QUIET) \
- --target=$(GNU_TARGET_NAME) \
- --host=$(GNU_TARGET_NAME) \
- --build=$(GNU_HOST_NAME) \
- --exec-prefix=/ \
- --enable-gettext=no \
- $(XFSPROGS_CONFIG_SHARED) \
- )
- touch $(XFSPROGS_DIR)/.configured
-
-$(XFSPROGS_DIR)/$(XFSPROGS_BINARY): $(XFSPROGS_DIR)/.configured
- $(MAKE1) PATH=$(TARGET_PATH) CPPFLAGS="-I$(E2FSPROGS_DIR)/lib" \
- LDFLAGS="-L$(E2FSPROGS_DIR)/lib" -C $(XFSPROGS_DIR)
-ifeq ($(XFSPROGS_CONFIG_SHARED),--enable-shared)
- ( \
- cd $(XFSPROGS_DIR); \
- $(STRIPCMD) $(XFSPROGS_STRIP); \
- $(STRIPCMD) $(join $(dir $(XFSPROGS_STRIP_LIBDEP)), \
- $(addprefix .libs/,$(notdir $(XFSPROGS_STRIP_LIBDEP)))) \
- )
- $(STRIPCMD) $(XFSPROGS_DIR)/lib*/.libs/lib*.so.*.*
-else
- ( \
- cd $(XFSPROGS_DIR); \
- $(STRIPCMD) $(XFSPROGS_STRIP) $(XFSPROGS_STRIP_LIBDEP) \
- )
- $(STRIPCMD) $(XFSPROGS_DIR)/lib*/lib*.so.*.*
+XFSPROGS_VERSION = 3.1.3
+XFSPROGS_SOURCE = xfsprogs-$(XFSPROGS_VERSION).tar.gz
+XFSPROGS_SITE = ftp://oss.sgi.com/projects/xfs/cmd_tars
+XFSPROGS_LIBTOOL_PATCH = NO
+XFSPROGS_CONF_OPT = --enable-shared \
+ --enable-gettext=no \
+ --enable-lib64=no \
+ INSTALL_USER=default \
+ INSTALL_GROUP=default \
+ ac_cv_header_aio_h=yes ac_cv_lib_rt_lio_listio=yes
+XFSPROGS_INSTALL_STAGING = NO
+XFSPROGS_INSTALL_TARGET = YES
+XFSPROGS_INSTALL_TARGET_OPT = DIST_ROOT=$(TARGET_DIR) install
+
+# disable gettext by default, otherwise: "undefined reference to `libintl_gettext'"
+#ifeq ($(BR2_PACKAGE_GETTEXT),y)
+# XFSPROGS_DEPENDENCIES += gettext
+# XFSPROGS_CONF_OPT += --enable-gettext=yes
+#else
+# XFSPROGS_CONF_OPT += --enable-gettext=no
+#endif
+
+ifeq ($(BR2_PACKAGE_UTIL_LINUX_NG_LIBUUID),y)
+ XFSPROGS_DEPENDENCIES = util-linux-ng
+endif
+ifeq ($(BR2_PACKAGE_E2FSPROGS_LIBUUID),y)
+ XFSPROGS_DEPENDENCIES = e2fsprogs
endif
- touch -c $(XFSPROGS_DIR)/$(XFSPROGS_BINARY)
-
-$(TARGET_DIR)/$(XFSPROGS_TARGET_BINARY): $(XFSPROGS_DIR)/$(XFSPROGS_BINARY)
- $(MAKE1) PATH=$(TARGET_PATH) \
- DIST_ROOT=$(TARGET_DIR) \
- exec-prefix=/ \
- -C $(XFSPROGS_DIR) install
- rm -rf $(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc
- touch -c $(TARGET_DIR)/$(XFSPROGS_TARGET_BINARY)
-
-xfsprogs: e2fsprogs $(TARGET_DIR)/$(XFSPROGS_TARGET_BINARY)
-
-xfsprogs-clean:
- rm -f $(TARGET_DIR)/bin/xfs_* $(TARGET_DIR)/sbin/xfs_* $(TARGET_DIR)/sbin/*.xfs
- rm -f $(TARGET_DIR)/usr/lib/libhandle.so*
- rm -f $(TARGET_DIR)/usr/lib/libdisk.so* $(TARGET_DIR)/usr/lib/libxfs.so*
- -$(MAKE1) -C $(XFSPROGS_DIR) clean
-xfsprogs-dirclean:
- rm -rf $(XFSPROGS_DIR)
-#############################################################
-#
-# Toplevel Makefile options
-#
-#############################################################
-ifeq ($(BR2_PACKAGE_XFSPROGS),y)
-TARGETS+=xfsprogs
-endif
+$(eval $(call AUTOTARGETS,package,xfsprogs))
--
1.7.1
^ permalink raw reply related [flat|nested] 4+ messages in thread