fpc/rtl/win32/Makefile.fpc
florian 2ce563710a * another rule fix
git-svn-id: trunk@21433 -
2012-05-29 18:19:57 +00:00

137 lines
3.2 KiB
Makefile

#
# Makefile.fpc for Free Pascal Win32 RTL
#
[package]
main=rtl
[target]
loaders=$(LOADERS)
units=system uuchar objpas macpas iso7185 buildrtl lineinfo lnfodwrf
implicitunits=sysinitpas sysinitcyg sysinitgprof \
ctypes strings \
heaptrc matrix \
windows winsock winsock2 initc cmem dynlibs signals \
dos crt objects messages \
rtlconsts sysconst sysutils math types \
strutils dateutils varutils variants typinfo fgl classes \
convutils stdconvs cpu mmx charset character ucomplex getopts \
winevent sockets printer \
video mouse keyboard fmtbcd \
winsysut sharemem exeinfo fpintres windirs
# shared=$(DLLS)
rsts=math varutils typinfo variants classes dateutils sysconst
[require]
nortl=y
[install]
fpcpackage=y
[default]
fpcdir=../..
target=win32
[compiler]
includedir=$(INC) $(PROCINC) $(WINDIR)
sourcedir=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
[prerules]
RTL=..
INC=$(RTL)/inc
COMMON=$(RTL)/common
PROCINC=$(RTL)/$(CPU_TARGET)
WININC=../win/wininc
WINDIR=../win
UNITPREFIX=rtl
SYSTEMUNIT=system
ifneq ($(findstring 2.0.,$(FPC_VERSION)),)
LOADERS=wprt0 wdllprt0 gprt0 wcygprt0
DLLS=
else
DLLS=fpcmemdll
endif
# Paths
OBJPASDIR=$(RTL)/objpas
# Files used by windows.pp
include $(WININC)/makefile.inc
WINDOWS_SOURCE_FILES=$(addprefix $(WININC)/,$(addsuffix .inc,$(WINDOWS_FILES)))
[rules]
.NOTPARALLEL:
SYSTEMPPU=$(addsuffix $(PPUEXT),system)
# Get the system independent include file names.
# This will set the following variables :
# SYSINCNAMES
include $(INC)/makefile.inc
SYSINCDEPS=$(addprefix $(INC)/,$(SYSINCNAMES))
# Get the processor dependent include file names.
# This will set the following variables :
# CPUINCNAMES
include $(PROCINC)/makefile.cpu
SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
# Put system unit dependencies together.
SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
#
# Loaders
#
wprt0$(OEXT) : wprt0.as
gprt0$(OEXT) : gprt0.as
wdllprt0$(OEXT) : wdllprt0.as
wcygprt0$(OEXT) : wcygprt0.as
#
# Unit specific rules
#
system$(PPUEXT) : system.pp $(SYSDEPS)
$(COMPILER) -Us -Sg system.pp -Fi../win
uuchar$(PPUEXT): $(SYSTEMUNIT)$(PPUEXT) $(INC)/uuchar.pp
$(COMPILER) $(INC)/uuchar.pp
objpas$(PPUEXT): $(OBJPASDIR)/objpas.pp $(INC)/except.inc system$(PPUEXT)
$(COMPILER) -I$(OBJPASDIR) $(OBJPASDIR)/objpas.pp
macpas$(PPUEXT) : $(INC)/macpas.pp objpas$(PPUEXT) buildrtl$(PPUEXT)
$(COMPILER) $(INC)/macpas.pp
iso7185$(PPUEXT) : $(INC)/iso7185.pp buildrtl$(PPUEXT)
$(COMPILER) $(INC)/iso7185.pp
lineinfo$(PPUEXT) : $(INC)/lineinfo.pp $(SYSTEMUNIT)$(PPUEXT)
$(COMPILER) $(INC)/lineinfo.pp
lnfodwrf$(PPUEXT) : $(INC)/lnfodwrf.pp $(SYSTEMUNIT)$(PPUEXT)
$(COMPILER) $(INC)/lnfodwrf.pp
buildrtl$(PPUEXT): buildrtl.pp system$(PPUEXT) objpas$(PPUEXT)
$(COMPILER) -Fi$(OBJPASDIR)/sysutils -Fi$(OBJPASDIR)/classes -Fu$(PROCINC) -I$(OBJPASDIR) -I$(WININC) -Fu$(WININC) -Fu$(WINDIR) -I$(INC) -Fu$(INC) -Fu$(OBJPASDIR) buildrtl
softfpu$(PPUEXT) : ../inc/softfpu.pp system$(PPUEXT)
$(COMPILER) ../inc/softfpu.pp
sfpu128$(PPUEXT) : ../inc/sfpu128.pp system$(PPUEXT)
$(COMPILER) ../inc/sfpu128.pp
sfpux80$(PPUEXT) : ../inc/sfpux80.pp system$(PPUEXT)
$(COMPILER) ../inc/sfpux80.pp