diff options
-rw-r--r-- | devel/Makefile | 1 | ||||
-rw-r--r-- | devel/cross-binutils/Makefile | 125 | ||||
-rw-r--r-- | devel/cross-binutils/distinfo | 6 | ||||
-rw-r--r-- | devel/cross-binutils/pkg-descr | 14 |
4 files changed, 146 insertions, 0 deletions
diff --git a/devel/Makefile b/devel/Makefile index 375d6f1608df..f94ab6ac3054 100644 --- a/devel/Makefile +++ b/devel/Makefile @@ -178,6 +178,7 @@ SUBDIR += cppi SUBDIR += cppunit SUBDIR += cproto + SUBDIR += cross-binutils SUBDIR += crow SUBDIR += cscope SUBDIR += cscout diff --git a/devel/cross-binutils/Makefile b/devel/cross-binutils/Makefile new file mode 100644 index 000000000000..f53498e95fce --- /dev/null +++ b/devel/cross-binutils/Makefile @@ -0,0 +1,125 @@ +# New ports collection makefile for: cross-binutils +# Date created: 8 August 2006 +# Whom: Stanislav Sedov <stas@FreeBSD.org> +# +# $FreeBSD$ +# + +PORTNAME= binutils +PORTVERSION= 2.17 +CATEGORIES= devel +MASTER_SITES= ${MASTER_SITE_SOURCEWARE} +MASTER_SITE_SUBDIR= binutils/releases +PKGNAMEPREFIX= ${TGTARCH}-${TGTABI}- + +PATCH_SITES= ftp://ftp.rtems.com/pub/rtems/SOURCES/ +PATCH_DIST_STRIP= -p1 + +MAINTAINER= stas@FreeBSD.org +COMMENT= FSF binutils port for cross-target development + +USE_BZIP2= yes +USE_GMAKE= yes +GNU_CONFIGURE= yes +ALL_TARGET= all info + +CONFIGURE_TARGET= --target=${OURTARGET} +CONFIGURE_ARGS+= --disable-nls \ + --with-system-zlib \ + +OURTARGET= ${TGTARCH}-${TGTABI} + +MAN1= ${OURTARGET}-addr2line.1 \ + ${OURTARGET}-ar.1 \ + ${OURTARGET}-as.1 \ + ${OURTARGET}-c++filt.1 \ + ${OURTARGET}-dlltool.1 \ + ${OURTARGET}-ld.1 \ + ${OURTARGET}-nlmconv.1 \ + ${OURTARGET}-nm.1 \ + ${OURTARGET}-objcopy.1 \ + ${OURTARGET}-objdump.1 \ + ${OURTARGET}-ranlib.1 \ + ${OURTARGET}-readelf.1 \ + ${OURTARGET}-size.1 \ + ${OURTARGET}-strings.1 \ + ${OURTARGET}-strip.1 \ + ${OURTARGET}-windres.1 + +INFO= ${OURTARGET}-as \ + ${OURTARGET}-bfd \ + ${OURTARGET}-binutils \ + ${OURTARGET}-ld + +PLIST_FILES= bin/${OURTARGET}-addr2line \ + bin/${OURTARGET}-ar \ + bin/${OURTARGET}-as \ + bin/${OURTARGET}-c++filt \ + bin/${OURTARGET}-ld \ + bin/${OURTARGET}-nm \ + bin/${OURTARGET}-objcopy \ + bin/${OURTARGET}-objdump \ + bin/${OURTARGET}-ranlib \ + bin/${OURTARGET}-readelf \ + bin/${OURTARGET}-size \ + bin/${OURTARGET}-strings \ + bin/${OURTARGET}-strip + +.if defined(WITH_RTEMS_PATCHES) +PATCHFILES+= ${PORTNAME}-${PORTVERSION}-rtems4.8-20061021.diff +.endif + +.if !defined(TGTARCH) || !defined(TGTABI) +PKGNAMEPREFIX= #empty +IGNORE= you should select ARCH and ABI to build port +.endif + +# +# Macro to fix up info referencies +# +FIXREFS= ${SH} -c '${REINPLACE_CMD} -E \ + -e "s,$$0\.(texi|info),${OURTARGET}-$$0.\1,g" \ + -e "s,(@file)\{$$0\},\1\{${OURTARGET}-$$0\},g" \ + -e "s,\($$0\),\(${OURTARGET}-$$0\),g" $$*' -- + +post-patch: +# +# Patch and rename info files +# + @${FIXREFS} as ${WRKSRC}/gas/doc/as.texinfo \ + ${WRKSRC}/gas/doc/Makefile.in + @${FIXREFS} bfd ${WRKSRC}/bfd/doc/bfd.texinfo \ + ${WRKSRC}/bfd/doc/Makefile.in + @${FIXREFS} binutils ${WRKSRC}/binutils/doc/binutils.texi \ + ${WRKSRC}/binutils/doc/Makefile.in + @${FIXREFS} ld ${WRKSRC}/ld/ld.texinfo \ + ${WRKSRC}/ld/Makefile.in + + @${MV} ${WRKSRC}/gas/doc/as.texinfo \ + ${WRKSRC}/gas/doc/${OURTARGET}-as.texinfo + @${MV} ${WRKSRC}/bfd/doc/bfd.texinfo \ + ${WRKSRC}/bfd/doc/${OURTARGET}-bfd.texinfo + @${MV} ${WRKSRC}/binutils/doc/binutils.texi \ + ${WRKSRC}/binutils/doc/${OURTARGET}-binutils.texi + @${MV} ${WRKSRC}/ld/ld.texinfo \ + ${WRKSRC}/ld/${OURTARGET}-ld.texinfo + +# +# Disable install target in some directories +# + @${REINPLACE_CMD} -E -e 's,^(install:).*,\1,' \ + ${WRKSRC}/etc/Makefile.in \ + ${WRKSRC}/libiberty/Makefile.in \ + ${WRKSRC}/opcodes/Makefile.in + +post-install: +# +# Add some plist items (we don't list them directly, since the set vary +# accross different targets +# + @${FIND} -ds ${PREFIX}/${OURTARGET} ! -type d | \ + ${SED} -e 's,^${PREFIX}/,,' >> ${TMPPLIST} + @${FIND} -ds ${PREFIX}/${OURTARGET} -type d | \ + ${SED} -e 's,^${PREFIX}/,@dirrm ,' >> ${TMPPLIST} + +.include <bsd.port.mk> diff --git a/devel/cross-binutils/distinfo b/devel/cross-binutils/distinfo new file mode 100644 index 000000000000..fe4190553799 --- /dev/null +++ b/devel/cross-binutils/distinfo @@ -0,0 +1,6 @@ +MD5 (binutils-2.17.tar.bz2) = e26e2e06b6e4bf3acf1dc8688a94c0d1 +SHA256 (binutils-2.17.tar.bz2) = e2c33ce6f23c9a366f109ced295626cb2f8bd6b2f08ff9df6dafb5448505a25e +SIZE (binutils-2.17.tar.bz2) = 13795751 +MD5 (binutils-2.17-rtems4.8-20061021.diff) = 6af727af3c4fedf859712f9adc59c4fd +SHA256 (binutils-2.17-rtems4.8-20061021.diff) = 9e941aed8af46b1a851660d47fb626a9381b5e940649eb0dc18b053a4ef4ff8f +SIZE (binutils-2.17-rtems4.8-20061021.diff) = 19833 diff --git a/devel/cross-binutils/pkg-descr b/devel/cross-binutils/pkg-descr new file mode 100644 index 000000000000..a926173b3229 --- /dev/null +++ b/devel/cross-binutils/pkg-descr @@ -0,0 +1,14 @@ +GNU binutils for cross-target application development. + +Prerequisite for the GCC cross-compiling enviropment. + +Use TGTARCH switch to select target architecture, and TGTABI to select ABI. +E.g. the following command will build binutils for rtems on sparc: +% make TGTARCH=sparc TGTABI=rtems + +If you encounter any problems building/using/installing this port, please +make me know. It would help to improve this port in feature. + +-- Stanislav Sedov <stas@FreeBSD.org> + +WWW: http://sources.redhat.com/binutils/ |