blob: bd24f4762f4e98a3a7ca178f1fbbb9efe00f8e75 [file] [log] [blame]
Brad Bishop1a4b7ee2018-12-16 17:11:34 -08001SUMMARY = "GNU file archiving program"
2DESCRIPTION = "GNU tar saves many files together into a single tape \
3or disk archive, and can restore individual files from the archive."
4HOMEPAGE = "http://www.gnu.org/software/tar/"
5SECTION = "base"
Brad Bishop316dfdd2018-06-25 12:45:53 -04006LICENSE = "GPLv3"
7LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
8
Brad Bishop1a4b7ee2018-12-16 17:11:34 -08009SRC_URI = "${GNU_MIRROR}/tar/tar-${PV}.tar.bz2 \
10 file://remove-gets.patch \
11 file://musl_dirent.patch \
12"
13
Brad Bishop316dfdd2018-06-25 12:45:53 -040014SRC_URI[md5sum] = "8404e4c1fc5a3000228ab2b8ad674a65"
15SRC_URI[sha256sum] = "87592b86cb037c554375f5868bdd3cc57748aef38d6cb741c81065f0beac63b7"
16
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080017inherit autotools gettext texinfo
18
19PACKAGECONFIG ??= ""
20PACKAGECONFIG_append_class-target = " ${@bb.utils.filter('DISTRO_FEATURES', 'acl', d)}"
21
22PACKAGECONFIG[acl] = "--with-posix-acls,--without-posix-acls,acl"
23
24EXTRA_OECONF += "DEFAULT_RMT_DIR=${base_sbindir}"
25
26# Let aclocal use the relative path for the m4 file rather than the
27# absolute since tar has a lot of m4 files, otherwise there might
28# be an "Argument list too long" error when it is built in a long/deep
29# directory.
30acpaths = "-I ./m4"
31
32do_install () {
33 autotools_do_install
34 ln -s tar ${D}${bindir}/gtar
Brad Bishop316dfdd2018-06-25 12:45:53 -040035}
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080036
37do_install_append_class-target() {
38 if [ "${base_bindir}" != "${bindir}" ]; then
39 install -d ${D}${base_bindir}
40 mv ${D}${bindir}/tar ${D}${base_bindir}/tar
41 mv ${D}${bindir}/gtar ${D}${base_bindir}/gtar
42 rmdir ${D}${bindir}/
43 fi
44}
45
46do_install_append_libc-musl() {
47 rm -f ${D}${libdir}/charset.alias
48 rmdir ${D}${libdir}
49}
50
51PACKAGES =+ "${PN}-rmt"
52
53FILES_${PN}-rmt = "${base_sbindir}/rmt*"
54
55inherit update-alternatives
56
57ALTERNATIVE_PRIORITY = "100"
58
59ALTERNATIVE_${PN} = "tar"
60ALTERNATIVE_${PN}-rmt = "rmt"
61ALTERNATIVE_${PN}_class-nativesdk = ""
62ALTERNATIVE_${PN}-rmt_class-nativesdk = ""
63
64ALTERNATIVE_LINK_NAME[tar] = "${base_bindir}/tar"
65ALTERNATIVE_LINK_NAME[rmt] = "${base_sbindir}/rmt"
66
67PROVIDES_append_class-native = " tar-replacement-native"
68NATIVE_PACKAGE_PATH_SUFFIX = "/${PN}"
69
70BBCLASSEXTEND = "native nativesdk"