mirror of
				https://gitlab.com/freepascal.org/fpc/source.git
				synced 2025-11-04 07:43:04 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			1158 lines
		
	
	
		
			26 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			1158 lines
		
	
	
		
			26 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
#
 | 
						|
# Don't edit, this file is generated by fpcmake v1.99.0 [2001/06/06]
 | 
						|
#
 | 
						|
default: all
 | 
						|
override PATH:=$(subst \,/,$(PATH))
 | 
						|
ifeq ($(findstring ;,$(PATH)),)
 | 
						|
inUnix=1
 | 
						|
SEARCHPATH:=$(subst .,,$(subst :, ,$(PATH)))
 | 
						|
else
 | 
						|
SEARCHPATH:=$(subst ;, ,$(PATH))
 | 
						|
endif
 | 
						|
PWD:=$(strip $(wildcard $(addsuffix /pwd.exe,$(SEARCHPATH))))
 | 
						|
ifeq ($(PWD),)
 | 
						|
PWD:=$(strip $(wildcard $(addsuffix /pwd,$(SEARCHPATH))))
 | 
						|
ifeq ($(PWD),)
 | 
						|
nopwd:
 | 
						|
	@echo You need the GNU utils package to use this Makefile!
 | 
						|
	@echo Get ftp://ftp.freepascal.org/pub/fpc/dist/go32v2/utilgo32.zip
 | 
						|
	@exit
 | 
						|
else
 | 
						|
PWD:=$(firstword $(PWD))
 | 
						|
SRCEXEEXT=
 | 
						|
endif
 | 
						|
else
 | 
						|
PWD:=$(firstword $(PWD))
 | 
						|
SRCEXEEXT=.exe
 | 
						|
endif
 | 
						|
ifndef inUnix
 | 
						|
ifeq ($(OS),Windows_NT)
 | 
						|
inWinNT=1
 | 
						|
else
 | 
						|
ifdef OS2_SHELL
 | 
						|
inOS2=1
 | 
						|
endif
 | 
						|
endif
 | 
						|
else
 | 
						|
ifneq ($(findstring cygwin,$(MACH_TYPE)),)
 | 
						|
inCygWin=1
 | 
						|
endif
 | 
						|
endif
 | 
						|
ifdef inUnix
 | 
						|
BATCHEXT=.sh
 | 
						|
else
 | 
						|
ifdef inOS2
 | 
						|
BATCHEXT=.cmd
 | 
						|
else
 | 
						|
BATCHEXT=.bat
 | 
						|
endif
 | 
						|
endif
 | 
						|
ifdef inUnix
 | 
						|
PATHSEP=/
 | 
						|
else
 | 
						|
PATHSEP:=$(subst /,\,/)
 | 
						|
endif
 | 
						|
ifdef PWD
 | 
						|
BASEDIR:=$(subst \,/,$(shell $(PWD)))
 | 
						|
else
 | 
						|
BASEDIR=.
 | 
						|
endif
 | 
						|
ifndef FPC
 | 
						|
ifdef PP
 | 
						|
FPC=$(PP)
 | 
						|
else
 | 
						|
FPC=ppc386
 | 
						|
endif
 | 
						|
endif
 | 
						|
override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
 | 
						|
override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT)
 | 
						|
ifndef OS_TARGET
 | 
						|
OS_TARGET:=$(shell $(FPC) -iTO)
 | 
						|
endif
 | 
						|
ifndef OS_SOURCE
 | 
						|
OS_SOURCE:=$(shell $(FPC) -iSO)
 | 
						|
endif
 | 
						|
ifndef CPU_TARGET
 | 
						|
CPU_TARGET:=$(shell $(FPC) -iTP)
 | 
						|
endif
 | 
						|
ifndef CPU_SOURCE
 | 
						|
CPU_SOURCE:=$(shell $(FPC) -iSP)
 | 
						|
endif
 | 
						|
ifndef FPC_VERSION
 | 
						|
FPC_VERSION:=$(shell $(FPC) -iV)
 | 
						|
endif
 | 
						|
export FPC OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FPC_VERSION
 | 
						|
ifdef FPCDIR
 | 
						|
override FPCDIR:=$(subst \,/,$(FPCDIR))
 | 
						|
ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 | 
						|
override FPCDIR=wrong
 | 
						|
endif
 | 
						|
else
 | 
						|
override FPCDIR=wrong
 | 
						|
endif
 | 
						|
ifeq ($(FPCDIR),wrong)
 | 
						|
override FPCDIR=..
 | 
						|
ifeq ($(wildcard $(FPCDIR)/rtl),)
 | 
						|
ifeq ($(wildcard $(FPCDIR)/units),)
 | 
						|
override FPCDIR=wrong
 | 
						|
endif
 | 
						|
endif
 | 
						|
endif
 | 
						|
ifeq ($(FPCDIR),wrong)
 | 
						|
ifdef inUnix
 | 
						|
override FPCDIR=/usr/local/lib/fpc/$(FPC_VERSION)
 | 
						|
ifeq ($(wildcard $(FPCDIR)/units),)
 | 
						|
override FPCDIR=/usr/lib/fpc/$(FPC_VERSION)
 | 
						|
endif
 | 
						|
else
 | 
						|
override FPCDIR:=$(subst /$(FPC),,$(firstword $(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH))))))
 | 
						|
override FPCDIR:=$(FPCDIR)/..
 | 
						|
ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 | 
						|
override FPCDIR:=$(FPCDIR)/..
 | 
						|
ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 | 
						|
override FPCDIR=c:/pp
 | 
						|
endif
 | 
						|
endif
 | 
						|
endif
 | 
						|
endif
 | 
						|
UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
 | 
						|
PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages)
 | 
						|
override PACKAGE_NAME=fpcompiler
 | 
						|
override PACKAGE_VERSION=1.1
 | 
						|
unexport OS_SOURCE FPC_VERSION
 | 
						|
ifdef ALPHA
 | 
						|
CPU_TARGET=alpha
 | 
						|
endif
 | 
						|
ifdef POWERPC
 | 
						|
CPU_TARGET=powerpc
 | 
						|
endif
 | 
						|
ifdef M68K
 | 
						|
CPU_TARGET=m68k
 | 
						|
endif
 | 
						|
ifdef I386
 | 
						|
CPU_TARGET=i386
 | 
						|
endif
 | 
						|
UTILSDIR=../utils
 | 
						|
COMPILERUTILSDIR=utils
 | 
						|
ifndef FPCLANG
 | 
						|
FPCLANG=e
 | 
						|
endif
 | 
						|
ifndef LOCALDEF
 | 
						|
LOCALDEF=
 | 
						|
endif
 | 
						|
ifndef LOCALOPT
 | 
						|
LOCALOPT=$(OPT)
 | 
						|
endif
 | 
						|
ifndef RTLOPTS
 | 
						|
RTLOPTS=$(OPT)
 | 
						|
endif
 | 
						|
MSGFILES=$(wildcard msg/error*.msg)
 | 
						|
ifeq ($(CPU_TARGET),i386)
 | 
						|
CPUSUF=386
 | 
						|
endif
 | 
						|
ifeq ($(CPU_TARGET),alpha)
 | 
						|
CPUSUF=axp
 | 
						|
endif
 | 
						|
ifeq ($(CPU_TARGET),m68k)
 | 
						|
CPUSUF=68k
 | 
						|
endif
 | 
						|
ifeq ($(CPU_TARGET),powerpc)
 | 
						|
CPUSUF=ppc
 | 
						|
endif
 | 
						|
ifeq ($(OS_TARGET),linux)
 | 
						|
ifneq ($(findstring 1.0.,$(FPC_VERSION)),)
 | 
						|
override LOCALDEF+=-dUNIX
 | 
						|
endif
 | 
						|
endif
 | 
						|
ifeq ($(OS_TARGET),freebsd)
 | 
						|
ifneq ($(findstring 1.0.,$(FPC_VERSION)),)
 | 
						|
override LOCALDEF+=-dUNIX
 | 
						|
endif
 | 
						|
endif
 | 
						|
MSGFILE=msg/error$(FPCLANG).msg
 | 
						|
override LOCALDEF+=-dGDB -dBROWSERLOG
 | 
						|
ifeq ($(CPU_TARGET),i386)
 | 
						|
override LOCALDEF+=-dSUPPORT_MMX
 | 
						|
endif
 | 
						|
override LOCALOPT+=$(LOCALDEF)
 | 
						|
override FPCOPT:=$(LOCALOPT)
 | 
						|
override TARGET_DIRS+=utils
 | 
						|
override INSTALL_FPCPACKAGE=y
 | 
						|
override COMPILER_INCLUDEDIR+=$(CPU_TARGET)
 | 
						|
override COMPILER_UNITDIR+=$(CPU_TARGET) targets
 | 
						|
override COMPILER_TARGETDIR+=.
 | 
						|
ifndef ECHO
 | 
						|
ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
 | 
						|
ifeq ($(ECHO),)
 | 
						|
ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
 | 
						|
ifeq ($(ECHO),)
 | 
						|
ECHO=
 | 
						|
else
 | 
						|
ECHO:=$(firstword $(ECHO))
 | 
						|
endif
 | 
						|
else
 | 
						|
ECHO:=$(firstword $(ECHO))
 | 
						|
endif
 | 
						|
endif
 | 
						|
export ECHO
 | 
						|
ifndef DATE
 | 
						|
DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
 | 
						|
ifeq ($(DATE),)
 | 
						|
DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
 | 
						|
ifeq ($(DATE),)
 | 
						|
DATE=
 | 
						|
else
 | 
						|
DATE:=$(firstword $(DATE))
 | 
						|
endif
 | 
						|
else
 | 
						|
DATE:=$(firstword $(DATE))
 | 
						|
endif
 | 
						|
endif
 | 
						|
export DATE
 | 
						|
ifndef GINSTALL
 | 
						|
GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
 | 
						|
ifeq ($(GINSTALL),)
 | 
						|
GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
 | 
						|
ifeq ($(GINSTALL),)
 | 
						|
GINSTALL=
 | 
						|
else
 | 
						|
GINSTALL:=$(firstword $(GINSTALL))
 | 
						|
endif
 | 
						|
else
 | 
						|
GINSTALL:=$(firstword $(GINSTALL))
 | 
						|
endif
 | 
						|
endif
 | 
						|
export GINSTALL
 | 
						|
ifndef CPPROG
 | 
						|
CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
 | 
						|
ifeq ($(CPPROG),)
 | 
						|
CPPROG=
 | 
						|
else
 | 
						|
CPPROG:=$(firstword $(CPPROG))
 | 
						|
endif
 | 
						|
endif
 | 
						|
export CPPROG
 | 
						|
ifndef RMPROG
 | 
						|
RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
 | 
						|
ifeq ($(RMPROG),)
 | 
						|
RMPROG=
 | 
						|
else
 | 
						|
RMPROG:=$(firstword $(RMPROG))
 | 
						|
endif
 | 
						|
endif
 | 
						|
export RMPROG
 | 
						|
ifndef MVPROG
 | 
						|
MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
 | 
						|
ifeq ($(MVPROG),)
 | 
						|
MVPROG=
 | 
						|
else
 | 
						|
MVPROG:=$(firstword $(MVPROG))
 | 
						|
endif
 | 
						|
endif
 | 
						|
export MVPROG
 | 
						|
ifndef ECHOREDIR
 | 
						|
ECHOREDIR:=$(subst /,$(PATHSEP),$(ECHO))
 | 
						|
endif
 | 
						|
ifndef COPY
 | 
						|
COPY:=$(CPPROG) -fp
 | 
						|
endif
 | 
						|
ifndef COPYTREE
 | 
						|
COPYTREE:=$(CPPROG) -rfp
 | 
						|
endif
 | 
						|
ifndef MOVE
 | 
						|
MOVE:=$(MVPROG) -f
 | 
						|
endif
 | 
						|
ifndef DEL
 | 
						|
DEL:=$(RMPROG) -f
 | 
						|
endif
 | 
						|
ifndef DELTREE
 | 
						|
DELTREE:=$(RMPROG) -rf
 | 
						|
endif
 | 
						|
ifndef INSTALL
 | 
						|
ifdef inUnix
 | 
						|
INSTALL:=$(GINSTALL) -c -m 644
 | 
						|
else
 | 
						|
INSTALL:=$(COPY)
 | 
						|
endif
 | 
						|
endif
 | 
						|
ifndef INSTALLEXE
 | 
						|
ifdef inUnix
 | 
						|
INSTALLEXE:=$(GINSTALL) -c -m 755
 | 
						|
else
 | 
						|
INSTALLEXE:=$(COPY)
 | 
						|
endif
 | 
						|
endif
 | 
						|
ifndef MKDIR
 | 
						|
MKDIR:=$(GINSTALL) -m 755 -d
 | 
						|
endif
 | 
						|
export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
 | 
						|
ifndef PPUFILES
 | 
						|
PPUFILES:=$(strip $(wildcard $(addsuffix /ppufiles$(SRCEXEEXT),$(SEARCHPATH))))
 | 
						|
ifeq ($(PPUFILES),)
 | 
						|
PPUFILES=
 | 
						|
else
 | 
						|
PPUFILES:=$(firstword $(PPUFILES))
 | 
						|
endif
 | 
						|
endif
 | 
						|
export PPUFILES
 | 
						|
ifndef PPUMOVE
 | 
						|
PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
 | 
						|
ifeq ($(PPUMOVE),)
 | 
						|
PPUMOVE=
 | 
						|
else
 | 
						|
PPUMOVE:=$(firstword $(PPUMOVE))
 | 
						|
endif
 | 
						|
endif
 | 
						|
export PPUMOVE
 | 
						|
ifndef FPCMAKE
 | 
						|
FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
 | 
						|
ifeq ($(FPCMAKE),)
 | 
						|
FPCMAKE=
 | 
						|
else
 | 
						|
FPCMAKE:=$(firstword $(FPCMAKE))
 | 
						|
endif
 | 
						|
endif
 | 
						|
export FPCMAKE
 | 
						|
ifndef ZIPPROG
 | 
						|
ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
 | 
						|
ifeq ($(ZIPPROG),)
 | 
						|
ZIPPROG=
 | 
						|
else
 | 
						|
ZIPPROG:=$(firstword $(ZIPPROG))
 | 
						|
endif
 | 
						|
endif
 | 
						|
export ZIPPROG
 | 
						|
ifndef TARPROG
 | 
						|
TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
 | 
						|
ifeq ($(TARPROG),)
 | 
						|
TARPROG=
 | 
						|
else
 | 
						|
TARPROG:=$(firstword $(TARPROG))
 | 
						|
endif
 | 
						|
endif
 | 
						|
export TARPROG
 | 
						|
ifndef AS
 | 
						|
AS=as
 | 
						|
endif
 | 
						|
ifndef LD
 | 
						|
LD=ld
 | 
						|
endif
 | 
						|
ifndef RC
 | 
						|
RC=rc
 | 
						|
endif
 | 
						|
PPAS=ppas$(BATCHEXT)
 | 
						|
ifdef inUnix
 | 
						|
LDCONFIG=ldconfig
 | 
						|
else
 | 
						|
LDCONFIG=
 | 
						|
endif
 | 
						|
ifdef DATE
 | 
						|
DATESTR:=$(shell $(DATE) +%Y%m%d)
 | 
						|
else
 | 
						|
DATESTR=
 | 
						|
endif
 | 
						|
ifndef UPXPROG
 | 
						|
ifeq ($(OS_TARGET),go32v2)
 | 
						|
UPXPROG:=1
 | 
						|
endif
 | 
						|
ifeq ($(OS_TARGET),win32)
 | 
						|
UPXPROG:=1
 | 
						|
endif
 | 
						|
ifdef UPXPROG
 | 
						|
UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH))))
 | 
						|
ifeq ($(UPXPROG),)
 | 
						|
UPXPROG=
 | 
						|
else
 | 
						|
UPXPROG:=$(firstword $(UPXPROG))
 | 
						|
endif
 | 
						|
else
 | 
						|
UPXPROG=
 | 
						|
endif
 | 
						|
endif
 | 
						|
export UPXPROG
 | 
						|
ZIPOPT=-9
 | 
						|
ZIPEXT=.zip
 | 
						|
ifeq ($(USETAR),bz2)
 | 
						|
TAROPT=vI
 | 
						|
TAREXT=.tar.bz2
 | 
						|
else
 | 
						|
TAROPT=vz
 | 
						|
TAREXT=.tar.gz
 | 
						|
endif
 | 
						|
LOADEREXT=.as
 | 
						|
EXEEXT=.exe
 | 
						|
PPLEXT=.ppl
 | 
						|
PPUEXT=.ppu
 | 
						|
OEXT=.o
 | 
						|
ASMEXT=.s
 | 
						|
SMARTEXT=.sl
 | 
						|
STATICLIBEXT=.a
 | 
						|
SHAREDLIBEXT=.so
 | 
						|
LIBPREFIX=lib
 | 
						|
RSTEXT=.rst
 | 
						|
FPCMADE=fpcmade
 | 
						|
ifeq ($(OS_TARGET),go32v1)
 | 
						|
PPUEXT=.pp1
 | 
						|
OEXT=.o1
 | 
						|
ASMEXT=.s1
 | 
						|
SMARTEXT=.sl1
 | 
						|
STATICLIBEXT=.a1
 | 
						|
SHAREDLIBEXT=.so1
 | 
						|
LIBPREFIX=
 | 
						|
FPCMADE=fpcmade.v1
 | 
						|
PACKAGESUFFIX=v1
 | 
						|
endif
 | 
						|
ifeq ($(OS_TARGET),go32v2)
 | 
						|
LIBPREFIX=
 | 
						|
FPCMADE=fpcmade.dos
 | 
						|
ZIPSUFFIX=go32
 | 
						|
endif
 | 
						|
ifeq ($(OS_TARGET),linux)
 | 
						|
EXEEXT=
 | 
						|
HASSHAREDLIB=1
 | 
						|
FPCMADE=fpcmade.lnx
 | 
						|
ZIPSUFFIX=linux
 | 
						|
endif
 | 
						|
ifeq ($(OS_TARGET),freebsd)
 | 
						|
EXEEXT=
 | 
						|
HASSHAREDLIB=1
 | 
						|
FPCMADE=fpcmade.freebsd
 | 
						|
ZIPSUFFIX=freebsd
 | 
						|
endif
 | 
						|
ifeq ($(OS_TARGET),win32)
 | 
						|
PPUEXT=.ppw
 | 
						|
OEXT=.ow
 | 
						|
ASMEXT=.sw
 | 
						|
SMARTEXT=.slw
 | 
						|
STATICLIBEXT=.aw
 | 
						|
SHAREDLIBEXT=.dll
 | 
						|
FPCMADE=fpcmade.w32
 | 
						|
ZIPSUFFIX=w32
 | 
						|
endif
 | 
						|
ifeq ($(OS_TARGET),os2)
 | 
						|
PPUEXT=.ppo
 | 
						|
ASMEXT=.so2
 | 
						|
OEXT=.oo2
 | 
						|
AOUTEXT=.out
 | 
						|
SMARTEXT=.so
 | 
						|
STATICLIBEXT=.ao2
 | 
						|
SHAREDLIBEXT=.dll
 | 
						|
FPCMADE=fpcmade.os2
 | 
						|
ZIPSUFFIX=emx
 | 
						|
endif
 | 
						|
ifdef REQUIRE_UNITSDIR
 | 
						|
override UNITSDIR+=$(REQUIRE_UNITSDIR)
 | 
						|
endif
 | 
						|
ifdef REQUIRE_PACKAGESDIR
 | 
						|
override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
 | 
						|
endif
 | 
						|
ifdef ZIPINSTALL
 | 
						|
ifeq ($(OS_TARGET),linux)
 | 
						|
UNIXINSTALLDIR=1
 | 
						|
endif
 | 
						|
ifeq ($(OS_TARGET),freebsd)
 | 
						|
UNIXINSTALLDIR=1
 | 
						|
endif
 | 
						|
else
 | 
						|
ifeq ($(OS_SOURCE),linux)
 | 
						|
UNIXINSTALLDIR=1
 | 
						|
endif
 | 
						|
ifeq ($(OS_SOURCE),freebsd)
 | 
						|
UNIXINSTALLDIR=1
 | 
						|
endif
 | 
						|
endif
 | 
						|
ifndef INSTALL_PREFIX
 | 
						|
ifdef UNIXINSTALLDIR
 | 
						|
INSTALL_PREFIX=/usr/local
 | 
						|
else
 | 
						|
ifdef INSTALL_FPCPACKAGE
 | 
						|
INSTALL_BASEDIR:=/pp
 | 
						|
else
 | 
						|
INSTALL_BASEDIR:=/$(PACKAGE_NAME)
 | 
						|
endif
 | 
						|
endif
 | 
						|
endif
 | 
						|
export INSTALL_PREFIX
 | 
						|
ifndef DIST_DESTDIR
 | 
						|
DIST_DESTDIR:=$(BASEDIR)
 | 
						|
endif
 | 
						|
export DIST_DESTDIR
 | 
						|
ifndef INSTALL_BASEDIR
 | 
						|
ifdef UNIXINSTALLDIR
 | 
						|
ifdef INSTALL_FPCPACKAGE
 | 
						|
INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
 | 
						|
else
 | 
						|
INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/$(PACKAGE_NAME)
 | 
						|
endif
 | 
						|
else
 | 
						|
INSTALL_BASEDIR:=$(INSTALL_PREFIX)
 | 
						|
endif
 | 
						|
endif
 | 
						|
ifndef INSTALL_BINDIR
 | 
						|
ifdef UNIXINSTALLDIR
 | 
						|
INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
 | 
						|
else
 | 
						|
INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
 | 
						|
ifdef INSTALL_FPCPACKAGE
 | 
						|
INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET)
 | 
						|
endif
 | 
						|
endif
 | 
						|
endif
 | 
						|
ifndef INSTALL_UNITDIR
 | 
						|
INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(OS_TARGET)
 | 
						|
ifdef INSTALL_FPCPACKAGE
 | 
						|
INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
 | 
						|
endif
 | 
						|
endif
 | 
						|
ifndef INSTALL_LIBDIR
 | 
						|
ifdef UNIXINSTALLDIR
 | 
						|
INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
 | 
						|
else
 | 
						|
INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
 | 
						|
endif
 | 
						|
endif
 | 
						|
ifndef INSTALL_SOURCEDIR
 | 
						|
ifdef UNIXINSTALLDIR
 | 
						|
ifdef INSTALL_FPCPACKAGE
 | 
						|
INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/src/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
 | 
						|
else
 | 
						|
INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/src/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
 | 
						|
endif
 | 
						|
else
 | 
						|
ifdef INSTALL_FPCPACKAGE
 | 
						|
INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
 | 
						|
else
 | 
						|
INSTALL_SOURCEDIRL:=$(INSTALL_BASEDIR)/source
 | 
						|
endif
 | 
						|
endif
 | 
						|
endif
 | 
						|
ifndef INSTALL_DOCDIR
 | 
						|
ifdef UNIXINSTALLDIR
 | 
						|
ifdef INSTALL_FPCPACKAGE
 | 
						|
INSTALL_DOCDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
 | 
						|
else
 | 
						|
INSTALL_DOCDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
 | 
						|
endif
 | 
						|
else
 | 
						|
ifdef INSTALL_FPCPACKAGE
 | 
						|
INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc/$(PACKAGE_NAME)
 | 
						|
else
 | 
						|
INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc
 | 
						|
endif
 | 
						|
endif
 | 
						|
endif
 | 
						|
ifndef INSTALL_EXAMPLEDIR
 | 
						|
ifdef UNIXINSTALLDIR
 | 
						|
ifdef INSTALL_FPCPACKAGE
 | 
						|
INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
 | 
						|
else
 | 
						|
INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
 | 
						|
endif
 | 
						|
else
 | 
						|
ifdef INSTALL_FPCPACKAGE
 | 
						|
INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples/$(PACKAGE_NAME)
 | 
						|
else
 | 
						|
INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples
 | 
						|
endif
 | 
						|
endif
 | 
						|
endif
 | 
						|
ifndef INSTALL_DATADIR
 | 
						|
INSTALL_DATADIR=$(INSTALL_BASEDIR)
 | 
						|
endif
 | 
						|
ifeq ($(OS_TARGET),linux)
 | 
						|
REQUIRE_PACKAGES_RTL=1
 | 
						|
endif
 | 
						|
ifeq ($(OS_TARGET),go32v2)
 | 
						|
REQUIRE_PACKAGES_RTL=1
 | 
						|
endif
 | 
						|
ifeq ($(OS_TARGET),win32)
 | 
						|
REQUIRE_PACKAGES_RTL=1
 | 
						|
endif
 | 
						|
ifeq ($(OS_TARGET),os2)
 | 
						|
REQUIRE_PACKAGES_RTL=1
 | 
						|
endif
 | 
						|
ifeq ($(OS_TARGET),freebsd)
 | 
						|
REQUIRE_PACKAGES_RTL=1
 | 
						|
endif
 | 
						|
ifeq ($(OS_TARGET),beos)
 | 
						|
REQUIRE_PACKAGES_RTL=1
 | 
						|
endif
 | 
						|
ifdef REQUIRE_PACKAGES_RTL
 | 
						|
PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
 | 
						|
ifneq ($(PACKAGEDIR_RTL),)
 | 
						|
PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
 | 
						|
ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
 | 
						|
override COMPILEPACKAGES+=package_rtl
 | 
						|
package_rtl:
 | 
						|
	$(MAKE) -C $(PACKAGEDIR_RTL) all
 | 
						|
endif
 | 
						|
ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 | 
						|
UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 | 
						|
else
 | 
						|
UNITDIR_RTL=$(PACKAGEDIR_RTL)
 | 
						|
endif
 | 
						|
else
 | 
						|
PACKAGEDIR_RTL=
 | 
						|
UNITDIR_RTL:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /rtl/Package.fpc,$(UNITSDIR)))))
 | 
						|
ifneq ($(UNITDIR_RTL),)
 | 
						|
UNITDIR_RTL:=$(firstword $(UNITDIR_RTL))
 | 
						|
else
 | 
						|
UNITDIR_RTL=
 | 
						|
endif
 | 
						|
endif
 | 
						|
ifdef UNITDIR_RTL
 | 
						|
override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 | 
						|
endif
 | 
						|
endif
 | 
						|
.PHONY: package_rtl
 | 
						|
override FPCOPTDEF=$(CPU_TARGET)
 | 
						|
ifneq ($(OS_TARGET),$(OS_SOURCE))
 | 
						|
override FPCOPT+=-T$(OS_TARGET)
 | 
						|
endif
 | 
						|
ifdef UNITDIR
 | 
						|
override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
 | 
						|
endif
 | 
						|
ifdef LIBDIR
 | 
						|
override FPCOPT+=$(addprefix -Fl,$(LIBDIR))
 | 
						|
endif
 | 
						|
ifdef OBJDIR
 | 
						|
override FPCOPT+=$(addprefix -Fo,$(OBJDIR))
 | 
						|
endif
 | 
						|
ifdef INCDIR
 | 
						|
override FPCOPT+=$(addprefix -Fi,$(INCDIR))
 | 
						|
endif
 | 
						|
ifdef LINKSMART
 | 
						|
override FPCOPT+=-XX
 | 
						|
endif
 | 
						|
ifdef CREATESMART
 | 
						|
override FPCOPT+=-CX
 | 
						|
endif
 | 
						|
ifdef DEBUG
 | 
						|
override FPCOPT+=-gl
 | 
						|
override FPCOPTDEF+=DEBUG
 | 
						|
endif
 | 
						|
ifdef RELEASE
 | 
						|
override FPCOPT+=-Xs -OG2p3 -n
 | 
						|
override FPCOPTDEF+=RELEASE
 | 
						|
endif
 | 
						|
ifdef STRIP
 | 
						|
override FPCOPT+=-Xs
 | 
						|
endif
 | 
						|
ifdef OPTIMIZE
 | 
						|
override FPCOPT+=-OG2p3
 | 
						|
endif
 | 
						|
ifdef VERBOSE
 | 
						|
override FPCOPT+=-vwni
 | 
						|
endif
 | 
						|
ifdef COMPILER_OPTIONS
 | 
						|
override FPCOPT+=$(COMPILER_OPTIONS)
 | 
						|
endif
 | 
						|
ifdef COMPILER_UNITDIR
 | 
						|
override FPCOPT+=$(addprefix -Fu,$(COMPILER_UNITDIR))
 | 
						|
endif
 | 
						|
ifdef COMPILER_LIBRARYDIR
 | 
						|
override FPCOPT+=$(addprefix -Fl,$(COMPILER_LIBRARYDIR))
 | 
						|
endif
 | 
						|
ifdef COMPILER_OBJECTDIR
 | 
						|
override FPCOPT+=$(addprefix -Fo,$(COMPILER_OBJECTDIR))
 | 
						|
endif
 | 
						|
ifdef COMPILER_INCLUDEDIR
 | 
						|
override FPCOPT+=$(addprefix -Fi,$(COMPILER_INCLUDEDIR))
 | 
						|
endif
 | 
						|
ifdef COMPILER_TARGETDIR
 | 
						|
override FPCOPT+=-FE$(COMPILER_TARGETDIR)
 | 
						|
ifeq ($(COMPILER_TARGETDIR),.)
 | 
						|
override TARGETDIRPREFIX=
 | 
						|
else
 | 
						|
override TARGETDIRPREFIX=$(COMPILER_TARGETDIR)/
 | 
						|
endif
 | 
						|
endif
 | 
						|
ifdef COMPILER_UNITTARGETDIR
 | 
						|
override FPCOPT+=-FU$(COMPILER_UNITTARGETDIR)
 | 
						|
ifeq ($(COMPILER_UNITTARGETDIR),.)
 | 
						|
override UNITTARGETDIRPREFIX=
 | 
						|
else
 | 
						|
override UNITTARGETDIRPREFIX=$(COMPILER_TARGETDIR)/
 | 
						|
endif
 | 
						|
else
 | 
						|
ifdef COMPILER_TARGETDIR
 | 
						|
override COMPILER_UNITTARGETDIR=$(COMPILER_TARGETDIR)
 | 
						|
override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX)
 | 
						|
endif
 | 
						|
endif
 | 
						|
ifdef OPT
 | 
						|
override FPCOPT+=$(OPT)
 | 
						|
endif
 | 
						|
ifdef FPCOPTDEF
 | 
						|
override FPCOPT+=$(addprefix -d,$(FPCOPTDEF))
 | 
						|
endif
 | 
						|
ifdef CFGFILE
 | 
						|
override FPCOPT+=@$(CFGFILE)
 | 
						|
endif
 | 
						|
ifdef USEENV
 | 
						|
override FPCEXTCMD:=$(FPCOPT)
 | 
						|
override FPCOPT:=!FPCEXTCMD
 | 
						|
export FPCEXTCMD
 | 
						|
endif
 | 
						|
override COMPILER:=$(FPC) $(FPCOPT)
 | 
						|
ifeq (,$(findstring -s ,$(COMPILER)))
 | 
						|
EXECPPAS=
 | 
						|
else
 | 
						|
ifeq ($(OS_SOURCE),$(OS_TARGET))
 | 
						|
EXECPPAS:=@$(PPAS)
 | 
						|
endif
 | 
						|
endif
 | 
						|
ifdef TARGET_RSTS
 | 
						|
override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
 | 
						|
override CLEANRSTFILES+=$(RSTFILES)
 | 
						|
endif
 | 
						|
.PHONY: fpc_distinstall
 | 
						|
fpc_distinstall: install exampleinstall
 | 
						|
.PHONY: fpc_zipinstall fpc_zipsourceinstall fpc_zipexampleinstall
 | 
						|
ifndef PACKDIR
 | 
						|
ifndef inUnix
 | 
						|
PACKDIR=$(BASEDIR)/../fpc-pack
 | 
						|
else
 | 
						|
PACKDIR=/tmp/fpc-pack
 | 
						|
endif
 | 
						|
endif
 | 
						|
ifndef ZIPNAME
 | 
						|
ifdef DIST_ZIPNAME
 | 
						|
ZIPNAME=$(DIST_ZIPNAME)
 | 
						|
else
 | 
						|
ZIPNAME=$(ZIPPREFIX)$(PACKAGE_NAME)$(ZIPSUFFIX)
 | 
						|
endif
 | 
						|
endif
 | 
						|
ifndef ZIPTARGET
 | 
						|
ifdef DIST_ZIPTARGET
 | 
						|
ZIPTARGET=DIST_ZIPTARGET
 | 
						|
else
 | 
						|
ZIPTARGET=install
 | 
						|
endif
 | 
						|
endif
 | 
						|
ifndef USEZIP
 | 
						|
ifdef inUnix
 | 
						|
USETAR=1
 | 
						|
endif
 | 
						|
endif
 | 
						|
ifndef inUnix
 | 
						|
USEZIPWRAPPER=1
 | 
						|
endif
 | 
						|
ifdef USEZIPWRAPPER
 | 
						|
ZIPPATHSEP=$(PATHSEP)
 | 
						|
ZIPWRAPPER=$(subst /,$(PATHSEP),$(DIST_DESTDIR)/fpczip$(BATCHEXT))
 | 
						|
else
 | 
						|
ZIPPATHSEP=/
 | 
						|
endif
 | 
						|
ZIPCMD_CDPACK:=cd $(subst /,$(ZIPPATHSEP),$(PACKDIR))
 | 
						|
ZIPCMD_CDBASE:=cd $(subst /,$(ZIPPATHSEP),$(BASEDIR))
 | 
						|
ifdef USETAR
 | 
						|
ZIPDESTFILE:=$(DIST_DESTDIR)/$(ZIPNAME)$(TAREXT)
 | 
						|
ZIPCMD_ZIP:=$(TARPROG) cf$(TAROPT) $(ZIPDESTFILE) *
 | 
						|
else
 | 
						|
ZIPDESTFILE:=$(DIST_DESTDIR)/$(ZIPNAME)$(ZIPEXT)
 | 
						|
ZIPCMD_ZIP:=$(subst /,$(ZIPPATHSEP),$(ZIPPROG)) -Dr $(ZIPOPT) $(ZIPDESTFILE) *
 | 
						|
endif
 | 
						|
fpc_zipinstall:
 | 
						|
	$(MAKE) $(ZIPTARGET) INSTALL_PREFIX=$(PACKDIR) ZIPINSTALL=1
 | 
						|
	$(DEL) $(ZIPDESTFILE)
 | 
						|
ifdef USEZIPWRAPPER
 | 
						|
ifneq ($(ECHOREDIR),echo)
 | 
						|
	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDPACK))" > $(ZIPWRAPPER)
 | 
						|
	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_ZIP))" >> $(ZIPWRAPPER)
 | 
						|
	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDBASE))" >> $(ZIPWRAPPER)
 | 
						|
else
 | 
						|
	echo $(ZIPCMD_CDPACK) > $(ZIPWRAPPER)
 | 
						|
	echo $(ZIPCMD_ZIP) >> $(ZIPWRAPPER)
 | 
						|
	echo $(ZIPCMD_CDBASE) >> $(ZIPWRAPPER)
 | 
						|
endif
 | 
						|
ifdef inUnix
 | 
						|
	/bin/sh $(ZIPWRAPPER)
 | 
						|
else
 | 
						|
	$(ZIPWRAPPER)
 | 
						|
endif
 | 
						|
	$(DEL) $(ZIPWRAPPER)
 | 
						|
else
 | 
						|
	$(ZIPCMD_CDPACK) ; $(ZIPCMD_ZIP) ; $(ZIPCMD_CDBASE)
 | 
						|
endif
 | 
						|
	$(DELTREE) $(PACKDIR)
 | 
						|
fpc_zipsourceinstall:
 | 
						|
	$(MAKE) fpc_zipinstall ZIPTARGET=sourceinstall ZIPSUFFIX=src
 | 
						|
fpc_zipexampleinstall:
 | 
						|
ifdef HASEXAMPLES
 | 
						|
	$(MAKE) fpc_zipinstall ZIPTARGET=exampleinstall ZIPSUFFIX=exm
 | 
						|
endif
 | 
						|
fpc_zipdistinstall:
 | 
						|
	$(MAKE) fpc_zipinstall ZIPTARGET=distinstall
 | 
						|
.PHONY: fpc_clean fpc_cleanall fpc_distclean
 | 
						|
ifdef EXEFILES
 | 
						|
override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
 | 
						|
endif
 | 
						|
ifdef CLEAN_UNITS
 | 
						|
override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
 | 
						|
endif
 | 
						|
ifdef CLEANPPUFILES
 | 
						|
override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
 | 
						|
ifdef PPUFILES
 | 
						|
CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 | 
						|
else
 | 
						|
CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(LIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))))
 | 
						|
endif
 | 
						|
override CLEANPPULINKFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES))
 | 
						|
endif
 | 
						|
fpc_clean: $(CLEANTARGET)
 | 
						|
ifdef CLEANEXEFILES
 | 
						|
	-$(DEL) $(CLEANEXEFILES)
 | 
						|
endif
 | 
						|
ifdef CLEANPPUFILES
 | 
						|
	-$(DEL) $(CLEANPPUFILES)
 | 
						|
endif
 | 
						|
ifneq ($(CLEANPPULINKFILES),)
 | 
						|
	-$(DEL) $(CLEANPPULINKFILES)
 | 
						|
endif
 | 
						|
ifdef CLEANRSTFILES
 | 
						|
	-$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
 | 
						|
endif
 | 
						|
ifdef CLEAN_FILES
 | 
						|
	-$(DEL) $(CLEAN_FILES)
 | 
						|
endif
 | 
						|
ifdef LIB_NAME
 | 
						|
	-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
 | 
						|
endif
 | 
						|
	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
 | 
						|
fpc_distclean: clean
 | 
						|
ifdef COMPILER_UNITTARGETDIR
 | 
						|
TARGETDIRCLEAN=fpc_clean
 | 
						|
endif
 | 
						|
fpc_cleanall: $(CLEANTARGET) $(TARGETDIRCLEAN)
 | 
						|
ifdef CLEANEXEFILES
 | 
						|
	-$(DEL) $(CLEANEXEFILES)
 | 
						|
endif
 | 
						|
	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 | 
						|
	-$(DELTREE) *$(SMARTEXT)
 | 
						|
	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
 | 
						|
ifdef AOUTEXT
 | 
						|
	-$(DEL) *$(AOUTEXT)
 | 
						|
endif
 | 
						|
.PHONY: fpc_info
 | 
						|
fpc_info:
 | 
						|
	@$(ECHO)
 | 
						|
	@$(ECHO)  == Package info ==
 | 
						|
	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
 | 
						|
	@$(ECHO)  Package Version.. $(PACKAGE_VERSION)
 | 
						|
	@$(ECHO)
 | 
						|
	@$(ECHO)  == Configuration info ==
 | 
						|
	@$(ECHO)
 | 
						|
	@$(ECHO)  FPC.......... $(FPC)
 | 
						|
	@$(ECHO)  FPC Version.. $(FPC_VERSION)
 | 
						|
	@$(ECHO)  Source CPU... $(CPU_SOURCE)
 | 
						|
	@$(ECHO)  Target CPU... $(CPU_TARGET)
 | 
						|
	@$(ECHO)  Source OS.... $(OS_SOURCE)
 | 
						|
	@$(ECHO)  Target OS.... $(OS_TARGET)
 | 
						|
	@$(ECHO)
 | 
						|
	@$(ECHO)  == Directory info ==
 | 
						|
	@$(ECHO)
 | 
						|
	@$(ECHO)  Basedir......... $(BASEDIR)
 | 
						|
	@$(ECHO)  FPCDir.......... $(FPCDIR)
 | 
						|
	@$(ECHO)  UnitsDir........ $(UNITSDIR)
 | 
						|
	@$(ECHO)  PackagesDir..... $(PACKAGESDIR)
 | 
						|
	@$(ECHO)
 | 
						|
	@$(ECHO)  GCC library..... $(GCCLIBDIR)
 | 
						|
	@$(ECHO)  Other library... $(OTHERLIBDIR)
 | 
						|
	@$(ECHO)
 | 
						|
	@$(ECHO)  == Tools info ==
 | 
						|
	@$(ECHO)
 | 
						|
	@$(ECHO)  Pwd....... $(PWD)
 | 
						|
	@$(ECHO)  Mv........ $(MVPROG)
 | 
						|
	@$(ECHO)  Cp........ $(CPPROG)
 | 
						|
	@$(ECHO)  Rm........ $(RMPROG)
 | 
						|
	@$(ECHO)  GInstall.. $(GINSTALL)
 | 
						|
	@$(ECHO)  Echo...... $(ECHO)
 | 
						|
	@$(ECHO)  Date...... $(DATE)
 | 
						|
	@$(ECHO)  FPCMake... $(FPCMAKE)
 | 
						|
	@$(ECHO)  PPUMove... $(PPUMOVE)
 | 
						|
	@$(ECHO)  PPUFiles.. $(PPUFILES)
 | 
						|
	@$(ECHO)  Upx....... $(UPXPROG)
 | 
						|
	@$(ECHO)  Zip....... $(ZIPPROG)
 | 
						|
	@$(ECHO)
 | 
						|
	@$(ECHO)  == Object info ==
 | 
						|
	@$(ECHO)
 | 
						|
	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
 | 
						|
	@$(ECHO)  Target Units........ $(TARGET_UNITS)
 | 
						|
	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
 | 
						|
	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
 | 
						|
	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
 | 
						|
	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
 | 
						|
	@$(ECHO)
 | 
						|
	@$(ECHO)  Clean Units......... $(CLEAN_UNITS)
 | 
						|
	@$(ECHO)  Clean Files......... $(CLEAN_FILES)
 | 
						|
	@$(ECHO)
 | 
						|
	@$(ECHO)  Install Units....... $(INSTALL_UNITS)
 | 
						|
	@$(ECHO)  Install Files....... $(INSTALL_FILES)
 | 
						|
	@$(ECHO)
 | 
						|
	@$(ECHO)  == Install info ==
 | 
						|
	@$(ECHO)
 | 
						|
	@$(ECHO)  DateStr.............. $(DATESTR)
 | 
						|
	@$(ECHO)  ZipPrefix............ $(ZIPPREFIX)
 | 
						|
	@$(ECHO)  ZipSuffix............ $(ZIPSUFFIX)
 | 
						|
	@$(ECHO)  Install FPC Package.. $(INSTALL_FPCPACKAGE)
 | 
						|
	@$(ECHO)
 | 
						|
	@$(ECHO)  Install base dir..... $(INSTALL_BASEDIR)
 | 
						|
	@$(ECHO)  Install binary dir... $(INSTALL_BINDIR)
 | 
						|
	@$(ECHO)  Install library dir.. $(INSTALL_LIBDIR)
 | 
						|
	@$(ECHO)  Install units dir.... $(INSTALL_UNITDIR)
 | 
						|
	@$(ECHO)  Install source dir... $(INSTALL_SOURCEDIR)
 | 
						|
	@$(ECHO)  Install doc dir...... $(INSTALL_DOCDIR)
 | 
						|
	@$(ECHO)  Install example dir.. $(INSTALL_EXAMPLEDIR)
 | 
						|
	@$(ECHO)  Install data dir..... $(INSTALL_DATADIR)
 | 
						|
	@$(ECHO)
 | 
						|
	@$(ECHO)  Dist destination dir. $(DIST_DESTDIR)
 | 
						|
	@$(ECHO)  Dist zip name........ $(DIST_ZIPNAME)
 | 
						|
	@$(ECHO)
 | 
						|
TARGET_DIRS_UTILS=1
 | 
						|
ifdef TARGET_DIRS_UTILS
 | 
						|
utils_all:
 | 
						|
	$(MAKE) -C utils all
 | 
						|
utils_debug:
 | 
						|
	$(MAKE) -C utils debug
 | 
						|
utils_smart:
 | 
						|
	$(MAKE) -C utils smart
 | 
						|
utils_examples:
 | 
						|
	$(MAKE) -C utils examples
 | 
						|
utils_shared:
 | 
						|
	$(MAKE) -C utils shared
 | 
						|
utils_install:
 | 
						|
	$(MAKE) -C utils install
 | 
						|
utils_sourceinstall:
 | 
						|
	$(MAKE) -C utils sourceinstall
 | 
						|
utils_exampleinstall:
 | 
						|
	$(MAKE) -C utils exampleinstall
 | 
						|
utils_distinstall:
 | 
						|
	$(MAKE) -C utils distinstall
 | 
						|
utils_zipinstall:
 | 
						|
	$(MAKE) -C utils zipinstall
 | 
						|
utils_zipsourceinstall:
 | 
						|
	$(MAKE) -C utils zipsourceinstall
 | 
						|
utils_zipexampleinstall:
 | 
						|
	$(MAKE) -C utils zipexampleinstall
 | 
						|
utils_zipdistinstall:
 | 
						|
	$(MAKE) -C utils zipdistinstall
 | 
						|
utils_clean:
 | 
						|
	$(MAKE) -C utils clean
 | 
						|
utils_distclean:
 | 
						|
	$(MAKE) -C utils distclean
 | 
						|
utils_cleanall:
 | 
						|
	$(MAKE) -C utils cleanall
 | 
						|
utils_info:
 | 
						|
	$(MAKE) -C utils info
 | 
						|
utils:
 | 
						|
	$(MAKE) -C utils all
 | 
						|
.PHONY: utils_all utils_debug utils_smart utils_examples utils_shared utils_install utils_sourceinstall utils_exampleinstall utils_distinstall utils_zipinstall utils_zipsourceinstall utils_zipexampleinstall utils_zipdistinstall utils_clean utils_distclean utils_cleanall utils_info utils
 | 
						|
endif
 | 
						|
ifndef DIFF
 | 
						|
DIFF:=$(strip $(wildcard $(addsuffix /diff$(SRCEXEEXT),$(SEARCHPATH))))
 | 
						|
ifeq ($(DIFF),)
 | 
						|
DIFF=
 | 
						|
else
 | 
						|
DIFF:=$(firstword $(DIFF))
 | 
						|
endif
 | 
						|
endif
 | 
						|
export DIFF
 | 
						|
ifndef CMP
 | 
						|
CMP:=$(strip $(wildcard $(addsuffix /cmp$(SRCEXEEXT),$(SEARCHPATH))))
 | 
						|
ifeq ($(CMP),)
 | 
						|
CMP=
 | 
						|
else
 | 
						|
CMP:=$(firstword $(CMP))
 | 
						|
endif
 | 
						|
endif
 | 
						|
export CMP
 | 
						|
debug: $(addsuffix _debug,$(TARGET_DIRS))
 | 
						|
smart: $(addsuffix _smart,$(TARGET_DIRS))
 | 
						|
examples: $(addsuffix _examples,$(TARGET_DIRS))
 | 
						|
shared: $(addsuffix _shared,$(TARGET_DIRS))
 | 
						|
sourceinstall:
 | 
						|
exampleinstall: $(addsuffix _exampleinstall,$(TARGET_DIRS))
 | 
						|
distinstall: fpc_distinstall
 | 
						|
zipinstall: fpc_zipinstall
 | 
						|
zipsourceinstall: fpc_zipsourceinstall
 | 
						|
zipexampleinstall: fpc_zipexampleinstall $(addsuffix _zipexampleinstall,$(TARGET_DIRS))
 | 
						|
zipdistinstall: fpc_zipdistinstall $(addsuffix _zipdistinstall,$(TARGET_DIRS))
 | 
						|
cleanall: $(addsuffix _cleanall,$(TARGET_DIRS))
 | 
						|
info: fpc_info
 | 
						|
.PHONY: debug smart examples shared sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info
 | 
						|
ifneq ($(wildcard fpcmake.loc),)
 | 
						|
include fpcmake.loc
 | 
						|
endif
 | 
						|
ifeq ($(OS_TARGET),win32)
 | 
						|
ifdef CMP
 | 
						|
override DIFF:=$(CMP) -i138
 | 
						|
endif
 | 
						|
override COMPILER+=-XX
 | 
						|
endif
 | 
						|
ifdef DIFF
 | 
						|
ifdef OLDFPC
 | 
						|
DIFFRESULT:=$(shell $(DIFF) $(OLDFPC) $(FPC))
 | 
						|
else
 | 
						|
DIFFRESULT=Not equal
 | 
						|
endif
 | 
						|
else
 | 
						|
DIFFRESULT=No diff program
 | 
						|
endif
 | 
						|
PPEXENAME=pp$(EXEEXT)
 | 
						|
EXENAME=ppc$(CPUSUF)$(EXEEXT)
 | 
						|
TEMPNAME=ppc$(EXEEXT)
 | 
						|
TEMPNAME1=ppc1$(EXEEXT)
 | 
						|
TEMPNAME2=ppc2$(EXEEXT)
 | 
						|
TEMPNAME3=ppc3$(EXEEXT)
 | 
						|
MAKEDEP=ppdep$(EXEEXT)
 | 
						|
MSG2INC=msg2inc$(EXEEXT)
 | 
						|
alpha:
 | 
						|
	$(MAKE) ALPHA=1 all
 | 
						|
i386:
 | 
						|
	$(MAKE) I386=1 all
 | 
						|
m68k:
 | 
						|
	$(MAKE) M68K=1 all
 | 
						|
powerpc:
 | 
						|
	$(MAKE) POWERPC=1 all
 | 
						|
all: $(EXENAME) $(addsuffix _all,$(TARGET_DIRS))
 | 
						|
ifeq ($(MAKELEVEL),0)
 | 
						|
ifndef STARTTIME
 | 
						|
ifdef DATE
 | 
						|
STARTTIME:=$(shell $(DATE) +%T)
 | 
						|
else
 | 
						|
STARTTIME:=unknown
 | 
						|
endif
 | 
						|
endif
 | 
						|
endif
 | 
						|
export STARTTIME
 | 
						|
ifdef DATE
 | 
						|
ENDTIME=$(shell $(DATE) +%T)
 | 
						|
else
 | 
						|
ENDTIME:=unknown
 | 
						|
endif
 | 
						|
echotime:
 | 
						|
	@echo Start $(STARTTIME) now $(ENDTIME)
 | 
						|
ifndef DIFFRESULT
 | 
						|
next :
 | 
						|
	@echo $(OLDFPC) and $(FPC) are equal
 | 
						|
	$(COPY) $(FPC) $(EXENAME)
 | 
						|
else
 | 
						|
next :
 | 
						|
	$(MAKE) execlean
 | 
						|
	$(MAKE) -C $(UNITDIR_RTL) clean
 | 
						|
	$(MAKE) -C $(UNITDIR_RTL) 'FPC=$(FPC)' 'OPT=$(RTLOPTS)'
 | 
						|
	$(MAKE) clean
 | 
						|
	$(MAKE) $(EXENAME)
 | 
						|
	$(MAKE) echotime
 | 
						|
endif
 | 
						|
ppuclean:
 | 
						|
	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 | 
						|
execlean :
 | 
						|
	-$(DEL) fpc$(EXEEXT) ppc386$(EXEEXT) ppcaxp$(EXEEXT) ppc68k$(EXEEXT) ppcppc$(EXEEXT)
 | 
						|
clean : execlean fpc_cleanall $(addsuffix _clean,$(TARGET_DIRS))
 | 
						|
distclean: execlean fpc_cleanall $(addsuffix _distclean,$(TARGET_DIRS))
 | 
						|
	-$(DEL) $(TEMPNAME) $(TEMPNAME1) $(TEMPNAME2) $(TEMPNAME3) $(MSG2INC)
 | 
						|
$(MAKEDEP): $(UTILSDIR)/ppdep.pp
 | 
						|
	$(COMPILER) $(UTILSDIR)/ppdep.pp
 | 
						|
	$(COPY) $(UTILSDIR)/$(MAKEDEP) $(MAKEDEP)
 | 
						|
dependencies : $(MAKEDEP)
 | 
						|
	$(MAKEDEP) pp.pas $(FPCOPTDEF) $(LOCALDEF) '-F$$(COMPILER) $$(LOCALOPT)' > depend
 | 
						|
ifdef USEDEPEND
 | 
						|
include depend
 | 
						|
endif
 | 
						|
$(MSG2INC): $(COMPILERUTILSDIR)/msg2inc.pp
 | 
						|
	$(COMPILER) -FE. $(COMPILERUTILSDIR)/msg2inc.pp
 | 
						|
msgtxt.inc: $(MSGFILE)
 | 
						|
	$(MAKE) $(MSG2INC)
 | 
						|
	$(MSG2INC) $(MSGFILE) msg msg
 | 
						|
msg: msgtxt.inc
 | 
						|
ifndef COMPLETE
 | 
						|
$(EXENAME) : $(wildcard *.pas) $(wildcard *.inc) msg
 | 
						|
	$(COMPILER) pp.pas
 | 
						|
	$(EXECPPAS)
 | 
						|
	$(MOVE) $(PPEXENAME) $(EXENAME)
 | 
						|
else
 | 
						|
$(EXENAME) : $(wildcard *.pas) $(wildcard *.inc) msg
 | 
						|
	$(COMPILER) pp.pas
 | 
						|
	$(EXECPPAS)
 | 
						|
	$(COMPILER) pp.pas
 | 
						|
	$(EXECPPAS)
 | 
						|
	$(COMPILER) pp.pas
 | 
						|
	$(EXECPPAS)
 | 
						|
	$(MOVE) $(PPEXENAME) $(EXENAME)
 | 
						|
endif
 | 
						|
tokens.dat : $(wildcard *.pas) $(wildcard *.inc)
 | 
						|
	$(COMPILER) tokendat.pas
 | 
						|
	./tokendat
 | 
						|
remake: $(EXENAME)
 | 
						|
	$(MOVE) $(EXENAME) $(TEMPNAME)
 | 
						|
	$(MAKE) execlean
 | 
						|
	$(MAKE) -C $(UNITDIR_RTL) clean
 | 
						|
	$(MAKE) clean
 | 
						|
	$(MAKE) 'FPC=$(BASEDIR)/$(TEMPNAME)' all
 | 
						|
remake3: $(TEMPNAME3)
 | 
						|
	$(MAKE) 'FPC=$(BASEDIR)/$(TEMPNAME3)' 'OLDFPC=$(BASEDIR)/$(TEMPNAME2)' next
 | 
						|
	$(DIFF) $(TEMPNAME3) $(EXENAME)
 | 
						|
$(TEMPNAME1) : $(EXENAME)
 | 
						|
	-$(DEL) $(TEMPNAME1)
 | 
						|
	$(MOVE) $(EXENAME) $(TEMPNAME1)
 | 
						|
$(TEMPNAME2) : $(TEMPNAME1)
 | 
						|
	$(MAKE) 'FPC=$(BASEDIR)/$(TEMPNAME1)' 'OLDFPC=' next
 | 
						|
	-$(DEL) $(TEMPNAME2)
 | 
						|
	$(MOVE) $(EXENAME) $(TEMPNAME2)
 | 
						|
$(TEMPNAME3) : $(TEMPNAME2)
 | 
						|
	$(MAKE) 'FPC=$(BASEDIR)/$(TEMPNAME2)' 'OLDFPC=$(BASEDIR)/$(TEMPNAME1)' next
 | 
						|
	-$(DEL) $(TEMPNAME3)
 | 
						|
	$(MOVE) $(EXENAME) $(TEMPNAME3)
 | 
						|
cycle:
 | 
						|
	$(MAKE) clean
 | 
						|
	$(MAKE) -C $(UNITDIR_RTL) clean
 | 
						|
	$(MAKE) -C $(UNITDIR_RTL) 'OPT=$(RTLOPTS)' all
 | 
						|
	$(MAKE) remake3
 | 
						|
	$(MAKE) $(addsuffix _all,$(TARGET_DIRS)) 'FPC=$(BASEDIR)/$(EXENAME)'
 | 
						|
	$(MAKE) echotime
 | 
						|
cycledep:
 | 
						|
	$(MAKE) cycle USEDEPEND=1
 | 
						|
cvstest:
 | 
						|
	$(MAKE) cycle 'LOCALOPT=-n -Se' 'RTLOPTS=-n -Se'
 | 
						|
.PHONY: quickinstall install installsym
 | 
						|
MSGINSTALLDIR=$(INSTALL_BASEDIR)/msg
 | 
						|
override PPEXEFILE:=$(wildcard $(EXENAME))
 | 
						|
quickinstall: $(addsuffix _install,$(TARGET_DIRS))
 | 
						|
ifneq ($(PPEXEFILE),)
 | 
						|
ifdef UPXPROG
 | 
						|
	-$(UPXPROG) $(EXENAME)
 | 
						|
endif
 | 
						|
ifdef UNIXINSTALLDIR
 | 
						|
	$(MKDIR) $(INSTALL_BASEDIR)
 | 
						|
	$(INSTALLEXE) $(EXENAME) $(INSTALL_BASEDIR)
 | 
						|
else
 | 
						|
	$(MKDIR) $(INSTALL_BINDIR)
 | 
						|
	$(INSTALLEXE) $(EXENAME) $(INSTALL_BINDIR)
 | 
						|
endif
 | 
						|
endif
 | 
						|
install: quickinstall
 | 
						|
ifdef UNIXINSTALLDIR
 | 
						|
	$(MKDIR) $(INSTALL_BASEDIR)
 | 
						|
	$(INSTALLEXE) $(COMPILERUTILSDIR)/samplecfg $(INSTALL_BASEDIR)/samplecfg
 | 
						|
endif
 | 
						|
	$(MKDIR) $(MSGINSTALLDIR)
 | 
						|
	$(INSTALL) $(MSGFILES) $(MSGINSTALLDIR)
 | 
						|
installsymlink: install
 | 
						|
ifdef UNIXINSTALLDIR
 | 
						|
	$(MKDIR) $(INSTALL_BINDIR)
 | 
						|
	ln -sf $(INSTALL_BASEDIR)/ppc386 $(INSTALL_BINDIR)/ppc386
 | 
						|
endif
 | 
						|
.PHONY: rtl rtlclean rtlinstall
 | 
						|
rtl:
 | 
						|
	$(MAKE) -C $(UNITDIR_RTL) all
 | 
						|
rtlclean:
 | 
						|
	$(MAKE) -C $(UNITDIR_RTL) clean
 | 
						|
rtlinstall:
 | 
						|
	$(MAKE) -C $(UNITDIR_RTL) install
 | 
						|
localmake:=$(strip $(wildcard makefile.loc))
 | 
						|
ifdef localmake
 | 
						|
include ./$(localmake)
 | 
						|
endif
 |