descr 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. # $Source$
  2. # $State$
  3. # $Revision$
  4. var w=4
  5. var wa=4
  6. var p={w}
  7. var pa={w}
  8. var s=2
  9. var sa={s}
  10. var l={w}
  11. var la={w}
  12. var f={w}
  13. var fa={w}
  14. var d=8
  15. var da={d}
  16. var x=8
  17. var xa={x}
  18. var ARCH=i386
  19. var PLATFORM=linux386
  20. var PLATFORMDIR={EM}/share/ack/{PLATFORM}
  21. var CPP_F=-D__unix
  22. var ALIGN=-a0:4 -a1:4 -a2:4 -a3:4 -b0:0x08048054
  23. var C_LIB={PLATFORMDIR}/libc-ansi.a
  24. # bitfields reversed for compatibility with (g)cc.
  25. var CC_ALIGN=-Vr
  26. var OLD_C_LIB={C_LIB}
  27. var MACHOPT_F=-m10
  28. var EGO_PLAT_FLAGS=-M{EM}/share/ack/ego/{ARCH}.descr
  29. # Override the setting in fe so that files compiled for linux386 can see
  30. # the platform-specific headers.
  31. var C_INCLUDES=-I{PLATFORMDIR}/include -I{EM}/share/ack/include/ansi
  32. name be
  33. from .m.g
  34. to .s
  35. program {EM}/lib/ack/{PLATFORM}/ncg
  36. mapflag -gdb GF=-gdb
  37. args {GF?} <
  38. stdout
  39. need .e
  40. end
  41. name as
  42. from .s.so
  43. to .o
  44. program {EM}/lib/ack/{PLATFORM}/as
  45. args - -o > <
  46. prep cond
  47. end
  48. name led
  49. from .o.a
  50. to .out
  51. program {EM}/lib/ack/em_led
  52. mapflag -l* LNAME={PLATFORMDIR}/lib*
  53. mapflag -fp FLOATS={EM}/{LIB}fp
  54. args {ALIGN} {SEPID?} \
  55. (.e:{HEAD}={PLATFORMDIR}/boot.o) \
  56. ({RTS}:.ocm.b={PLATFORMDIR}/c-ansi.o) \
  57. ({RTS}:.c={PLATFORMDIR}/c-ansi.o) \
  58. ({RTS}:.mod={PLATFORMDIR}/modula2.o) \
  59. ({RTS}:.p={PLATFORMDIR}/pascal.o) \
  60. -o > < \
  61. (.p:{TAIL}={PLATFORMDIR}/libpascal.a) \
  62. (.b:{TAIL}={PLATFORMDIR}/libbasic.a) \
  63. (.mod:{TAIL}={PLATFORMDIR}/libmodula2.a) \
  64. (.ocm:{TAIL}={PLATFORMDIR}/liboccam.a) \
  65. (.ocm.b.mod.c.p:{TAIL}={PLATFORMDIR}/libc.a) \
  66. {FLOATS?} \
  67. (.e:{TAIL}={PLATFORMDIR}/libem.a \
  68. {PLATFORMDIR}/libsys.a \
  69. {PLATFORMDIR}/libend.a)
  70. linker
  71. end
  72. name cv
  73. from .out
  74. to .exe
  75. program {EM}/bin/aelflod
  76. args < >
  77. outfile linux386.exe
  78. end