descr 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. # $Id$
  2. var w=2
  3. var p=4
  4. var s=2
  5. var l=4
  6. var f=4
  7. var d=8
  8. var NAME=m68k2
  9. var M=m68k2
  10. var MLIB=lib/{M}/tail_
  11. var LIB=lib/pmds/tail_
  12. var RT=lib/pmds/head_
  13. var C_LIB={EM}/{LIB}cc.1s {EM}/{LIB}cc.2g
  14. var OLD_C_LIB={C_LIB}
  15. var CPP_F=-D__unix -D__m68000 -D__m68k
  16. var MACHOPT_F=-ml10
  17. # 407 align is the default
  18. var ALIGN=-a0:4 -a1:4 -a2:4 -a3:4
  19. name be
  20. from .m.g
  21. to .s
  22. program {EM}/lib.bin/{M}/cg
  23. mapflag -gdb GF=-gdb
  24. args {GF?} <
  25. stdout
  26. need .e
  27. end
  28. name asopt
  29. from .s
  30. to .so
  31. program {EM}/lib.bin/{M}/top
  32. args
  33. optimizer
  34. stdin
  35. stdout
  36. end
  37. name as
  38. from .s.so
  39. to .o
  40. program {EM}/lib.bin/{M}/as
  41. args - -o > <
  42. prep cond
  43. end
  44. name led
  45. from .o.a
  46. to .out
  47. program {EM}/lib.bin/em_led
  48. mapflag -l* LNAME={EM}/{LIB}*
  49. mapflag -i ALIGN=-a0:4 -a1:4 -a2:0x8000 -a3:4
  50. mapflag -n ALIGN=-a0:4 -a1:4 -a2:0x8000 -a3:4
  51. mapflag -nr ALIGN=-a0:4 -a1:0x8000 -a2:4 -a3:4
  52. mapflag -fp LIBFP={EM}/{MLIB}fp
  53. mapflag -ansi C_LIB={EM}/{LIB}ac
  54. args {ALIGN} (.e:{HEAD}={EM}/{RT}em) \
  55. ({RTS}:.ocm.b={EM}/{RT}cc) \
  56. ({RTS}{ANSI?}:.c={EM}/{RT}cc) \
  57. ({RTS}{ANSI?}:.cansi={EM}/{RT}ac) \
  58. ({RTS}:.p={EM}/{RT}pc) \
  59. ({RTS}:.mod={EM}/{RT}m2) \
  60. -o > < \
  61. (.p:{TAIL}={EM}/{LIB}pc) \
  62. (.b:{TAIL}={EM}/{LIB}bc) \
  63. (.ocm:{TAIL}={EM}/{LIB}ocm) \
  64. (.mod:{TAIL}={EM}/{LIB}m2) \
  65. (.ocm.b:{TAIL}={OLD_C_LIB}) \
  66. (.c:{TAIL}={C_LIB}) \
  67. {LIBFP?} \
  68. (.e:{TAIL}={EM}/{MLIB}em {EM}/{LIB}mon {EM}/lib/{M}/end_em)
  69. linker
  70. end
  71. name cv
  72. from .out
  73. to .cv
  74. program {EM}/lib.bin/pmds/cv
  75. args < >
  76. outfile a.out
  77. end