# Template file for 'binutils'
pkgname=binutils
version=2.21.1
distfiles="${GNU_SITE}/binutils/$pkgname-$version.tar.bz2"
short_desc="GNU binary utilities"
maintainer="Juan RP <xtraeme@gmail.com>"
homepage="http://www.gnu.org/software/binutils/"
license="GPL-3"
checksum=cdecfa69f02aa7b05fbcdf678e33137151f361313b2f3e48aba925f64eabf654
long_desc="
 The GNU binutils package contains essential tools to assemble, link and
 manipulate binary and object files. They are often used with a compiler
 and additional libraries for building software.

 It includes the GNU linker, the portable GNU assembler, ar for modifying
 archives (such as libraries), nm for listing symbols from object files,
 objdump for displaying object file information, ranlib for generating
 archive indexes, size for listing section sizes of object files,
 strings for outputing the printable characters in files, strip for
 stripping out symbols (like debugging information) from object files,
 and other tools."

bootstrap=yes
subpackages="$pkgname-devel"

Add_dependency run glibc
Add_dependency run zlib

if [ -n "$BOOTSTRAP_PKG_REBUILD" ]; then
	Add_dependency build gettext
	Add_dependency build texinfo
fi

do_build()
{
	./configure ${CONFIGURE_SHARED_ARGS} --enable-threads \
		--enable-64-bit-bfd --enable-multilib --enable-plugins \
		--enable-secureplt --with-mmap

	make ${makejobs}
}

do_install()
{
	if [ "$xbps_machine" = "x86_64" ]; then
		mkdir -p ${SRCPKGDESTDIR}/usr/lib
		cd ${SRCPKGDESTDIR}/usr && ln -s lib lib64 && cd ${wrksrc}
	fi

	make DESTDIR=${DESTDIR} tooldir=/usr install

	# Remove info file that conflicts with autoconf.
	rm -f ${DESTDIR}/usr/share/info/standards.info
	rm -f ${DESTDIR}/usr/lib64

	# Remove useless manpages.
	for f in dlltool nlmconv windres windmc; do
		rm -f ${DESTDIR}/usr/share/man/man1/${f}.1
	done

	# Fix for multilib builds.
	if [ -d ${DESTDIR}/usr/lib32 ]; then
		mv ${DESTDIR}/usr/lib32/* ${DESTDIR}/usr/lib
		rmdir ${DESTDIR}/usr/lib32
	fi
}
