Makefile.fpc 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. #
  2. # Makefile.fpc for Free Pascal AROS RTL
  3. #
  4. [package]
  5. main=rtl
  6. [target]
  7. loaders=$(LOADERS)
  8. units=$(SYSTEMUNIT) $(HEAPTRCUNIT) $(UUCHARUNIT) $(OBJPASUNIT) $(ISO7185UNIT) $(EXTPASUNIT) buildrtl $(CPALLUNIT) $(CPU_UNITS)
  9. implicitunits=$(SYSINIT_UNITS) athreads $(FPINTRESUNIT) $(DOSUNIT) \
  10. $(CTYPESUNIT) $(STRINGSUNIT) $(RTLCONSTSUNIT) $(SYSCONSTUNIT) $(TYPESUNIT) \
  11. $(FPWIDESTRINGUNIT) $(CHARACTERUNIT) \
  12. $(CHARSETUNIT) $(GETOPTSUNIT) \
  13. $(EXEINFOUNIT) \
  14. $(SYSUTILSUNIT) $(SORTBASEUNIT) $(FGLUNIT) $(CLASSESUNIT) $(MATHUNIT) $(TYPINFOUNIT) \
  15. $(CP_UNITS) $(UNICODEDATAUNIT) \
  16. $(SOFTFPUUNIT) $(SFPUX80UNIT) $(UFLOATX80UNIT) $(SFPU128UNIT) $(UFLOAT128UNIT)
  17. rsts= $(MATHUNIT) $(TYPINFOUNIT) $(RTLCONSTSUNIT) $(CLASSESUNIT) $(SYSCONSTUNIT) $(UNICODEDATAUNIT)
  18. [require]
  19. nortl=y
  20. [install]
  21. fpcpackage=y
  22. buildunit=buildrtl
  23. [default]
  24. target=aros
  25. cpu=i386
  26. [compiler]
  27. includedir=$(INC) $(PROCINC) $(CPU_TARGET) $(AMIINC) i386
  28. sourcedir=$(INC) $(PROCINC) $(CPU_TARGET) $(AMIINC) $(COMMON)
  29. [prerules]
  30. RTL=..
  31. INC=$(RTL)/inc
  32. COMMON=$(RTL)/common
  33. PROCINC=$(RTL)/$(CPU_TARGET)
  34. AMIINC=$(RTL)/amicommon
  35. UNITPREFIX=rtl
  36. LOADERS=prt0
  37. SYSINIT_UNITS=si_prc
  38. # Paths
  39. OBJPASDIR=$(RTL)/objpas
  40. ifeq ($(ARCH),arm)
  41. CPU_UNITS=$(INTRINSICSUNIT)
  42. endif
  43. ifeq ($(ARCH),i386)
  44. CPU_UNITS=$(CPUUNIT) $(MMXUNIT) $(LINEINFOUNIT) $(INTRINSICSUNIT)
  45. endif
  46. ifeq ($(ARCH),x86_64)
  47. CPU_UNITS=$(CPUUNIT) $(INTRINSICSUNIT)
  48. endif
  49. [rules]
  50. .NOTPARALLEL:
  51. # Get the system independent include file names.
  52. # This will set the following variables :
  53. # SYSINCNAMES
  54. include $(INC)/makefile.inc
  55. SYSINCDEPS=$(addprefix $(INC)/,$(SYSINCNAMES))
  56. # Get the processor dependent include file names.
  57. # This will set the following variables :
  58. # CPUINCNAMES
  59. include $(PROCINC)/makefile.cpu
  60. SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
  61. # Put system unit dependencies together.
  62. SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
  63. #
  64. # Loaders
  65. #
  66. prt0$(OEXT) : $(CPU_TARGET)/prt0.as
  67. $(AS) -o $(UNITTARGETDIRPREFIX)prt0$(OEXT) $(CPU_TARGET)/prt0.as
  68. #
  69. # Base Units (System, strings, os-dependent-base-unit)
  70. #
  71. buildrtl$(PPUEXT): buildrtl.pp $(SYSTEMUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) $(HEAPTRCUNIT)$(PPUEXT)
  72. $(COMPILER) -Fi$(OBJPASDIR)/sysutils -Fi$(OBJPASDIR)/classes -Fu$(PROCINC) -Fu$(AMIINC) -I$(INC) -Fu$(INC) -Fu$(OBJPASDIR) buildrtl