From a9f54b40e10da436fc0876d89944f6ffe5723a88 Mon Sep 17 00:00:00 2001 From: davehome Date: Fri, 15 Jul 2011 02:44:38 -0600 Subject: [PATCH 1/2] New package: mingw-w64-binutils-2.21.1. --- srcpkgs/mingw-w64-binutils/template | 78 +++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 srcpkgs/mingw-w64-binutils/template diff --git a/srcpkgs/mingw-w64-binutils/template b/srcpkgs/mingw-w64-binutils/template new file mode 100644 index 00000000000..2104ce96efa --- /dev/null +++ b/srcpkgs/mingw-w64-binutils/template @@ -0,0 +1,78 @@ +# Template file for 'mingw-w64-binutils' +pkgname=mingw-w64-binutils +version=2.21.1 +distfiles="${GNU_SITE}/binutils/binutils-$version.tar.bz2" +build_style=custom-install +short_desc="GNU binary utilities (mingw-w64 version)" +maintainer="davehome " +homepage="http://www.gnu.org/software/binutils/" +license="GPL-3" +checksum=f769b64350a02fbee009e1582cc12b6ed43b41985de65effb741e258e075dd05 +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. + + * This is a special version for mingw-w64." + +wrksrc=binutils-$version + +Add_dependency run glibc +Add_dependency run zlib +Add_dependency run gmp +Add_dependency run mpfr + +Add_dependency build gcc +Add_dependency build make +Add_dependency build sed +Add_dependency build gawk +Add_dependency build bison +Add_dependency build flex +Add_dependency build gettext +Add_dependency build texinfo +Add_dependency build coreutils +Add_dependency build binutils +Add_dependency build gmp-devel +Add_dependency build mpfr-devel + +do_build() +{ + if [ "${xbps_machine}" = "x86_64" ]; then + _triplet="${xbps_machine}-w64-mingw32" + _target_args="--enable-targets=${_triplet},i686-w64-mingw32" + _multilib_args="--enable-multilib --enable-64-bit-bfd" + else + _triplet="${xbps_machine}-w32-mingw32" + _target_args="--enable-targets=${_triplet}" + _multilib_args="--disable-multilib" + fi + + ./configure ${CONFIGURE_SHARED_ARGS} --enable-threads \ + --target=${_triplet} ${_target_args} ${_multilib_args} \ + --enable-plugins --enable-secureplt --with-mmap + + make ${makejobs} +} + +do_install() +{ + # 'tools' are installed in ${DESTDIR}/${_triplet}/bin + make DESTDIR=${DESTDIR} install + + # Remove info files that conflict with system binutils. + rm -rf ${DESTDIR}/usr/share/info + + # Remove lib64 directory and it's only file: libiberty.a + rm -rf ${DESTDIR}/usr/lib64 + + # Remove extra locales + rm -rf ${DESTDIR}/usr/share/locale +} From 180b89fe2a7d37d1d8254c68926e58a34e13d9bd Mon Sep 17 00:00:00 2001 From: davehome Date: Fri, 15 Jul 2011 04:19:21 -0600 Subject: [PATCH 2/2] mingw-w64-binutils: revamped --- srcpkgs/mingw-w64-binutils/template | 53 ++++++++++++----------------- 1 file changed, 21 insertions(+), 32 deletions(-) diff --git a/srcpkgs/mingw-w64-binutils/template b/srcpkgs/mingw-w64-binutils/template index 2104ce96efa..a0e4d1b754d 100644 --- a/srcpkgs/mingw-w64-binutils/template +++ b/srcpkgs/mingw-w64-binutils/template @@ -23,56 +23,45 @@ long_desc=" * This is a special version for mingw-w64." -wrksrc=binutils-$version - Add_dependency run glibc Add_dependency run zlib -Add_dependency run gmp -Add_dependency run mpfr -Add_dependency build gcc -Add_dependency build make Add_dependency build sed Add_dependency build gawk -Add_dependency build bison Add_dependency build flex -Add_dependency build gettext -Add_dependency build texinfo Add_dependency build coreutils -Add_dependency build binutils -Add_dependency build gmp-devel -Add_dependency build mpfr-devel + +wrksrc=binutils-$version + +_mingwprefix=/opt + +if [ "${xbps_machine}" = "x86_64" ]; then + _mingwtriplet="${xbps_machine}-w64-mingw32" + _target_args="--enable-targets=${_mingwtriplet},i686-w64-mingw32" + _multilib_args="--enable-multilib --enable-64-bit-bfd" +else + _mingwtriplet="${xbps_machine}-w32-mingw32" + _target_args="--enable-targets=${_mingwtriplet}" + _multilib_args="--disable-multilib" +fi do_build() { - if [ "${xbps_machine}" = "x86_64" ]; then - _triplet="${xbps_machine}-w64-mingw32" - _target_args="--enable-targets=${_triplet},i686-w64-mingw32" - _multilib_args="--enable-multilib --enable-64-bit-bfd" - else - _triplet="${xbps_machine}-w32-mingw32" - _target_args="--enable-targets=${_triplet}" - _multilib_args="--disable-multilib" - fi - - ./configure ${CONFIGURE_SHARED_ARGS} --enable-threads \ - --target=${_triplet} ${_target_args} ${_multilib_args} \ - --enable-plugins --enable-secureplt --with-mmap + ./configure --prefix=${_mingwprefix} --enable-threads \ + --target=${_mingwtriplet} ${_target_args} ${_multilib_args} \ + --enable-plugins --enable-secureplt --with-mmap --disable-nls \ + --exec-prefix=${_mingwprefix}/${_mingwtriplet} make ${makejobs} } do_install() { - # 'tools' are installed in ${DESTDIR}/${_triplet}/bin make DESTDIR=${DESTDIR} install - # Remove info files that conflict with system binutils. - rm -rf ${DESTDIR}/usr/share/info - # Remove lib64 directory and it's only file: libiberty.a - rm -rf ${DESTDIR}/usr/lib64 + rm -rf ${DESTDIR}/${_mingwprefix}/${_mingwtriplet}/lib64 - # Remove extra locales - rm -rf ${DESTDIR}/usr/share/locale + # Remove useless manpages + rm -rf ${DESTDIR}/${_mingwprefix}/share }