1# 2# Makefile.fpc for Free Pascal Atari RTL 3# 4 5[package] 6main=rtl 7 8[target] 9loaders=$(LOADERS) 10units=$(SYSTEMUNIT) fpextres uuchar objpas macpas iso7185 buildrtl cpall 11# extpas 12implicitunits=si_prc sysutils dos \ 13 ctypes strings rtlconsts sysconst math types \ 14 typinfo fgl classes charset character getopts \ 15 cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 \ 16 cp437 cp646 cp737 cp775 cp850 cp852 cp855 cp856 cp857 cp860 cp861 cp862 \ 17 cp863 cp864 cp865 cp866 cp869 cp874 cp3021 cp8859_1 cp8859_2 cp8859_3 cp8859_4 \ 18 cp8859_5 cp8859_6 cp8859_7 cp8859_8 cp8859_9 cp8859_10 cp8859_11 \ 19 cp8859_13 cp8859_14 cp8859_15 cp8859_16 cpkoi8_r cpkoi8_u \ 20 unicodedata unicodenumtable 21 22rsts=math rtlconsts typinfo classes sysconst 23 24[require] 25nortl=y 26 27[install] 28fpcpackage=y 29 30[default] 31fpcdir=../.. 32target=atari 33cpu=m68k 34 35[compiler] 36includedir=$(INC) $(PROCINC) $(CPU_TARGET) 37sourcedir=$(INC) $(PROCINC) $(CPU_TARGET) $(COMMON) 38 39 40[prerules] 41RTL=.. 42INC=$(RTL)/inc 43COMMON=$(RTL)/common 44PROCINC=$(RTL)/$(CPU_TARGET) 45UNITPREFIX=rtl 46LOADERS=prt0 47SYSTEMUNIT=system 48 49# Use new feature from 1.0.5 version 50# that generates release PPU files 51# which will not be recompiled 52ifdef RELEASE 53override FPCOPT+=-Ur 54endif 55 56# Paths 57OBJPASDIR=$(RTL)/objpas 58 59[rules] 60.NOTPARALLEL: 61# Get the system independent include file names. 62# This will set the following variables : 63# SYSINCNAMES 64include $(INC)/makefile.inc 65SYSINCDEPS=$(addprefix $(INC)/,$(SYSINCNAMES)) 66 67# Get the processor dependent include file names. 68# This will set the following variables : 69# CPUINCNAMES 70include $(PROCINC)/makefile.cpu 71SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES)) 72 73# Put system unit dependencies together. 74SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS) 75 76 77# 78# Loaders 79# 80 81prt0$(OEXT) : prt0.as 82 $(AS) -o $(UNITTARGETDIRPREFIX)prt0$(OEXT) prt0.as 83 84# 85# Base Units (System, strings, os-dependent-base-unit) 86# 87 88$(SYSTEMUNIT)$(PPUEXT) : $(SYSTEMUNIT).pp $(SYSDEPS) 89 $(COMPILER) $(FPC_SYSTEM_OPT) -Us -Sg @rtl.cfg $(SYSTEMUNIT).pp $(REDIR) 90 91heaptrc$(PPUEXT) : $(INC)/heaptrc.pp $(SYSTEMUNIT)$(PPUEXT) 92 $(COMPILER) -Sg $(INC)/heaptrc.pp $(REDIR) 93 94uuchar$(PPUEXT): $(SYSTEMUNIT)$(PPUEXT) $(INC)/uuchar.pp heaptrc$(PPUEXT) 95 $(COMPILER) $(INC)/uuchar.pp 96 97objpas$(PPUEXT): $(OBJPASDIR)/objpas.pp $(INC)/except.inc $(SYSTEMUNIT)$(PPUEXT) 98 $(COMPILER) -I$(OBJPASDIR) $(OBJPASDIR)/objpas.pp $(REDIR) 99 100macpas$(PPUEXT) : $(INC)/macpas.pp objpas$(PPUEXT) buildrtl$(PPUEXT) heaptrc$(PPUEXT) 101 $(COMPILER) $(INC)/macpas.pp 102 103iso7185$(PPUEXT) : $(INC)/iso7185.pp buildrtl$(PPUEXT) heaptrc$(PPUEXT) 104 $(COMPILER) $(INC)/iso7185.pp 105 106extpas$(PPUEXT) : $(INC)/extpas.pp buildrtl$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) heaptrc$(PPUEXT) 107 $(COMPILER) $(INC)/extpas.pp 108 109buildrtl$(PPUEXT): buildrtl.pp system$(PPUEXT) objpas$(PPUEXT) heaptrc$(PPUEXT) 110 $(COMPILER) -Fi$(OBJPASDIR)/sysutils -Fi$(OBJPASDIR)/classes -Fu$(CPU_TARGET) -Fu$(PROCINC) -Fu$(AMIINC) -I$(INC) -Fu$(INC) -Fu$(OBJPASDIR) buildrtl 111 112fpextres$(PPUEXT) : $(INC)/fpextres.pp $(SYSTEMUNIT)$(PPUEXT) 113 $(COMPILER) -Sg $(INC)/fpextres.pp 114 115cpall$(PPUEXT): $(RTL)/charmaps/cpall.pas system$(PPUEXT) objpas$(PPUEXT) heaptrc$(PPUEXT) 116 $(COMPILER) -Fu$(INC) -Fi$(RTL)/charmaps $(RTL)/charmaps/cpall.pas 117