Segmentation fault with binutils 2.28.1

Marco Atzeri marco.atzeri@gmail.com
Wed Oct 4 20:27:00 GMT 2017


On 04/10/2017 04:52, 叶雨飞 wrote:
> Guys,
> 
> If someone could show me some instructions on how to build and release
> binutils for CYGWIN, I'm happy to do it this week.
> 
> Cheers.

Hi 叶雨飞,
only the maintainer can release it.

However to see how to build and test it, the easy way
is to download the cygwin source package
    mingw64-x86_64-binutils-2.28.1.12c1f20d-1-src.tar.xz
using setup or directly from a mirror.

The file contains the upstream source used for the build,
a patch and the cygport file.

$ tar -tf mingw64-x86_64-binutils-2.28.1.12c1f20d-1-src.tar.xz
mingw64-x86_64-binutils-2.28.1.12c1f20d-1.src/
mingw64-x86_64-binutils-2.28.1.12c1f20d-1.src/binutils-gdb-2.28.1.12c1f20d.tar.bz2
mingw64-x86_64-binutils-2.28.1.12c1f20d-1.src/config-rpath.patch
mingw64-x86_64-binutils-2.28.1.12c1f20d-1.src/mingw64-x86_64-binutils.cygport


cygport is the standard method for building and maintaining packages for
the Cygwin distribution.
https://sourceware.org/ml/cygwin-announce/2017-05/msg00042.html

Attached for your convenience the same patch and the modified
mingw64-x86_64-binutils.cygport for 2.19.1.

Assuming you have cygport and all the needed tools and libraries,
these commands will download the upstream source file and
build the full cygwin package

$ cygport mingw64-x86_64-binutils.cygport download
$ cygport mingw64-x86_64-binutils.cygport almostall

The build took ~ 1 hour on my PC.
I have not yet tested it.

Regards
Marco
-------------- next part --------------
--- a/config.rpath	2008-03-13 14:27:44.000000000 -0500
+++ b/config.rpath	2010-07-11 23:30:45.209832800 -0500
@@ -441,7 +441,7 @@ case "$host_os" in
   bsdi4*)
     ;;
   cygwin* | mingw* | pw32*)
-    shrext=.dll
+    shrext=.dll.a
     ;;
   darwin* | rhapsody*)
     shrext=.dylib
-------------- next part --------------
TOOLCHAIN_TARGET="x86_64-w64-mingw32"
ORIG_PN="binutils"
#GIT_URI=git://sourceware.org/git/binutils-gdb.git
#GIT_REV=12c1f20d6fba9dce0011f3ad11a7de60f7df4a7f
#GIT_BRANCH=master

#inherit toolchain git
inherit toolchain 

DESCRIPTION="Binutils for MinGW-w64 Win64 toolchain"
HOMEPAGE="http://mingw-w64.sourceforge.net/"

NAME="mingw64-x86_64-binutils"
VERSION=2.29.1
RELEASE=1
CATEGORY="Devel"

SUMMARY="The GNU Binutils are a collection of binary tools. This package is capable of targeting win64."

#case ${PV[3]} in
#[5-9][0-9])
#	SRC_URI="ftp://sourceware.org/pub/binutils/snapshots/binutils-${PV}.tar.bz2" ;;
#*)	SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.bz2" ;;
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.lz" 
#esac
PATCH_URI="config-rpath.patch"

# Avoid strange failures
MAKEOPTS=-j1

CYGCONF_ARGS="
	--disable-gdb
"

src_install() {
	cd ${B}
	cyginstall

	# conflicts with native binutils
	rm -fr ${D}/usr/share/{info,locale}/
	rm -rf ${D}/usr/share/man/man1/gdb*
	rm -rf ${D}/usr/share/man/man5/gdb*
	#rm -rf ${D}/usr/share/gdb
	#rm -rf ${D}/usr/include/gdb
}

-------------- next part --------------

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


More information about the Cygwin mailing list