diff options
author | Michael Sterrett <mr_bones_@gentoo.org> | 2005-05-17 22:45:23 +0000 |
---|---|---|
committer | Michael Sterrett <mr_bones_@gentoo.org> | 2005-05-17 22:45:23 +0000 |
commit | 1ba90db454ba5ee1edf3b5ecd76a0c37ebfab8b1 (patch) | |
tree | f4c1286e17cd8a3c1bdfc08fb1220c77cfa16dd6 /dev-lang/nasm | |
parent | The big-endian patch applies to... well... all of the big-endian architectures (diff) | |
download | historical-1ba90db454ba5ee1edf3b5ecd76a0c37ebfab8b1.tar.gz historical-1ba90db454ba5ee1edf3b5ecd76a0c37ebfab8b1.tar.bz2 historical-1ba90db454ba5ee1edf3b5ecd76a0c37ebfab8b1.zip |
clean older version
Package-Manager: portage-2.0.51.19
Diffstat (limited to 'dev-lang/nasm')
-rw-r--r-- | dev-lang/nasm/ChangeLog | 6 | ||||
-rw-r--r-- | dev-lang/nasm/Manifest | 17 | ||||
-rw-r--r-- | dev-lang/nasm/files/0.98.38-overflow.patch | 370 | ||||
-rw-r--r-- | dev-lang/nasm/files/digest-nasm-0.98.38-r1 | 1 | ||||
-rw-r--r-- | dev-lang/nasm/nasm-0.98.38-r1.ebuild | 58 |
5 files changed, 7 insertions, 445 deletions
diff --git a/dev-lang/nasm/ChangeLog b/dev-lang/nasm/ChangeLog index 95b571d744fc..1ae3b12ff19c 100644 --- a/dev-lang/nasm/ChangeLog +++ b/dev-lang/nasm/ChangeLog @@ -1,6 +1,10 @@ # ChangeLog for dev-lang/nasm # Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/nasm/ChangeLog,v 1.34 2005/05/11 20:17:19 cryos Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/nasm/ChangeLog,v 1.35 2005/05/17 22:45:23 mr_bones_ Exp $ + + 17 May 2005; Michael Sterrett <mr_bones_@gentoo.org> + -files/0.98.38-overflow.patch, -nasm-0.98.38-r1.ebuild: + clean older version 11 May 2005; Marcus D. Hanwell <cryos@gentoo.org> nasm-0.98.39.ebuild: Stable on amd64. diff --git a/dev-lang/nasm/Manifest b/dev-lang/nasm/Manifest index 2e2e025162bd..4831ebb2ac52 100644 --- a/dev-lang/nasm/Manifest +++ b/dev-lang/nasm/Manifest @@ -1,17 +1,4 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 - -MD5 3e974ea497d6358e1a36e51c95f01ad8 nasm-0.98.38-r1.ebuild 1281 -MD5 282cd3b0837b5320a056926d8ba23daf nasm-0.98.39.ebuild 1332 -MD5 228b012713bc0a358ce0dd99bd392b78 ChangeLog 4961 MD5 8524fffd916a234a0fa40149506746ee metadata.xml 738 -MD5 0de637127f4fc709e07c5505573c4887 files/0.98.38-overflow.patch 13476 +MD5 282cd3b0837b5320a056926d8ba23daf nasm-0.98.39.ebuild 1332 +MD5 954685ba54ece5b5d7a88de54b11ed1d ChangeLog 5101 MD5 98c253856c4823fdfe9095d900744ff6 files/digest-nasm-0.98.39 65 -MD5 988e60ffeb3fbb254a0b1537789b69bb files/digest-nasm-0.98.38-r1 65 ------BEGIN PGP SIGNATURE----- -Version: GnuPG v1.4.1 (GNU/Linux) - -iD8DBQFCgmhsntT9W3vfTuoRApHtAJ0WYBc8kOSyS0pX/XbzJX4wcSBZRwCcDPs6 -5WXCiJS0RwX2Xm6ZGqa7Wcc= -=JHTm ------END PGP SIGNATURE----- diff --git a/dev-lang/nasm/files/0.98.38-overflow.patch b/dev-lang/nasm/files/0.98.38-overflow.patch deleted file mode 100644 index bd8475f4315f..000000000000 --- a/dev-lang/nasm/files/0.98.38-overflow.patch +++ /dev/null @@ -1,370 +0,0 @@ ---- preproc.c.orig 2004-12-16 10:49:55 -0500 -+++ preproc.c 2004-12-16 10:51:48 -0500 -@@ -528,7 +528,7 @@ - fname++; - fnlen = strcspn(fname, "\""); - line = nasm_malloc(20 + fnlen); -- sprintf(line, "%%line %d %.*s", lineno, fnlen, fname); -+ snprintf(line, 20+fnlen,"%%line %d %.*s", lineno, fnlen, fname); - nasm_free(oldline); - } - if (tasm_compatible_mode) -@@ -1043,7 +1043,7 @@ - char *p, *q = t->text + 2; - - q += strspn(q, "$"); -- sprintf(buffer, "..@%lu.", ctx->number); -+ snprintf(buffer, sizeof(buffer), "..@%lu.", ctx->number); - p = nasm_strcat(buffer, q); - nasm_free(t->text); - t->text = p; -@@ -1520,23 +1520,30 @@ - t = t->next; - continue; - } -- else if (tt->type == TOK_WHITESPACE) -+ if (tt->type == TOK_WHITESPACE) - { - tt = tt->next; - continue; - } -- else if (tt->type != t->type || -- mstrcmp(tt->text, t->text, casesense)) -+ if (tt->type != t->type) - { - j = FALSE; /* found mismatching tokens */ - break; - } -- else -+ /* Unify surrounding quotes for strings */ -+ if (t->type == TOK_STRING) - { -- t = t->next; -- tt = tt->next; -- continue; -+ tt->text[0] = t->text[0]; -+ tt->text[strlen(tt->text) - 1] = t->text[0]; - } -+ if (mstrcmp(tt->text, t->text, casesense) != 0) -+ { -+ j = FALSE; /* found mismatching tokens */ -+ break; -+ } -+ -+ t = t->next; -+ tt = tt->next; - } - if ((t->type != TOK_OTHER || strcmp(t->text, ",")) || tt) - j = FALSE; /* trailing gunk on one end or other */ -@@ -1954,7 +1961,7 @@ - free_tlist(tt); - - /* Now define the macro for the argument */ -- sprintf(directive, "%%define %s (%s+%d)", arg, StackPointer, -+ snprintf(directive, sizeof(directive), "%%define %s (%s+%d)", arg, StackPointer, - offset); - do_directive(tokenise(directive)); - offset += size; -@@ -2051,13 +2058,13 @@ - free_tlist(tt); - - /* Now define the macro for the argument */ -- sprintf(directive, "%%define %s (%s-%d)", local, StackPointer, -+ snprintf(directive, sizeof(directive), "%%define %s (%s-%d)", local, StackPointer, - offset); - do_directive(tokenise(directive)); - offset += size; - - /* Now define the assign to setup the enter_c macro correctly */ -- sprintf(directive, "%%assign %%$localsize %%$localsize+%d", -+ snprintf(directive, sizeof(directive), "%%assign %%$localsize %%$localsize+%d", - size); - do_directive(tokenise(directive)); - -@@ -3182,12 +3189,12 @@ - */ - case '0': - type = TOK_NUMBER; -- sprintf(tmpbuf, "%d", mac->nparam); -+ snprintf(tmpbuf, sizeof(tmpbuf), "%d", mac->nparam); - text = nasm_strdup(tmpbuf); - break; - case '%': - type = TOK_ID; -- sprintf(tmpbuf, "..@%lu.", mac->unique); -+ snprintf(tmpbuf, sizeof(tmpbuf), "..@%lu.", mac->unique); - text = nasm_strcat(tmpbuf, t->text + 2); - break; - case '-': -@@ -4067,7 +4074,7 @@ - return; - - va_start(arg, fmt); -- vsprintf(buff, fmt, arg); -+ vsnprintf(buff, sizeof(buff), fmt, arg); - va_end(arg); - - if (istk && istk->mstk && istk->mstk->name) -@@ -4530,7 +4537,7 @@ - make_tok_num(Token * tok, long val) - { - char numbuf[20]; -- sprintf(numbuf, "%ld", val); -+ snprintf(numbuf, sizeof(numbuf), "%ld", val); - tok->text = nasm_strdup(numbuf); - tok->type = TOK_NUMBER; - } ---- disasm.c.orig 2003-02-24 18:22:45.000000000 -0500 -+++ disasm.c 2004-12-15 18:00:13.000000000 -0500 -@@ -484,8 +484,8 @@ - return data - origdata; - } - --long disasm (unsigned char *data, char *output, int segsize, long offset, -- int autosync, unsigned long prefer) -+long disasm (unsigned char *data, char *output, int outbufsize, int segsize, -+ long offset, int autosync, unsigned long prefer) - { - struct itemplate **p, **best_p; - int length, best_length = 0; -@@ -583,26 +583,26 @@ - slen = 0; - - if (lock) -- slen += sprintf(output+slen, "lock "); -+ slen += snprintf(output+slen, outbufsize-slen, "lock "); - for (i = 0; i < ins.nprefix; i++) - switch (ins.prefixes[i]) { -- case P_REP: slen += sprintf(output+slen, "rep "); break; -- case P_REPE: slen += sprintf(output+slen, "repe "); break; -- case P_REPNE: slen += sprintf(output+slen, "repne "); break; -- case P_A16: slen += sprintf(output+slen, "a16 "); break; -- case P_A32: slen += sprintf(output+slen, "a32 "); break; -- case P_O16: slen += sprintf(output+slen, "o16 "); break; -- case P_O32: slen += sprintf(output+slen, "o32 "); break; -+ case P_REP: slen += snprintf(output+slen, outbufsize-slen, "rep "); break; -+ case P_REPE: slen += snprintf(output+slen, outbufsize-slen, "repe "); break; -+ case P_REPNE: slen += snprintf(output+slen, outbufsize-slen, "repne "); break; -+ case P_A16: slen += snprintf(output+slen, outbufsize-slen, "a16 "); break; -+ case P_A32: slen += snprintf(output+slen, outbufsize-slen, "a32 "); break; -+ case P_O16: slen += snprintf(output+slen, outbufsize-slen, "o16 "); break; -+ case P_O32: slen += snprintf(output+slen, outbufsize-slen, "o32 "); break; - } - - for (i = 0; i < elements(ico); i++) - if ((*p)->opcode == ico[i]) { -- slen += sprintf(output+slen, "%s%s", icn[i], -+ slen += snprintf(output+slen, outbufsize-slen, "%s%s", icn[i], - whichcond(ins.condition)); - break; - } - if (i >= elements(ico)) -- slen += sprintf(output+slen, "%s", insn_names[(*p)->opcode]); -+ slen += snprintf(output+slen, outbufsize-slen, "%s", insn_names[(*p)->opcode]); - colon = FALSE; - length += data - origdata; /* fix up for prefixes */ - for (i=0; i<(*p)->operands; i++) { -@@ -633,14 +633,14 @@ - ins.oprs[i].basereg = whichreg ((*p)->opd[i], - ins.oprs[i].basereg); - if ( (*p)->opd[i] & TO ) -- slen += sprintf(output+slen, "to "); -- slen += sprintf(output+slen, "%s", -+ slen += snprintf(output+slen, outbufsize-slen, "to "); -+ slen += snprintf(output+slen, outbufsize-slen, "%s", - reg_names[ins.oprs[i].basereg-EXPR_REG_START]); - } else if (!(UNITY & ~(*p)->opd[i])) { - output[slen++] = '1'; - } else if ( (*p)->opd[i] & IMMEDIATE ) { - if ( (*p)->opd[i] & BITS8 ) { -- slen += sprintf(output+slen, "byte "); -+ slen += snprintf(output+slen, outbufsize-slen, "byte "); - if (ins.oprs[i].segment & SEG_SIGNED) { - if (ins.oprs[i].offset < 0) { - ins.oprs[i].offset *= -1; -@@ -649,17 +649,17 @@ - output[slen++] = '+'; - } - } else if ( (*p)->opd[i] & BITS16 ) { -- slen += sprintf(output+slen, "word "); -+ slen += snprintf(output+slen, outbufsize-slen, "word "); - } else if ( (*p)->opd[i] & BITS32 ) { -- slen += sprintf(output+slen, "dword "); -+ slen += snprintf(output+slen, outbufsize-slen, "dword "); - } else if ( (*p)->opd[i] & NEAR ) { -- slen += sprintf(output+slen, "near "); -+ slen += snprintf(output+slen, outbufsize-slen, "near "); - } else if ( (*p)->opd[i] & SHORT ) { -- slen += sprintf(output+slen, "short "); -+ slen += snprintf(output+slen, outbufsize-slen, "short "); - } -- slen += sprintf(output+slen, "0x%lx", ins.oprs[i].offset); -+ slen += snprintf(output+slen, outbufsize-slen, "0x%lx", ins.oprs[i].offset); - } else if ( !(MEM_OFFS & ~(*p)->opd[i]) ) { -- slen += sprintf(output+slen, "[%s%s%s0x%lx]", -+ slen += snprintf(output+slen, outbufsize-slen, "[%s%s%s0x%lx]", - (segover ? segover : ""), - (segover ? ":" : ""), - (ins.oprs[i].addr_size == 32 ? "dword " : -@@ -669,30 +669,30 @@ - } else if ( !(REGMEM & ~(*p)->opd[i]) ) { - int started = FALSE; - if ( (*p)->opd[i] & BITS8 ) -- slen += sprintf(output+slen, "byte "); -+ slen += snprintf(output+slen, outbufsize-slen, "byte "); - if ( (*p)->opd[i] & BITS16 ) -- slen += sprintf(output+slen, "word "); -+ slen += snprintf(output+slen, outbufsize-slen, "word "); - if ( (*p)->opd[i] & BITS32 ) -- slen += sprintf(output+slen, "dword "); -+ slen += snprintf(output+slen, outbufsize-slen, "dword "); - if ( (*p)->opd[i] & BITS64 ) -- slen += sprintf(output+slen, "qword "); -+ slen += snprintf(output+slen, outbufsize-slen, "qword "); - if ( (*p)->opd[i] & BITS80 ) -- slen += sprintf(output+slen, "tword "); -+ slen += snprintf(output+slen, outbufsize-slen, "tword "); - if ( (*p)->opd[i] & FAR ) -- slen += sprintf(output+slen, "far "); -+ slen += snprintf(output+slen, outbufsize-slen, "far "); - if ( (*p)->opd[i] & NEAR ) -- slen += sprintf(output+slen, "near "); -+ slen += snprintf(output+slen, outbufsize-slen, "near "); - output[slen++] = '['; - if (ins.oprs[i].addr_size) -- slen += sprintf(output+slen, "%s", -+ slen += snprintf(output+slen, outbufsize-slen, "%s", - (ins.oprs[i].addr_size == 32 ? "dword " : - ins.oprs[i].addr_size == 16 ? "word " : "")); - if (segover) { -- slen += sprintf(output+slen, "%s:", segover); -+ slen += snprintf(output+slen, outbufsize-slen, "%s:", segover); - segover = NULL; - } - if (ins.oprs[i].basereg != -1) { -- slen += sprintf(output+slen, "%s", -+ slen += snprintf(output+slen, outbufsize-slen, "%s", - reg_names[(ins.oprs[i].basereg - - EXPR_REG_START)]); - started = TRUE; -@@ -700,11 +700,11 @@ - if (ins.oprs[i].indexreg != -1) { - if (started) - output[slen++] = '+'; -- slen += sprintf(output+slen, "%s", -+ slen += snprintf(output+slen, outbufsize-slen, "%s", - reg_names[(ins.oprs[i].indexreg - - EXPR_REG_START)]); - if (ins.oprs[i].scale > 1) -- slen += sprintf(output+slen, "*%d", ins.oprs[i].scale); -+ slen += snprintf(output+slen, outbufsize-slen, "*%d", ins.oprs[i].scale); - started = TRUE; - } - if (ins.oprs[i].segment & SEG_DISP8) { -@@ -713,20 +713,20 @@ - ins.oprs[i].offset = - (signed char) ins.oprs[i].offset; - sign = '-'; - } -- slen += sprintf(output+slen, "%c0x%lx", sign, -+ slen += snprintf(output+slen, outbufsize-slen, "%c0x%lx", sign, - ins.oprs[i].offset); - } else if (ins.oprs[i].segment & SEG_DISP16) { - if (started) - output[slen++] = '+'; -- slen += sprintf(output+slen, "0x%lx", ins.oprs[i].offset); -+ slen += snprintf(output+slen, outbufsize-slen, "0x%lx", ins.oprs[i].offset); - } else if (ins.oprs[i].segment & SEG_DISP32) { - if (started) - output[slen++] = '+'; -- slen += sprintf(output+slen, "0x%lx", ins.oprs[i].offset); -+ slen += snprintf(output+slen, outbufsize-slen, "0x%lx", ins.oprs[i].offset); - } - output[slen++] = ']'; - } else { -- slen += sprintf(output+slen, "<operand%d>", i); -+ slen += snprintf(output+slen, outbufsize-slen, "<operand%d>", i); - } - } - output[slen] = '\0'; -@@ -741,8 +741,8 @@ - return length; - } - --long eatbyte (unsigned char *data, char *output) -+long eatbyte (unsigned char *data, char *output, int outbufsize) - { -- sprintf(output, "db 0x%02X", *data); -+ snprintf(output, outbufsize, "db 0x%02X", *data); - return 1; - } ---- ndisasm.c.orig 2002-04-30 17:04:18.000000000 -0400 -+++ ndisasm.c 2004-12-15 13:27:21.000000000 -0500 -@@ -243,10 +243,10 @@ - nextsync = next_sync (offset, &synclen); - } - while (p > q && (p - q >= INSN_MAX || lenread == 0)) { -- lendis = disasm (q, outbuf, bits, offset, autosync, prefer); -+ lendis = disasm (q, outbuf, sizeof(outbuf), bits, offset, autosync, prefer); - if (!lendis || lendis > (p - q) || - (unsigned long)lendis > nextsync-offset) -- lendis = eatbyte (q, outbuf); -+ lendis = eatbyte (q, outbuf, sizeof(outbuf)); - output_ins (offset, q, lendis, outbuf); - q += lendis; - offset += lendis; ---- listing.c.orig 2002-09-11 22:23:54.000000000 -0400 -+++ listing.c 2004-12-15 13:05:05.000000000 -0500 -@@ -192,7 +192,7 @@ - else if (typ == OUT_RESERVE) - { - char q[20]; -- sprintf(q, "<res %08lX>", size); -+ snprintf(q, sizeof(q), "<res %08lX>", size); - list_out (offset, q); - } - } ---- labels.c.orig 2003-09-07 20:30:40.000000000 -0400 -+++ labels.c 2004-12-15 13:03:20.000000000 -0500 -@@ -221,7 +221,7 @@ - slen += strlen(lpostfix); - slen++; /* room for that null char */ - xsymbol = nasm_malloc(slen); -- sprintf(xsymbol,"%s%s%s",lprefix,lptr->defn.label,lpostfix); -+ snprintf(xsymbol,slen,"%s%s%s",lprefix,lptr->defn.label,lpostfix); - - ofmt->symdef (xsymbol, segment, offset, exi, - special ? special : lptr->defn.special); -@@ -286,7 +286,7 @@ - slen += strlen(lpostfix); - slen++; /* room for that null char */ - xsymbol = nasm_malloc(slen); -- sprintf(xsymbol,"%s%s%s",lprefix,lptr->defn.label,lpostfix); -+ snprintf(xsymbol,slen,"%s%s%s",lprefix,lptr->defn.label,lpostfix); - - ofmt->symdef (xsymbol, segment, offset, exi, - special ? special : lptr->defn.special); ---- nasm.c.orig 2003-09-10 19:34:23.000000000 -0400 -+++ nasm.c 2004-12-15 12:10:25.000000000 -0500 -@@ -185,7 +185,7 @@ - /* define some macros dependent of command-line */ - { - char temp [64]; -- sprintf (temp, "__OUTPUT_FORMAT__=%s\n", ofmt->shortname); -+ snprintf (temp, sizeof(temp), "__OUTPUT_FORMAT__=%s\n", ofmt->shortname); - pp_pre_define (temp); - } - ---- disasm.h.orig 2002-04-30 16:56:44.000000000 -0400 -+++ disasm.h 2004-12-15 13:26:37.000000000 -0500 -@@ -11,8 +11,8 @@ - - #define INSN_MAX 32 /* one instruction can't be longer than this */ - --long disasm (unsigned char *data, char *output, int segsize, long offset, -- int autosync, unsigned long prefer); --long eatbyte (unsigned char *data, char *output); -+long disasm (unsigned char *data, char *output, int outbufsize, int segsize, -+ long offset, int autosync, unsigned long prefer); -+long eatbyte (unsigned char *data, char *output, int outbufsize); - - #endif diff --git a/dev-lang/nasm/files/digest-nasm-0.98.38-r1 b/dev-lang/nasm/files/digest-nasm-0.98.38-r1 deleted file mode 100644 index c0a7c12c16be..000000000000 --- a/dev-lang/nasm/files/digest-nasm-0.98.38-r1 +++ /dev/null @@ -1 +0,0 @@ -MD5 9f682490c132b070d54e395cb6ee145e nasm-0.98.38.tar.bz2 548618 diff --git a/dev-lang/nasm/nasm-0.98.38-r1.ebuild b/dev-lang/nasm/nasm-0.98.38-r1.ebuild deleted file mode 100644 index 9e31c24b41f0..000000000000 --- a/dev-lang/nasm/nasm-0.98.38-r1.ebuild +++ /dev/null @@ -1,58 +0,0 @@ -# Copyright 1999-2005 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/nasm/nasm-0.98.38-r1.ebuild,v 1.4 2005/05/09 21:07:29 mr_bones_ Exp $ - -inherit eutils - -DESCRIPTION="groovy little assembler" -HOMEPAGE="http://nasm.sourceforge.net/" -SRC_URI="mirror://sourceforge/nasm/${P}.tar.bz2" - -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="-* amd64 x86" -IUSE="doc build" - -DEPEND="!build? ( dev-lang/perl ) - doc? ( virtual/ghostscript - sys-apps/texinfo ) - sys-devel/gcc" -RDEPEND="virtual/libc" - -src_unpack() { - unpack ${A} - cd "${S}" - epatch "${FILESDIR}/${PV}-overflow.patch" -} - -src_compile() { - ./configure --prefix=/usr || die - - if use build; then - emake nasm || die "emake failed" - else - emake all || die "emake failed" - emake rdf || die "emake failed" - if use doc; then - emake doc || die "emake failed" - fi - fi - -} - -src_install() { - if use build; then - dobin nasm || die "dobin failed" - else - dobin nasm ndisasm rdoff/{ldrdf,rdf2bin,rdf2ihx,rdfdump,rdflib,rdx} \ - || die "dobin failed" - dosym /usr/bin/rdf2bin /usr/bin/rdf2com - doman nasm.1 ndisasm.1 - dodoc AUTHORS CHANGES ChangeLog INSTALL README TODO - if use doc; then - doinfo doc/info/* - dohtml doc/html/* - dodoc doc/nasmdoc.* - fi - fi -} |