* updated

git-svn-id: trunk@2836 -
This commit is contained in:
peter 2006-03-10 15:21:16 +00:00
parent 9d96f32bdc
commit f893e5ab6c
3 changed files with 648 additions and 367 deletions

View File

@ -1,5 +1,13 @@
#
<<<<<<< .mine
<<<<<<< .mine
# Don't edit, this file is generated by FPCMake Version 2.0.0 [2006/03/10]
=======
# Don't edit, this file is generated by FPCMake Version 2.0.0 [2005/12/10]
=======
# Don't edit, this file is generated by FPCMake Version 2.0.0 [2006/03/08]
>>>>>>> .r2831
>>>>>>> .r2248
#
default: all
MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-netbsd i386-solaris i386-qnx i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos powerpc-linux powerpc-netbsd powerpc-macos powerpc-darwin powerpc-morphos sparc-linux sparc-netbsd sparc-solaris x86_64-linux x86_64-freebsd x86_64-win64 arm-linux arm-palmos arm-wince powerpc64-linux
@ -235,485 +243,672 @@ override PACKAGE_NAME=rtl
PACKAGEDIR_MAIN:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
RTL=..
INC=$(RTL)/inc
COMMON=$(RTL)/common
PROCINC=$(RTL)/$(CPU_TARGET)
WININC=wininc
UNITPREFIX=rtl
SYSTEMUNIT=system
PRT0=wprt0
ifdef RELEASE
override FPCOPT+=-Ur
ifneq ($(findstring 2.0.,$(FPC_VERSION)),)
LOADERS=wprt0 wdllprt0 gprt0 wcygprt0
endif
OBJPASDIR=$(RTL)/objpas
GRAPHDIR=$(INC)/graph
WINDOWS_SOURCE_FILES=$(addprefix $(WININC)/,$(addsuffix .inc,$(WINDOWS_FILES)))
ifeq ($(FULL_TARGET),i386-linux)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),i386-go32v2)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),i386-win32)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),i386-os2)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),i386-freebsd)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),i386-beos)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),i386-netbsd)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),i386-solaris)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),i386-qnx)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),i386-netware)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),i386-openbsd)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),i386-wdosx)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
<<<<<<< .mine
<<<<<<< .mine
ifeq ($(FULL_TARGET),i386-darwin)
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
=======
>>>>>>> .r2248
=======
ifeq ($(FULL_TARGET),i386-darwin)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
>>>>>>> .r2831
ifeq ($(FULL_TARGET),i386-emx)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),i386-watcom)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),i386-netwlibc)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),i386-wince)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),m68k-linux)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),m68k-freebsd)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),m68k-netbsd)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),m68k-amiga)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),m68k-atari)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),m68k-openbsd)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),m68k-palmos)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),powerpc-linux)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),powerpc-netbsd)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),powerpc-macos)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),powerpc-morphos)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),sparc-linux)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),sparc-netbsd)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),sparc-solaris)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),x86_64-linux)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),x86_64-freebsd)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),x86_64-win64)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),arm-linux)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
<<<<<<< .mine
<<<<<<< .mine
ifeq ($(FULL_TARGET),arm-palmos)
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
=======
>>>>>>> .r2248
=======
ifeq ($(FULL_TARGET),arm-palmos)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
>>>>>>> .r2831
ifeq ($(FULL_TARGET),arm-wince)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),powerpc64-linux)
override TARGET_UNITS+=$(SYSTEMUNIT) # ctypes objpas macpas strings rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
override TARGET_UNITS+=system ctypes objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects messages rtlconsts sysconst sysutils math types strutils convutils dateutils varutils variants typinfo classes cpu mmx charset ucomplex getopts winevent sockets printer video mouse keyboard winsysut fpmkunit
endif
ifeq ($(FULL_TARGET),i386-linux)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),i386-go32v2)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),i386-win32)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),i386-os2)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),i386-freebsd)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),i386-beos)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),i386-netbsd)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),i386-solaris)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),i386-qnx)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),i386-netware)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),i386-openbsd)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),i386-wdosx)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
<<<<<<< .mine
<<<<<<< .mine
ifeq ($(FULL_TARGET),i386-darwin)
override TARGET_LOADERS+=$(LOADERS)
endif
=======
>>>>>>> .r2248
=======
ifeq ($(FULL_TARGET),i386-darwin)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
endif
>>>>>>> .r2831
ifeq ($(FULL_TARGET),i386-emx)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),i386-watcom)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),i386-netwlibc)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),i386-wince)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),m68k-linux)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),m68k-freebsd)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),m68k-netbsd)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),m68k-amiga)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),m68k-atari)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),m68k-openbsd)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),m68k-palmos)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),powerpc-linux)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),powerpc-netbsd)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),powerpc-macos)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),powerpc-morphos)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),sparc-linux)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),sparc-netbsd)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),sparc-solaris)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),x86_64-linux)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),x86_64-freebsd)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),x86_64-win64)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),arm-linux)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
<<<<<<< .mine
<<<<<<< .mine
ifeq ($(FULL_TARGET),arm-palmos)
override TARGET_LOADERS+=$(LOADERS)
endif
=======
>>>>>>> .r2248
=======
ifeq ($(FULL_TARGET),arm-palmos)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
endif
>>>>>>> .r2831
ifeq ($(FULL_TARGET),arm-wince)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),powerpc64-linux)
override TARGET_LOADERS+=#wprt0 wdllprt0 gprt0 wcygprt0
override TARGET_LOADERS+=$(LOADERS)
endif
ifeq ($(FULL_TARGET),i386-linux)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),i386-go32v2)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),i386-win32)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),i386-os2)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),i386-freebsd)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),i386-beos)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),i386-netbsd)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),i386-solaris)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),i386-qnx)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),i386-netware)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),i386-openbsd)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),i386-wdosx)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),i386-darwin)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),i386-emx)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),i386-watcom)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),i386-netwlibc)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),i386-wince)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),m68k-linux)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),m68k-freebsd)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),m68k-netbsd)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),m68k-amiga)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),m68k-atari)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),m68k-openbsd)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),m68k-palmos)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),powerpc-linux)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),powerpc-netbsd)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),powerpc-macos)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),powerpc-morphos)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),sparc-linux)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),sparc-netbsd)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),sparc-solaris)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),x86_64-linux)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),x86_64-freebsd)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),x86_64-win64)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),arm-linux)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),arm-palmos)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),arm-wince)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
ifeq ($(FULL_TARGET),powerpc64-linux)
override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst fpmkunit
endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),i386-go32v2)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),i386-win32)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),i386-os2)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),i386-freebsd)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),i386-beos)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),i386-netbsd)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),i386-solaris)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),i386-qnx)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),i386-netware)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),i386-openbsd)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),i386-wdosx)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
<<<<<<< .mine
<<<<<<< .mine
ifeq ($(FULL_TARGET),i386-darwin)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
=======
>>>>>>> .r2248
=======
ifeq ($(FULL_TARGET),i386-darwin)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
endif
>>>>>>> .r2831
ifeq ($(FULL_TARGET),i386-emx)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),i386-watcom)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),i386-netwlibc)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),i386-wince)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),m68k-linux)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),m68k-freebsd)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),m68k-netbsd)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),m68k-amiga)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),m68k-atari)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),m68k-openbsd)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),m68k-palmos)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),powerpc-linux)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),powerpc-netbsd)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),powerpc-macos)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),powerpc-morphos)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),sparc-linux)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),sparc-netbsd)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),sparc-solaris)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),x86_64-linux)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),x86_64-freebsd)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),x86_64-win64)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),arm-linux)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
<<<<<<< .mine
<<<<<<< .mine
ifeq ($(FULL_TARGET),arm-palmos)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
=======
>>>>>>> .r2248
=======
ifeq ($(FULL_TARGET),arm-palmos)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
endif
>>>>>>> .r2831
ifeq ($(FULL_TARGET),arm-wince)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),powerpc64-linux)
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/win
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),i386-go32v2)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),i386-win32)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),i386-os2)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),i386-freebsd)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),i386-beos)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),i386-netbsd)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),i386-solaris)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),i386-qnx)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),i386-netware)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),i386-openbsd)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),i386-wdosx)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
<<<<<<< .mine
<<<<<<< .mine
ifeq ($(FULL_TARGET),i386-darwin)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
=======
>>>>>>> .r2248
=======
ifeq ($(FULL_TARGET),i386-darwin)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
endif
>>>>>>> .r2831
ifeq ($(FULL_TARGET),i386-emx)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),i386-watcom)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),i386-netwlibc)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),i386-wince)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),m68k-linux)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),m68k-freebsd)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),m68k-netbsd)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),m68k-amiga)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),m68k-atari)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),m68k-openbsd)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),m68k-palmos)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),powerpc-linux)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),powerpc-netbsd)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),powerpc-macos)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),powerpc-morphos)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),sparc-linux)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),sparc-netbsd)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),sparc-solaris)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),x86_64-linux)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),x86_64-freebsd)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),x86_64-win64)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),arm-linux)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
<<<<<<< .mine
<<<<<<< .mine
ifeq ($(FULL_TARGET),arm-palmos)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
=======
>>>>>>> .r2248
=======
ifeq ($(FULL_TARGET),arm-palmos)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
endif
>>>>>>> .r2831
ifeq ($(FULL_TARGET),arm-wince)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifeq ($(FULL_TARGET),powerpc64-linux)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
@ -1977,44 +2172,36 @@ makefiles: fpc_makefiles
ifneq ($(wildcard fpcmake.loc),)
include fpcmake.loc
endif
SYSTEMPPU=$(addsuffix $(PPUEXT),$(SYSTEMUNIT))
SYSTEMPPU=$(addsuffix $(PPUEXT),system)
include $(INC)/makefile.inc
SYSINCDEPS=$(addprefix $(INC)/,$(SYSINCNAMES))
include $(PROCINC)/makefile.cpu
SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
wprt0$(OEXT) : $(PRT0).as
$(AS) -o $(UNITTARGETDIRPREFIX)wprt0$(OEXT) $(PRT0).as
wprt0$(OEXT) : wprt0.as
gprt0$(OEXT) : gprt0.as
wdllprt0$(OEXT) : wdllprt0.as
wcygprt0$(OEXT) : wcygprt0.as
$(SYSTEMUNIT)$(PPUEXT) : $(SYSTEMUNIT).pp $(SYSDEPS)
$(COMPILER) -Us -Sg $(SYSTEMUNIT).pp -Fi..\win
objpas$(PPUEXT): $(OBJPASDIR)/objpas.pp $(INC)/except.inc $(SYSTEMUNIT)$(PPUEXT)
system$(PPUEXT) : system.pp $(SYSDEPS)
$(COMPILER) -Us -Sg system.pp -Fi../win
objpas$(PPUEXT): $(OBJPASDIR)/objpas.pp $(INC)/except.inc system$(PPUEXT)
$(COMPILER) -I$(OBJPASDIR) $(OBJPASDIR)/objpas.pp
strings$(PPUEXT) : $(INC)/strings.pp $(INC)/stringsi.inc\
$(PROCINC)/strings.inc $(PROCINC)/stringss.inc\
$(SYSTEMUNIT)$(PPUEXT)
windows$(PPUEXT) : windows.pp $(WINDOWS_SOURCE_FILES) $(SYSTEMUNIT)$(PPUEXT)
system$(PPUEXT)
windows$(PPUEXT) : windows.pp $(WINDOWS_SOURCE_FILES) system$(PPUEXT)
$(COMPILER) -I$(WININC) windows.pp
messages$(PPUEXT): messages.pp $(WININC)/messages.inc $(SYSTEMUNIT)$(PPUEXT)
messages$(PPUEXT): messages.pp $(WININC)/messages.inc system$(PPUEXT)
$(COMPILER) -I$(WININC) messages.pp
opengl32$(PPUEXT) : opengl32.pp windows$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
winsock$(PPUEXT) : winsock.pp windows$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
sockets$(PPUEXT) : sockets.pp windows$(PPUEXT) winsock$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
opengl32$(PPUEXT) : opengl32.pp windows$(PPUEXT) system$(PPUEXT)
winsock$(PPUEXT) : winsock.pp windows$(PPUEXT) system$(PPUEXT)
sockets$(PPUEXT) : sockets.pp windows$(PPUEXT) winsock$(PPUEXT) system$(PPUEXT) \
$(INC)/sockets.inc $(INC)/socketsh.inc
initc$(PPUEXT) : initc.pp $(SYSTEMUNIT)$(PPUEXT)
wincrt$(PPUEXT) : wincrt.pp $(SYSTEMUNIT)$(PPUEXT) windows$(PPUEXT) graph$(PPUEXT)
winmouse$(PPUEXT) : winmouse.pp $(SYSTEMUNIT)$(PPUEXT) windows$(PPUEXT) graph$(PPUEXT)
initc$(PPUEXT) : initc.pp system$(PPUEXT)
dynlibs$(PPUEXT) : $(INC)/dynlibs.pp windows$(PPUEXT)
dos$(PPUEXT) : dos.pp $(INC)/filerec.inc $(INC)/textrec.inc strings$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
crt$(PPUEXT) : crt.pp $(INC)/textrec.inc $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) dos$(PPUEXT) windows$(PPUEXT)
objects$(PPUEXT) : $(INC)/objects.pp $(SYSTEMUNIT)$(PPUEXT)
include $(GRAPHDIR)/makefile.inc
GRAPHINCDEPS=$(addprefix $(GRAPHDIR)/,$(GRAPHINCNAMES))
graph$(PPUEXT) : graph.pp strings$(PPUEXT) windows$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
$(GRAPHINCDEPS)
$(COMPILER) -I$(GRAPHDIR) graph.pp
dos$(PPUEXT) : dos.pp $(INC)/filerec.inc $(INC)/textrec.inc strings$(PPUEXT) system$(PPUEXT)
crt$(PPUEXT) : crt.pp $(INC)/textrec.inc system$(PPUEXT) objpas$(PPUEXT) dos$(PPUEXT) windows$(PPUEXT)
objects$(PPUEXT) : $(INC)/objects.pp system$(PPUEXT)
sysutils$(PPUEXT) : sysutils.pp $(wildcard $(OBJPASDIR)/sysutils/*.inc) \
objpas$(PPUEXT) dos$(PPUEXT) windows$(PPUEXT) sysconst$(PPUEXT)
$(COMPILER) -Fi$(OBJPASDIR)/sysutils sysutils.pp
@ -2032,11 +2219,11 @@ varutils$(PPUEXT) : $(OBJPASDIR)/cvarutil.inc $(OBJPASDIR)/varutils.inc \
$(COMPILER) -Fi$(OBJPASDIR) varutils.pp
variants$(PPUEXT) : $(INC)/variants.pp varutils$(PPUEXT) sysutils$(PPUEXT) sysconst$(PPUEXT) typinfo$(PPUEXT) rtlconsts$(PPUEXT)
$(COMPILER) -Fi$(INC) $(INC)/variants.pp
types$(PPUEXT) : $(OBJPASDIR)/types.pp objpas$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
types$(PPUEXT) : $(OBJPASDIR)/types.pp objpas$(PPUEXT) system$(PPUEXT)
$(COMPILER) $(OBJPASDIR)/types.pp
rtlconsts$(PPUEXT) : objpas$(PPUEXT) $(OBJPASDIR)/rtlconsts.pp
$(COMPILER) $(OBJPASDIR)/rtlconsts.pp
sysconst$(PPUEXT) : $(OBJPASDIR)/sysconst.pp objpas$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
sysconst$(PPUEXT) : $(OBJPASDIR)/sysconst.pp objpas$(PPUEXT) system$(PPUEXT)
$(COMPILER) $(OBJPASDIR)/sysconst.pp
dateutils$(PPUEXT) : $(OBJPASDIR)/dateutils.pp
$(COMPILER) -I$(OBJPASDIR) $(OBJPASDIR)/dateutils.pp
@ -2044,17 +2231,18 @@ convutils$(PPUEXT) : $(OBJPASDIR)/convutils.pp
$(COMPILER) -I$(OBJPASDIR) $(OBJPASDIR)/convutils.pp
strutils$(PPUEXT) : $(OBJPASDIR)/strutils.pp
$(COMPILER) -I$(OBJPASDIR) $(OBJPASDIR)/strutils.pp
macpas$(PPUEXT) : $(INC)/macpas.pp $(SYSTEMUNIT)$(PPUEXT)
macpas$(PPUEXT) : $(INC)/macpas.pp system$(PPUEXT)
$(COMPILER) $(INC)/macpas.pp $(REDIR)
cpu$(PPUEXT) : $(PROCINC)/cpu.pp $(SYSTEMUNIT)$(PPUEXT)
mmx$(PPUEXT) : $(PROCINC)/mmx.pp cpu$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
getopts$(PPUEXT) : $(INC)/getopts.pp $(SYSTEMUNIT)$(PPUEXT)
heaptrc$(PPUEXT) : $(INC)/heaptrc.pp $(SYSTEMUNIT)$(PPUEXT)
cpu$(PPUEXT) : $(PROCINC)/cpu.pp system$(PPUEXT)
mmx$(PPUEXT) : $(PROCINC)/mmx.pp cpu$(PPUEXT) system$(PPUEXT)
getopts$(PPUEXT) : $(INC)/getopts.pp system$(PPUEXT)
heaptrc$(PPUEXT) : $(INC)/heaptrc.pp system$(PPUEXT)
$(COMPILER) -Sg $(INC)/heaptrc.pp
lineinfo$(PPUEXT) : $(INC)/lineinfo.pp $(SYSTEMUNIT)$(PPUEXT)
charset$(PPUEXT) : $(INC)/charset.pp $(SYSTEMUNIT)$(PPUEXT)
cmem$(PPUEXT) : $(INC)/cmem.pp $(SYSTEMUNIT)$(PPUEXT)
ucomplex$(PPUEXT) : $(INC)/ucomplex.pp math$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
callspec$(PPUEXT) : $(INC)/callspec.pp $(SYSTEMUNIT)$(PPUEXT)
ctypes$(PPUEXT) : $(INC)/ctypes.pp $(SYSTEMUNIT)$(PPUEXT)
lineinfo$(PPUEXT) : $(INC)/lineinfo.pp system$(PPUEXT)
charset$(PPUEXT) : $(INC)/charset.pp system$(PPUEXT)
cmem$(PPUEXT) : $(INC)/cmem.pp system$(PPUEXT)
ucomplex$(PPUEXT) : $(INC)/ucomplex.pp math$(PPUEXT) system$(PPUEXT)
fpmkunit$(PPUEXT) : $(COMMON)/fpmkunit.pp classes$(PPUEXT)
callspec$(PPUEXT) : $(INC)/callspec.pp system$(PPUEXT)
ctypes$(PPUEXT) : $(INC)/ctypes.pp system$(PPUEXT)
variants$(PPUEXT) : $(INC)/variants.pp varutils$(PPUEXT) typinfo$(PPUEXT)

View File

@ -6,17 +6,17 @@
main=rtl
[target]
loaders= #wprt0 wdllprt0 gprt0 wcygprt0
units=$(SYSTEMUNIT) # ctypes objpas macpas strings \
# lineinfo heaptrc matrix \
# windows winsock initc cmem dynlibs signals \
# dos crt objects graph messages \
# rtlconsts sysconst sysutils math types \
# strutils convutils dateutils varutils variants typinfo classes \
# cpu mmx charset ucomplex getopts \
# wincrt winmouse winevent sockets printer \
# video mouse keyboard \
# winsysut fpmkunit
loaders=$(LOADERS)
units=system ctypes objpas macpas strings \
lineinfo heaptrc matrix \
windows winsock initc cmem dynlibs signals \
dos crt objects messages \
rtlconsts sysconst sysutils math types \
strutils convutils dateutils varutils variants typinfo classes \
cpu mmx charset ucomplex getopts \
winevent sockets printer \
video mouse keyboard \
winsysut fpmkunit
rsts=math varutils typinfo variants classes dateutils sysconst fpmkunit
@ -31,40 +31,34 @@ fpcdir=../..
target=win64
[compiler]
includedir=$(INC) $(PROCINC) $(RTL)/win
sourcedir=$(INC) $(PROCINC)
includedir=$(INC) $(PROCINC)
sourcedir=$(INC) $(PROCINC) $(COMMON)
[prerules]
RTL=..
INC=$(RTL)/inc
COMMON=$(RTL)/common
PROCINC=$(RTL)/$(CPU_TARGET)
WININC=wininc
UNITPREFIX=rtl
SYSTEMUNIT=system
PRT0=wprt0
# Use new feature from 1.0.5 version
# that generates release PPU files
# which will not be recompiled
ifdef RELEASE
override FPCOPT+=-Ur
ifneq ($(findstring 2.0.,$(FPC_VERSION)),)
LOADERS=wprt0 wdllprt0 gprt0 wcygprt0
endif
# Paths
OBJPASDIR=$(RTL)/objpas
GRAPHDIR=$(INC)/graph
# Files used by windows.pp
# include $(WININC)/makefile.inc
#include $(WININC)/makefile.inc
WINDOWS_SOURCE_FILES=$(addprefix $(WININC)/,$(addsuffix .inc,$(WINDOWS_FILES)))
[rules]
SYSTEMPPU=$(addsuffix $(PPUEXT),$(SYSTEMUNIT))
SYSTEMPPU=$(addsuffix $(PPUEXT),system)
# Get the system independent include file names.
# This will set the following variables :
@ -86,8 +80,7 @@ SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
# Loaders
#
wprt0$(OEXT) : $(PRT0).as
$(AS) -o $(UNITTARGETDIRPREFIX)wprt0$(OEXT) $(PRT0).as
wprt0$(OEXT) : wprt0.as
gprt0$(OEXT) : gprt0.as
@ -99,38 +92,34 @@ wcygprt0$(OEXT) : wcygprt0.as
# System Units (System, Objpas, Strings)
#
$(SYSTEMUNIT)$(PPUEXT) : $(SYSTEMUNIT).pp $(SYSDEPS)
$(COMPILER) -Us -Sg $(SYSTEMUNIT).pp -Fi..\win
system$(PPUEXT) : system.pp $(SYSDEPS)
$(COMPILER) -Us -Sg system.pp -Fi../win
objpas$(PPUEXT): $(OBJPASDIR)/objpas.pp $(INC)/except.inc $(SYSTEMUNIT)$(PPUEXT)
objpas$(PPUEXT): $(OBJPASDIR)/objpas.pp $(INC)/except.inc system$(PPUEXT)
$(COMPILER) -I$(OBJPASDIR) $(OBJPASDIR)/objpas.pp
strings$(PPUEXT) : $(INC)/strings.pp $(INC)/stringsi.inc\
$(PROCINC)/strings.inc $(PROCINC)/stringss.inc\
$(SYSTEMUNIT)$(PPUEXT)
system$(PPUEXT)
#
# System Dependent Units
#
windows$(PPUEXT) : windows.pp $(WINDOWS_SOURCE_FILES) $(SYSTEMUNIT)$(PPUEXT)
windows$(PPUEXT) : windows.pp $(WINDOWS_SOURCE_FILES) system$(PPUEXT)
$(COMPILER) -I$(WININC) windows.pp
messages$(PPUEXT): messages.pp $(WININC)/messages.inc $(SYSTEMUNIT)$(PPUEXT)
messages$(PPUEXT): messages.pp $(WININC)/messages.inc system$(PPUEXT)
$(COMPILER) -I$(WININC) messages.pp
opengl32$(PPUEXT) : opengl32.pp windows$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
opengl32$(PPUEXT) : opengl32.pp windows$(PPUEXT) system$(PPUEXT)
winsock$(PPUEXT) : winsock.pp windows$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
winsock$(PPUEXT) : winsock.pp windows$(PPUEXT) system$(PPUEXT)
sockets$(PPUEXT) : sockets.pp windows$(PPUEXT) winsock$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
sockets$(PPUEXT) : sockets.pp windows$(PPUEXT) winsock$(PPUEXT) system$(PPUEXT) \
$(INC)/sockets.inc $(INC)/socketsh.inc
initc$(PPUEXT) : initc.pp $(SYSTEMUNIT)$(PPUEXT)
wincrt$(PPUEXT) : wincrt.pp $(SYSTEMUNIT)$(PPUEXT) windows$(PPUEXT) graph$(PPUEXT)
winmouse$(PPUEXT) : winmouse.pp $(SYSTEMUNIT)$(PPUEXT) windows$(PPUEXT) graph$(PPUEXT)
initc$(PPUEXT) : initc.pp system$(PPUEXT)
dynlibs$(PPUEXT) : $(INC)/dynlibs.pp windows$(PPUEXT)
@ -138,22 +127,11 @@ dynlibs$(PPUEXT) : $(INC)/dynlibs.pp windows$(PPUEXT)
# TP7 Compatible RTL Units
#
dos$(PPUEXT) : dos.pp $(INC)/filerec.inc $(INC)/textrec.inc strings$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
dos$(PPUEXT) : dos.pp $(INC)/filerec.inc $(INC)/textrec.inc strings$(PPUEXT) system$(PPUEXT)
crt$(PPUEXT) : crt.pp $(INC)/textrec.inc $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) dos$(PPUEXT) windows$(PPUEXT)
crt$(PPUEXT) : crt.pp $(INC)/textrec.inc system$(PPUEXT) objpas$(PPUEXT) dos$(PPUEXT) windows$(PPUEXT)
objects$(PPUEXT) : $(INC)/objects.pp $(SYSTEMUNIT)$(PPUEXT)
#
# Graph
#
include $(GRAPHDIR)/makefile.inc
GRAPHINCDEPS=$(addprefix $(GRAPHDIR)/,$(GRAPHINCNAMES))
graph$(PPUEXT) : graph.pp strings$(PPUEXT) windows$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
$(GRAPHINCDEPS)
$(COMPILER) -I$(GRAPHDIR) graph.pp
objects$(PPUEXT) : $(INC)/objects.pp system$(PPUEXT)
#
@ -184,13 +162,13 @@ varutils$(PPUEXT) : $(OBJPASDIR)/cvarutil.inc $(OBJPASDIR)/varutils.inc \
variants$(PPUEXT) : $(INC)/variants.pp varutils$(PPUEXT) sysutils$(PPUEXT) sysconst$(PPUEXT) typinfo$(PPUEXT) rtlconsts$(PPUEXT)
$(COMPILER) -Fi$(INC) $(INC)/variants.pp
types$(PPUEXT) : $(OBJPASDIR)/types.pp objpas$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
types$(PPUEXT) : $(OBJPASDIR)/types.pp objpas$(PPUEXT) system$(PPUEXT)
$(COMPILER) $(OBJPASDIR)/types.pp
rtlconsts$(PPUEXT) : objpas$(PPUEXT) $(OBJPASDIR)/rtlconsts.pp
$(COMPILER) $(OBJPASDIR)/rtlconsts.pp
sysconst$(PPUEXT) : $(OBJPASDIR)/sysconst.pp objpas$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
sysconst$(PPUEXT) : $(OBJPASDIR)/sysconst.pp objpas$(PPUEXT) system$(PPUEXT)
$(COMPILER) $(OBJPASDIR)/sysconst.pp
dateutils$(PPUEXT) : $(OBJPASDIR)/dateutils.pp
@ -206,36 +184,38 @@ strutils$(PPUEXT) : $(OBJPASDIR)/strutils.pp
# Mac Pascal Model
#
macpas$(PPUEXT) : $(INC)/macpas.pp $(SYSTEMUNIT)$(PPUEXT)
macpas$(PPUEXT) : $(INC)/macpas.pp system$(PPUEXT)
$(COMPILER) $(INC)/macpas.pp $(REDIR)
#
# Other system-independent RTL Units
#
cpu$(PPUEXT) : $(PROCINC)/cpu.pp $(SYSTEMUNIT)$(PPUEXT)
cpu$(PPUEXT) : $(PROCINC)/cpu.pp system$(PPUEXT)
mmx$(PPUEXT) : $(PROCINC)/mmx.pp cpu$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
mmx$(PPUEXT) : $(PROCINC)/mmx.pp cpu$(PPUEXT) system$(PPUEXT)
getopts$(PPUEXT) : $(INC)/getopts.pp $(SYSTEMUNIT)$(PPUEXT)
getopts$(PPUEXT) : $(INC)/getopts.pp system$(PPUEXT)
heaptrc$(PPUEXT) : $(INC)/heaptrc.pp $(SYSTEMUNIT)$(PPUEXT)
heaptrc$(PPUEXT) : $(INC)/heaptrc.pp system$(PPUEXT)
$(COMPILER) -Sg $(INC)/heaptrc.pp
lineinfo$(PPUEXT) : $(INC)/lineinfo.pp $(SYSTEMUNIT)$(PPUEXT)
lineinfo$(PPUEXT) : $(INC)/lineinfo.pp system$(PPUEXT)
charset$(PPUEXT) : $(INC)/charset.pp $(SYSTEMUNIT)$(PPUEXT)
charset$(PPUEXT) : $(INC)/charset.pp system$(PPUEXT)
cmem$(PPUEXT) : $(INC)/cmem.pp $(SYSTEMUNIT)$(PPUEXT)
cmem$(PPUEXT) : $(INC)/cmem.pp system$(PPUEXT)
ucomplex$(PPUEXT) : $(INC)/ucomplex.pp math$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
ucomplex$(PPUEXT) : $(INC)/ucomplex.pp math$(PPUEXT) system$(PPUEXT)
fpmkunit$(PPUEXT) : $(COMMON)/fpmkunit.pp classes$(PPUEXT)
#
# Other system-dependent RTL Units
#
callspec$(PPUEXT) : $(INC)/callspec.pp $(SYSTEMUNIT)$(PPUEXT)
callspec$(PPUEXT) : $(INC)/callspec.pp system$(PPUEXT)
ctypes$(PPUEXT) : $(INC)/ctypes.pp $(SYSTEMUNIT)$(PPUEXT)
ctypes$(PPUEXT) : $(INC)/ctypes.pp system$(PPUEXT)
variants$(PPUEXT) : $(INC)/variants.pp varutils$(PPUEXT) typinfo$(PPUEXT)

View File

@ -1,6 +1,6 @@
{
This file is part of the Free Pascal run time library.
Copyright (c) 1999-2000 by Florian Klaempfl and Pavel Ozerski
Copyright (c) 1999-2005 by Florian Klaempfl and Pavel Ozerski
member of the Free Pascal development team.
FPC Pascal system unit for the Win32 API.
@ -90,12 +90,9 @@ var
{ Win32 Info }
startupinfo : tstartupinfo;
hprevinst,
HInstance,
MainInstance,
cmdshow : longint;
DLLreason,DLLparam:longint;
Win32StackTop : Dword;
type
TDLL_Process_Entry_Hook = function (dllparam : longint) : longbool;
TDLL_Entry_Hook = procedure (dllparam : longint);
@ -106,11 +103,29 @@ const
Dll_Thread_Attach_Hook : TDLL_Entry_Hook = nil;
Dll_Thread_Detach_Hook : TDLL_Entry_Hook = nil;
type
HMODULE = THandle;
implementation
var
SysInstance : Longint;public;
{$ifdef i386}
{$define HAS_RESOURCES}
{$i win32res.inc}
{$endif}
{ used by wstrings.inc because wstrings.inc is included before sysos.inc
this is put here (FK) }
function SysAllocStringLen(psz:pointer;len:dword):pointer;stdcall;
external 'oleaut32.dll' name 'SysAllocStringLen';
procedure SysFreeString(bstr:pointer);stdcall;
external 'oleaut32.dll' name 'SysFreeString';
function SysReAllocStringLen(var bstr:pointer;psz: pointer;
len:dword): Integer; stdcall;external 'oleaut32.dll' name 'SysReAllocStringLen';
{ include system independent routines }
{$I system.inc}
@ -155,6 +170,7 @@ var
end;
begin
SetupProcVars;
{ create commandline, it starts with the executed filename which is argv[0] }
{ Win32 passes the command NOT via the args, but via getmodulefilename}
count:=0;
@ -166,7 +182,7 @@ begin
Inc(Arglen);
until (pc[Arglen]=#0);
allocarg(count,arglen);
move(pc^,argv[count]^,arglen);
move(pc^,argv[count]^,arglen+1);
{ Setup cmdline variable }
cmdline:=GetCommandLine;
{ process arguments }
@ -347,7 +363,6 @@ procedure remove_exception_handlers;forward;
procedure PascalMain;stdcall;external name 'PASCALMAIN';
procedure fpc_do_exit;stdcall;external name 'FPC_DO_EXIT';
Procedure ExitDLL(Exitcode : longint); forward;
procedure asm_exit(Exitcode : longint);external name 'asm_exit';
Procedure system_exit;
begin
@ -365,7 +380,7 @@ begin
remove_exception_handlers;
{ call exitprocess, with cleanup as required }
asm_exit(exitcode);
ExitProcess(exitcode);
end;
var
@ -373,7 +388,9 @@ var
to check if the call stack can be written on exceptions }
_SS : Cardinal;
procedure Exe_entry;[public, alias : '_FPC_EXE_Entry'];
procedure Exe_entry;[public,alias:'_FPC_EXE_Entry'];
var
ST : pointer;
begin
IsLibrary:=false;
{ install the handlers for exe only ?
@ -382,7 +399,6 @@ procedure Exe_entry;[public, alias : '_FPC_EXE_Entry'];
{ This strange construction is needed to solve the _SS problem
with a smartlinked syswin32 (PFV) }
asm
{!!!!!!!
{ allocate space for an exception frame }
pushl $0
pushl %fs:(0)
@ -393,21 +409,24 @@ procedure Exe_entry;[public, alias : '_FPC_EXE_Entry'];
movl %esp,%eax
movl %eax,System_exception_frame
pushl %ebp
xorl %ebp,%ebp
movl %esp,%eax
movl %eax,Win32StackTop
movw %ss,%bp
movl %ebp,_SS
movl %eax,st
end;
StackTop:=st;
asm
xorl %eax,%eax
movw %ss,%ax
movl %eax,_SS
call SysResetFPU
xorl %ebp,%ebp
call PASCALMAIN
popl %ebp
}
end;
{ if we pass here there was no error ! }
system_exit;
end;
Const
{ DllEntryPoint }
DLL_PROCESS_ATTACH = 1;
@ -419,7 +438,7 @@ Var
Const
DLLExitOK : boolean = true;
function Dll_entry : longbool;[public, alias : '_FPC_DLL_Entry'];
function Dll_entry : longbool;
var
res : longbool;
@ -478,6 +497,44 @@ begin
LongJmp(DLLBuf,1);
end;
{$ifndef VER2_0}
procedure _FPC_mainCRTStartup;stdcall;public name '_mainCRTStartup';
begin
IsConsole:=true;
Exe_entry;
end;
procedure _FPC_WinMainCRTStartup;stdcall;public name '_WinMainCRTStartup';
begin
IsConsole:=false;
Exe_entry;
end;
procedure _FPC_DLLMainCRTStartup(_hinstance,_dllreason,_dllparam:longint);stdcall;public name '_DLLMainCRTStartup';
begin
IsConsole:=true;
sysinstance:=_hinstance;
dllreason:=_dllreason;
dllparam:=_dllparam;
DLL_Entry;
end;
procedure _FPC_DLLWinMainCRTStartup(_hinstance,_dllreason,_dllparam:longint);stdcall;public name '_DLLWinMainCRTStartup';
begin
IsConsole:=false;
sysinstance:=_hinstance;
dllreason:=_dllreason;
dllparam:=_dllparam;
DLL_Entry;
end;
{$endif VER2_0}
function GetCurrentProcess : dword;
stdcall;external 'kernel32' name 'GetCurrentProcess';
@ -776,96 +833,113 @@ begin
end;
end;
var
{ this variable is set to true, if currently an sse check is executed and no sig ill should be generated }
sse_check : boolean;
function syswin32_i386_exception_handler(excep : PExceptionPointers) : Longint;stdcall;
var
frame,
res : longint;
function SysHandleErrorFrame(error, frame : Longint; must_reset_fpu : Boolean) : Longint;
res: longint;
err: byte;
must_reset_fpu: boolean;
begin
if (frame = 0) then
SysHandleErrorFrame:=EXCEPTION_CONTINUE_SEARCH
else begin
if (exceptLevel >= MaxExceptionLevel) then exit;
exceptEip[exceptLevel] := excep^.ContextRecord^.Eip;
exceptError[exceptLevel] := error;
resetFPU[exceptLevel] := must_reset_fpu;
inc(exceptLevel);
excep^.ContextRecord^.Eip := Longint(@JumpToHandleErrorFrame);
excep^.ExceptionRecord^.ExceptionCode := 0;
SysHandleErrorFrame := EXCEPTION_CONTINUE_EXECUTION;
{$ifdef SYSTEMEXCEPTIONDEBUG}
if IsConsole then begin
writeln(stderr,'Exception Continue Exception set at ',
hexstr(exceptEip[exceptLevel],8));
writeln(stderr,'Eip changed to ',
hexstr(longint(@JumpToHandleErrorFrame),8), ' error=', error);
end;
{$endif SYSTEMEXCEPTIONDEBUG}
res := EXCEPTION_CONTINUE_SEARCH;
if excep^.ContextRecord^.SegSs=_SS then begin
err := 0;
must_reset_fpu := true;
{$ifdef SYSTEMEXCEPTIONDEBUG}
if IsConsole then Writeln(stderr,'Exception ',
hexstr(excep^.ExceptionRecord^.ExceptionCode, 8));
{$endif SYSTEMEXCEPTIONDEBUG}
case cardinal(excep^.ExceptionRecord^.ExceptionCode) of
STATUS_INTEGER_DIVIDE_BY_ZERO,
STATUS_FLOAT_DIVIDE_BY_ZERO :
err := 200;
STATUS_ARRAY_BOUNDS_EXCEEDED :
begin
err := 201;
must_reset_fpu := false;
end;
end;
begin
if excep^.ContextRecord^.SegSs=_SS then
frame := excep^.ContextRecord^.Ebp
STATUS_STACK_OVERFLOW :
begin
err := 202;
must_reset_fpu := false;
end;
STATUS_FLOAT_OVERFLOW :
err := 205;
STATUS_FLOAT_DENORMAL_OPERAND,
STATUS_FLOAT_UNDERFLOW :
err := 206;
{excep^.ContextRecord^.FloatSave.StatusWord := excep^.ContextRecord^.FloatSave.StatusWord and $ffffff00;}
STATUS_FLOAT_INEXACT_RESULT,
STATUS_FLOAT_INVALID_OPERATION,
STATUS_FLOAT_STACK_CHECK :
err := 207;
STATUS_INTEGER_OVERFLOW :
begin
err := 215;
must_reset_fpu := false;
end;
STATUS_ILLEGAL_INSTRUCTION:
{ if we're testing sse support, simply set the flag and continue }
if sse_check then
begin
os_supports_sse:=false;
{ if yes, then retry }
excep^.ExceptionRecord^.ExceptionCode := 0;
res:=EXCEPTION_CONTINUE_EXECUTION;
end
else
frame := 0;
res := EXCEPTION_CONTINUE_SEARCH;
{$ifdef SYSTEMEXCEPTIONDEBUG}
if IsConsole then Writeln(stderr,'Exception ',
hexstr(excep^.ExceptionRecord^.ExceptionCode, 8));
{$endif SYSTEMEXCEPTIONDEBUG}
case cardinal(excep^.ExceptionRecord^.ExceptionCode) of
STATUS_INTEGER_DIVIDE_BY_ZERO,
STATUS_FLOAT_DIVIDE_BY_ZERO :
res := SysHandleErrorFrame(200, frame, true);
STATUS_ARRAY_BOUNDS_EXCEEDED :
res := SysHandleErrorFrame(201, frame, false);
STATUS_STACK_OVERFLOW :
res := SysHandleErrorFrame(202, frame, false);
STATUS_FLOAT_OVERFLOW :
res := SysHandleErrorFrame(205, frame, true);
STATUS_FLOAT_DENORMAL_OPERAND,
STATUS_FLOAT_UNDERFLOW :
res := SysHandleErrorFrame(206, frame, true);
{excep^.ContextRecord^.FloatSave.StatusWord := excep^.ContextRecord^.FloatSave.StatusWord and $ffffff00;}
STATUS_FLOAT_INEXACT_RESULT,
STATUS_FLOAT_INVALID_OPERATION,
STATUS_FLOAT_STACK_CHECK :
res := SysHandleErrorFrame(207, frame, true);
STATUS_INTEGER_OVERFLOW :
res := SysHandleErrorFrame(215, frame, false);
STATUS_ILLEGAL_INSTRUCTION:
res := SysHandleErrorFrame(216, frame, true);
STATUS_ACCESS_VIOLATION:
{ Athlon prefetch bug? }
if is_prefetch(pointer(excep^.ContextRecord^.Eip)) then
begin
{ if yes, then retry }
excep^.ExceptionRecord^.ExceptionCode := 0;
res:=EXCEPTION_CONTINUE_EXECUTION;
end
else
res := SysHandleErrorFrame(216, frame, true);
err := 216;
STATUS_ACCESS_VIOLATION:
{ Athlon prefetch bug? }
if is_prefetch(pointer(excep^.ContextRecord^.Eip)) then
begin
{ if yes, then retry }
excep^.ExceptionRecord^.ExceptionCode := 0;
res:=EXCEPTION_CONTINUE_EXECUTION;
end
else
err := 216;
STATUS_CONTROL_C_EXIT:
res := SysHandleErrorFrame(217, frame, true);
STATUS_PRIVILEGED_INSTRUCTION:
res := SysHandleErrorFrame(218, frame, false);
else
begin
if ((excep^.ExceptionRecord^.ExceptionCode and SEVERITY_ERROR) = SEVERITY_ERROR) then
res := SysHandleErrorFrame(217, frame, true)
else
res := SysHandleErrorFrame(255, frame, true);
end;
STATUS_CONTROL_C_EXIT:
err := 217;
STATUS_PRIVILEGED_INSTRUCTION:
begin
err := 218;
must_reset_fpu := false;
end;
syswin32_i386_exception_handler := res;
end;
else
begin
if ((excep^.ExceptionRecord^.ExceptionCode and SEVERITY_ERROR) = SEVERITY_ERROR) then
err := 217
else
err := 255;
end;
end;
if (err <> 0) and (exceptLevel < MaxExceptionLevel) then begin
exceptEip[exceptLevel] := excep^.ContextRecord^.Eip;
exceptError[exceptLevel] := err;
resetFPU[exceptLevel] := must_reset_fpu;
inc(exceptLevel);
excep^.ContextRecord^.Eip := Longint(@JumpToHandleErrorFrame);
excep^.ExceptionRecord^.ExceptionCode := 0;
res := EXCEPTION_CONTINUE_EXECUTION;
{$ifdef SYSTEMEXCEPTIONDEBUG}
if IsConsole then begin
writeln(stderr,'Exception Continue Exception set at ',
hexstr(exceptEip[exceptLevel],8));
writeln(stderr,'Eip changed to ',
hexstr(longint(@JumpToHandleErrorFrame),8), ' error=', error);
end;
{$endif SYSTEMEXCEPTIONDEBUG}
end;
end;
syswin32_i386_exception_handler := res;
end;
procedure install_exception_handlers;
{$ifdef SYSTEMEXCEPTIONDEBUG}
@ -911,14 +985,52 @@ end;
{$endif Set_i386_Exception_handler}
{ because of the brain dead sse detection on x86, this test is post poned }
procedure fpc_cpucodeinit;
begin
end;
{$ifdef HASWIDESTRING}
{****************************************************************************
OS dependend widestrings
****************************************************************************}
function CharUpperBuff(lpsz:LPWSTR; cchLength:DWORD):DWORD; stdcall; external 'user32' name 'CharUpperBuffW';
function CharLowerBuff(lpsz:LPWSTR; cchLength:DWORD):DWORD; stdcall; external 'user32' name 'CharLowerBuffW';
const
{ MultiByteToWideChar }
MB_PRECOMPOSED = 1;
CP_ACP = 0;
function MultiByteToWideChar(CodePage:UINT; dwFlags:DWORD; lpMultiByteStr:PChar; cchMultiByte:longint; lpWideCharStr:PWideChar;cchWideChar:longint):longint;
stdcall; external 'kernel32' name 'MultiByteToWideChar';
function WideCharToMultiByte(CodePage:UINT; dwFlags:DWORD; lpWideCharStr:PWideChar; cchWideChar:longint; lpMultiByteStr:PChar;cchMultiByte:longint; lpDefaultChar:PChar; lpUsedDefaultChar:pointer):longint;
stdcall; external 'kernel32' name 'WideCharToMultiByte';
function CharUpperBuff(lpsz:LPWSTR; cchLength:DWORD):DWORD;
stdcall; external 'user32' name 'CharUpperBuffW';
function CharLowerBuff(lpsz:LPWSTR; cchLength:DWORD):DWORD;
stdcall; external 'user32' name 'CharLowerBuffW';
procedure Win32Wide2AnsiMove(source:pwidechar;var dest:ansistring;len:SizeInt);
var
destlen: SizeInt;
begin
// retrieve length including trailing #0
destlen:=WideCharToMultiByte(CP_ACP, 0, source, len+1, nil, 0, nil, nil);
setlength(dest, destlen-1);
WideCharToMultiByte(CP_ACP, 0, source, len+1, @dest[1], destlen, nil, nil);
end;
procedure Win32Ansi2WideMove(source:pchar;var dest:widestring;len:SizeInt);
var
destlen: SizeInt;
begin
// retrieve length including trailing #0
destlen:=MultiByteToWideChar(CP_ACP, MB_PRECOMPOSED, source, len+1, nil, 0);
setlength(dest, destlen-1);
MultiByteToWideChar(CP_ACP, MB_PRECOMPOSED, source, len+1, @dest[1], destlen);
end;
function Win32WideUpper(const s : WideString) : WideString;
@ -943,11 +1055,12 @@ function Win32WideLower(const s : WideString) : WideString;
are only relevant for the sysutils units }
procedure InitWin32Widestrings;
begin
widestringmanager.Wide2AnsiMoveProc:=@Win32Wide2AnsiMove;
widestringmanager.Ansi2WideMoveProc:=@Win32Ansi2WideMove;
widestringmanager.UpperWideStringProc:=@Win32WideUpper;
widestringmanager.LowerWideStringProc:=@Win32WideLower;
end;
{$endif HASWIDESTRING}
{****************************************************************************
@ -1035,7 +1148,7 @@ end;
procedure SysInitStdIO;
begin
{ Setup stdin, stdout and stderr, for GUI apps redirect stderr,stdout to be
displayed in and messagebox }
displayed in a messagebox }
StdInputHandle:=longint(GetStdHandle(cardinal(STD_INPUT_HANDLE)));
StdOutputHandle:=longint(GetStdHandle(cardinal(STD_OUTPUT_HANDLE)));
StdErrorHandle:=longint(GetStdHandle(cardinal(STD_ERROR_HANDLE)));
@ -1072,24 +1185,28 @@ begin
result := stklen;
end;
{
const
Exe_entry_code : pointer = @Exe_entry;
Dll_entry_code : pointer = @Dll_entry;
}
begin
StackLength := CheckInitialStkLen(InitialStkLen);
StackBottom := Sptr - StackLength;
StackBottom := StackTop - StackLength;
{ get some helpful informations }
GetStartupInfo(@startupinfo);
{ some misc Win32 stuff }
hprevinst:=0;
if not IsLibrary then
HInstance:=getmodulehandle(GetCommandFile);
SysInstance:=getmodulehandle(GetCommandFile);
MainInstance:=HInstance;
cmdshow:=startupinfo.wshowwindow;
{ Setup heap }
InitHeap;
SysInitExceptions;
{ setup fastmove stuff }
fpc_cpucodeinit;
SysInitStdIO;
{ Arguments }
setup_arguments;
@ -1100,11 +1217,7 @@ begin
InitSystemThreads;
{ Reset internal error variable }
errno:=0;
{$ifdef HASVARIANT}
initvariantmanager;
{$endif HASVARIANT}
{$ifdef HASWIDESTRING}
initwidestringmanager;
InitWin32Widestrings
{$endif HASWIDESTRING}
end.