SUMMARY="Saves and restores files to/from a tape or disk archive"
DESCRIPTION="The Tar program provides the ability to create tar archives, as \
well as various other kinds of manipulation. For example, you can use Tar on \
previously created archives to extract files, to store additional files, or \
to update or list files which were already stored.

Initially, tar archives were used to store files conveniently on magnetic \
tape. The name \"Tar\" comes from this use; it stands for tape archiver. Despite \
the utility's name, Tar can direct its output to available devices, files, or \
other programs (using pipes), it can even access remote devices or files (as \
archives)."
HOMEPAGE="https://www.gnu.org/software/tar/"
COPYRIGHT="1990-2018 Free Software Foundation, Inc."
LICENSE="GNU GPL v3"
REVISION="1"
SOURCE_URI="https://ftpmirror.gnu.org/tar/tar-$portVersion.tar.bz2
	https://ftp.gnu.org/gnu/tar/tar-$portVersion.tar.bz2"
CHECKSUM_SHA256="b44cc67f8a1f6b0250b7c860e952b37e8ed932a90bd9b1862a511079255646ff"
PATCHES="tar-$portVersion.patchset"

ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"

commandSuffix=$secondaryArchSuffix
commandBinDir=$binDir
if [ "$targetArchitecture" = x86_gcc2 ]; then
	commandSuffix=
	commandBinDir=$prefix/bin
fi

PROVIDES="
	tar$secondaryArchSuffix = $portVersion compat >= 1
	cmd:tar$commandSuffix = $portVersion compat >= 1
	"
REQUIRES="
	haiku$secondaryArchSuffix
	"
if [ "$targetArchitecture" = x86_gcc2 ]; then
	REPLACES="
		tar
		"
fi

BUILD_REQUIRES="
	haiku${secondaryArchSuffix}_devel
	"
BUILD_PREREQUIRES="
	cmd:automake
	cmd:autoreconf
	cmd:gcc$secondaryArchSuffix
	cmd:ld$secondaryArchSuffix
	cmd:make
	cmd:sed
	"

TEST_REQUIRES="
	cmd:bzip2
	cmd:compress
	cmd:find
	cmd:gzip
	"
if [ "$effectiveTargetArchitecture" != x86_gcc2 ]; then
TEST_REQUIRES+="
	cmd:lzip
	cmd:lzma
	cmd:xz
	"
fi

defineDebugInfoPackage tar$secondaryArchSuffix $commandBinDir/tar

BUILD()
{
	runConfigure --omit-dirs binDir ./configure --bindir=$commandBinDir \
		--disable-nls \
		--disable-gcc-warnings \
		LDFLAGS="-lnetwork" CFLAGS="-D_BSD_SOURCE" \
		FORCE_UNSAFE_CONFIGURE=1
	make $jobArgs YACC=:
}

INSTALL()
{
	make install
}

TEST()
{
#x86_64
#testsuite: 23 24 25 55 98 100 105 106 110 111 113 116 121 124 127 128 133 134 135 138 142 143 155 157 184 failed
	make check
}
