1# 2# Makefile.fpc for Free Pascal NativeNT RTL 3# 4 5[package] 6main=rtl 7 8[target] 9loaders= 10#units=system objpas macpas iso7185 extpas buildrtl lineinfo lnfodwrf 11units=system uuchar objpas iso7185 extpas cpall buildrtl 12implicitunits=ndk ndkutils ddk \ 13 ctypes strings \ 14# heaptrc 15# initc cmem dynlibs signals \ 16 dos \ 17 rtlconsts sysconst sysutils math types \ 18 typinfo fgl classes \ 19 $(CPU_UNITS) charset getopts \ 20# sockets printer \ 21# keyboard 22# sharemem exeinfo fpintres \ 23 cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 \ 24 cp437 cp646 cp737 cp775 cp850 cp852 cp855 cp856 cp857 cp860 cp861 cp862 \ 25 cp863 cp864 cp865 cp866 cp869 cp874 cp3021 cp8859_1 cp8859_2 cp8859_3 cp8859_4 \ 26 cp8859_5 cp8859_6 cp8859_7 cp8859_8 cp8859_9 cp8859_10 cp8859_11 \ 27 cp8859_13 cp8859_14 cp8859_15 cp8859_16 cpkoi8_r cpkoi8_u 28 29# shared=$(DLLS) 30 31rsts=math typinfo classes sysconst 32 33[require] 34nortl=y 35 36[install] 37fpcpackage=y 38 39[default] 40fpcdir=../.. 41target=nativent 42 43[compiler] 44includedir=$(INC) $(PROCINC) $(DDKINC) $(NDKINC) 45sourcedir=$(INC) $(PROCINC) $(COMMON) 46 47 48[prerules] 49RTL=.. 50INC=$(RTL)/inc 51COMMON=$(RTL)/common 52PROCINC=$(RTL)/$(CPU_TARGET) 53DDKINC=ddk 54NDKINC=ndk 55 56UNITPREFIX=rtl 57SYSTEMUNIT=system 58 59CPU_UNITS= 60 61ifeq ($(ARCH),i386) 62CPU_UNITS=cpu mmx 63endif 64 65ifeq ($(ARCH),x86_64) 66CPU_UNITS=x86 cpu 67endif 68 69ifneq ($(findstring 2.0.,$(FPC_VERSION)),) 70#LOADERS=wprt0 wdllprt0 gprt0 wcygprt0 71DLLS= 72else 73DLLS=fpcmemdll 74endif 75 76# Paths 77OBJPASDIR=$(RTL)/objpas 78 79# Files used by windows.pp 80#include $(WININC)/makefile.inc 81 82WINDOWS_SOURCE_FILES=$(addprefix $(WININC)/,$(addsuffix .inc,$(WINDOWS_FILES))) 83 84 85[rules] 86.NOTPARALLEL: 87SYSTEMPPU=$(addsuffix $(PPUEXT),system) 88 89# Get the system independent include file names. 90# This will set the following variables : 91# SYSINCNAMES 92include $(INC)/makefile.inc 93SYSINCDEPS=$(addprefix $(INC)/,$(SYSINCNAMES)) 94 95# Get the processor dependent include file names. 96# This will set the following variables : 97# CPUINCNAMES 98include $(PROCINC)/makefile.cpu 99SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES)) 100 101# Put system unit dependencies together. 102SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS) 103 104 105# 106# Loaders 107# 108 109# none 110 111# 112# Unit specific rules 113# 114 115system$(PPUEXT) : system.pp $(SYSDEPS) 116 $(COMPILER) $(FPC_SYSTEM_OPT) -Us -Sg system.pp 117 118uuchar$(PPUEXT): $(SYSTEMUNIT)$(PPUEXT) $(INC)/uuchar.pp 119 $(COMPILER) $(INC)/uuchar.pp 120 121objpas$(PPUEXT): $(OBJPASDIR)/objpas.pp $(INC)/except.inc system$(PPUEXT) 122 $(COMPILER) -I$(OBJPASDIR) $(OBJPASDIR)/objpas.pp 123 124macpas$(PPUEXT) : $(INC)/macpas.pp objpas$(PPUEXT) buildrtl$(PPUEXT) 125 $(COMPILER) $(INC)/macpas.pp $(REDIR) 126 127iso7185$(PPUEXT) : $(INC)/iso7185.pp $(SYSTEMUNIT)$(PPUEXT) 128 $(COMPILER) $(INC)/iso7185.pp 129 130extpas$(PPUEXT) : $(INC)/extpas.pp dos$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) 131 $(COMPILER) $(INC)/extpas.pp 132 133buildrtl$(PPUEXT): buildrtl.pp system$(PPUEXT) objpas$(PPUEXT) 134 $(COMPILER) -Fi$(OBJPASDIR)/sysutils -Fi$(OBJPASDIR)/classes -Fu$(PROCINC) -I$(OBJPASDIR) -Fi$(DDKINC) -I$(INC) -Fu$(INC) -Fu$(OBJPASDIR) buildrtl 135 136cpall$(PPUEXT): $(RTL)/charmaps/cpall.pas system$(PPUEXT) objpas$(PPUEXT) 137 $(COMPILER) -Fu$(INC) -Fi$(RTL)/charmaps $(RTL)/charmaps/cpall.pas 138