diff options
author | Mike Frysinger <vapier@gentoo.org> | 2012-11-02 19:03:29 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2012-11-02 19:03:29 +0000 |
commit | 79a20cfe96a4f277f8cbbaa7f8867cb181202847 (patch) | |
tree | 6999831cfa940a644ce0e513b04ea3989bc7a7c8 /sys-devel/dev86 | |
parent | Mask old version to be able to move to new versioning schema (diff) | |
download | gentoo-2-79a20cfe96a4f277f8cbbaa7f8867cb181202847.tar.gz gentoo-2-79a20cfe96a4f277f8cbbaa7f8867cb181202847.tar.bz2 gentoo-2-79a20cfe96a4f277f8cbbaa7f8867cb181202847.zip |
Version bump. Include fix from Debian for ncc #354351 by Joerg Neikes. Fix stripping errors #413275 by Michele Ciacci. Also fix up libdir handling as bcc had /usr/lib/gcc/ hardcoded.
(Portage version: 2.2.0_alpha142/cvs/Linux x86_64, signed Manifest commit with key FB7C4156)
Diffstat (limited to 'sys-devel/dev86')
-rw-r--r-- | sys-devel/dev86/ChangeLog | 10 | ||||
-rw-r--r-- | sys-devel/dev86/dev86-0.16.19.ebuild | 78 | ||||
-rw-r--r-- | sys-devel/dev86/files/dev86-0.16.19-fortify.patch | 23 | ||||
-rw-r--r-- | sys-devel/dev86/files/dev86-0.16.19-memmove.patch | 17 |
4 files changed, 127 insertions, 1 deletions
diff --git a/sys-devel/dev86/ChangeLog b/sys-devel/dev86/ChangeLog index 1082eae2da70..018fb823c5a6 100644 --- a/sys-devel/dev86/ChangeLog +++ b/sys-devel/dev86/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for sys-devel/dev86 # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-devel/dev86/ChangeLog,v 1.23 2012/08/06 02:28:35 zerochaos Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-devel/dev86/ChangeLog,v 1.24 2012/11/02 19:03:28 vapier Exp $ + +*dev86-0.16.19 (02 Nov 2012) + + 02 Nov 2012; Mike Frysinger <vapier@gentoo.org> +dev86-0.16.19.ebuild, + +files/dev86-0.16.19-fortify.patch, +files/dev86-0.16.19-memmove.patch: + Version bump. Include fix from Debian for ncc #354351 by Joerg Neikes. Fix + stripping errors #413275 by Michele Ciacci. Also fix up libdir handling as + bcc had /usr/lib/gcc/ hardcoded. 06 Aug 2012; Rick Farina <zerochaos@gentoo.org> dev86-0.16.18.ebuild: fixed multilib-strict QA violation diff --git a/sys-devel/dev86/dev86-0.16.19.ebuild b/sys-devel/dev86/dev86-0.16.19.ebuild new file mode 100644 index 000000000000..7c2ac545e94f --- /dev/null +++ b/sys-devel/dev86/dev86-0.16.19.ebuild @@ -0,0 +1,78 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-devel/dev86/dev86-0.16.19.ebuild,v 1.1 2012/11/02 19:03:28 vapier Exp $ + +EAPI="4" + +inherit eutils multilib + +DESCRIPTION="Bruce's C compiler - Simple C compiler to generate 8086 code" +HOMEPAGE="http://www.debath.co.uk/" +SRC_URI="http://www.debath.co.uk/dev86/Dev86src-${PV}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="" + +RDEPEND="sys-devel/bin86" +DEPEND="${RDEPEND} + dev-util/gperf" + +STRIP_MASK="/usr/*/bcc/lib*.a /usr/*/i386/libc.a" + +src_prepare() { + # elksemu doesn't compile under amd64 + if use amd64; then + einfo "Not compiling elksemu on amd64" + sed -i \ + -e 's,alt-libs elksemu,alt-libs,' \ + -e 's,install-lib install-emu,install-lib,' \ + makefile.in || die + fi + + epatch "${FILESDIR}"/dev86-pic.patch + epatch "${FILESDIR}"/${PN}-0.16.19-fortify.patch + epatch "${FILESDIR}"/${PN}-0.16.19-memmove.patch #354351 + sed -i \ + -e "s:-O2 -g:${CFLAGS}:" \ + -e '/INEXE=/s:-s::' \ + makefile.in || die + sed -i \ + -e "s:/lib/:/$(get_libdir)/:" \ + bcc/bcc.c || die + sed -i -e '/INSTALL_OPTS=/s:-s::' bin86/Makefile || die + sed -i -e '/install -m 755 -s/s:-s::' dis88/Makefile || die +} + +src_compile() { + # Don't mess with CPPFLAGS as they tend to break compilation + # (bug #343655). + CPPFLAGS="" + + # First `make` is also a config, so set all the path vars here + emake -j1 \ + DIST="${D}" \ + CC="$(tc-getCC)" \ + LIBDIR="/usr/$(get_libdir)/bcc" \ + INCLDIR="/usr/$(get_libdir)/bcc" + + export PATH=${S}/bin:${PATH} + cd bin + ln -s ncc bcc + cd .. + cd bootblocks + ln -s ../bcc/version.h . + emake DIST="${D}" +} + +src_install() { + emake -j1 install-all DIST="${D}" + dobin bootblocks/makeboot + # remove all the stuff supplied by bin86 + cd "${D}" + rm usr/bin/{as,ld,nm,objdump,size}86 || die + rm usr/man/man1/{as,ld}86.1 || die + dodir /usr/share/man + mv usr/man usr/share/ +} diff --git a/sys-devel/dev86/files/dev86-0.16.19-fortify.patch b/sys-devel/dev86/files/dev86-0.16.19-fortify.patch new file mode 100644 index 000000000000..366808c96d20 --- /dev/null +++ b/sys-devel/dev86/files/dev86-0.16.19-fortify.patch @@ -0,0 +1,23 @@ +--- dev86-0.16.19/bcc/bcc.c ++++ dev86-0.16.19/bcc/bcc.c +@@ -596,12 +597,17 @@ + } + } + +-void +-command_reset() +-{ + #ifndef MAXPATHLEN ++#ifdef PATH_MAX ++#define MAXPATHLEN PATH_MAX ++#else + #define MAXPATHLEN 1024 + #endif ++#endif ++ ++void ++command_reset() ++{ + char buf[MAXPATHLEN]; + char ** prefix; + char * saved_cmd; diff --git a/sys-devel/dev86/files/dev86-0.16.19-memmove.patch b/sys-devel/dev86/files/dev86-0.16.19-memmove.patch new file mode 100644 index 000000000000..12df3f672624 --- /dev/null +++ b/sys-devel/dev86/files/dev86-0.16.19-memmove.patch @@ -0,0 +1,17 @@ +https://bugs.gentoo.org/354351 + +fix sniped from Debian: +* Fix "FTBFS: ncc: illegal label": apply patch by dai that replaces strcpy + by memmove (closes: #591133). + +--- copt/copt.c ++++ copt/copt.c +@@ -174,7 +174,7 @@ + /* Delete leading white spaces */ + for (cp = buf; *cp && isspace(*cp); cp++) ; + if (cp != buf && *cp) +- strcpy(buf, cp); ++ memmove(buf, cp, strlen(cp) + 1); + + return(buf); + } |