[Buildroot] [PATCH v3 1/5] dos2unix: add target support
Vicente Olivert Riera
Vincent.Riera at imgtec.com
Fri Sep 4 10:52:18 UTC 2015
Dear Baruch Siach,
On 09/03/2015 05:10 AM, Baruch Siach wrote:
> From: James Knight <james.knight at rockwellcollins.com>
>
> Allow the `dos2unix` utility to be built and installed on the target
> system.
>
> [baruch: properly handle target gettext]
> Signed-off-by: James Knight <james.knight at rockwellcollins.com>
> Signed-off-by: Baruch Siach <baruch at tkos.co.il>
> ---
> v3:
> * Show only if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS is enabled (Peter)
> * Add busybox to _DEPENDENCIES
>
> v2:
> * Fix static build with gettext
> * Support build without locale support
> ---
> package/Config.in | 1 +
> package/dos2unix/Config.in | 11 +++++++++++
> package/dos2unix/dos2unix.mk | 25 ++++++++++++++++++++++---
> 3 files changed, 34 insertions(+), 3 deletions(-)
> create mode 100644 package/dos2unix/Config.in
>
> diff --git a/package/Config.in b/package/Config.in
> index 6ba21a1aace8..2c1325af31c5 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -115,6 +115,7 @@ menu "Development tools"
> source "package/cvs/Config.in"
> if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
> source "package/diffutils/Config.in"
> + source "package/dos2unix/Config.in"
> source "package/findutils/Config.in"
> endif
> source "package/flex/Config.in"
> diff --git a/package/dos2unix/Config.in b/package/dos2unix/Config.in
> new file mode 100644
> index 000000000000..fdcd0700509b
> --- /dev/null
> +++ b/package/dos2unix/Config.in
> @@ -0,0 +1,11 @@
> +config BR2_PACKAGE_DOS2UNIX
> + select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE
> + depends on BR2_USE_WCHAR # gettext
> + bool "dos2unix"
> + help
> + dos2unix converts text file line endings between CRLF and LF
> +
> + http://freshmeat.net/projects/dos2unix
> +
> +comment "dos2unix needs a toolchain w/ wchar"
> + depends on !BR2_USE_WCHAR
> diff --git a/package/dos2unix/dos2unix.mk b/package/dos2unix/dos2unix.mk
> index 2d7fcbbc6958..b1d21f27364d 100644
> --- a/package/dos2unix/dos2unix.mk
> +++ b/package/dos2unix/dos2unix.mk
> @@ -6,17 +6,36 @@
>
> DOS2UNIX_VERSION = 7.0
> DOS2UNIX_SITE = http://waterlan.home.xs4all.nl/dos2unix
> -DOS2UNIX_DEPENDENCIES = host-gettext
> DOS2UNIX_LICENSE = BSD-2c
> DOS2UNIX_LICENSE_FILES = COPYING.txt
> +DOS2UNIX_DEPENDENCIES = $(if $(BR2_PACKAGE_BUSYBOX),busybox)
> +HOST_DOS2UNIX_DEPENDENCIES = host-gettext
> +
> +ifeq ($(BR2_ENABLE_LOCALE),)
> +DOS2UNIX_MAKE_OPTS += ENABLE_NLS=
> +endif
> +
> +ifeq ($(BR2_NEEDS_GETTEXT_IF_LOCALE),y)
> +DOS2UNIX_DEPENDENCIES += gettext
> +DOS2UNIX_MAKE_OPTS += LIBS_EXTRA=-lintl
> +endif
> +
> +define DOS2UNIX_BUILD_CMDS
> + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) $(DOS2UNIX_MAKE_OPTS)
> +endef
> +
> +define DOS2UNIX_INSTALL_TARGET_CMDS
> + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) \
> + $(DOS2UNIX_MAKE_OPTS) install
> +endef
>
> define HOST_DOS2UNIX_BUILD_CMDS
> $(HOST_CONFIGURE_OPTS) $(MAKE) -C $(@D)
> endef
>
> define HOST_DOS2UNIX_INSTALL_CMDS
> - $(HOST_CONFIGURE_OPTS) $(MAKE) -C $(@D) \
> - install DESTDIR=$(HOST_DIR)
> + $(HOST_CONFIGURE_OPTS) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR) install
> endef
>
> +$(eval $(generic-package))
> $(eval $(host-generic-package))
>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera at imgtec.com>
Tested-by: Vicente Olivert Riera <Vincent.Riera at imgtec.com>
Compile test for MIPS architecture:
$ grep ^DOS2UNIX_VERSION package/dos2unix/dos2unix.mk
DOS2UNIX_VERSION = 7.0
$ file output/target/usr/bin/dos2unix
output/target/usr/bin/dos2unix: ELF 32-bit MSB executable, MIPS, MIPS32
rel2 version 1 (SYSV), dynamically linked (uses shared libs), for
GNU/Linux 2.6.32, with unknown capability 0x41000000 = 0xf676e75, with
unknown capability 0x10000 = 0x70401, stripped
Regards,
Vincent.
More information about the buildroot
mailing list