pkgsrc/devel/acme/Makefile

39 lines
1.1 KiB
Makefile
Raw Normal View History

2012-12-12 11:44:06 +01:00
# $NetBSD: Makefile,v 1.14 2012/12/12 10:44:07 wiz Exp $
#
Update to 0.91, provided by Dennis Lindroos in PR 44771. ---------------------------------------------------------------------- Section: New in release 0.91 ---------------------------------------------------------------------- Added anonymous labels (- + -- ++ --- +++ etc.). Every other assembler seems to support them, so I added them to ACME as well... :) New POs: "!warn MESSAGE", "!error MESSAGE", "!serious MESSAGE" New CLI option: "--maxdepth NUMBER" sets maximum recursion depth for macro calls and the "!source" pseudo opcode. ACME now gives a warning when assembling JMP($xxff) on 6502/6510 because that instruction is broken on those CPUs. After giving the error "Target out of range", the error "Number out of range" is now suppressed. Corrected code example in QuickRef.txt (why didn't anyone tell me? :)) Added additional example source code. ---------------------------------------------------------------------- Section: New in release 0.90 ---------------------------------------------------------------------- Arithmetic shift right now has some watchdog code and should work regardless of compiler. Corrected some typos in error messages and docs. New CLI option: "--cpu CPU_TYPE" The output file format chosen with "--format FORMAT" is now used as default when "!to" is used without format keyword. Again: Tidier code. ---------------------------------------------------------------------- Section: New in release 0.89 ---------------------------------------------------------------------- Support for more undocumented ("illegal") opcodes: anc, arr, asr, sbx, dop, top, jam. See Illegals.txt for more info. Change in shift operators: Logical shift right (">>" or "LSR") has on most platforms actually been an arithmetic shift right all the time! Therefore, ">>" now *officially* performs an arithmetic shift right (can also be written as "ASR"), while ">>>" has been added to perform a logical shift right (can also be written as "LSR"). Note: This is about ACME's maths parser and has nothing to do with the 6502 mnemonics "asl" and "lsr". Finally added a "-o" command line option to set the output file! See QuickRef.txt for info on the other new CLI options (--format, --labeldump, --maxerrors, --setpc, --initmem, --version). Fixed bug: "!align" could be used while program counter undefined. Fixed bug: Numbers before mnemonics are no longer skipped (or rather, implicit label definitions are no longer accepted if the label name starts with a digit). Change: Much better algorithm to compute to-the-power-of (read: it's no longer braindead). Some more internal tidying. ---------------------------------------------------------------------- Section: New in release 0.88 ---------------------------------------------------------------------- Fixed architecture-dependent bug introduced in release 0.87. Fixed bug: Unknown !cpu keywords could cause crashes. Fixed bug in !ct "filename" nesting. ---------------------------------------------------------------------- Section: New in release 0.87 ---------------------------------------------------------------------- Support for some undocumented ("illegal") opcodes: slo, rla, sre, rra, sax, lax, dcp, isc. To use these, choose the 6510 cpu. Two error messages gone: "Sorry, feature not yet implemented." and "Chosen CPU does not support this command and/or addressing mode." Explanation of new error message ("There's more than one character.") added to docs. ---------------------------------------------------------------------- Section: New in release 0.86 ---------------------------------------------------------------------- The "!convtab" pseudo opcode can now be given the file name of a conversion table. The file must hold exactly 256 bytes. Improved docs a bit (more and better examples, more info on verbosity CLI switch). If no "!to" pseudo opcode has been found, ACME will tell you so.
2012-12-12 11:12:16 +01:00
DISTNAME= acme091src
PKGNAME= acme-0.91
CATEGORIES= devel
2004-04-25 14:11:39 +02:00
MASTER_SITES= http://www.esw-heim.tu-clausthal.de/~marco/smorbrod/acme/current/
DISTFILES= ${DISTNAME}${EXTRACT_SUFX} ${LIBDIST}
Update to 0.91, provided by Dennis Lindroos in PR 44771. ---------------------------------------------------------------------- Section: New in release 0.91 ---------------------------------------------------------------------- Added anonymous labels (- + -- ++ --- +++ etc.). Every other assembler seems to support them, so I added them to ACME as well... :) New POs: "!warn MESSAGE", "!error MESSAGE", "!serious MESSAGE" New CLI option: "--maxdepth NUMBER" sets maximum recursion depth for macro calls and the "!source" pseudo opcode. ACME now gives a warning when assembling JMP($xxff) on 6502/6510 because that instruction is broken on those CPUs. After giving the error "Target out of range", the error "Number out of range" is now suppressed. Corrected code example in QuickRef.txt (why didn't anyone tell me? :)) Added additional example source code. ---------------------------------------------------------------------- Section: New in release 0.90 ---------------------------------------------------------------------- Arithmetic shift right now has some watchdog code and should work regardless of compiler. Corrected some typos in error messages and docs. New CLI option: "--cpu CPU_TYPE" The output file format chosen with "--format FORMAT" is now used as default when "!to" is used without format keyword. Again: Tidier code. ---------------------------------------------------------------------- Section: New in release 0.89 ---------------------------------------------------------------------- Support for more undocumented ("illegal") opcodes: anc, arr, asr, sbx, dop, top, jam. See Illegals.txt for more info. Change in shift operators: Logical shift right (">>" or "LSR") has on most platforms actually been an arithmetic shift right all the time! Therefore, ">>" now *officially* performs an arithmetic shift right (can also be written as "ASR"), while ">>>" has been added to perform a logical shift right (can also be written as "LSR"). Note: This is about ACME's maths parser and has nothing to do with the 6502 mnemonics "asl" and "lsr". Finally added a "-o" command line option to set the output file! See QuickRef.txt for info on the other new CLI options (--format, --labeldump, --maxerrors, --setpc, --initmem, --version). Fixed bug: "!align" could be used while program counter undefined. Fixed bug: Numbers before mnemonics are no longer skipped (or rather, implicit label definitions are no longer accepted if the label name starts with a digit). Change: Much better algorithm to compute to-the-power-of (read: it's no longer braindead). Some more internal tidying. ---------------------------------------------------------------------- Section: New in release 0.88 ---------------------------------------------------------------------- Fixed architecture-dependent bug introduced in release 0.87. Fixed bug: Unknown !cpu keywords could cause crashes. Fixed bug in !ct "filename" nesting. ---------------------------------------------------------------------- Section: New in release 0.87 ---------------------------------------------------------------------- Support for some undocumented ("illegal") opcodes: slo, rla, sre, rra, sax, lax, dcp, isc. To use these, choose the 6510 cpu. Two error messages gone: "Sorry, feature not yet implemented." and "Chosen CPU does not support this command and/or addressing mode." Explanation of new error message ("There's more than one character.") added to docs. ---------------------------------------------------------------------- Section: New in release 0.86 ---------------------------------------------------------------------- The "!convtab" pseudo opcode can now be given the file name of a conversion table. The file must hold exactly 256 bytes. Improved docs a bit (more and better examples, more info on verbosity CLI switch). If no "!to" pseudo opcode has been found, ACME will tell you so.
2012-12-12 11:12:16 +01:00
EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX}
SITES.${LIBDIST}= http://www.esw-heim.tu-clausthal.de/~marco/smorbrod/acme/
2012-12-12 11:44:06 +01:00
MAINTAINER= pkgsrc-users@NetBSD.org
Update to 0.91, provided by Dennis Lindroos in PR 44771. ---------------------------------------------------------------------- Section: New in release 0.91 ---------------------------------------------------------------------- Added anonymous labels (- + -- ++ --- +++ etc.). Every other assembler seems to support them, so I added them to ACME as well... :) New POs: "!warn MESSAGE", "!error MESSAGE", "!serious MESSAGE" New CLI option: "--maxdepth NUMBER" sets maximum recursion depth for macro calls and the "!source" pseudo opcode. ACME now gives a warning when assembling JMP($xxff) on 6502/6510 because that instruction is broken on those CPUs. After giving the error "Target out of range", the error "Number out of range" is now suppressed. Corrected code example in QuickRef.txt (why didn't anyone tell me? :)) Added additional example source code. ---------------------------------------------------------------------- Section: New in release 0.90 ---------------------------------------------------------------------- Arithmetic shift right now has some watchdog code and should work regardless of compiler. Corrected some typos in error messages and docs. New CLI option: "--cpu CPU_TYPE" The output file format chosen with "--format FORMAT" is now used as default when "!to" is used without format keyword. Again: Tidier code. ---------------------------------------------------------------------- Section: New in release 0.89 ---------------------------------------------------------------------- Support for more undocumented ("illegal") opcodes: anc, arr, asr, sbx, dop, top, jam. See Illegals.txt for more info. Change in shift operators: Logical shift right (">>" or "LSR") has on most platforms actually been an arithmetic shift right all the time! Therefore, ">>" now *officially* performs an arithmetic shift right (can also be written as "ASR"), while ">>>" has been added to perform a logical shift right (can also be written as "LSR"). Note: This is about ACME's maths parser and has nothing to do with the 6502 mnemonics "asl" and "lsr". Finally added a "-o" command line option to set the output file! See QuickRef.txt for info on the other new CLI options (--format, --labeldump, --maxerrors, --setpc, --initmem, --version). Fixed bug: "!align" could be used while program counter undefined. Fixed bug: Numbers before mnemonics are no longer skipped (or rather, implicit label definitions are no longer accepted if the label name starts with a digit). Change: Much better algorithm to compute to-the-power-of (read: it's no longer braindead). Some more internal tidying. ---------------------------------------------------------------------- Section: New in release 0.88 ---------------------------------------------------------------------- Fixed architecture-dependent bug introduced in release 0.87. Fixed bug: Unknown !cpu keywords could cause crashes. Fixed bug in !ct "filename" nesting. ---------------------------------------------------------------------- Section: New in release 0.87 ---------------------------------------------------------------------- Support for some undocumented ("illegal") opcodes: slo, rla, sre, rra, sax, lax, dcp, isc. To use these, choose the 6510 cpu. Two error messages gone: "Sorry, feature not yet implemented." and "Chosen CPU does not support this command and/or addressing mode." Explanation of new error message ("There's more than one character.") added to docs. ---------------------------------------------------------------------- Section: New in release 0.86 ---------------------------------------------------------------------- The "!convtab" pseudo opcode can now be given the file name of a conversion table. The file must hold exactly 256 bytes. Improved docs a bit (more and better examples, more info on verbosity CLI switch). If no "!to" pseudo opcode has been found, ACME will tell you so.
2012-12-12 11:12:16 +01:00
HOMEPAGE= http://www.esw-heim.tu-clausthal.de/~marco/smorbrod/acme
COMMENT= Cross assembler for 6502, 65c02, and 65816
Update to 0.91, provided by Dennis Lindroos in PR 44771. ---------------------------------------------------------------------- Section: New in release 0.91 ---------------------------------------------------------------------- Added anonymous labels (- + -- ++ --- +++ etc.). Every other assembler seems to support them, so I added them to ACME as well... :) New POs: "!warn MESSAGE", "!error MESSAGE", "!serious MESSAGE" New CLI option: "--maxdepth NUMBER" sets maximum recursion depth for macro calls and the "!source" pseudo opcode. ACME now gives a warning when assembling JMP($xxff) on 6502/6510 because that instruction is broken on those CPUs. After giving the error "Target out of range", the error "Number out of range" is now suppressed. Corrected code example in QuickRef.txt (why didn't anyone tell me? :)) Added additional example source code. ---------------------------------------------------------------------- Section: New in release 0.90 ---------------------------------------------------------------------- Arithmetic shift right now has some watchdog code and should work regardless of compiler. Corrected some typos in error messages and docs. New CLI option: "--cpu CPU_TYPE" The output file format chosen with "--format FORMAT" is now used as default when "!to" is used without format keyword. Again: Tidier code. ---------------------------------------------------------------------- Section: New in release 0.89 ---------------------------------------------------------------------- Support for more undocumented ("illegal") opcodes: anc, arr, asr, sbx, dop, top, jam. See Illegals.txt for more info. Change in shift operators: Logical shift right (">>" or "LSR") has on most platforms actually been an arithmetic shift right all the time! Therefore, ">>" now *officially* performs an arithmetic shift right (can also be written as "ASR"), while ">>>" has been added to perform a logical shift right (can also be written as "LSR"). Note: This is about ACME's maths parser and has nothing to do with the 6502 mnemonics "asl" and "lsr". Finally added a "-o" command line option to set the output file! See QuickRef.txt for info on the other new CLI options (--format, --labeldump, --maxerrors, --setpc, --initmem, --version). Fixed bug: "!align" could be used while program counter undefined. Fixed bug: Numbers before mnemonics are no longer skipped (or rather, implicit label definitions are no longer accepted if the label name starts with a digit). Change: Much better algorithm to compute to-the-power-of (read: it's no longer braindead). Some more internal tidying. ---------------------------------------------------------------------- Section: New in release 0.88 ---------------------------------------------------------------------- Fixed architecture-dependent bug introduced in release 0.87. Fixed bug: Unknown !cpu keywords could cause crashes. Fixed bug in !ct "filename" nesting. ---------------------------------------------------------------------- Section: New in release 0.87 ---------------------------------------------------------------------- Support for some undocumented ("illegal") opcodes: slo, rla, sre, rra, sax, lax, dcp, isc. To use these, choose the 6510 cpu. Two error messages gone: "Sorry, feature not yet implemented." and "Chosen CPU does not support this command and/or addressing mode." Explanation of new error message ("There's more than one character.") added to docs. ---------------------------------------------------------------------- Section: New in release 0.86 ---------------------------------------------------------------------- The "!convtab" pseudo opcode can now be given the file name of a conversion table. The file must hold exactly 256 bytes. Improved docs a bit (more and better examples, more info on verbosity CLI switch). If no "!to" pseudo opcode has been found, ACME will tell you so.
2012-12-12 11:12:16 +01:00
LICENSE= gnu-gpl-v2
USE_TOOLS+= pax unzip
Update to 0.91, provided by Dennis Lindroos in PR 44771. ---------------------------------------------------------------------- Section: New in release 0.91 ---------------------------------------------------------------------- Added anonymous labels (- + -- ++ --- +++ etc.). Every other assembler seems to support them, so I added them to ACME as well... :) New POs: "!warn MESSAGE", "!error MESSAGE", "!serious MESSAGE" New CLI option: "--maxdepth NUMBER" sets maximum recursion depth for macro calls and the "!source" pseudo opcode. ACME now gives a warning when assembling JMP($xxff) on 6502/6510 because that instruction is broken on those CPUs. After giving the error "Target out of range", the error "Number out of range" is now suppressed. Corrected code example in QuickRef.txt (why didn't anyone tell me? :)) Added additional example source code. ---------------------------------------------------------------------- Section: New in release 0.90 ---------------------------------------------------------------------- Arithmetic shift right now has some watchdog code and should work regardless of compiler. Corrected some typos in error messages and docs. New CLI option: "--cpu CPU_TYPE" The output file format chosen with "--format FORMAT" is now used as default when "!to" is used without format keyword. Again: Tidier code. ---------------------------------------------------------------------- Section: New in release 0.89 ---------------------------------------------------------------------- Support for more undocumented ("illegal") opcodes: anc, arr, asr, sbx, dop, top, jam. See Illegals.txt for more info. Change in shift operators: Logical shift right (">>" or "LSR") has on most platforms actually been an arithmetic shift right all the time! Therefore, ">>" now *officially* performs an arithmetic shift right (can also be written as "ASR"), while ">>>" has been added to perform a logical shift right (can also be written as "LSR"). Note: This is about ACME's maths parser and has nothing to do with the 6502 mnemonics "asl" and "lsr". Finally added a "-o" command line option to set the output file! See QuickRef.txt for info on the other new CLI options (--format, --labeldump, --maxerrors, --setpc, --initmem, --version). Fixed bug: "!align" could be used while program counter undefined. Fixed bug: Numbers before mnemonics are no longer skipped (or rather, implicit label definitions are no longer accepted if the label name starts with a digit). Change: Much better algorithm to compute to-the-power-of (read: it's no longer braindead). Some more internal tidying. ---------------------------------------------------------------------- Section: New in release 0.88 ---------------------------------------------------------------------- Fixed architecture-dependent bug introduced in release 0.87. Fixed bug: Unknown !cpu keywords could cause crashes. Fixed bug in !ct "filename" nesting. ---------------------------------------------------------------------- Section: New in release 0.87 ---------------------------------------------------------------------- Support for some undocumented ("illegal") opcodes: slo, rla, sre, rra, sax, lax, dcp, isc. To use these, choose the 6510 cpu. Two error messages gone: "Sorry, feature not yet implemented." and "Chosen CPU does not support this command and/or addressing mode." Explanation of new error message ("There's more than one character.") added to docs. ---------------------------------------------------------------------- Section: New in release 0.86 ---------------------------------------------------------------------- The "!convtab" pseudo opcode can now be given the file name of a conversion table. The file must hold exactly 256 bytes. Improved docs a bit (more and better examples, more info on verbosity CLI switch). If no "!to" pseudo opcode has been found, ACME will tell you so.
2012-12-12 11:12:16 +01:00
LIBDIST= ACME_Lib2.zip
WRKSRC= ${WRKDIR}/acme091
BUILD_DIRS= src
ACME_LIB= ${PREFIX}/share/acme
MAKE_ENV+= ACME_LIB=${ACME_LIB:Q}
INSTALLATION_DIRS= bin
Update to 0.91, provided by Dennis Lindroos in PR 44771. ---------------------------------------------------------------------- Section: New in release 0.91 ---------------------------------------------------------------------- Added anonymous labels (- + -- ++ --- +++ etc.). Every other assembler seems to support them, so I added them to ACME as well... :) New POs: "!warn MESSAGE", "!error MESSAGE", "!serious MESSAGE" New CLI option: "--maxdepth NUMBER" sets maximum recursion depth for macro calls and the "!source" pseudo opcode. ACME now gives a warning when assembling JMP($xxff) on 6502/6510 because that instruction is broken on those CPUs. After giving the error "Target out of range", the error "Number out of range" is now suppressed. Corrected code example in QuickRef.txt (why didn't anyone tell me? :)) Added additional example source code. ---------------------------------------------------------------------- Section: New in release 0.90 ---------------------------------------------------------------------- Arithmetic shift right now has some watchdog code and should work regardless of compiler. Corrected some typos in error messages and docs. New CLI option: "--cpu CPU_TYPE" The output file format chosen with "--format FORMAT" is now used as default when "!to" is used without format keyword. Again: Tidier code. ---------------------------------------------------------------------- Section: New in release 0.89 ---------------------------------------------------------------------- Support for more undocumented ("illegal") opcodes: anc, arr, asr, sbx, dop, top, jam. See Illegals.txt for more info. Change in shift operators: Logical shift right (">>" or "LSR") has on most platforms actually been an arithmetic shift right all the time! Therefore, ">>" now *officially* performs an arithmetic shift right (can also be written as "ASR"), while ">>>" has been added to perform a logical shift right (can also be written as "LSR"). Note: This is about ACME's maths parser and has nothing to do with the 6502 mnemonics "asl" and "lsr". Finally added a "-o" command line option to set the output file! See QuickRef.txt for info on the other new CLI options (--format, --labeldump, --maxerrors, --setpc, --initmem, --version). Fixed bug: "!align" could be used while program counter undefined. Fixed bug: Numbers before mnemonics are no longer skipped (or rather, implicit label definitions are no longer accepted if the label name starts with a digit). Change: Much better algorithm to compute to-the-power-of (read: it's no longer braindead). Some more internal tidying. ---------------------------------------------------------------------- Section: New in release 0.88 ---------------------------------------------------------------------- Fixed architecture-dependent bug introduced in release 0.87. Fixed bug: Unknown !cpu keywords could cause crashes. Fixed bug in !ct "filename" nesting. ---------------------------------------------------------------------- Section: New in release 0.87 ---------------------------------------------------------------------- Support for some undocumented ("illegal") opcodes: slo, rla, sre, rra, sax, lax, dcp, isc. To use these, choose the 6510 cpu. Two error messages gone: "Sorry, feature not yet implemented." and "Chosen CPU does not support this command and/or addressing mode." Explanation of new error message ("There's more than one character.") added to docs. ---------------------------------------------------------------------- Section: New in release 0.86 ---------------------------------------------------------------------- The "!convtab" pseudo opcode can now be given the file name of a conversion table. The file must hold exactly 256 bytes. Improved docs a bit (more and better examples, more info on verbosity CLI switch). If no "!to" pseudo opcode has been found, ACME will tell you so.
2012-12-12 11:12:16 +01:00
INSTALLATION_DIRS+= share/acme
INSTALLATION_DIRS+= share/doc/acme
post-extract:
cd ${WRKDIR} && unzip -qa ${_DISTDIR}/${LIBDIST}
do-install:
Update to 0.91, provided by Dennis Lindroos in PR 44771. ---------------------------------------------------------------------- Section: New in release 0.91 ---------------------------------------------------------------------- Added anonymous labels (- + -- ++ --- +++ etc.). Every other assembler seems to support them, so I added them to ACME as well... :) New POs: "!warn MESSAGE", "!error MESSAGE", "!serious MESSAGE" New CLI option: "--maxdepth NUMBER" sets maximum recursion depth for macro calls and the "!source" pseudo opcode. ACME now gives a warning when assembling JMP($xxff) on 6502/6510 because that instruction is broken on those CPUs. After giving the error "Target out of range", the error "Number out of range" is now suppressed. Corrected code example in QuickRef.txt (why didn't anyone tell me? :)) Added additional example source code. ---------------------------------------------------------------------- Section: New in release 0.90 ---------------------------------------------------------------------- Arithmetic shift right now has some watchdog code and should work regardless of compiler. Corrected some typos in error messages and docs. New CLI option: "--cpu CPU_TYPE" The output file format chosen with "--format FORMAT" is now used as default when "!to" is used without format keyword. Again: Tidier code. ---------------------------------------------------------------------- Section: New in release 0.89 ---------------------------------------------------------------------- Support for more undocumented ("illegal") opcodes: anc, arr, asr, sbx, dop, top, jam. See Illegals.txt for more info. Change in shift operators: Logical shift right (">>" or "LSR") has on most platforms actually been an arithmetic shift right all the time! Therefore, ">>" now *officially* performs an arithmetic shift right (can also be written as "ASR"), while ">>>" has been added to perform a logical shift right (can also be written as "LSR"). Note: This is about ACME's maths parser and has nothing to do with the 6502 mnemonics "asl" and "lsr". Finally added a "-o" command line option to set the output file! See QuickRef.txt for info on the other new CLI options (--format, --labeldump, --maxerrors, --setpc, --initmem, --version). Fixed bug: "!align" could be used while program counter undefined. Fixed bug: Numbers before mnemonics are no longer skipped (or rather, implicit label definitions are no longer accepted if the label name starts with a digit). Change: Much better algorithm to compute to-the-power-of (read: it's no longer braindead). Some more internal tidying. ---------------------------------------------------------------------- Section: New in release 0.88 ---------------------------------------------------------------------- Fixed architecture-dependent bug introduced in release 0.87. Fixed bug: Unknown !cpu keywords could cause crashes. Fixed bug in !ct "filename" nesting. ---------------------------------------------------------------------- Section: New in release 0.87 ---------------------------------------------------------------------- Support for some undocumented ("illegal") opcodes: slo, rla, sre, rra, sax, lax, dcp, isc. To use these, choose the 6510 cpu. Two error messages gone: "Sorry, feature not yet implemented." and "Chosen CPU does not support this command and/or addressing mode." Explanation of new error message ("There's more than one character.") added to docs. ---------------------------------------------------------------------- Section: New in release 0.86 ---------------------------------------------------------------------- The "!convtab" pseudo opcode can now be given the file name of a conversion table. The file must hold exactly 256 bytes. Improved docs a bit (more and better examples, more info on verbosity CLI switch). If no "!to" pseudo opcode has been found, ACME will tell you so.
2012-12-12 11:12:16 +01:00
${INSTALL_PROGRAM} ${WRKSRC}/src/acme ${DESTDIR}${PREFIX}/bin/acme
${INSTALL_DATA} ${WRKSRC}/docs/* ${DESTDIR}${PREFIX}/share/doc/acme
cd ${WRKDIR}/ACME_Lib && pax -rw . ${DESTDIR}${ACME_LIB}
.include "../../mk/bsd.pkg.mk"