Переглянути джерело

* Matrix unit included in build process

daniel 21 роки тому
батько
коміт
6c4cade37d

+ 78 - 151
rtl/amiga/Makefile

@@ -1,25 +1,15 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2004/05/23]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2004/07/07]
 #
 default: all
-MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx watcom
-BSDs = freebsd netbsd openbsd darwin
-UNIXs = linux $(BSDs) sunos qnx
-FORCE:
-.PHONY: FORCE
-override PATH:=$(patsubst %/,%,$(subst \,/,$(PATH)))
-ifneq ($(findstring darwin,$(OSTYPE)),)
-inUnix=1 #darwin
-SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
-else
+MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx
+override PATH:=$(subst \,/,$(PATH))
 ifeq ($(findstring ;,$(PATH)),)
 inUnix=1
 SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
 else
 SEARCHPATH:=$(subst ;, ,$(PATH))
 endif
-endif
-SEARCHPATH+=$(patsubst %/,%,$(subst \,/,$(dir $(MAKE))))
 PWD:=$(strip $(wildcard $(addsuffix /pwd.exe,$(SEARCHPATH))))
 ifeq ($(PWD),)
 PWD:=$(strip $(wildcard $(addsuffix /pwd,$(SEARCHPATH))))
@@ -46,13 +36,22 @@ ifneq ($(findstring cygdrive,$(PATH)),)
 inCygWin=1
 endif
 endif
+ifeq ($(OS_TARGET),freebsd)
+BSDhier=1
+endif
+ifeq ($(OS_TARGET),netbsd)
+BSDhier=1
+endif
+ifeq ($(OS_TARGET),openbsd)
+BSDhier=1
+endif
 ifdef inUnix
-SRCBATCHEXT=.sh
+BATCHEXT=.sh
 else
 ifdef inOS2
-SRCBATCHEXT=.cmd
+BATCHEXT=.cmd
 else
-SRCBATCHEXT=.bat
+BATCHEXT=.bat
 endif
 endif
 ifdef inUnix
@@ -157,12 +156,6 @@ ifeq ($(findstring $(OS_TARGET),$(MAKEFILETARGETS)),)
 $(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake first)
 endif
 endif
-ifneq ($(findstring $(OS_TARGET),$(BSDs)),)
-BSDhier=1
-endif
-ifeq ($(OS_TARGET),linux)
-linuxHier=1
-endif
 export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE CROSSCOMPILE
 ifdef FPCDIR
 override FPCDIR:=$(subst \,/,$(FPCDIR))
@@ -192,14 +185,11 @@ override FPCDIR:=$(FPCDIR)/..
 ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR:=$(FPCDIR)/..
 ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR:=$(BASEDIR)
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=c:/pp
 endif
 endif
 endif
 endif
-endif
 ifndef CROSSDIR
 CROSSDIR:=$(FPCDIR)/cross/$(FULL_TARGET)
 endif
@@ -236,7 +226,7 @@ SYSTEMUNIT=syslinux
 endif
 OBJPASDIR=$(RTL)/objpas
 GRAPHDIR=$(INC)/graph
-override TARGET_UNITS+=system exec strings dos crt objects printer objpas heaptrc lineinfo getopts graph sysutils math typinfo
+override TARGET_UNITS+=system exec strings dos crt objects printer objpas matrix heaptrc lineinfo getopts graph sysutils math typinfo
 override TARGET_LOADERS+=prt0
 override TARGET_RSTS+=math
 override INSTALL_FPCPACKAGE=y
@@ -250,12 +240,42 @@ ifdef REQUIRE_PACKAGESDIR
 override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
 endif
 ifdef ZIPINSTALL
-ifneq ($(findstring $(OS_TARGET),$(UNIXs)),)
-UNIXHier=1
+ifeq ($(OS_TARGET),linux)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),freebsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),netbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),openbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),qnx)
+UNIXINSTALLDIR=1
 endif
 else
-ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),)
-UNIXHier=1
+ifeq ($(OS_SOURCE),linux)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),freebsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),netbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),openbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),qnx)
+UNIXINSTALLDIR=1
 endif
 endif
 ifndef INSTALL_PREFIX
@@ -264,7 +284,7 @@ INSTALL_PREFIX=$(PREFIX)
 endif
 endif
 ifndef INSTALL_PREFIX
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 INSTALL_PREFIX=/usr/local
 else
 ifdef INSTALL_FPCPACKAGE
@@ -283,7 +303,7 @@ DIST_DESTDIR:=$(BASEDIR)
 endif
 export DIST_DESTDIR
 ifndef INSTALL_BASEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef INSTALL_FPCPACKAGE
 INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
 else
@@ -294,18 +314,10 @@ INSTALL_BASEDIR:=$(INSTALL_PREFIX)
 endif
 endif
 ifndef INSTALL_BINDIR
-ifdef UNIXHier
-ifdef CROSSCOMPILE
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
-else
+ifdef UNIXINSTALLDIR
 INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
-endif
-else
-ifdef CROSSCOMPILE
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
 else
 INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
-endif
 ifdef INSTALL_FPCPACKAGE
 INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET)
 endif
@@ -324,23 +336,19 @@ endif
 endif
 endif
 ifndef INSTALL_LIBDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
 else
 INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
 endif
 endif
 ifndef INSTALL_SOURCEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef BSDhier
 SRCPREFIXDIR=share/src
 else
-ifdef linuxHier
-SRCPREFIXDIR=share/src
-else
 SRCPREFIXDIR=src
 endif
-endif
 ifdef INSTALL_FPCPACKAGE
 ifdef INSTALL_FPCSUBDIR
 INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
@@ -363,16 +371,12 @@ endif
 endif
 endif
 ifndef INSTALL_DOCDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef BSDhier
 DOCPREFIXDIR=share/doc
 else
-ifdef linuxHier
-DOCPREFIXDIR=share/doc
-else
 DOCPREFIXDIR=doc
 endif
-endif
 ifdef INSTALL_FPCPACKAGE
 INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
 else
@@ -387,28 +391,20 @@ endif
 endif
 endif
 ifndef INSTALL_EXAMPLEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef INSTALL_FPCPACKAGE
 ifdef BSDhier
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
 else
-ifdef linuxHier
-INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples
-else
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
 endif
-endif
 else
 ifdef BSDhier
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
 else
-ifdef linuxHier
-INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
 endif
 endif
-endif
 else
 ifdef INSTALL_FPCPACKAGE
 INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples/$(PACKAGE_NAME)
@@ -430,7 +426,6 @@ endif
 else
 CROSSBINDIR=
 endif
-BATCHEXT=.bat
 LOADEREXT=.as
 EXEEXT=.exe
 PPLEXT=.ppl
@@ -454,37 +449,25 @@ STATICLIBPREFIX=
 FPCMADE=fpcmade.dos
 ZIPSUFFIX=go32
 endif
-ifeq ($(OS_TARGET),watcom)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.wat
-ZIPSUFFIX=watc
-OEXT=.obj
-ASMEXT=.asm
-SHAREDLIBEXT=.dll
-endif
 ifeq ($(OS_TARGET),linux)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.lnx
 ZIPSUFFIX=linux
 endif
 ifeq ($(OS_TARGET),freebsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.freebsd
 ZIPSUFFIX=freebsd
 endif
 ifeq ($(OS_TARGET),netbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.netbsd
 ZIPSUFFIX=netbsd
 endif
 ifeq ($(OS_TARGET),openbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.openbsd
@@ -496,7 +479,6 @@ FPCMADE=fpcmade.w32
 ZIPSUFFIX=w32
 endif
 ifeq ($(OS_TARGET),os2)
-BATCHEXT=.cmd
 AOUTEXT=.out
 STATICLIBPREFIX=
 SHAREDLIBEXT=.dll
@@ -505,7 +487,6 @@ ZIPSUFFIX=os2
 ECHO=echo
 endif
 ifeq ($(OS_TARGET),emx)
-BATCHEXT=.cmd
 AOUTEXT=.out
 STATICLIBPREFIX=
 SHAREDLIBEXT=.dll
@@ -523,19 +504,16 @@ EXEEXT=.ttp
 FPCMADE=fpcmade.ata
 endif
 ifeq ($(OS_TARGET),beos)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.be
 ZIPSUFFIX=be
 endif
 ifeq ($(OS_TARGET),sunos)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.sun
 ZIPSUFFIX=sun
 endif
 ifeq ($(OS_TARGET),qnx)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.qnx
 ZIPSUFFIX=qnx
@@ -547,14 +525,10 @@ FPCMADE=fpcmade.nw
 ZIPSUFFIX=nw
 endif
 ifeq ($(OS_TARGET),macos)
-BATCHEXT=
 EXEEXT=
-FPCMADE=fpcmade.macos
-ZIPSUFFIX=macos
-DEBUGSYMEXT=.xcoff
+FPCMADE=fpcmade.mcc
 endif
 ifeq ($(OS_TARGET),darwin)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.darwin
@@ -577,34 +551,25 @@ STATICLIBPREFIX=
 FPCMADE=fpcmade.dos
 ZIPSUFFIX=go32
 endif
-ifeq ($(OS_TARGET),watcom)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.dos
-ZIPSUFFIX=watcom
-endif
 ifeq ($(OS_TARGET),linux)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.lnx
 ZIPSUFFIX=linux
 endif
 ifeq ($(OS_TARGET),freebsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.freebsd
 ZIPSUFFIX=freebsd
 endif
 ifeq ($(OS_TARGET),netbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.netbsd
 ZIPSUFFIX=netbsd
 endif
 ifeq ($(OS_TARGET),openbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.openbsd
@@ -621,7 +586,6 @@ FPCMADE=fpcmade.w32
 ZIPSUFFIX=w32
 endif
 ifeq ($(OS_TARGET),os2)
-BATCHEXT=.cmd
 PPUEXT=.ppo
 ASMEXT=.so2
 OEXT=.oo2
@@ -654,7 +618,6 @@ EXEEXT=.ttp
 FPCMADE=fpcmade.ata
 endif
 ifeq ($(OS_TARGET),beos)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -665,7 +628,6 @@ FPCMADE=fpcmade.be
 ZIPSUFFIX=be
 endif
 ifeq ($(OS_TARGET),sunos)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -676,7 +638,6 @@ FPCMADE=fpcmade.sun
 ZIPSUFFIX=sun
 endif
 ifeq ($(OS_TARGET),qnx)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -699,15 +660,13 @@ ZIPSUFFIX=nw
 EXEEXT=.nlm
 endif
 ifeq ($(OS_TARGET),macos)
-BATCHEXT=
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
 SMARTEXT=.sl
 STATICLIBEXT=.a
 EXEEXT=
-DEBUGSYMEXT=.xcoff
-FPCMADE=fpcmade.macos
+FPCMADE=fpcmade.mcc
 endif
 endif
 ifndef ECHO
@@ -715,7 +674,7 @@ ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ECHO),)
 ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ECHO),)
-ECHO= __missing_command__
+ECHO=
 else
 ECHO:=$(firstword $(ECHO))
 endif
@@ -729,7 +688,7 @@ DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(DATE),)
 DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(DATE),)
-DATE= __missing_command__
+DATE=
 else
 DATE:=$(firstword $(DATE))
 endif
@@ -743,7 +702,7 @@ GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(GINSTALL),)
 GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(GINSTALL),)
-GINSTALL= __missing_command__
+GINSTALL=
 else
 GINSTALL:=$(firstword $(GINSTALL))
 endif
@@ -755,7 +714,7 @@ export GINSTALL
 ifndef CPPROG
 CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(CPPROG),)
-CPPROG= __missing_command__
+CPPROG=
 else
 CPPROG:=$(firstword $(CPPROG))
 endif
@@ -764,7 +723,7 @@ export CPPROG
 ifndef RMPROG
 RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(RMPROG),)
-RMPROG= __missing_command__
+RMPROG=
 else
 RMPROG:=$(firstword $(RMPROG))
 endif
@@ -773,18 +732,14 @@ export RMPROG
 ifndef MVPROG
 MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(MVPROG),)
-MVPROG= __missing_command__
+MVPROG=
 else
 MVPROG:=$(firstword $(MVPROG))
 endif
 endif
 export MVPROG
 ifndef ECHOREDIR
-ifndef inUnix
-ECHOREDIR=echo
-else
-ECHOREDIR=$(ECHO)
-endif
+ECHOREDIR:=$(subst /,$(PATHSEP),$(ECHO))
 endif
 ifndef COPY
 COPY:=$(CPPROG) -fp
@@ -822,7 +777,7 @@ export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
 ifndef PPUMOVE
 PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(PPUMOVE),)
-PPUMOVE= __missing_command__
+PPUMOVE=
 else
 PPUMOVE:=$(firstword $(PPUMOVE))
 endif
@@ -831,7 +786,7 @@ export PPUMOVE
 ifndef FPCMAKE
 FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(FPCMAKE),)
-FPCMAKE= __missing_command__
+FPCMAKE=
 else
 FPCMAKE:=$(firstword $(FPCMAKE))
 endif
@@ -840,7 +795,7 @@ export FPCMAKE
 ifndef ZIPPROG
 ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ZIPPROG),)
-ZIPPROG= __missing_command__
+ZIPPROG=
 else
 ZIPPROG:=$(firstword $(ZIPPROG))
 endif
@@ -849,25 +804,21 @@ export ZIPPROG
 ifndef TARPROG
 TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(TARPROG),)
-TARPROG= __missing_command__
+TARPROG=
 else
 TARPROG:=$(firstword $(TARPROG))
 endif
 endif
 export TARPROG
-ASNAME=$(BINUTILSPREFIX)as
-LDNAME=$(BINUTILSPREFIX)ld
-ARNAME=$(BINUTILSPREFIX)ar
-RCNAME=$(BINUTILSPREFIX)rc
-ifneq ($(findstring 1.0.,$(FPC_VERSION)),)
+ASNAME=as
+LDNAME=ld
+ARNAME=ar
+RCNAME=rc
 ifeq ($(OS_TARGET),win32)
-ifeq ($(CROSSBINDIR),)
 ASNAME=asw
 LDNAME=ldw
 ARNAME=arw
 endif
-endif
-endif
 ifndef ASPROG
 ifdef CROSSBINDIR
 ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT)
@@ -900,7 +851,7 @@ AS=$(ASPROG)
 LD=$(LDPROG)
 RC=$(RCPROG)
 AR=$(ARPROG)
-PPAS=ppas$(SRCBATCHEXT)
+PPAS=ppas$(BATCHEXT)
 ifdef inUnix
 LDCONFIG=ldconfig
 else
@@ -948,14 +899,6 @@ endif
 ifeq ($(OS_SOURCE),openbsd)
 override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
 endif
-ifndef CROSSBOOTSTRAP
-ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-XP$(BINUTILSPREFIX) -Xc
-endif
-ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-Xr$(RLINKPATH)
-endif
-endif
 ifdef UNITDIR
 override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
 endif
@@ -982,12 +925,8 @@ ifdef RELEASE
 ifeq ($(CPU_TARGET),i386)
 FPCCPUOPT:=-OG2p3
 else
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1
-else
 FPCCPUOPT:=
 endif
-endif
 override FPCOPT+=-Xs $(FPCCPUOPT) -n
 override FPCOPTDEF+=RELEASE
 endif
@@ -1069,7 +1008,7 @@ EXECPPAS:=@$(PPAS)
 endif
 endif
 .PHONY: fpc_loaders
-ifneq ($(TARGET_LOADERS),)
+ifdef TARGET_LOADERS
 override ALLTARGET+=fpc_loaders
 override CLEANTARGET+=fpc_loaders_clean
 override INSTALLTARGET+=fpc_loaders_install
@@ -1084,7 +1023,7 @@ fpc_loaders_install:
 	$(MKDIR) $(INSTALL_UNITDIR)
 	$(INSTALL) $(LOADEROFILES) $(INSTALL_UNITDIR)
 .PHONY: fpc_units
-ifneq ($(TARGET_UNITS),)
+ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
 override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
@@ -1106,7 +1045,7 @@ fpc_debug:
 	$(MAKE) all DEBUG=1
 fpc_release:
 	$(MAKE) all RELEASE=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .dpr .pp .rc .res
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -1119,14 +1058,10 @@ fpc_release:
 %$(EXEEXT): %.pas
 	$(COMPILER) $<
 	$(EXECPPAS)
-%$(EXEEXT): %.dpr
-	$(COMPILER) $<
-	$(EXECPPAS)
 %.res: %.rc
 	windres -i $< -o $@
 vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
 vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
 vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
 ifdef INSTALL_UNITS
@@ -1203,9 +1138,6 @@ override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
 endif
 ifdef CLEANPPUFILES
 override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
-ifdef DEBUGSYMEXT
-override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES)) 
-endif
 override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
 override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
 endif
@@ -1229,7 +1161,6 @@ ifdef LIB_NAME
 	-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
 endif
 	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-	-$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)
 fpc_distclean: clean
 ifdef COMPILER_UNITTARGETDIR
 TARGETDIRCLEAN=fpc_clean
@@ -1241,13 +1172,9 @@ endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
 	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-	-$(DEL) *_ppas$(BATCHEXT)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-ifdef DEBUGSYMEXT
-	-$(DEL) *$(DEBUGSYMEXT)
-endif
 .PHONY: fpc_baseinfo
 override INFORULES+=fpc_baseinfo
 fpc_baseinfo:

+ 5 - 2
rtl/amiga/Makefile.fpc

@@ -9,7 +9,7 @@ main=rtl
 loaders=prt0
 units=system exec strings \
       dos crt objects printer \
-      objpas \
+      objpas matrix \
       heaptrc lineinfo getopts graph \
       sysutils math typinfo
 rsts=math
@@ -148,7 +148,10 @@ heaptrc$(PPUEXT) : $(INC)/heaptrc.pp system$(PPUEXT)
 
 #
 # $Log$
-# Revision 1.6  2004-05-06 22:01:17  florian
+# Revision 1.7  2004-07-07 21:37:29  daniel
+#   * Matrix unit included in build process
+#
+# Revision 1.6  2004/05/06 22:01:17  florian
 #   * changed extensions
 #
 # Revision 1.5  2004/05/06 21:12:41  florian

+ 78 - 151
rtl/beos/Makefile

@@ -1,25 +1,15 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2004/05/23]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2004/07/07]
 #
 default: all
-MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx watcom
-BSDs = freebsd netbsd openbsd darwin
-UNIXs = linux $(BSDs) sunos qnx
-FORCE:
-.PHONY: FORCE
-override PATH:=$(patsubst %/,%,$(subst \,/,$(PATH)))
-ifneq ($(findstring darwin,$(OSTYPE)),)
-inUnix=1 #darwin
-SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
-else
+MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx
+override PATH:=$(subst \,/,$(PATH))
 ifeq ($(findstring ;,$(PATH)),)
 inUnix=1
 SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
 else
 SEARCHPATH:=$(subst ;, ,$(PATH))
 endif
-endif
-SEARCHPATH+=$(patsubst %/,%,$(subst \,/,$(dir $(MAKE))))
 PWD:=$(strip $(wildcard $(addsuffix /pwd.exe,$(SEARCHPATH))))
 ifeq ($(PWD),)
 PWD:=$(strip $(wildcard $(addsuffix /pwd,$(SEARCHPATH))))
@@ -46,13 +36,22 @@ ifneq ($(findstring cygdrive,$(PATH)),)
 inCygWin=1
 endif
 endif
+ifeq ($(OS_TARGET),freebsd)
+BSDhier=1
+endif
+ifeq ($(OS_TARGET),netbsd)
+BSDhier=1
+endif
+ifeq ($(OS_TARGET),openbsd)
+BSDhier=1
+endif
 ifdef inUnix
-SRCBATCHEXT=.sh
+BATCHEXT=.sh
 else
 ifdef inOS2
-SRCBATCHEXT=.cmd
+BATCHEXT=.cmd
 else
-SRCBATCHEXT=.bat
+BATCHEXT=.bat
 endif
 endif
 ifdef inUnix
@@ -157,12 +156,6 @@ ifeq ($(findstring $(OS_TARGET),$(MAKEFILETARGETS)),)
 $(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake first)
 endif
 endif
-ifneq ($(findstring $(OS_TARGET),$(BSDs)),)
-BSDhier=1
-endif
-ifeq ($(OS_TARGET),linux)
-linuxHier=1
-endif
 export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE CROSSCOMPILE
 ifdef FPCDIR
 override FPCDIR:=$(subst \,/,$(FPCDIR))
@@ -192,14 +185,11 @@ override FPCDIR:=$(FPCDIR)/..
 ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR:=$(FPCDIR)/..
 ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR:=$(BASEDIR)
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=c:/pp
 endif
 endif
 endif
 endif
-endif
 ifndef CROSSDIR
 CROSSDIR:=$(FPCDIR)/cross/$(FULL_TARGET)
 endif
@@ -226,7 +216,7 @@ override FPCOPT+=-Ur
 endif
 OBJPASDIR=$(RTL)/objpas
 GRAPHDIR=$(INC)/graph
-override TARGET_UNITS+=system posix objpas strings beos dos sysutils classes typinfo math varutils cpu mmx getopts heaptrc lineinfo variants types sysconst
+override TARGET_UNITS+=system posix objpas strings beos dos matrix sysutils classes typinfo math varutils cpu mmx getopts heaptrc lineinfo variants types sysconst
 override TARGET_LOADERS+=prt0 cprt0 func dllprt
 override TARGET_RSTS+=math varutils typinfo sysconst
 override INSTALL_FPCPACKAGE=y
@@ -240,12 +230,42 @@ ifdef REQUIRE_PACKAGESDIR
 override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
 endif
 ifdef ZIPINSTALL
-ifneq ($(findstring $(OS_TARGET),$(UNIXs)),)
-UNIXHier=1
+ifeq ($(OS_TARGET),linux)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),freebsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),netbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),openbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),qnx)
+UNIXINSTALLDIR=1
 endif
 else
-ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),)
-UNIXHier=1
+ifeq ($(OS_SOURCE),linux)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),freebsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),netbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),openbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),qnx)
+UNIXINSTALLDIR=1
 endif
 endif
 ifndef INSTALL_PREFIX
@@ -254,7 +274,7 @@ INSTALL_PREFIX=$(PREFIX)
 endif
 endif
 ifndef INSTALL_PREFIX
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 INSTALL_PREFIX=/usr/local
 else
 ifdef INSTALL_FPCPACKAGE
@@ -273,7 +293,7 @@ DIST_DESTDIR:=$(BASEDIR)
 endif
 export DIST_DESTDIR
 ifndef INSTALL_BASEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef INSTALL_FPCPACKAGE
 INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
 else
@@ -284,18 +304,10 @@ INSTALL_BASEDIR:=$(INSTALL_PREFIX)
 endif
 endif
 ifndef INSTALL_BINDIR
-ifdef UNIXHier
-ifdef CROSSCOMPILE
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
-else
+ifdef UNIXINSTALLDIR
 INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
-endif
-else
-ifdef CROSSCOMPILE
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
 else
 INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
-endif
 ifdef INSTALL_FPCPACKAGE
 INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET)
 endif
@@ -314,23 +326,19 @@ endif
 endif
 endif
 ifndef INSTALL_LIBDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
 else
 INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
 endif
 endif
 ifndef INSTALL_SOURCEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef BSDhier
 SRCPREFIXDIR=share/src
 else
-ifdef linuxHier
-SRCPREFIXDIR=share/src
-else
 SRCPREFIXDIR=src
 endif
-endif
 ifdef INSTALL_FPCPACKAGE
 ifdef INSTALL_FPCSUBDIR
 INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
@@ -353,16 +361,12 @@ endif
 endif
 endif
 ifndef INSTALL_DOCDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef BSDhier
 DOCPREFIXDIR=share/doc
 else
-ifdef linuxHier
-DOCPREFIXDIR=share/doc
-else
 DOCPREFIXDIR=doc
 endif
-endif
 ifdef INSTALL_FPCPACKAGE
 INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
 else
@@ -377,28 +381,20 @@ endif
 endif
 endif
 ifndef INSTALL_EXAMPLEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef INSTALL_FPCPACKAGE
 ifdef BSDhier
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
 else
-ifdef linuxHier
-INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples
-else
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
 endif
-endif
 else
 ifdef BSDhier
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
 else
-ifdef linuxHier
-INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
 endif
 endif
-endif
 else
 ifdef INSTALL_FPCPACKAGE
 INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples/$(PACKAGE_NAME)
@@ -420,7 +416,6 @@ endif
 else
 CROSSBINDIR=
 endif
-BATCHEXT=.bat
 LOADEREXT=.as
 EXEEXT=.exe
 PPLEXT=.ppl
@@ -444,37 +439,25 @@ STATICLIBPREFIX=
 FPCMADE=fpcmade.dos
 ZIPSUFFIX=go32
 endif
-ifeq ($(OS_TARGET),watcom)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.wat
-ZIPSUFFIX=watc
-OEXT=.obj
-ASMEXT=.asm
-SHAREDLIBEXT=.dll
-endif
 ifeq ($(OS_TARGET),linux)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.lnx
 ZIPSUFFIX=linux
 endif
 ifeq ($(OS_TARGET),freebsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.freebsd
 ZIPSUFFIX=freebsd
 endif
 ifeq ($(OS_TARGET),netbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.netbsd
 ZIPSUFFIX=netbsd
 endif
 ifeq ($(OS_TARGET),openbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.openbsd
@@ -486,7 +469,6 @@ FPCMADE=fpcmade.w32
 ZIPSUFFIX=w32
 endif
 ifeq ($(OS_TARGET),os2)
-BATCHEXT=.cmd
 AOUTEXT=.out
 STATICLIBPREFIX=
 SHAREDLIBEXT=.dll
@@ -495,7 +477,6 @@ ZIPSUFFIX=os2
 ECHO=echo
 endif
 ifeq ($(OS_TARGET),emx)
-BATCHEXT=.cmd
 AOUTEXT=.out
 STATICLIBPREFIX=
 SHAREDLIBEXT=.dll
@@ -513,19 +494,16 @@ EXEEXT=.ttp
 FPCMADE=fpcmade.ata
 endif
 ifeq ($(OS_TARGET),beos)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.be
 ZIPSUFFIX=be
 endif
 ifeq ($(OS_TARGET),sunos)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.sun
 ZIPSUFFIX=sun
 endif
 ifeq ($(OS_TARGET),qnx)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.qnx
 ZIPSUFFIX=qnx
@@ -537,14 +515,10 @@ FPCMADE=fpcmade.nw
 ZIPSUFFIX=nw
 endif
 ifeq ($(OS_TARGET),macos)
-BATCHEXT=
 EXEEXT=
-FPCMADE=fpcmade.macos
-ZIPSUFFIX=macos
-DEBUGSYMEXT=.xcoff
+FPCMADE=fpcmade.mcc
 endif
 ifeq ($(OS_TARGET),darwin)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.darwin
@@ -567,34 +541,25 @@ STATICLIBPREFIX=
 FPCMADE=fpcmade.dos
 ZIPSUFFIX=go32
 endif
-ifeq ($(OS_TARGET),watcom)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.dos
-ZIPSUFFIX=watcom
-endif
 ifeq ($(OS_TARGET),linux)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.lnx
 ZIPSUFFIX=linux
 endif
 ifeq ($(OS_TARGET),freebsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.freebsd
 ZIPSUFFIX=freebsd
 endif
 ifeq ($(OS_TARGET),netbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.netbsd
 ZIPSUFFIX=netbsd
 endif
 ifeq ($(OS_TARGET),openbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.openbsd
@@ -611,7 +576,6 @@ FPCMADE=fpcmade.w32
 ZIPSUFFIX=w32
 endif
 ifeq ($(OS_TARGET),os2)
-BATCHEXT=.cmd
 PPUEXT=.ppo
 ASMEXT=.so2
 OEXT=.oo2
@@ -644,7 +608,6 @@ EXEEXT=.ttp
 FPCMADE=fpcmade.ata
 endif
 ifeq ($(OS_TARGET),beos)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -655,7 +618,6 @@ FPCMADE=fpcmade.be
 ZIPSUFFIX=be
 endif
 ifeq ($(OS_TARGET),sunos)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -666,7 +628,6 @@ FPCMADE=fpcmade.sun
 ZIPSUFFIX=sun
 endif
 ifeq ($(OS_TARGET),qnx)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -689,15 +650,13 @@ ZIPSUFFIX=nw
 EXEEXT=.nlm
 endif
 ifeq ($(OS_TARGET),macos)
-BATCHEXT=
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
 SMARTEXT=.sl
 STATICLIBEXT=.a
 EXEEXT=
-DEBUGSYMEXT=.xcoff
-FPCMADE=fpcmade.macos
+FPCMADE=fpcmade.mcc
 endif
 endif
 ifndef ECHO
@@ -705,7 +664,7 @@ ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ECHO),)
 ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ECHO),)
-ECHO= __missing_command__
+ECHO=
 else
 ECHO:=$(firstword $(ECHO))
 endif
@@ -719,7 +678,7 @@ DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(DATE),)
 DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(DATE),)
-DATE= __missing_command__
+DATE=
 else
 DATE:=$(firstword $(DATE))
 endif
@@ -733,7 +692,7 @@ GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(GINSTALL),)
 GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(GINSTALL),)
-GINSTALL= __missing_command__
+GINSTALL=
 else
 GINSTALL:=$(firstword $(GINSTALL))
 endif
@@ -745,7 +704,7 @@ export GINSTALL
 ifndef CPPROG
 CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(CPPROG),)
-CPPROG= __missing_command__
+CPPROG=
 else
 CPPROG:=$(firstword $(CPPROG))
 endif
@@ -754,7 +713,7 @@ export CPPROG
 ifndef RMPROG
 RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(RMPROG),)
-RMPROG= __missing_command__
+RMPROG=
 else
 RMPROG:=$(firstword $(RMPROG))
 endif
@@ -763,18 +722,14 @@ export RMPROG
 ifndef MVPROG
 MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(MVPROG),)
-MVPROG= __missing_command__
+MVPROG=
 else
 MVPROG:=$(firstword $(MVPROG))
 endif
 endif
 export MVPROG
 ifndef ECHOREDIR
-ifndef inUnix
-ECHOREDIR=echo
-else
-ECHOREDIR=$(ECHO)
-endif
+ECHOREDIR:=$(subst /,$(PATHSEP),$(ECHO))
 endif
 ifndef COPY
 COPY:=$(CPPROG) -fp
@@ -812,7 +767,7 @@ export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
 ifndef PPUMOVE
 PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(PPUMOVE),)
-PPUMOVE= __missing_command__
+PPUMOVE=
 else
 PPUMOVE:=$(firstword $(PPUMOVE))
 endif
@@ -821,7 +776,7 @@ export PPUMOVE
 ifndef FPCMAKE
 FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(FPCMAKE),)
-FPCMAKE= __missing_command__
+FPCMAKE=
 else
 FPCMAKE:=$(firstword $(FPCMAKE))
 endif
@@ -830,7 +785,7 @@ export FPCMAKE
 ifndef ZIPPROG
 ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ZIPPROG),)
-ZIPPROG= __missing_command__
+ZIPPROG=
 else
 ZIPPROG:=$(firstword $(ZIPPROG))
 endif
@@ -839,25 +794,21 @@ export ZIPPROG
 ifndef TARPROG
 TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(TARPROG),)
-TARPROG= __missing_command__
+TARPROG=
 else
 TARPROG:=$(firstword $(TARPROG))
 endif
 endif
 export TARPROG
-ASNAME=$(BINUTILSPREFIX)as
-LDNAME=$(BINUTILSPREFIX)ld
-ARNAME=$(BINUTILSPREFIX)ar
-RCNAME=$(BINUTILSPREFIX)rc
-ifneq ($(findstring 1.0.,$(FPC_VERSION)),)
+ASNAME=as
+LDNAME=ld
+ARNAME=ar
+RCNAME=rc
 ifeq ($(OS_TARGET),win32)
-ifeq ($(CROSSBINDIR),)
 ASNAME=asw
 LDNAME=ldw
 ARNAME=arw
 endif
-endif
-endif
 ifndef ASPROG
 ifdef CROSSBINDIR
 ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT)
@@ -890,7 +841,7 @@ AS=$(ASPROG)
 LD=$(LDPROG)
 RC=$(RCPROG)
 AR=$(ARPROG)
-PPAS=ppas$(SRCBATCHEXT)
+PPAS=ppas$(BATCHEXT)
 ifdef inUnix
 LDCONFIG=ldconfig
 else
@@ -938,14 +889,6 @@ endif
 ifeq ($(OS_SOURCE),openbsd)
 override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
 endif
-ifndef CROSSBOOTSTRAP
-ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-XP$(BINUTILSPREFIX) -Xc
-endif
-ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-Xr$(RLINKPATH)
-endif
-endif
 ifdef UNITDIR
 override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
 endif
@@ -972,12 +915,8 @@ ifdef RELEASE
 ifeq ($(CPU_TARGET),i386)
 FPCCPUOPT:=-OG2p3
 else
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1
-else
 FPCCPUOPT:=
 endif
-endif
 override FPCOPT+=-Xs $(FPCCPUOPT) -n
 override FPCOPTDEF+=RELEASE
 endif
@@ -1059,7 +998,7 @@ EXECPPAS:=@$(PPAS)
 endif
 endif
 .PHONY: fpc_loaders
-ifneq ($(TARGET_LOADERS),)
+ifdef TARGET_LOADERS
 override ALLTARGET+=fpc_loaders
 override CLEANTARGET+=fpc_loaders_clean
 override INSTALLTARGET+=fpc_loaders_install
@@ -1074,7 +1013,7 @@ fpc_loaders_install:
 	$(MKDIR) $(INSTALL_UNITDIR)
 	$(INSTALL) $(LOADEROFILES) $(INSTALL_UNITDIR)
 .PHONY: fpc_units
-ifneq ($(TARGET_UNITS),)
+ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
 override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
@@ -1096,7 +1035,7 @@ fpc_debug:
 	$(MAKE) all DEBUG=1
 fpc_release:
 	$(MAKE) all RELEASE=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .dpr .pp .rc .res
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -1109,14 +1048,10 @@ fpc_release:
 %$(EXEEXT): %.pas
 	$(COMPILER) $<
 	$(EXECPPAS)
-%$(EXEEXT): %.dpr
-	$(COMPILER) $<
-	$(EXECPPAS)
 %.res: %.rc
 	windres -i $< -o $@
 vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
 vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
 vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
 ifdef INSTALL_UNITS
@@ -1193,9 +1128,6 @@ override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
 endif
 ifdef CLEANPPUFILES
 override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
-ifdef DEBUGSYMEXT
-override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES)) 
-endif
 override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
 override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
 endif
@@ -1219,7 +1151,6 @@ ifdef LIB_NAME
 	-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
 endif
 	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-	-$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)
 fpc_distclean: clean
 ifdef COMPILER_UNITTARGETDIR
 TARGETDIRCLEAN=fpc_clean
@@ -1231,13 +1162,9 @@ endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
 	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-	-$(DEL) *_ppas$(BATCHEXT)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-ifdef DEBUGSYMEXT
-	-$(DEL) *$(DEBUGSYMEXT)
-endif
 .PHONY: fpc_baseinfo
 override INFORULES+=fpc_baseinfo
 fpc_baseinfo:

+ 1 - 1
rtl/beos/Makefile.fpc

@@ -9,7 +9,7 @@ main=rtl
 loaders=prt0 cprt0 func dllprt
 units=system posix objpas strings \
       beos \
-      dos \
+      dos matrix \
       sysutils classes typinfo math varutils \
       cpu mmx getopts heaptrc lineinfo variants types sysconst
 rsts=math varutils typinfo sysconst

+ 77 - 150
rtl/darwin/Makefile

@@ -1,25 +1,15 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2004/05/23]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2004/07/07]
 #
 default: all
-MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx watcom
-BSDs = freebsd netbsd openbsd darwin
-UNIXs = linux $(BSDs) sunos qnx
-FORCE:
-.PHONY: FORCE
-override PATH:=$(patsubst %/,%,$(subst \,/,$(PATH)))
-ifneq ($(findstring darwin,$(OSTYPE)),)
-inUnix=1 #darwin
-SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
-else
+MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx
+override PATH:=$(subst \,/,$(PATH))
 ifeq ($(findstring ;,$(PATH)),)
 inUnix=1
 SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
 else
 SEARCHPATH:=$(subst ;, ,$(PATH))
 endif
-endif
-SEARCHPATH+=$(patsubst %/,%,$(subst \,/,$(dir $(MAKE))))
 PWD:=$(strip $(wildcard $(addsuffix /pwd.exe,$(SEARCHPATH))))
 ifeq ($(PWD),)
 PWD:=$(strip $(wildcard $(addsuffix /pwd,$(SEARCHPATH))))
@@ -46,13 +36,22 @@ ifneq ($(findstring cygdrive,$(PATH)),)
 inCygWin=1
 endif
 endif
+ifeq ($(OS_TARGET),freebsd)
+BSDhier=1
+endif
+ifeq ($(OS_TARGET),netbsd)
+BSDhier=1
+endif
+ifeq ($(OS_TARGET),openbsd)
+BSDhier=1
+endif
 ifdef inUnix
-SRCBATCHEXT=.sh
+BATCHEXT=.sh
 else
 ifdef inOS2
-SRCBATCHEXT=.cmd
+BATCHEXT=.cmd
 else
-SRCBATCHEXT=.bat
+BATCHEXT=.bat
 endif
 endif
 ifdef inUnix
@@ -156,12 +155,6 @@ ifeq ($(findstring $(OS_TARGET),$(MAKEFILETARGETS)),)
 $(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake first)
 endif
 endif
-ifneq ($(findstring $(OS_TARGET),$(BSDs)),)
-BSDhier=1
-endif
-ifeq ($(OS_TARGET),linux)
-linuxHier=1
-endif
 export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE CROSSCOMPILE
 ifdef FPCDIR
 override FPCDIR:=$(subst \,/,$(FPCDIR))
@@ -191,14 +184,11 @@ override FPCDIR:=$(FPCDIR)/..
 ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR:=$(FPCDIR)/..
 ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR:=$(BASEDIR)
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=c:/pp
 endif
 endif
 endif
 endif
-endif
 ifndef CROSSDIR
 CROSSDIR:=$(FPCDIR)/cross/$(FULL_TARGET)
 endif
@@ -238,7 +228,7 @@ GRAPHDIR=$(INC)/graph
 ifndef USELIBGGI
 USELIBGGI=NO
 endif
-override TARGET_UNITS+=$(SYSTEMUNIT) objpas strings sysctl baseunix unixtype unixutil unix initc cmem dos dl objects printer sockets sysutils typinfo systhrds classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconst
+override TARGET_UNITS+=$(SYSTEMUNIT) objpas strings sysctl baseunix unixtype unixutil unix initc cmem matrix dos dl objects printer sockets sysutils typinfo systhrds classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconst
 override TARGET_RSTS+=math varutils typinfo classes variants dateutils systhrds sysconst rtlconst
 override INSTALL_FPCPACKAGE=y
 override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
@@ -251,12 +241,42 @@ ifdef REQUIRE_PACKAGESDIR
 override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
 endif
 ifdef ZIPINSTALL
-ifneq ($(findstring $(OS_TARGET),$(UNIXs)),)
-UNIXHier=1
+ifeq ($(OS_TARGET),linux)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),freebsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),netbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),openbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),qnx)
+UNIXINSTALLDIR=1
 endif
 else
-ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),)
-UNIXHier=1
+ifeq ($(OS_SOURCE),linux)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),freebsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),netbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),openbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),qnx)
+UNIXINSTALLDIR=1
 endif
 endif
 ifndef INSTALL_PREFIX
@@ -265,7 +285,7 @@ INSTALL_PREFIX=$(PREFIX)
 endif
 endif
 ifndef INSTALL_PREFIX
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 INSTALL_PREFIX=/usr/local
 else
 ifdef INSTALL_FPCPACKAGE
@@ -284,7 +304,7 @@ DIST_DESTDIR:=$(BASEDIR)
 endif
 export DIST_DESTDIR
 ifndef INSTALL_BASEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef INSTALL_FPCPACKAGE
 INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
 else
@@ -295,18 +315,10 @@ INSTALL_BASEDIR:=$(INSTALL_PREFIX)
 endif
 endif
 ifndef INSTALL_BINDIR
-ifdef UNIXHier
-ifdef CROSSCOMPILE
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
-else
+ifdef UNIXINSTALLDIR
 INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
-endif
-else
-ifdef CROSSCOMPILE
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
 else
 INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
-endif
 ifdef INSTALL_FPCPACKAGE
 INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET)
 endif
@@ -325,23 +337,19 @@ endif
 endif
 endif
 ifndef INSTALL_LIBDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
 else
 INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
 endif
 endif
 ifndef INSTALL_SOURCEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef BSDhier
 SRCPREFIXDIR=share/src
 else
-ifdef linuxHier
-SRCPREFIXDIR=share/src
-else
 SRCPREFIXDIR=src
 endif
-endif
 ifdef INSTALL_FPCPACKAGE
 ifdef INSTALL_FPCSUBDIR
 INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
@@ -364,16 +372,12 @@ endif
 endif
 endif
 ifndef INSTALL_DOCDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef BSDhier
 DOCPREFIXDIR=share/doc
 else
-ifdef linuxHier
-DOCPREFIXDIR=share/doc
-else
 DOCPREFIXDIR=doc
 endif
-endif
 ifdef INSTALL_FPCPACKAGE
 INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
 else
@@ -388,28 +392,20 @@ endif
 endif
 endif
 ifndef INSTALL_EXAMPLEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef INSTALL_FPCPACKAGE
 ifdef BSDhier
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
 else
-ifdef linuxHier
-INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples
-else
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
 endif
-endif
 else
 ifdef BSDhier
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
 else
-ifdef linuxHier
-INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
 endif
 endif
-endif
 else
 ifdef INSTALL_FPCPACKAGE
 INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples/$(PACKAGE_NAME)
@@ -431,7 +427,6 @@ endif
 else
 CROSSBINDIR=
 endif
-BATCHEXT=.bat
 LOADEREXT=.as
 EXEEXT=.exe
 PPLEXT=.ppl
@@ -455,37 +450,25 @@ STATICLIBPREFIX=
 FPCMADE=fpcmade.dos
 ZIPSUFFIX=go32
 endif
-ifeq ($(OS_TARGET),watcom)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.wat
-ZIPSUFFIX=watc
-OEXT=.obj
-ASMEXT=.asm
-SHAREDLIBEXT=.dll
-endif
 ifeq ($(OS_TARGET),linux)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.lnx
 ZIPSUFFIX=linux
 endif
 ifeq ($(OS_TARGET),freebsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.freebsd
 ZIPSUFFIX=freebsd
 endif
 ifeq ($(OS_TARGET),netbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.netbsd
 ZIPSUFFIX=netbsd
 endif
 ifeq ($(OS_TARGET),openbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.openbsd
@@ -497,7 +480,6 @@ FPCMADE=fpcmade.w32
 ZIPSUFFIX=w32
 endif
 ifeq ($(OS_TARGET),os2)
-BATCHEXT=.cmd
 AOUTEXT=.out
 STATICLIBPREFIX=
 SHAREDLIBEXT=.dll
@@ -506,7 +488,6 @@ ZIPSUFFIX=os2
 ECHO=echo
 endif
 ifeq ($(OS_TARGET),emx)
-BATCHEXT=.cmd
 AOUTEXT=.out
 STATICLIBPREFIX=
 SHAREDLIBEXT=.dll
@@ -524,19 +505,16 @@ EXEEXT=.ttp
 FPCMADE=fpcmade.ata
 endif
 ifeq ($(OS_TARGET),beos)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.be
 ZIPSUFFIX=be
 endif
 ifeq ($(OS_TARGET),sunos)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.sun
 ZIPSUFFIX=sun
 endif
 ifeq ($(OS_TARGET),qnx)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.qnx
 ZIPSUFFIX=qnx
@@ -548,14 +526,10 @@ FPCMADE=fpcmade.nw
 ZIPSUFFIX=nw
 endif
 ifeq ($(OS_TARGET),macos)
-BATCHEXT=
 EXEEXT=
-FPCMADE=fpcmade.macos
-ZIPSUFFIX=macos
-DEBUGSYMEXT=.xcoff
+FPCMADE=fpcmade.mcc
 endif
 ifeq ($(OS_TARGET),darwin)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.darwin
@@ -578,34 +552,25 @@ STATICLIBPREFIX=
 FPCMADE=fpcmade.dos
 ZIPSUFFIX=go32
 endif
-ifeq ($(OS_TARGET),watcom)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.dos
-ZIPSUFFIX=watcom
-endif
 ifeq ($(OS_TARGET),linux)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.lnx
 ZIPSUFFIX=linux
 endif
 ifeq ($(OS_TARGET),freebsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.freebsd
 ZIPSUFFIX=freebsd
 endif
 ifeq ($(OS_TARGET),netbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.netbsd
 ZIPSUFFIX=netbsd
 endif
 ifeq ($(OS_TARGET),openbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.openbsd
@@ -622,7 +587,6 @@ FPCMADE=fpcmade.w32
 ZIPSUFFIX=w32
 endif
 ifeq ($(OS_TARGET),os2)
-BATCHEXT=.cmd
 PPUEXT=.ppo
 ASMEXT=.so2
 OEXT=.oo2
@@ -655,7 +619,6 @@ EXEEXT=.ttp
 FPCMADE=fpcmade.ata
 endif
 ifeq ($(OS_TARGET),beos)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -666,7 +629,6 @@ FPCMADE=fpcmade.be
 ZIPSUFFIX=be
 endif
 ifeq ($(OS_TARGET),sunos)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -677,7 +639,6 @@ FPCMADE=fpcmade.sun
 ZIPSUFFIX=sun
 endif
 ifeq ($(OS_TARGET),qnx)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -700,15 +661,13 @@ ZIPSUFFIX=nw
 EXEEXT=.nlm
 endif
 ifeq ($(OS_TARGET),macos)
-BATCHEXT=
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
 SMARTEXT=.sl
 STATICLIBEXT=.a
 EXEEXT=
-DEBUGSYMEXT=.xcoff
-FPCMADE=fpcmade.macos
+FPCMADE=fpcmade.mcc
 endif
 endif
 ifndef ECHO
@@ -716,7 +675,7 @@ ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ECHO),)
 ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ECHO),)
-ECHO= __missing_command__
+ECHO=
 else
 ECHO:=$(firstword $(ECHO))
 endif
@@ -730,7 +689,7 @@ DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(DATE),)
 DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(DATE),)
-DATE= __missing_command__
+DATE=
 else
 DATE:=$(firstword $(DATE))
 endif
@@ -744,7 +703,7 @@ GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(GINSTALL),)
 GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(GINSTALL),)
-GINSTALL= __missing_command__
+GINSTALL=
 else
 GINSTALL:=$(firstword $(GINSTALL))
 endif
@@ -756,7 +715,7 @@ export GINSTALL
 ifndef CPPROG
 CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(CPPROG),)
-CPPROG= __missing_command__
+CPPROG=
 else
 CPPROG:=$(firstword $(CPPROG))
 endif
@@ -765,7 +724,7 @@ export CPPROG
 ifndef RMPROG
 RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(RMPROG),)
-RMPROG= __missing_command__
+RMPROG=
 else
 RMPROG:=$(firstword $(RMPROG))
 endif
@@ -774,18 +733,14 @@ export RMPROG
 ifndef MVPROG
 MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(MVPROG),)
-MVPROG= __missing_command__
+MVPROG=
 else
 MVPROG:=$(firstword $(MVPROG))
 endif
 endif
 export MVPROG
 ifndef ECHOREDIR
-ifndef inUnix
-ECHOREDIR=echo
-else
-ECHOREDIR=$(ECHO)
-endif
+ECHOREDIR:=$(subst /,$(PATHSEP),$(ECHO))
 endif
 ifndef COPY
 COPY:=$(CPPROG) -fp
@@ -823,7 +778,7 @@ export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
 ifndef PPUMOVE
 PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(PPUMOVE),)
-PPUMOVE= __missing_command__
+PPUMOVE=
 else
 PPUMOVE:=$(firstword $(PPUMOVE))
 endif
@@ -832,7 +787,7 @@ export PPUMOVE
 ifndef FPCMAKE
 FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(FPCMAKE),)
-FPCMAKE= __missing_command__
+FPCMAKE=
 else
 FPCMAKE:=$(firstword $(FPCMAKE))
 endif
@@ -841,7 +796,7 @@ export FPCMAKE
 ifndef ZIPPROG
 ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ZIPPROG),)
-ZIPPROG= __missing_command__
+ZIPPROG=
 else
 ZIPPROG:=$(firstword $(ZIPPROG))
 endif
@@ -850,25 +805,21 @@ export ZIPPROG
 ifndef TARPROG
 TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(TARPROG),)
-TARPROG= __missing_command__
+TARPROG=
 else
 TARPROG:=$(firstword $(TARPROG))
 endif
 endif
 export TARPROG
-ASNAME=$(BINUTILSPREFIX)as
-LDNAME=$(BINUTILSPREFIX)ld
-ARNAME=$(BINUTILSPREFIX)ar
-RCNAME=$(BINUTILSPREFIX)rc
-ifneq ($(findstring 1.0.,$(FPC_VERSION)),)
+ASNAME=as
+LDNAME=ld
+ARNAME=ar
+RCNAME=rc
 ifeq ($(OS_TARGET),win32)
-ifeq ($(CROSSBINDIR),)
 ASNAME=asw
 LDNAME=ldw
 ARNAME=arw
 endif
-endif
-endif
 ifndef ASPROG
 ifdef CROSSBINDIR
 ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT)
@@ -901,7 +852,7 @@ AS=$(ASPROG)
 LD=$(LDPROG)
 RC=$(RCPROG)
 AR=$(ARPROG)
-PPAS=ppas$(SRCBATCHEXT)
+PPAS=ppas$(BATCHEXT)
 ifdef inUnix
 LDCONFIG=ldconfig
 else
@@ -949,14 +900,6 @@ endif
 ifeq ($(OS_SOURCE),openbsd)
 override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
 endif
-ifndef CROSSBOOTSTRAP
-ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-XP$(BINUTILSPREFIX) -Xc
-endif
-ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-Xr$(RLINKPATH)
-endif
-endif
 ifdef UNITDIR
 override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
 endif
@@ -983,12 +926,8 @@ ifdef RELEASE
 ifeq ($(CPU_TARGET),i386)
 FPCCPUOPT:=-OG2p3
 else
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1
-else
 FPCCPUOPT:=
 endif
-endif
 override FPCOPT+=-Xs $(FPCCPUOPT) -n
 override FPCOPTDEF+=RELEASE
 endif
@@ -1070,7 +1009,7 @@ EXECPPAS:=@$(PPAS)
 endif
 endif
 .PHONY: fpc_units
-ifneq ($(TARGET_UNITS),)
+ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
 override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
@@ -1092,7 +1031,7 @@ fpc_debug:
 	$(MAKE) all DEBUG=1
 fpc_release:
 	$(MAKE) all RELEASE=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .dpr .pp .rc .res
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -1105,14 +1044,10 @@ fpc_release:
 %$(EXEEXT): %.pas
 	$(COMPILER) $<
 	$(EXECPPAS)
-%$(EXEEXT): %.dpr
-	$(COMPILER) $<
-	$(EXECPPAS)
 %.res: %.rc
 	windres -i $< -o $@
 vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
 vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
 vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
 ifdef INSTALL_UNITS
@@ -1189,9 +1124,6 @@ override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
 endif
 ifdef CLEANPPUFILES
 override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
-ifdef DEBUGSYMEXT
-override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES)) 
-endif
 override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
 override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
 endif
@@ -1215,7 +1147,6 @@ ifdef LIB_NAME
 	-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
 endif
 	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-	-$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)
 fpc_distclean: clean
 ifdef COMPILER_UNITTARGETDIR
 TARGETDIRCLEAN=fpc_clean
@@ -1227,13 +1158,9 @@ endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
 	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-	-$(DEL) *_ppas$(BATCHEXT)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-ifdef DEBUGSYMEXT
-	-$(DEL) *$(DEBUGSYMEXT)
-endif
 .PHONY: fpc_baseinfo
 override INFORULES+=fpc_baseinfo
 fpc_baseinfo:

+ 1 - 1
rtl/darwin/Makefile.fpc

@@ -9,7 +9,7 @@ main=rtl
 [target]
 loaders=
 units=$(SYSTEMUNIT) objpas strings sysctl baseunix unixtype unixutil \
-      unix initc cmem \
+      unix initc cmem matrix \
       dos dl objects printer sockets \
       sysutils typinfo systhrds classes math varutils \
       charset ucomplex getopts heaptrc lineinfo \

+ 168 - 27
rtl/freebsd/Makefile

@@ -1,8 +1,8 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2002/05/23]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2004/07/07]
 #
 default: all
-MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware
+MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx
 override PATH:=$(subst \,/,$(PATH))
 ifeq ($(findstring ;,$(PATH)),)
 inUnix=1
@@ -32,7 +32,7 @@ inOS2=1
 endif
 endif
 else
-ifneq ($(findstring cygwin,$(MACHTYPE)),)
+ifneq ($(findstring cygdrive,$(PATH)),)
 inCygWin=1
 endif
 endif
@@ -42,6 +42,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 BSDhier=1
 endif
+ifeq ($(OS_TARGET),openbsd)
+BSDhier=1
+endif
 ifdef inUnix
 BATCHEXT=.sh
 else
@@ -55,6 +58,9 @@ ifdef inUnix
 PATHSEP=/
 else
 PATHSEP:=$(subst /,\,/)
+ifdef inCygWin
+PATHSEP=/
+endif
 endif
 ifdef PWD
 BASEDIR:=$(subst \,/,$(shell $(PWD)))
@@ -84,7 +90,7 @@ endif
 endif
 export ECHO
 endif
-OS_TARGET=freebsd
+override OS_TARGET_DEFAULT=freebsd
 override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
@@ -106,37 +112,38 @@ endif
 override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
 override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT)
 ifndef FPC_VERSION
-FPC_VERSION:=$(shell $(FPC) -iV)
+FPC_COMPILERINFO:=$(shell $(FPC) -iVSPTPSOTO)
+FPC_VERSION:=$(word 1,$(FPC_COMPILERINFO))
 endif
-export FPC FPC_VERSION
+export FPC FPC_VERSION FPC_COMPILERINFO
 unexport CHECKDEPEND ALLDEPENDENCIES
-ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
-COMPILERINFO:=$(shell $(FPC) -iSP -iTP -iSO -iTO)
-ifndef CPU_SOURCE
-CPU_SOURCE:=$(word 1,$(COMPILERINFO))
-endif
 ifndef CPU_TARGET
-CPU_TARGET:=$(word 2,$(COMPILERINFO))
+ifdef CPU_TARGET_DEFAULT
+CPU_TARGET=$(CPU_TARGET_DEFAULT)
 endif
-ifndef OS_SOURCE
-OS_SOURCE:=$(word 3,$(COMPILERINFO))
 endif
 ifndef OS_TARGET
-OS_TARGET:=$(word 4,$(COMPILERINFO))
+ifdef OS_TARGET_DEFAULT
+OS_TARGET=$(OS_TARGET_DEFAULT)
+endif
+endif
+ifneq ($(words $(FPC_COMPILERINFO)),5)
+FPC_COMPILERINFO+=$(shell $(FPC) -iSP)
+FPC_COMPILERINFO+=$(shell $(FPC) -iTP)
+FPC_COMPILERINFO+=$(shell $(FPC) -iSO)
+FPC_COMPILERINFO+=$(shell $(FPC) -iTO)
 endif
-else
 ifndef CPU_SOURCE
-CPU_SOURCE:=$(shell $(FPC) -iSP)
+CPU_SOURCE:=$(word 2,$(FPC_COMPILERINFO))
 endif
 ifndef CPU_TARGET
-CPU_TARGET:=$(shell $(FPC) -iTP)
+CPU_TARGET:=$(word 3,$(FPC_COMPILERINFO))
 endif
 ifndef OS_SOURCE
-OS_SOURCE:=$(shell $(FPC) -iSO)
+OS_SOURCE:=$(word 4,$(FPC_COMPILERINFO))
 endif
 ifndef OS_TARGET
-OS_TARGET:=$(shell $(FPC) -iTO)
-endif
+OS_TARGET:=$(word 5,$(FPC_COMPILERINFO))
 endif
 FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
 FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
@@ -222,7 +229,7 @@ GRAPHDIR=$(INC)/graph
 ifndef USELIBGGI
 USELIBGGI=NO
 endif
-override TARGET_UNITS+=$(SYSTEMUNIT) objpas strings syscall sysctl unixtype baseunix unixutil unix rtlconst initc cmem dos dl termio objects printer sysutils typinfo systhrds types classes math varutils dynlibs cpu mmx charset ucomplex crt getopts heaptrc lineinfo errors sockets gpm ipc terminfo video mouse keyboard console serial variants  sysctl dateutils sysconst cthreads strutils convutils
+override TARGET_UNITS+=$(SYSTEMUNIT) objpas strings syscall sysctl unixtype baseunix unixutil unix rtlconst initc cmem matrix dos dl termio objects printer sysutils typinfo systhrds types classes math varutils dynlibs cpu mmx charset ucomplex crt getopts heaptrc lineinfo errors sockets gpm ipc terminfo video mouse keyboard console serial variants  sysctl dateutils sysconst cthreads strutils convutils
 override TARGET_LOADERS+=prt0 cprt0 gprt0
 override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst
 override INSTALL_FPCPACKAGE=y y
@@ -245,9 +252,15 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),openbsd)
+UNIXINSTALLDIR=1
+endif
 ifeq ($(OS_TARGET),sunos)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),qnx)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -258,9 +271,15 @@ endif
 ifeq ($(OS_SOURCE),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_SOURCE),openbsd)
+UNIXINSTALLDIR=1
+endif
 ifeq ($(OS_TARGET),sunos)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),qnx)
+UNIXINSTALLDIR=1
+endif
 endif
 ifndef INSTALL_PREFIX
 ifdef PREFIX
@@ -422,6 +441,103 @@ SHAREDLIBEXT=.so
 STATICLIBPREFIX=libp
 RSTEXT=.rst
 FPCMADE=fpcmade
+ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
+ifeq ($(OS_TARGET),go32v1)
+STATICLIBPREFIX=
+FPCMADE=fpcmade.v1
+PACKAGESUFFIX=v1
+endif
+ifeq ($(OS_TARGET),go32v2)
+STATICLIBPREFIX=
+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),netbsd)
+EXEEXT=
+HASSHAREDLIB=1
+FPCMADE=fpcmade.netbsd
+ZIPSUFFIX=netbsd
+endif
+ifeq ($(OS_TARGET),openbsd)
+EXEEXT=
+HASSHAREDLIB=1
+FPCMADE=fpcmade.openbsd
+ZIPSUFFIX=openbsd
+endif
+ifeq ($(OS_TARGET),win32)
+SHAREDLIBEXT=.dll
+FPCMADE=fpcmade.w32
+ZIPSUFFIX=w32
+endif
+ifeq ($(OS_TARGET),os2)
+AOUTEXT=.out
+STATICLIBPREFIX=
+SHAREDLIBEXT=.dll
+FPCMADE=fpcmade.os2
+ZIPSUFFIX=os2
+ECHO=echo
+endif
+ifeq ($(OS_TARGET),emx)
+AOUTEXT=.out
+STATICLIBPREFIX=
+SHAREDLIBEXT=.dll
+FPCMADE=fpcmade.emx
+ZIPSUFFIX=emx
+ECHO=echo
+endif
+ifeq ($(OS_TARGET),amiga)
+EXEEXT=
+SHAREDLIBEXT=.library
+FPCMADE=fpcmade.amg
+endif
+ifeq ($(OS_TARGET),atari)
+EXEEXT=.ttp
+FPCMADE=fpcmade.ata
+endif
+ifeq ($(OS_TARGET),beos)
+EXEEXT=
+FPCMADE=fpcmade.be
+ZIPSUFFIX=be
+endif
+ifeq ($(OS_TARGET),sunos)
+EXEEXT=
+FPCMADE=fpcmade.sun
+ZIPSUFFIX=sun
+endif
+ifeq ($(OS_TARGET),qnx)
+EXEEXT=
+FPCMADE=fpcmade.qnx
+ZIPSUFFIX=qnx
+endif
+ifeq ($(OS_TARGET),netware)
+EXEEXT=.nlm
+STATICLIBPREFIX=
+FPCMADE=fpcmade.nw
+ZIPSUFFIX=nw
+endif
+ifeq ($(OS_TARGET),macos)
+EXEEXT=
+FPCMADE=fpcmade.mcc
+endif
+ifeq ($(OS_TARGET),darwin)
+EXEEXT=
+HASSHAREDLIB=1
+FPCMADE=fpcmade.darwin
+ZIPSUFFIX=darwin
+endif
+else
 ifeq ($(OS_TARGET),go32v1)
 PPUEXT=.pp1
 OEXT=.o1
@@ -456,6 +572,12 @@ HASSHAREDLIB=1
 FPCMADE=fpcmade.netbsd
 ZIPSUFFIX=netbsd
 endif
+ifeq ($(OS_TARGET),openbsd)
+EXEEXT=
+HASSHAREDLIB=1
+FPCMADE=fpcmade.openbsd
+ZIPSUFFIX=openbsd
+endif
 ifeq ($(OS_TARGET),win32)
 PPUEXT=.ppw
 OEXT=.ow
@@ -481,7 +603,7 @@ ECHO=echo
 endif
 ifeq ($(OS_TARGET),amiga)
 EXEEXT=
-PPUEXT=.ppa
+PPUEXT=.ppu
 ASMEXT=.asm
 OEXT=.o
 SMARTEXT=.sl
@@ -490,7 +612,7 @@ SHAREDLIBEXT=.library
 FPCMADE=fpcmade.amg
 endif
 ifeq ($(OS_TARGET),atari)
-PPUEXT=.ppt
+PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
 SMARTEXT=.sl
@@ -530,8 +652,8 @@ ZIPSUFFIX=qnx
 endif
 ifeq ($(OS_TARGET),netware)
 STATICLIBPREFIX=
-PPUEXT=.ppn
-OEXT=.on
+PPUEXT=.ppu
+OEXT=.o
 ASMEXT=.s
 SMARTEXT=.sl
 STATICLIBEXT=.a
@@ -540,6 +662,16 @@ FPCMADE=fpcmade.nw
 ZIPSUFFIX=nw
 EXEEXT=.nlm
 endif
+ifeq ($(OS_TARGET),macos)
+PPUEXT=.ppu
+ASMEXT=.s
+OEXT=.o
+SMARTEXT=.sl
+STATICLIBEXT=.a
+EXEEXT=
+FPCMADE=fpcmade.mcc
+endif
+endif
 ifndef ECHO
 ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ECHO),)
@@ -767,6 +899,9 @@ endif
 ifneq ($(OS_TARGET),$(OS_SOURCE))
 override FPCOPT+=-T$(OS_TARGET)
 endif
+ifeq ($(OS_SOURCE),openbsd)
+override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
+endif
 ifdef UNITDIR
 override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
 endif
@@ -848,6 +983,11 @@ override COMPILER_UNITTARGETDIR=$(COMPILER_TARGETDIR)
 override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX)
 endif
 endif
+ifeq ($(OS_TARGET),linux)
+ifeq ($(FPC_VERSION),1.0.6)
+override FPCOPTDEF+=HASUNIX
+endif
+endif
 ifdef OPT
 override FPCOPT+=$(OPT)
 endif
@@ -866,7 +1006,7 @@ override COMPILER:=$(FPC) $(FPCOPT)
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-ifeq ($(OS_SOURCE),$(OS_TARGET))
+ifeq ($(FULL_SOURCE),$(FULL_TARGET))
 EXECPPAS:=@$(PPAS)
 endif
 endif
@@ -1082,6 +1222,7 @@ fpc_baseinfo:
 	@$(ECHO)  Rm........ $(RMPROG)
 	@$(ECHO)  GInstall.. $(GINSTALL)
 	@$(ECHO)  Echo...... $(ECHO)
+	@$(ECHO)  Shell..... $(SHELL)
 	@$(ECHO)  Date...... $(DATE)
 	@$(ECHO)  FPCMake... $(FPCMAKE)
 	@$(ECHO)  PPUMove... $(PPUMOVE)

+ 1 - 1
rtl/freebsd/Makefile.fpc

@@ -11,7 +11,7 @@ fpcpackage=y
 [target]
 loaders=prt0 cprt0 gprt0
 units=$(SYSTEMUNIT) objpas strings syscall sysctl unixtype baseunix unixutil \
-      unix rtlconst initc cmem \
+      unix rtlconst initc cmem matrix \
       dos dl termio objects printer \
       sysutils typinfo systhrds types classes math varutils dynlibs \
       cpu mmx charset ucomplex crt getopts heaptrc lineinfo \

+ 78 - 151
rtl/go32v2/Makefile

@@ -1,25 +1,15 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2004/05/23]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2004/07/07]
 #
 default: all
-MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx watcom
-BSDs = freebsd netbsd openbsd darwin
-UNIXs = linux $(BSDs) sunos qnx
-FORCE:
-.PHONY: FORCE
-override PATH:=$(patsubst %/,%,$(subst \,/,$(PATH)))
-ifneq ($(findstring darwin,$(OSTYPE)),)
-inUnix=1 #darwin
-SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
-else
+MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx
+override PATH:=$(subst \,/,$(PATH))
 ifeq ($(findstring ;,$(PATH)),)
 inUnix=1
 SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
 else
 SEARCHPATH:=$(subst ;, ,$(PATH))
 endif
-endif
-SEARCHPATH+=$(patsubst %/,%,$(subst \,/,$(dir $(MAKE))))
 PWD:=$(strip $(wildcard $(addsuffix /pwd.exe,$(SEARCHPATH))))
 ifeq ($(PWD),)
 PWD:=$(strip $(wildcard $(addsuffix /pwd,$(SEARCHPATH))))
@@ -46,13 +36,22 @@ ifneq ($(findstring cygdrive,$(PATH)),)
 inCygWin=1
 endif
 endif
+ifeq ($(OS_TARGET),freebsd)
+BSDhier=1
+endif
+ifeq ($(OS_TARGET),netbsd)
+BSDhier=1
+endif
+ifeq ($(OS_TARGET),openbsd)
+BSDhier=1
+endif
 ifdef inUnix
-SRCBATCHEXT=.sh
+BATCHEXT=.sh
 else
 ifdef inOS2
-SRCBATCHEXT=.cmd
+BATCHEXT=.cmd
 else
-SRCBATCHEXT=.bat
+BATCHEXT=.bat
 endif
 endif
 ifdef inUnix
@@ -157,12 +156,6 @@ ifeq ($(findstring $(OS_TARGET),$(MAKEFILETARGETS)),)
 $(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake first)
 endif
 endif
-ifneq ($(findstring $(OS_TARGET),$(BSDs)),)
-BSDhier=1
-endif
-ifeq ($(OS_TARGET),linux)
-linuxHier=1
-endif
 export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE CROSSCOMPILE
 ifdef FPCDIR
 override FPCDIR:=$(subst \,/,$(FPCDIR))
@@ -192,14 +185,11 @@ override FPCDIR:=$(FPCDIR)/..
 ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR:=$(FPCDIR)/..
 ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR:=$(BASEDIR)
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=c:/pp
 endif
 endif
 endif
 endif
-endif
 ifndef CROSSDIR
 CROSSDIR:=$(FPCDIR)/cross/$(FULL_TARGET)
 endif
@@ -231,7 +221,7 @@ endif
 ifdef NO_EXCEPTIONS_IN_SYSTEM
 override FPCOPT+=-dNO_EXCEPTIONS_IN_SYSTEM
 endif
-override TARGET_UNITS+=system objpas strings go32 dpmiexcp initc ports profile dxeload emu387 dos crt objects printer graph sysutils classes math typinfo cpu mmx ucomplex getopts heaptrc lineinfo msmouse charset varutils video mouse keyboard variants vesamode types sysconst rtlconst dateutil
+override TARGET_UNITS+=system objpas strings go32 dpmiexcp initc ports profile dxeload emu387 dos crt objects printer graph sysutils classes math typinfo matrix cpu mmx ucomplex getopts heaptrc lineinfo msmouse charset varutils video mouse keyboard variants vesamode types sysconst rtlconst dateutil
 override TARGET_LOADERS+=prt0 exceptn fpu
 override TARGET_RSTS+=math varutils typinfo classes variants dateutil sysconst
 override INSTALL_FPCPACKAGE=y
@@ -245,12 +235,42 @@ ifdef REQUIRE_PACKAGESDIR
 override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
 endif
 ifdef ZIPINSTALL
-ifneq ($(findstring $(OS_TARGET),$(UNIXs)),)
-UNIXHier=1
+ifeq ($(OS_TARGET),linux)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),freebsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),netbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),openbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),qnx)
+UNIXINSTALLDIR=1
 endif
 else
-ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),)
-UNIXHier=1
+ifeq ($(OS_SOURCE),linux)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),freebsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),netbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),openbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),qnx)
+UNIXINSTALLDIR=1
 endif
 endif
 ifndef INSTALL_PREFIX
@@ -259,7 +279,7 @@ INSTALL_PREFIX=$(PREFIX)
 endif
 endif
 ifndef INSTALL_PREFIX
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 INSTALL_PREFIX=/usr/local
 else
 ifdef INSTALL_FPCPACKAGE
@@ -278,7 +298,7 @@ DIST_DESTDIR:=$(BASEDIR)
 endif
 export DIST_DESTDIR
 ifndef INSTALL_BASEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef INSTALL_FPCPACKAGE
 INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
 else
@@ -289,18 +309,10 @@ INSTALL_BASEDIR:=$(INSTALL_PREFIX)
 endif
 endif
 ifndef INSTALL_BINDIR
-ifdef UNIXHier
-ifdef CROSSCOMPILE
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
-else
+ifdef UNIXINSTALLDIR
 INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
-endif
-else
-ifdef CROSSCOMPILE
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
 else
 INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
-endif
 ifdef INSTALL_FPCPACKAGE
 INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET)
 endif
@@ -319,23 +331,19 @@ endif
 endif
 endif
 ifndef INSTALL_LIBDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
 else
 INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
 endif
 endif
 ifndef INSTALL_SOURCEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef BSDhier
 SRCPREFIXDIR=share/src
 else
-ifdef linuxHier
-SRCPREFIXDIR=share/src
-else
 SRCPREFIXDIR=src
 endif
-endif
 ifdef INSTALL_FPCPACKAGE
 ifdef INSTALL_FPCSUBDIR
 INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
@@ -358,16 +366,12 @@ endif
 endif
 endif
 ifndef INSTALL_DOCDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef BSDhier
 DOCPREFIXDIR=share/doc
 else
-ifdef linuxHier
-DOCPREFIXDIR=share/doc
-else
 DOCPREFIXDIR=doc
 endif
-endif
 ifdef INSTALL_FPCPACKAGE
 INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
 else
@@ -382,28 +386,20 @@ endif
 endif
 endif
 ifndef INSTALL_EXAMPLEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef INSTALL_FPCPACKAGE
 ifdef BSDhier
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
 else
-ifdef linuxHier
-INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples
-else
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
 endif
-endif
 else
 ifdef BSDhier
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
 else
-ifdef linuxHier
-INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
 endif
 endif
-endif
 else
 ifdef INSTALL_FPCPACKAGE
 INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples/$(PACKAGE_NAME)
@@ -425,7 +421,6 @@ endif
 else
 CROSSBINDIR=
 endif
-BATCHEXT=.bat
 LOADEREXT=.as
 EXEEXT=.exe
 PPLEXT=.ppl
@@ -449,37 +444,25 @@ STATICLIBPREFIX=
 FPCMADE=fpcmade.dos
 ZIPSUFFIX=go32
 endif
-ifeq ($(OS_TARGET),watcom)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.wat
-ZIPSUFFIX=watc
-OEXT=.obj
-ASMEXT=.asm
-SHAREDLIBEXT=.dll
-endif
 ifeq ($(OS_TARGET),linux)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.lnx
 ZIPSUFFIX=linux
 endif
 ifeq ($(OS_TARGET),freebsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.freebsd
 ZIPSUFFIX=freebsd
 endif
 ifeq ($(OS_TARGET),netbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.netbsd
 ZIPSUFFIX=netbsd
 endif
 ifeq ($(OS_TARGET),openbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.openbsd
@@ -491,7 +474,6 @@ FPCMADE=fpcmade.w32
 ZIPSUFFIX=w32
 endif
 ifeq ($(OS_TARGET),os2)
-BATCHEXT=.cmd
 AOUTEXT=.out
 STATICLIBPREFIX=
 SHAREDLIBEXT=.dll
@@ -500,7 +482,6 @@ ZIPSUFFIX=os2
 ECHO=echo
 endif
 ifeq ($(OS_TARGET),emx)
-BATCHEXT=.cmd
 AOUTEXT=.out
 STATICLIBPREFIX=
 SHAREDLIBEXT=.dll
@@ -518,19 +499,16 @@ EXEEXT=.ttp
 FPCMADE=fpcmade.ata
 endif
 ifeq ($(OS_TARGET),beos)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.be
 ZIPSUFFIX=be
 endif
 ifeq ($(OS_TARGET),sunos)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.sun
 ZIPSUFFIX=sun
 endif
 ifeq ($(OS_TARGET),qnx)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.qnx
 ZIPSUFFIX=qnx
@@ -542,14 +520,10 @@ FPCMADE=fpcmade.nw
 ZIPSUFFIX=nw
 endif
 ifeq ($(OS_TARGET),macos)
-BATCHEXT=
 EXEEXT=
-FPCMADE=fpcmade.macos
-ZIPSUFFIX=macos
-DEBUGSYMEXT=.xcoff
+FPCMADE=fpcmade.mcc
 endif
 ifeq ($(OS_TARGET),darwin)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.darwin
@@ -572,34 +546,25 @@ STATICLIBPREFIX=
 FPCMADE=fpcmade.dos
 ZIPSUFFIX=go32
 endif
-ifeq ($(OS_TARGET),watcom)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.dos
-ZIPSUFFIX=watcom
-endif
 ifeq ($(OS_TARGET),linux)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.lnx
 ZIPSUFFIX=linux
 endif
 ifeq ($(OS_TARGET),freebsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.freebsd
 ZIPSUFFIX=freebsd
 endif
 ifeq ($(OS_TARGET),netbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.netbsd
 ZIPSUFFIX=netbsd
 endif
 ifeq ($(OS_TARGET),openbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.openbsd
@@ -616,7 +581,6 @@ FPCMADE=fpcmade.w32
 ZIPSUFFIX=w32
 endif
 ifeq ($(OS_TARGET),os2)
-BATCHEXT=.cmd
 PPUEXT=.ppo
 ASMEXT=.so2
 OEXT=.oo2
@@ -649,7 +613,6 @@ EXEEXT=.ttp
 FPCMADE=fpcmade.ata
 endif
 ifeq ($(OS_TARGET),beos)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -660,7 +623,6 @@ FPCMADE=fpcmade.be
 ZIPSUFFIX=be
 endif
 ifeq ($(OS_TARGET),sunos)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -671,7 +633,6 @@ FPCMADE=fpcmade.sun
 ZIPSUFFIX=sun
 endif
 ifeq ($(OS_TARGET),qnx)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -694,15 +655,13 @@ ZIPSUFFIX=nw
 EXEEXT=.nlm
 endif
 ifeq ($(OS_TARGET),macos)
-BATCHEXT=
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
 SMARTEXT=.sl
 STATICLIBEXT=.a
 EXEEXT=
-DEBUGSYMEXT=.xcoff
-FPCMADE=fpcmade.macos
+FPCMADE=fpcmade.mcc
 endif
 endif
 ifndef ECHO
@@ -710,7 +669,7 @@ ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ECHO),)
 ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ECHO),)
-ECHO= __missing_command__
+ECHO=
 else
 ECHO:=$(firstword $(ECHO))
 endif
@@ -724,7 +683,7 @@ DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(DATE),)
 DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(DATE),)
-DATE= __missing_command__
+DATE=
 else
 DATE:=$(firstword $(DATE))
 endif
@@ -738,7 +697,7 @@ GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(GINSTALL),)
 GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(GINSTALL),)
-GINSTALL= __missing_command__
+GINSTALL=
 else
 GINSTALL:=$(firstword $(GINSTALL))
 endif
@@ -750,7 +709,7 @@ export GINSTALL
 ifndef CPPROG
 CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(CPPROG),)
-CPPROG= __missing_command__
+CPPROG=
 else
 CPPROG:=$(firstword $(CPPROG))
 endif
@@ -759,7 +718,7 @@ export CPPROG
 ifndef RMPROG
 RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(RMPROG),)
-RMPROG= __missing_command__
+RMPROG=
 else
 RMPROG:=$(firstword $(RMPROG))
 endif
@@ -768,18 +727,14 @@ export RMPROG
 ifndef MVPROG
 MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(MVPROG),)
-MVPROG= __missing_command__
+MVPROG=
 else
 MVPROG:=$(firstword $(MVPROG))
 endif
 endif
 export MVPROG
 ifndef ECHOREDIR
-ifndef inUnix
-ECHOREDIR=echo
-else
-ECHOREDIR=$(ECHO)
-endif
+ECHOREDIR:=$(subst /,$(PATHSEP),$(ECHO))
 endif
 ifndef COPY
 COPY:=$(CPPROG) -fp
@@ -817,7 +772,7 @@ export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
 ifndef PPUMOVE
 PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(PPUMOVE),)
-PPUMOVE= __missing_command__
+PPUMOVE=
 else
 PPUMOVE:=$(firstword $(PPUMOVE))
 endif
@@ -826,7 +781,7 @@ export PPUMOVE
 ifndef FPCMAKE
 FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(FPCMAKE),)
-FPCMAKE= __missing_command__
+FPCMAKE=
 else
 FPCMAKE:=$(firstword $(FPCMAKE))
 endif
@@ -835,7 +790,7 @@ export FPCMAKE
 ifndef ZIPPROG
 ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ZIPPROG),)
-ZIPPROG= __missing_command__
+ZIPPROG=
 else
 ZIPPROG:=$(firstword $(ZIPPROG))
 endif
@@ -844,25 +799,21 @@ export ZIPPROG
 ifndef TARPROG
 TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(TARPROG),)
-TARPROG= __missing_command__
+TARPROG=
 else
 TARPROG:=$(firstword $(TARPROG))
 endif
 endif
 export TARPROG
-ASNAME=$(BINUTILSPREFIX)as
-LDNAME=$(BINUTILSPREFIX)ld
-ARNAME=$(BINUTILSPREFIX)ar
-RCNAME=$(BINUTILSPREFIX)rc
-ifneq ($(findstring 1.0.,$(FPC_VERSION)),)
+ASNAME=as
+LDNAME=ld
+ARNAME=ar
+RCNAME=rc
 ifeq ($(OS_TARGET),win32)
-ifeq ($(CROSSBINDIR),)
 ASNAME=asw
 LDNAME=ldw
 ARNAME=arw
 endif
-endif
-endif
 ifndef ASPROG
 ifdef CROSSBINDIR
 ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT)
@@ -895,7 +846,7 @@ AS=$(ASPROG)
 LD=$(LDPROG)
 RC=$(RCPROG)
 AR=$(ARPROG)
-PPAS=ppas$(SRCBATCHEXT)
+PPAS=ppas$(BATCHEXT)
 ifdef inUnix
 LDCONFIG=ldconfig
 else
@@ -943,14 +894,6 @@ endif
 ifeq ($(OS_SOURCE),openbsd)
 override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
 endif
-ifndef CROSSBOOTSTRAP
-ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-XP$(BINUTILSPREFIX) -Xc
-endif
-ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-Xr$(RLINKPATH)
-endif
-endif
 ifdef UNITDIR
 override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
 endif
@@ -977,12 +920,8 @@ ifdef RELEASE
 ifeq ($(CPU_TARGET),i386)
 FPCCPUOPT:=-OG2p3
 else
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1
-else
 FPCCPUOPT:=
 endif
-endif
 override FPCOPT+=-Xs $(FPCCPUOPT) -n
 override FPCOPTDEF+=RELEASE
 endif
@@ -1064,7 +1003,7 @@ EXECPPAS:=@$(PPAS)
 endif
 endif
 .PHONY: fpc_loaders
-ifneq ($(TARGET_LOADERS),)
+ifdef TARGET_LOADERS
 override ALLTARGET+=fpc_loaders
 override CLEANTARGET+=fpc_loaders_clean
 override INSTALLTARGET+=fpc_loaders_install
@@ -1079,7 +1018,7 @@ fpc_loaders_install:
 	$(MKDIR) $(INSTALL_UNITDIR)
 	$(INSTALL) $(LOADEROFILES) $(INSTALL_UNITDIR)
 .PHONY: fpc_units
-ifneq ($(TARGET_UNITS),)
+ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
 override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
@@ -1101,7 +1040,7 @@ fpc_debug:
 	$(MAKE) all DEBUG=1
 fpc_release:
 	$(MAKE) all RELEASE=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .dpr .pp .rc .res
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -1114,14 +1053,10 @@ fpc_release:
 %$(EXEEXT): %.pas
 	$(COMPILER) $<
 	$(EXECPPAS)
-%$(EXEEXT): %.dpr
-	$(COMPILER) $<
-	$(EXECPPAS)
 %.res: %.rc
 	windres -i $< -o $@
 vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
 vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
 vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
 ifdef INSTALL_UNITS
@@ -1198,9 +1133,6 @@ override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
 endif
 ifdef CLEANPPUFILES
 override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
-ifdef DEBUGSYMEXT
-override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES)) 
-endif
 override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
 override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
 endif
@@ -1224,7 +1156,6 @@ ifdef LIB_NAME
 	-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
 endif
 	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-	-$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)
 fpc_distclean: clean
 ifdef COMPILER_UNITTARGETDIR
 TARGETDIRCLEAN=fpc_clean
@@ -1236,13 +1167,9 @@ endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
 	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-	-$(DEL) *_ppas$(BATCHEXT)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-ifdef DEBUGSYMEXT
-	-$(DEL) *$(DEBUGSYMEXT)
-endif
 .PHONY: fpc_baseinfo
 override INFORULES+=fpc_baseinfo
 fpc_baseinfo:

+ 1 - 1
rtl/go32v2/Makefile.fpc

@@ -10,7 +10,7 @@ loaders=prt0 exceptn fpu
 units=system objpas strings \
       go32 dpmiexcp initc ports profile dxeload emu387 \
       dos crt objects printer graph \
-      sysutils classes math typinfo \
+      sysutils classes math typinfo matrix \
       cpu mmx ucomplex getopts heaptrc lineinfo \
       msmouse charset varutils \
       video mouse keyboard variants vesamode types \

+ 20 - 0
rtl/inc/matrix.pp

@@ -13,6 +13,19 @@ unit matrix;
 
  **********************************************************************}
 
+{This unit provides some common matrix and vector operations on vectors and
+ matrixes with dimensions of 2, 3 and 4 which are the most common ones in
+ computer graphics, and all routines provided in variations with single, 
+ double and extended precision.
+
+ The goal of this unit is also to invite some standardisation
+ between libraries, i.e. a vector from library x can be passed to library y
+ without conversion routines in between.
+
+ It would be nice to have some diehard assembler optimized versions of
+ these routines, however the Free Pascal team wishes to concentrate on the
+ compiler. Contributions from the community are very welcome.}
+
 {*****************************************************************************}
 
 interface
@@ -809,3 +822,10 @@ implementation
 {$i mmatimp.inc}
 
 end.
+
+{
+  $Log$
+  Revision 1.2  2004-07-07 21:37:30  daniel
+    * Matrix unit included in build process
+
+}

+ 78 - 156
rtl/linux/Makefile

@@ -1,25 +1,15 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2004/07/05]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2004/07/07]
 #
 default: all
-MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx watcom morphos
-BSDs = freebsd netbsd openbsd darwin
-UNIXs = linux $(BSDs) sunos qnx
-FORCE:
-.PHONY: FORCE
-override PATH:=$(patsubst %/,%,$(subst \,/,$(PATH)))
-ifneq ($(findstring darwin,$(OSTYPE)),)
-inUnix=1 #darwin
-SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
-else
+MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx
+override PATH:=$(subst \,/,$(PATH))
 ifeq ($(findstring ;,$(PATH)),)
 inUnix=1
 SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
 else
 SEARCHPATH:=$(subst ;, ,$(PATH))
 endif
-endif
-SEARCHPATH+=$(patsubst %/,%,$(subst \,/,$(dir $(MAKE))))
 PWD:=$(strip $(wildcard $(addsuffix /pwd.exe,$(SEARCHPATH))))
 ifeq ($(PWD),)
 PWD:=$(strip $(wildcard $(addsuffix /pwd,$(SEARCHPATH))))
@@ -46,13 +36,22 @@ ifneq ($(findstring cygdrive,$(PATH)),)
 inCygWin=1
 endif
 endif
+ifeq ($(OS_TARGET),freebsd)
+BSDhier=1
+endif
+ifeq ($(OS_TARGET),netbsd)
+BSDhier=1
+endif
+ifeq ($(OS_TARGET),openbsd)
+BSDhier=1
+endif
 ifdef inUnix
-SRCBATCHEXT=.sh
+BATCHEXT=.sh
 else
 ifdef inOS2
-SRCBATCHEXT=.cmd
+BATCHEXT=.cmd
 else
-SRCBATCHEXT=.bat
+BATCHEXT=.bat
 endif
 endif
 ifdef inUnix
@@ -156,12 +155,6 @@ ifeq ($(findstring $(OS_TARGET),$(MAKEFILETARGETS)),)
 $(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake first)
 endif
 endif
-ifneq ($(findstring $(OS_TARGET),$(BSDs)),)
-BSDhier=1
-endif
-ifeq ($(OS_TARGET),linux)
-linuxHier=1
-endif
 export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE CROSSCOMPILE
 ifdef FPCDIR
 override FPCDIR:=$(subst \,/,$(FPCDIR))
@@ -191,14 +184,11 @@ override FPCDIR:=$(FPCDIR)/..
 ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR:=$(FPCDIR)/..
 ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR:=$(BASEDIR)
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=c:/pp
 endif
 endif
 endif
 endif
-endif
 ifndef CROSSDIR
 CROSSDIR:=$(FPCDIR)/cross/$(FULL_TARGET)
 endif
@@ -247,7 +237,7 @@ GRAPHDIR=$(INC)/graph
 ifndef USELIBGGI
 USELIBGGI=NO
 endif
-override TARGET_UNITS+=$(SYSTEMUNIT) unixtype baseunix strings systhrds  objpas syscall unixutil heaptrc lineinfo $(LINUXUNIT1) termio unix $(LINUXUNIT2) initc cmem $(CPU_UNITS) dos crt objects printer ggigraph sysutils typinfo math varutils charset ucomplex getopts errors sockets gpm ipc serial terminfo dl dynlibs video mouse keyboard variants types dateutils sysconst cthreads classes strutils rtlconst
+override TARGET_UNITS+=$(SYSTEMUNIT) unixtype baseunix strings systhrds  objpas syscall unixutil heaptrc lineinfo $(LINUXUNIT1) termio unix $(LINUXUNIT2) initc cmem $(CPU_UNITS) dos crt objects printer ggigraph sysutils typinfo math matrix varutils charset ucomplex getopts errors sockets gpm ipc serial terminfo dl dynlibs video mouse keyboard variants types dateutils sysconst cthreads classes strutils rtlconst
 override TARGET_LOADERS+=prt0 dllprt0 cprt0 gprt0 $(CRT21)
 override TARGET_RSTS+=math varutils typinfo variants systhrds sysconst rtlconst
 override CLEAN_UNITS+=syslinux linux
@@ -262,12 +252,42 @@ ifdef REQUIRE_PACKAGESDIR
 override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
 endif
 ifdef ZIPINSTALL
-ifneq ($(findstring $(OS_TARGET),$(UNIXs)),)
-UNIXHier=1
+ifeq ($(OS_TARGET),linux)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),freebsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),netbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),openbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),qnx)
+UNIXINSTALLDIR=1
 endif
 else
-ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),)
-UNIXHier=1
+ifeq ($(OS_SOURCE),linux)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),freebsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),netbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),openbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),qnx)
+UNIXINSTALLDIR=1
 endif
 endif
 ifndef INSTALL_PREFIX
@@ -276,7 +296,7 @@ INSTALL_PREFIX=$(PREFIX)
 endif
 endif
 ifndef INSTALL_PREFIX
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 INSTALL_PREFIX=/usr/local
 else
 ifdef INSTALL_FPCPACKAGE
@@ -295,7 +315,7 @@ DIST_DESTDIR:=$(BASEDIR)
 endif
 export DIST_DESTDIR
 ifndef INSTALL_BASEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef INSTALL_FPCPACKAGE
 INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
 else
@@ -306,18 +326,10 @@ INSTALL_BASEDIR:=$(INSTALL_PREFIX)
 endif
 endif
 ifndef INSTALL_BINDIR
-ifdef UNIXHier
-ifdef CROSSCOMPILE
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
-else
+ifdef UNIXINSTALLDIR
 INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
-endif
-else
-ifdef CROSSCOMPILE
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
 else
 INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
-endif
 ifdef INSTALL_FPCPACKAGE
 INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET)
 endif
@@ -336,23 +348,19 @@ endif
 endif
 endif
 ifndef INSTALL_LIBDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
 else
 INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
 endif
 endif
 ifndef INSTALL_SOURCEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef BSDhier
 SRCPREFIXDIR=share/src
 else
-ifdef linuxHier
-SRCPREFIXDIR=share/src
-else
 SRCPREFIXDIR=src
 endif
-endif
 ifdef INSTALL_FPCPACKAGE
 ifdef INSTALL_FPCSUBDIR
 INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
@@ -375,16 +383,12 @@ endif
 endif
 endif
 ifndef INSTALL_DOCDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef BSDhier
 DOCPREFIXDIR=share/doc
 else
-ifdef linuxHier
-DOCPREFIXDIR=share/doc
-else
 DOCPREFIXDIR=doc
 endif
-endif
 ifdef INSTALL_FPCPACKAGE
 INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
 else
@@ -399,28 +403,20 @@ endif
 endif
 endif
 ifndef INSTALL_EXAMPLEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef INSTALL_FPCPACKAGE
 ifdef BSDhier
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
 else
-ifdef linuxHier
-INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples
-else
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
 endif
-endif
 else
 ifdef BSDhier
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
 else
-ifdef linuxHier
-INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
 endif
 endif
-endif
 else
 ifdef INSTALL_FPCPACKAGE
 INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples/$(PACKAGE_NAME)
@@ -442,7 +438,6 @@ endif
 else
 CROSSBINDIR=
 endif
-BATCHEXT=.bat
 LOADEREXT=.as
 EXEEXT=.exe
 PPLEXT=.ppl
@@ -466,37 +461,25 @@ STATICLIBPREFIX=
 FPCMADE=fpcmade.dos
 ZIPSUFFIX=go32
 endif
-ifeq ($(OS_TARGET),watcom)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.wat
-ZIPSUFFIX=watc
-OEXT=.obj
-ASMEXT=.asm
-SHAREDLIBEXT=.dll
-endif
 ifeq ($(OS_TARGET),linux)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.lnx
 ZIPSUFFIX=linux
 endif
 ifeq ($(OS_TARGET),freebsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.freebsd
 ZIPSUFFIX=freebsd
 endif
 ifeq ($(OS_TARGET),netbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.netbsd
 ZIPSUFFIX=netbsd
 endif
 ifeq ($(OS_TARGET),openbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.openbsd
@@ -508,7 +491,6 @@ FPCMADE=fpcmade.w32
 ZIPSUFFIX=w32
 endif
 ifeq ($(OS_TARGET),os2)
-BATCHEXT=.cmd
 AOUTEXT=.out
 STATICLIBPREFIX=
 SHAREDLIBEXT=.dll
@@ -517,7 +499,6 @@ ZIPSUFFIX=os2
 ECHO=echo
 endif
 ifeq ($(OS_TARGET),emx)
-BATCHEXT=.cmd
 AOUTEXT=.out
 STATICLIBPREFIX=
 SHAREDLIBEXT=.dll
@@ -530,29 +511,21 @@ EXEEXT=
 SHAREDLIBEXT=.library
 FPCMADE=fpcmade.amg
 endif
-ifeq ($(OS_TARGET),morphos)
-EXEEXT=
-SHAREDLIBEXT=.library
-FPCMADE=fpcmade.mos
-endif
 ifeq ($(OS_TARGET),atari)
 EXEEXT=.ttp
 FPCMADE=fpcmade.ata
 endif
 ifeq ($(OS_TARGET),beos)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.be
 ZIPSUFFIX=be
 endif
 ifeq ($(OS_TARGET),sunos)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.sun
 ZIPSUFFIX=sun
 endif
 ifeq ($(OS_TARGET),qnx)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.qnx
 ZIPSUFFIX=qnx
@@ -564,14 +537,10 @@ FPCMADE=fpcmade.nw
 ZIPSUFFIX=nw
 endif
 ifeq ($(OS_TARGET),macos)
-BATCHEXT=
 EXEEXT=
-FPCMADE=fpcmade.macos
-ZIPSUFFIX=macos
-DEBUGSYMEXT=.xcoff
+FPCMADE=fpcmade.mcc
 endif
 ifeq ($(OS_TARGET),darwin)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.darwin
@@ -594,34 +563,25 @@ STATICLIBPREFIX=
 FPCMADE=fpcmade.dos
 ZIPSUFFIX=go32
 endif
-ifeq ($(OS_TARGET),watcom)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.dos
-ZIPSUFFIX=watcom
-endif
 ifeq ($(OS_TARGET),linux)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.lnx
 ZIPSUFFIX=linux
 endif
 ifeq ($(OS_TARGET),freebsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.freebsd
 ZIPSUFFIX=freebsd
 endif
 ifeq ($(OS_TARGET),netbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.netbsd
 ZIPSUFFIX=netbsd
 endif
 ifeq ($(OS_TARGET),openbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.openbsd
@@ -638,7 +598,6 @@ FPCMADE=fpcmade.w32
 ZIPSUFFIX=w32
 endif
 ifeq ($(OS_TARGET),os2)
-BATCHEXT=.cmd
 PPUEXT=.ppo
 ASMEXT=.so2
 OEXT=.oo2
@@ -671,7 +630,6 @@ EXEEXT=.ttp
 FPCMADE=fpcmade.ata
 endif
 ifeq ($(OS_TARGET),beos)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -682,7 +640,6 @@ FPCMADE=fpcmade.be
 ZIPSUFFIX=be
 endif
 ifeq ($(OS_TARGET),sunos)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -693,7 +650,6 @@ FPCMADE=fpcmade.sun
 ZIPSUFFIX=sun
 endif
 ifeq ($(OS_TARGET),qnx)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -716,15 +672,13 @@ ZIPSUFFIX=nw
 EXEEXT=.nlm
 endif
 ifeq ($(OS_TARGET),macos)
-BATCHEXT=
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
 SMARTEXT=.sl
 STATICLIBEXT=.a
 EXEEXT=
-DEBUGSYMEXT=.xcoff
-FPCMADE=fpcmade.macos
+FPCMADE=fpcmade.mcc
 endif
 endif
 ifndef ECHO
@@ -732,7 +686,7 @@ ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ECHO),)
 ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ECHO),)
-ECHO= __missing_command__
+ECHO=
 else
 ECHO:=$(firstword $(ECHO))
 endif
@@ -746,7 +700,7 @@ DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(DATE),)
 DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(DATE),)
-DATE= __missing_command__
+DATE=
 else
 DATE:=$(firstword $(DATE))
 endif
@@ -760,7 +714,7 @@ GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(GINSTALL),)
 GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(GINSTALL),)
-GINSTALL= __missing_command__
+GINSTALL=
 else
 GINSTALL:=$(firstword $(GINSTALL))
 endif
@@ -772,7 +726,7 @@ export GINSTALL
 ifndef CPPROG
 CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(CPPROG),)
-CPPROG= __missing_command__
+CPPROG=
 else
 CPPROG:=$(firstword $(CPPROG))
 endif
@@ -781,7 +735,7 @@ export CPPROG
 ifndef RMPROG
 RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(RMPROG),)
-RMPROG= __missing_command__
+RMPROG=
 else
 RMPROG:=$(firstword $(RMPROG))
 endif
@@ -790,18 +744,14 @@ export RMPROG
 ifndef MVPROG
 MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(MVPROG),)
-MVPROG= __missing_command__
+MVPROG=
 else
 MVPROG:=$(firstword $(MVPROG))
 endif
 endif
 export MVPROG
 ifndef ECHOREDIR
-ifndef inUnix
-ECHOREDIR=echo
-else
-ECHOREDIR=$(ECHO)
-endif
+ECHOREDIR:=$(subst /,$(PATHSEP),$(ECHO))
 endif
 ifndef COPY
 COPY:=$(CPPROG) -fp
@@ -839,7 +789,7 @@ export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
 ifndef PPUMOVE
 PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(PPUMOVE),)
-PPUMOVE= __missing_command__
+PPUMOVE=
 else
 PPUMOVE:=$(firstword $(PPUMOVE))
 endif
@@ -848,7 +798,7 @@ export PPUMOVE
 ifndef FPCMAKE
 FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(FPCMAKE),)
-FPCMAKE= __missing_command__
+FPCMAKE=
 else
 FPCMAKE:=$(firstword $(FPCMAKE))
 endif
@@ -857,7 +807,7 @@ export FPCMAKE
 ifndef ZIPPROG
 ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ZIPPROG),)
-ZIPPROG= __missing_command__
+ZIPPROG=
 else
 ZIPPROG:=$(firstword $(ZIPPROG))
 endif
@@ -866,25 +816,21 @@ export ZIPPROG
 ifndef TARPROG
 TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(TARPROG),)
-TARPROG= __missing_command__
+TARPROG=
 else
 TARPROG:=$(firstword $(TARPROG))
 endif
 endif
 export TARPROG
-ASNAME=$(BINUTILSPREFIX)as
-LDNAME=$(BINUTILSPREFIX)ld
-ARNAME=$(BINUTILSPREFIX)ar
-RCNAME=$(BINUTILSPREFIX)rc
-ifneq ($(findstring 1.0.,$(FPC_VERSION)),)
+ASNAME=as
+LDNAME=ld
+ARNAME=ar
+RCNAME=rc
 ifeq ($(OS_TARGET),win32)
-ifeq ($(CROSSBINDIR),)
 ASNAME=asw
 LDNAME=ldw
 ARNAME=arw
 endif
-endif
-endif
 ifndef ASPROG
 ifdef CROSSBINDIR
 ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT)
@@ -917,7 +863,7 @@ AS=$(ASPROG)
 LD=$(LDPROG)
 RC=$(RCPROG)
 AR=$(ARPROG)
-PPAS=ppas$(SRCBATCHEXT)
+PPAS=ppas$(BATCHEXT)
 ifdef inUnix
 LDCONFIG=ldconfig
 else
@@ -965,14 +911,6 @@ endif
 ifeq ($(OS_SOURCE),openbsd)
 override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
 endif
-ifndef CROSSBOOTSTRAP
-ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-XP$(BINUTILSPREFIX) -Xc
-endif
-ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-Xr$(RLINKPATH)
-endif
-endif
 ifdef UNITDIR
 override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
 endif
@@ -999,12 +937,8 @@ ifdef RELEASE
 ifeq ($(CPU_TARGET),i386)
 FPCCPUOPT:=-OG2p3
 else
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1
-else
 FPCCPUOPT:=
 endif
-endif
 override FPCOPT+=-Xs $(FPCCPUOPT) -n
 override FPCOPTDEF+=RELEASE
 endif
@@ -1086,7 +1020,7 @@ EXECPPAS:=@$(PPAS)
 endif
 endif
 .PHONY: fpc_loaders
-ifneq ($(TARGET_LOADERS),)
+ifdef TARGET_LOADERS
 override ALLTARGET+=fpc_loaders
 override CLEANTARGET+=fpc_loaders_clean
 override INSTALLTARGET+=fpc_loaders_install
@@ -1101,7 +1035,7 @@ fpc_loaders_install:
 	$(MKDIR) $(INSTALL_UNITDIR)
 	$(INSTALL) $(LOADEROFILES) $(INSTALL_UNITDIR)
 .PHONY: fpc_units
-ifneq ($(TARGET_UNITS),)
+ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
 override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
@@ -1123,7 +1057,7 @@ fpc_debug:
 	$(MAKE) all DEBUG=1
 fpc_release:
 	$(MAKE) all RELEASE=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .dpr .pp .rc .res
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -1136,14 +1070,10 @@ fpc_release:
 %$(EXEEXT): %.pas
 	$(COMPILER) $<
 	$(EXECPPAS)
-%$(EXEEXT): %.dpr
-	$(COMPILER) $<
-	$(EXECPPAS)
 %.res: %.rc
 	windres -i $< -o $@
 vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
 vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
 vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
 ifdef INSTALL_UNITS
@@ -1220,9 +1150,6 @@ override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
 endif
 ifdef CLEANPPUFILES
 override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
-ifdef DEBUGSYMEXT
-override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES)) 
-endif
 override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
 override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
 endif
@@ -1246,7 +1173,6 @@ ifdef LIB_NAME
 	-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
 endif
 	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-	-$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)
 fpc_distclean: clean
 ifdef COMPILER_UNITTARGETDIR
 TARGETDIRCLEAN=fpc_clean
@@ -1258,13 +1184,9 @@ endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
 	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-	-$(DEL) *_ppas$(BATCHEXT)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-ifdef DEBUGSYMEXT
-	-$(DEL) *$(DEBUGSYMEXT)
-endif
 .PHONY: fpc_baseinfo
 override INFORULES+=fpc_baseinfo
 fpc_baseinfo:

+ 1 - 1
rtl/linux/Makefile.fpc

@@ -11,7 +11,7 @@ units=$(SYSTEMUNIT) unixtype baseunix strings systhrds  objpas syscall unixutil
       heaptrc lineinfo \
       $(LINUXUNIT1) termio unix $(LINUXUNIT2) initc cmem $(CPU_UNITS) \
       dos crt objects printer ggigraph \
-      sysutils typinfo math varutils \
+      sysutils typinfo math matrix varutils \
       charset ucomplex getopts \
       errors sockets gpm ipc serial terminfo dl dynlibs \
       video mouse keyboard variants types dateutils sysconst \

+ 1 - 1
rtl/macos/Makefile.fpc

@@ -7,7 +7,7 @@ main=rtl
 
 [target]
 loaders=
-units=system strings objpas heaptrc getopts macostp macutils unixutil dos objects
+units=system strings objpas heaptrc getopts macostp macutils unixutil dos objects matrix
 #      exec  \
 #      crt printer \
 #      lineinfo  graph \

+ 1 - 1
rtl/morphos/Makefile.fpc

@@ -10,7 +10,7 @@ loaders=prt0
 units=$(SYSTEMUNIT) objpas strings \
       dos \
       sysutils classes math typinfo varutils \
-      charset ucomplex getopts \
+      charset ucomplex getopts matrix \
       variants types rtlconst sysconst dateutil
 rsts=math rtlconst varutils typinfo variants classes sysconst dateutil
 

+ 78 - 151
rtl/netbsd/Makefile

@@ -1,25 +1,15 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2004/05/23]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2004/07/07]
 #
 default: all
-MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx watcom
-BSDs = freebsd netbsd openbsd darwin
-UNIXs = linux $(BSDs) sunos qnx
-FORCE:
-.PHONY: FORCE
-override PATH:=$(patsubst %/,%,$(subst \,/,$(PATH)))
-ifneq ($(findstring darwin,$(OSTYPE)),)
-inUnix=1 #darwin
-SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
-else
+MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx
+override PATH:=$(subst \,/,$(PATH))
 ifeq ($(findstring ;,$(PATH)),)
 inUnix=1
 SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
 else
 SEARCHPATH:=$(subst ;, ,$(PATH))
 endif
-endif
-SEARCHPATH+=$(patsubst %/,%,$(subst \,/,$(dir $(MAKE))))
 PWD:=$(strip $(wildcard $(addsuffix /pwd.exe,$(SEARCHPATH))))
 ifeq ($(PWD),)
 PWD:=$(strip $(wildcard $(addsuffix /pwd,$(SEARCHPATH))))
@@ -46,13 +36,22 @@ ifneq ($(findstring cygdrive,$(PATH)),)
 inCygWin=1
 endif
 endif
+ifeq ($(OS_TARGET),freebsd)
+BSDhier=1
+endif
+ifeq ($(OS_TARGET),netbsd)
+BSDhier=1
+endif
+ifeq ($(OS_TARGET),openbsd)
+BSDhier=1
+endif
 ifdef inUnix
-SRCBATCHEXT=.sh
+BATCHEXT=.sh
 else
 ifdef inOS2
-SRCBATCHEXT=.cmd
+BATCHEXT=.cmd
 else
-SRCBATCHEXT=.bat
+BATCHEXT=.bat
 endif
 endif
 ifdef inUnix
@@ -156,12 +155,6 @@ ifeq ($(findstring $(OS_TARGET),$(MAKEFILETARGETS)),)
 $(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake first)
 endif
 endif
-ifneq ($(findstring $(OS_TARGET),$(BSDs)),)
-BSDhier=1
-endif
-ifeq ($(OS_TARGET),linux)
-linuxHier=1
-endif
 export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE CROSSCOMPILE
 ifdef FPCDIR
 override FPCDIR:=$(subst \,/,$(FPCDIR))
@@ -191,14 +184,11 @@ override FPCDIR:=$(FPCDIR)/..
 ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR:=$(FPCDIR)/..
 ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR:=$(BASEDIR)
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=c:/pp
 endif
 endif
 endif
 endif
-endif
 ifndef CROSSDIR
 CROSSDIR:=$(FPCDIR)/cross/$(FULL_TARGET)
 endif
@@ -241,7 +231,7 @@ GRAPHDIR=$(INC)/graph
 ifndef USELIBGGI
 USELIBGGI=NO
 endif
-override TARGET_UNITS+=$(SYSTEMUNIT) objpas strings syscall baseunix $(LINUXUNIT) unix initc systhrds dos crt objects printer sysutils classes typinfo math varutils charset ucomplex getopts heaptrc lineinfo errors sockets gpm ipc terminfo video mouse keyboard  serial variants types systhrds sysctl sysconst
+override TARGET_UNITS+=$(SYSTEMUNIT) objpas strings syscall baseunix $(LINUXUNIT) unix initc systhrds dos crt objects printer matrix sysutils classes typinfo math varutils charset ucomplex getopts heaptrc lineinfo errors sockets gpm ipc terminfo video mouse keyboard  serial variants types systhrds sysctl sysconst
 ifeq ($(OS_TARGET),netbsd)
 ifeq ($(CPU_TARGET),i386)
 override TARGET_UNITS+=mmx cpu
@@ -260,12 +250,42 @@ ifdef REQUIRE_PACKAGESDIR
 override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
 endif
 ifdef ZIPINSTALL
-ifneq ($(findstring $(OS_TARGET),$(UNIXs)),)
-UNIXHier=1
+ifeq ($(OS_TARGET),linux)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),freebsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),netbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),openbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),qnx)
+UNIXINSTALLDIR=1
 endif
 else
-ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),)
-UNIXHier=1
+ifeq ($(OS_SOURCE),linux)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),freebsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),netbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),openbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),qnx)
+UNIXINSTALLDIR=1
 endif
 endif
 ifndef INSTALL_PREFIX
@@ -274,7 +294,7 @@ INSTALL_PREFIX=$(PREFIX)
 endif
 endif
 ifndef INSTALL_PREFIX
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 INSTALL_PREFIX=/usr/local
 else
 ifdef INSTALL_FPCPACKAGE
@@ -293,7 +313,7 @@ DIST_DESTDIR:=$(BASEDIR)
 endif
 export DIST_DESTDIR
 ifndef INSTALL_BASEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef INSTALL_FPCPACKAGE
 INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
 else
@@ -304,18 +324,10 @@ INSTALL_BASEDIR:=$(INSTALL_PREFIX)
 endif
 endif
 ifndef INSTALL_BINDIR
-ifdef UNIXHier
-ifdef CROSSCOMPILE
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
-else
+ifdef UNIXINSTALLDIR
 INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
-endif
-else
-ifdef CROSSCOMPILE
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
 else
 INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
-endif
 ifdef INSTALL_FPCPACKAGE
 INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET)
 endif
@@ -334,23 +346,19 @@ endif
 endif
 endif
 ifndef INSTALL_LIBDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
 else
 INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
 endif
 endif
 ifndef INSTALL_SOURCEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef BSDhier
 SRCPREFIXDIR=share/src
 else
-ifdef linuxHier
-SRCPREFIXDIR=share/src
-else
 SRCPREFIXDIR=src
 endif
-endif
 ifdef INSTALL_FPCPACKAGE
 ifdef INSTALL_FPCSUBDIR
 INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
@@ -373,16 +381,12 @@ endif
 endif
 endif
 ifndef INSTALL_DOCDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef BSDhier
 DOCPREFIXDIR=share/doc
 else
-ifdef linuxHier
-DOCPREFIXDIR=share/doc
-else
 DOCPREFIXDIR=doc
 endif
-endif
 ifdef INSTALL_FPCPACKAGE
 INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
 else
@@ -397,28 +401,20 @@ endif
 endif
 endif
 ifndef INSTALL_EXAMPLEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef INSTALL_FPCPACKAGE
 ifdef BSDhier
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
 else
-ifdef linuxHier
-INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples
-else
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
 endif
-endif
 else
 ifdef BSDhier
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
 else
-ifdef linuxHier
-INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
 endif
 endif
-endif
 else
 ifdef INSTALL_FPCPACKAGE
 INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples/$(PACKAGE_NAME)
@@ -440,7 +436,6 @@ endif
 else
 CROSSBINDIR=
 endif
-BATCHEXT=.bat
 LOADEREXT=.as
 EXEEXT=.exe
 PPLEXT=.ppl
@@ -464,37 +459,25 @@ STATICLIBPREFIX=
 FPCMADE=fpcmade.dos
 ZIPSUFFIX=go32
 endif
-ifeq ($(OS_TARGET),watcom)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.wat
-ZIPSUFFIX=watc
-OEXT=.obj
-ASMEXT=.asm
-SHAREDLIBEXT=.dll
-endif
 ifeq ($(OS_TARGET),linux)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.lnx
 ZIPSUFFIX=linux
 endif
 ifeq ($(OS_TARGET),freebsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.freebsd
 ZIPSUFFIX=freebsd
 endif
 ifeq ($(OS_TARGET),netbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.netbsd
 ZIPSUFFIX=netbsd
 endif
 ifeq ($(OS_TARGET),openbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.openbsd
@@ -506,7 +489,6 @@ FPCMADE=fpcmade.w32
 ZIPSUFFIX=w32
 endif
 ifeq ($(OS_TARGET),os2)
-BATCHEXT=.cmd
 AOUTEXT=.out
 STATICLIBPREFIX=
 SHAREDLIBEXT=.dll
@@ -515,7 +497,6 @@ ZIPSUFFIX=os2
 ECHO=echo
 endif
 ifeq ($(OS_TARGET),emx)
-BATCHEXT=.cmd
 AOUTEXT=.out
 STATICLIBPREFIX=
 SHAREDLIBEXT=.dll
@@ -533,19 +514,16 @@ EXEEXT=.ttp
 FPCMADE=fpcmade.ata
 endif
 ifeq ($(OS_TARGET),beos)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.be
 ZIPSUFFIX=be
 endif
 ifeq ($(OS_TARGET),sunos)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.sun
 ZIPSUFFIX=sun
 endif
 ifeq ($(OS_TARGET),qnx)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.qnx
 ZIPSUFFIX=qnx
@@ -557,14 +535,10 @@ FPCMADE=fpcmade.nw
 ZIPSUFFIX=nw
 endif
 ifeq ($(OS_TARGET),macos)
-BATCHEXT=
 EXEEXT=
-FPCMADE=fpcmade.macos
-ZIPSUFFIX=macos
-DEBUGSYMEXT=.xcoff
+FPCMADE=fpcmade.mcc
 endif
 ifeq ($(OS_TARGET),darwin)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.darwin
@@ -587,34 +561,25 @@ STATICLIBPREFIX=
 FPCMADE=fpcmade.dos
 ZIPSUFFIX=go32
 endif
-ifeq ($(OS_TARGET),watcom)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.dos
-ZIPSUFFIX=watcom
-endif
 ifeq ($(OS_TARGET),linux)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.lnx
 ZIPSUFFIX=linux
 endif
 ifeq ($(OS_TARGET),freebsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.freebsd
 ZIPSUFFIX=freebsd
 endif
 ifeq ($(OS_TARGET),netbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.netbsd
 ZIPSUFFIX=netbsd
 endif
 ifeq ($(OS_TARGET),openbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.openbsd
@@ -631,7 +596,6 @@ FPCMADE=fpcmade.w32
 ZIPSUFFIX=w32
 endif
 ifeq ($(OS_TARGET),os2)
-BATCHEXT=.cmd
 PPUEXT=.ppo
 ASMEXT=.so2
 OEXT=.oo2
@@ -664,7 +628,6 @@ EXEEXT=.ttp
 FPCMADE=fpcmade.ata
 endif
 ifeq ($(OS_TARGET),beos)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -675,7 +638,6 @@ FPCMADE=fpcmade.be
 ZIPSUFFIX=be
 endif
 ifeq ($(OS_TARGET),sunos)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -686,7 +648,6 @@ FPCMADE=fpcmade.sun
 ZIPSUFFIX=sun
 endif
 ifeq ($(OS_TARGET),qnx)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -709,15 +670,13 @@ ZIPSUFFIX=nw
 EXEEXT=.nlm
 endif
 ifeq ($(OS_TARGET),macos)
-BATCHEXT=
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
 SMARTEXT=.sl
 STATICLIBEXT=.a
 EXEEXT=
-DEBUGSYMEXT=.xcoff
-FPCMADE=fpcmade.macos
+FPCMADE=fpcmade.mcc
 endif
 endif
 ifndef ECHO
@@ -725,7 +684,7 @@ ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ECHO),)
 ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ECHO),)
-ECHO= __missing_command__
+ECHO=
 else
 ECHO:=$(firstword $(ECHO))
 endif
@@ -739,7 +698,7 @@ DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(DATE),)
 DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(DATE),)
-DATE= __missing_command__
+DATE=
 else
 DATE:=$(firstword $(DATE))
 endif
@@ -753,7 +712,7 @@ GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(GINSTALL),)
 GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(GINSTALL),)
-GINSTALL= __missing_command__
+GINSTALL=
 else
 GINSTALL:=$(firstword $(GINSTALL))
 endif
@@ -765,7 +724,7 @@ export GINSTALL
 ifndef CPPROG
 CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(CPPROG),)
-CPPROG= __missing_command__
+CPPROG=
 else
 CPPROG:=$(firstword $(CPPROG))
 endif
@@ -774,7 +733,7 @@ export CPPROG
 ifndef RMPROG
 RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(RMPROG),)
-RMPROG= __missing_command__
+RMPROG=
 else
 RMPROG:=$(firstword $(RMPROG))
 endif
@@ -783,18 +742,14 @@ export RMPROG
 ifndef MVPROG
 MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(MVPROG),)
-MVPROG= __missing_command__
+MVPROG=
 else
 MVPROG:=$(firstword $(MVPROG))
 endif
 endif
 export MVPROG
 ifndef ECHOREDIR
-ifndef inUnix
-ECHOREDIR=echo
-else
-ECHOREDIR=$(ECHO)
-endif
+ECHOREDIR:=$(subst /,$(PATHSEP),$(ECHO))
 endif
 ifndef COPY
 COPY:=$(CPPROG) -fp
@@ -832,7 +787,7 @@ export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
 ifndef PPUMOVE
 PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(PPUMOVE),)
-PPUMOVE= __missing_command__
+PPUMOVE=
 else
 PPUMOVE:=$(firstword $(PPUMOVE))
 endif
@@ -841,7 +796,7 @@ export PPUMOVE
 ifndef FPCMAKE
 FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(FPCMAKE),)
-FPCMAKE= __missing_command__
+FPCMAKE=
 else
 FPCMAKE:=$(firstword $(FPCMAKE))
 endif
@@ -850,7 +805,7 @@ export FPCMAKE
 ifndef ZIPPROG
 ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ZIPPROG),)
-ZIPPROG= __missing_command__
+ZIPPROG=
 else
 ZIPPROG:=$(firstword $(ZIPPROG))
 endif
@@ -859,25 +814,21 @@ export ZIPPROG
 ifndef TARPROG
 TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(TARPROG),)
-TARPROG= __missing_command__
+TARPROG=
 else
 TARPROG:=$(firstword $(TARPROG))
 endif
 endif
 export TARPROG
-ASNAME=$(BINUTILSPREFIX)as
-LDNAME=$(BINUTILSPREFIX)ld
-ARNAME=$(BINUTILSPREFIX)ar
-RCNAME=$(BINUTILSPREFIX)rc
-ifneq ($(findstring 1.0.,$(FPC_VERSION)),)
+ASNAME=as
+LDNAME=ld
+ARNAME=ar
+RCNAME=rc
 ifeq ($(OS_TARGET),win32)
-ifeq ($(CROSSBINDIR),)
 ASNAME=asw
 LDNAME=ldw
 ARNAME=arw
 endif
-endif
-endif
 ifndef ASPROG
 ifdef CROSSBINDIR
 ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT)
@@ -910,7 +861,7 @@ AS=$(ASPROG)
 LD=$(LDPROG)
 RC=$(RCPROG)
 AR=$(ARPROG)
-PPAS=ppas$(SRCBATCHEXT)
+PPAS=ppas$(BATCHEXT)
 ifdef inUnix
 LDCONFIG=ldconfig
 else
@@ -958,14 +909,6 @@ endif
 ifeq ($(OS_SOURCE),openbsd)
 override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
 endif
-ifndef CROSSBOOTSTRAP
-ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-XP$(BINUTILSPREFIX) -Xc
-endif
-ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-Xr$(RLINKPATH)
-endif
-endif
 ifdef UNITDIR
 override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
 endif
@@ -992,12 +935,8 @@ ifdef RELEASE
 ifeq ($(CPU_TARGET),i386)
 FPCCPUOPT:=-OG2p3
 else
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1
-else
 FPCCPUOPT:=
 endif
-endif
 override FPCOPT+=-Xs $(FPCCPUOPT) -n
 override FPCOPTDEF+=RELEASE
 endif
@@ -1079,7 +1018,7 @@ EXECPPAS:=@$(PPAS)
 endif
 endif
 .PHONY: fpc_loaders
-ifneq ($(TARGET_LOADERS),)
+ifdef TARGET_LOADERS
 override ALLTARGET+=fpc_loaders
 override CLEANTARGET+=fpc_loaders_clean
 override INSTALLTARGET+=fpc_loaders_install
@@ -1094,7 +1033,7 @@ fpc_loaders_install:
 	$(MKDIR) $(INSTALL_UNITDIR)
 	$(INSTALL) $(LOADEROFILES) $(INSTALL_UNITDIR)
 .PHONY: fpc_units
-ifneq ($(TARGET_UNITS),)
+ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
 override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
@@ -1116,7 +1055,7 @@ fpc_debug:
 	$(MAKE) all DEBUG=1
 fpc_release:
 	$(MAKE) all RELEASE=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .dpr .pp .rc .res
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -1129,14 +1068,10 @@ fpc_release:
 %$(EXEEXT): %.pas
 	$(COMPILER) $<
 	$(EXECPPAS)
-%$(EXEEXT): %.dpr
-	$(COMPILER) $<
-	$(EXECPPAS)
 %.res: %.rc
 	windres -i $< -o $@
 vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
 vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
 vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
 ifdef INSTALL_UNITS
@@ -1213,9 +1148,6 @@ override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
 endif
 ifdef CLEANPPUFILES
 override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
-ifdef DEBUGSYMEXT
-override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES)) 
-endif
 override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
 override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
 endif
@@ -1239,7 +1171,6 @@ ifdef LIB_NAME
 	-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
 endif
 	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-	-$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)
 fpc_distclean: clean
 ifdef COMPILER_UNITTARGETDIR
 TARGETDIRCLEAN=fpc_clean
@@ -1251,13 +1182,9 @@ endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
 	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-	-$(DEL) *_ppas$(BATCHEXT)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-ifdef DEBUGSYMEXT
-	-$(DEL) *$(DEBUGSYMEXT)
-endif
 .PHONY: fpc_baseinfo
 override INFORULES+=fpc_baseinfo
 fpc_baseinfo:

+ 1 - 1
rtl/netbsd/Makefile.fpc

@@ -12,7 +12,7 @@ fpcpackage=y
 loaders=prt0 cprt0
 units=$(SYSTEMUNIT) objpas strings syscall baseunix \
       $(LINUXUNIT) unix initc systhrds \
-      dos crt objects printer \
+      dos crt objects printer matrix \
       sysutils classes typinfo math varutils \
        charset ucomplex getopts heaptrc lineinfo \
       errors sockets gpm ipc terminfo \

+ 78 - 151
rtl/netware/Makefile

@@ -1,25 +1,15 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2004/05/23]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2004/07/07]
 #
 default: all
-MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx watcom
-BSDs = freebsd netbsd openbsd darwin
-UNIXs = linux $(BSDs) sunos qnx
-FORCE:
-.PHONY: FORCE
-override PATH:=$(patsubst %/,%,$(subst \,/,$(PATH)))
-ifneq ($(findstring darwin,$(OSTYPE)),)
-inUnix=1 #darwin
-SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
-else
+MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx
+override PATH:=$(subst \,/,$(PATH))
 ifeq ($(findstring ;,$(PATH)),)
 inUnix=1
 SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
 else
 SEARCHPATH:=$(subst ;, ,$(PATH))
 endif
-endif
-SEARCHPATH+=$(patsubst %/,%,$(subst \,/,$(dir $(MAKE))))
 PWD:=$(strip $(wildcard $(addsuffix /pwd.exe,$(SEARCHPATH))))
 ifeq ($(PWD),)
 PWD:=$(strip $(wildcard $(addsuffix /pwd,$(SEARCHPATH))))
@@ -46,13 +36,22 @@ ifneq ($(findstring cygdrive,$(PATH)),)
 inCygWin=1
 endif
 endif
+ifeq ($(OS_TARGET),freebsd)
+BSDhier=1
+endif
+ifeq ($(OS_TARGET),netbsd)
+BSDhier=1
+endif
+ifeq ($(OS_TARGET),openbsd)
+BSDhier=1
+endif
 ifdef inUnix
-SRCBATCHEXT=.sh
+BATCHEXT=.sh
 else
 ifdef inOS2
-SRCBATCHEXT=.cmd
+BATCHEXT=.cmd
 else
-SRCBATCHEXT=.bat
+BATCHEXT=.bat
 endif
 endif
 ifdef inUnix
@@ -156,12 +155,6 @@ ifeq ($(findstring $(OS_TARGET),$(MAKEFILETARGETS)),)
 $(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake first)
 endif
 endif
-ifneq ($(findstring $(OS_TARGET),$(BSDs)),)
-BSDhier=1
-endif
-ifeq ($(OS_TARGET),linux)
-linuxHier=1
-endif
 export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE CROSSCOMPILE
 ifdef FPCDIR
 override FPCDIR:=$(subst \,/,$(FPCDIR))
@@ -191,14 +184,11 @@ override FPCDIR:=$(FPCDIR)/..
 ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR:=$(FPCDIR)/..
 ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR:=$(BASEDIR)
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=c:/pp
 endif
 endif
 endif
 endif
-endif
 ifndef CROSSDIR
 CROSSDIR:=$(FPCDIR)/cross/$(FULL_TARGET)
 endif
@@ -228,7 +218,7 @@ override FPCOPT+=-Ur
 override FPCOPT+=-dMT
 CREATESMART=0
 OBJPASDIR=$(RTL)/objpas
-override TARGET_UNITS+=$(SYSTEMUNIT) systhrds objpas strings winsock dos crt objects sysutils classes typinfo math cpu mmx getopts heaptrc lineinfo sockets aio varutils video mouse keyboard types nwsnut nwserv nwnit nwprot sysconst
+override TARGET_UNITS+=$(SYSTEMUNIT) systhrds objpas strings winsock dos crt objects matrix sysutils classes typinfo math cpu mmx getopts heaptrc lineinfo sockets aio varutils video mouse keyboard types nwsnut nwserv nwnit nwprot sysconst
 override TARGET_LOADERS+=nwpre prelude
 override TARGET_RSTS+=math typinfo varutils classes
 override INSTALL_FPCPACKAGE=y
@@ -242,12 +232,42 @@ ifdef REQUIRE_PACKAGESDIR
 override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
 endif
 ifdef ZIPINSTALL
-ifneq ($(findstring $(OS_TARGET),$(UNIXs)),)
-UNIXHier=1
+ifeq ($(OS_TARGET),linux)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),freebsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),netbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),openbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),qnx)
+UNIXINSTALLDIR=1
 endif
 else
-ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),)
-UNIXHier=1
+ifeq ($(OS_SOURCE),linux)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),freebsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),netbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),openbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),qnx)
+UNIXINSTALLDIR=1
 endif
 endif
 ifndef INSTALL_PREFIX
@@ -256,7 +276,7 @@ INSTALL_PREFIX=$(PREFIX)
 endif
 endif
 ifndef INSTALL_PREFIX
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 INSTALL_PREFIX=/usr/local
 else
 ifdef INSTALL_FPCPACKAGE
@@ -275,7 +295,7 @@ DIST_DESTDIR:=$(BASEDIR)
 endif
 export DIST_DESTDIR
 ifndef INSTALL_BASEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef INSTALL_FPCPACKAGE
 INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
 else
@@ -286,18 +306,10 @@ INSTALL_BASEDIR:=$(INSTALL_PREFIX)
 endif
 endif
 ifndef INSTALL_BINDIR
-ifdef UNIXHier
-ifdef CROSSCOMPILE
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
-else
+ifdef UNIXINSTALLDIR
 INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
-endif
-else
-ifdef CROSSCOMPILE
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
 else
 INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
-endif
 ifdef INSTALL_FPCPACKAGE
 INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET)
 endif
@@ -316,23 +328,19 @@ endif
 endif
 endif
 ifndef INSTALL_LIBDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
 else
 INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
 endif
 endif
 ifndef INSTALL_SOURCEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef BSDhier
 SRCPREFIXDIR=share/src
 else
-ifdef linuxHier
-SRCPREFIXDIR=share/src
-else
 SRCPREFIXDIR=src
 endif
-endif
 ifdef INSTALL_FPCPACKAGE
 ifdef INSTALL_FPCSUBDIR
 INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
@@ -355,16 +363,12 @@ endif
 endif
 endif
 ifndef INSTALL_DOCDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef BSDhier
 DOCPREFIXDIR=share/doc
 else
-ifdef linuxHier
-DOCPREFIXDIR=share/doc
-else
 DOCPREFIXDIR=doc
 endif
-endif
 ifdef INSTALL_FPCPACKAGE
 INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
 else
@@ -379,28 +383,20 @@ endif
 endif
 endif
 ifndef INSTALL_EXAMPLEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef INSTALL_FPCPACKAGE
 ifdef BSDhier
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
 else
-ifdef linuxHier
-INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples
-else
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
 endif
-endif
 else
 ifdef BSDhier
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
 else
-ifdef linuxHier
-INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
 endif
 endif
-endif
 else
 ifdef INSTALL_FPCPACKAGE
 INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples/$(PACKAGE_NAME)
@@ -422,7 +418,6 @@ endif
 else
 CROSSBINDIR=
 endif
-BATCHEXT=.bat
 LOADEREXT=.as
 EXEEXT=.exe
 PPLEXT=.ppl
@@ -446,37 +441,25 @@ STATICLIBPREFIX=
 FPCMADE=fpcmade.dos
 ZIPSUFFIX=go32
 endif
-ifeq ($(OS_TARGET),watcom)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.wat
-ZIPSUFFIX=watc
-OEXT=.obj
-ASMEXT=.asm
-SHAREDLIBEXT=.dll
-endif
 ifeq ($(OS_TARGET),linux)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.lnx
 ZIPSUFFIX=linux
 endif
 ifeq ($(OS_TARGET),freebsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.freebsd
 ZIPSUFFIX=freebsd
 endif
 ifeq ($(OS_TARGET),netbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.netbsd
 ZIPSUFFIX=netbsd
 endif
 ifeq ($(OS_TARGET),openbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.openbsd
@@ -488,7 +471,6 @@ FPCMADE=fpcmade.w32
 ZIPSUFFIX=w32
 endif
 ifeq ($(OS_TARGET),os2)
-BATCHEXT=.cmd
 AOUTEXT=.out
 STATICLIBPREFIX=
 SHAREDLIBEXT=.dll
@@ -497,7 +479,6 @@ ZIPSUFFIX=os2
 ECHO=echo
 endif
 ifeq ($(OS_TARGET),emx)
-BATCHEXT=.cmd
 AOUTEXT=.out
 STATICLIBPREFIX=
 SHAREDLIBEXT=.dll
@@ -515,19 +496,16 @@ EXEEXT=.ttp
 FPCMADE=fpcmade.ata
 endif
 ifeq ($(OS_TARGET),beos)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.be
 ZIPSUFFIX=be
 endif
 ifeq ($(OS_TARGET),sunos)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.sun
 ZIPSUFFIX=sun
 endif
 ifeq ($(OS_TARGET),qnx)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.qnx
 ZIPSUFFIX=qnx
@@ -539,14 +517,10 @@ FPCMADE=fpcmade.nw
 ZIPSUFFIX=nw
 endif
 ifeq ($(OS_TARGET),macos)
-BATCHEXT=
 EXEEXT=
-FPCMADE=fpcmade.macos
-ZIPSUFFIX=macos
-DEBUGSYMEXT=.xcoff
+FPCMADE=fpcmade.mcc
 endif
 ifeq ($(OS_TARGET),darwin)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.darwin
@@ -569,34 +543,25 @@ STATICLIBPREFIX=
 FPCMADE=fpcmade.dos
 ZIPSUFFIX=go32
 endif
-ifeq ($(OS_TARGET),watcom)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.dos
-ZIPSUFFIX=watcom
-endif
 ifeq ($(OS_TARGET),linux)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.lnx
 ZIPSUFFIX=linux
 endif
 ifeq ($(OS_TARGET),freebsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.freebsd
 ZIPSUFFIX=freebsd
 endif
 ifeq ($(OS_TARGET),netbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.netbsd
 ZIPSUFFIX=netbsd
 endif
 ifeq ($(OS_TARGET),openbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.openbsd
@@ -613,7 +578,6 @@ FPCMADE=fpcmade.w32
 ZIPSUFFIX=w32
 endif
 ifeq ($(OS_TARGET),os2)
-BATCHEXT=.cmd
 PPUEXT=.ppo
 ASMEXT=.so2
 OEXT=.oo2
@@ -646,7 +610,6 @@ EXEEXT=.ttp
 FPCMADE=fpcmade.ata
 endif
 ifeq ($(OS_TARGET),beos)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -657,7 +620,6 @@ FPCMADE=fpcmade.be
 ZIPSUFFIX=be
 endif
 ifeq ($(OS_TARGET),sunos)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -668,7 +630,6 @@ FPCMADE=fpcmade.sun
 ZIPSUFFIX=sun
 endif
 ifeq ($(OS_TARGET),qnx)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -691,15 +652,13 @@ ZIPSUFFIX=nw
 EXEEXT=.nlm
 endif
 ifeq ($(OS_TARGET),macos)
-BATCHEXT=
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
 SMARTEXT=.sl
 STATICLIBEXT=.a
 EXEEXT=
-DEBUGSYMEXT=.xcoff
-FPCMADE=fpcmade.macos
+FPCMADE=fpcmade.mcc
 endif
 endif
 ifndef ECHO
@@ -707,7 +666,7 @@ ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ECHO),)
 ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ECHO),)
-ECHO= __missing_command__
+ECHO=
 else
 ECHO:=$(firstword $(ECHO))
 endif
@@ -721,7 +680,7 @@ DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(DATE),)
 DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(DATE),)
-DATE= __missing_command__
+DATE=
 else
 DATE:=$(firstword $(DATE))
 endif
@@ -735,7 +694,7 @@ GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(GINSTALL),)
 GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(GINSTALL),)
-GINSTALL= __missing_command__
+GINSTALL=
 else
 GINSTALL:=$(firstword $(GINSTALL))
 endif
@@ -747,7 +706,7 @@ export GINSTALL
 ifndef CPPROG
 CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(CPPROG),)
-CPPROG= __missing_command__
+CPPROG=
 else
 CPPROG:=$(firstword $(CPPROG))
 endif
@@ -756,7 +715,7 @@ export CPPROG
 ifndef RMPROG
 RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(RMPROG),)
-RMPROG= __missing_command__
+RMPROG=
 else
 RMPROG:=$(firstword $(RMPROG))
 endif
@@ -765,18 +724,14 @@ export RMPROG
 ifndef MVPROG
 MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(MVPROG),)
-MVPROG= __missing_command__
+MVPROG=
 else
 MVPROG:=$(firstword $(MVPROG))
 endif
 endif
 export MVPROG
 ifndef ECHOREDIR
-ifndef inUnix
-ECHOREDIR=echo
-else
-ECHOREDIR=$(ECHO)
-endif
+ECHOREDIR:=$(subst /,$(PATHSEP),$(ECHO))
 endif
 ifndef COPY
 COPY:=$(CPPROG) -fp
@@ -814,7 +769,7 @@ export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
 ifndef PPUMOVE
 PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(PPUMOVE),)
-PPUMOVE= __missing_command__
+PPUMOVE=
 else
 PPUMOVE:=$(firstword $(PPUMOVE))
 endif
@@ -823,7 +778,7 @@ export PPUMOVE
 ifndef FPCMAKE
 FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(FPCMAKE),)
-FPCMAKE= __missing_command__
+FPCMAKE=
 else
 FPCMAKE:=$(firstword $(FPCMAKE))
 endif
@@ -832,7 +787,7 @@ export FPCMAKE
 ifndef ZIPPROG
 ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ZIPPROG),)
-ZIPPROG= __missing_command__
+ZIPPROG=
 else
 ZIPPROG:=$(firstword $(ZIPPROG))
 endif
@@ -841,25 +796,21 @@ export ZIPPROG
 ifndef TARPROG
 TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(TARPROG),)
-TARPROG= __missing_command__
+TARPROG=
 else
 TARPROG:=$(firstword $(TARPROG))
 endif
 endif
 export TARPROG
-ASNAME=$(BINUTILSPREFIX)as
-LDNAME=$(BINUTILSPREFIX)ld
-ARNAME=$(BINUTILSPREFIX)ar
-RCNAME=$(BINUTILSPREFIX)rc
-ifneq ($(findstring 1.0.,$(FPC_VERSION)),)
+ASNAME=as
+LDNAME=ld
+ARNAME=ar
+RCNAME=rc
 ifeq ($(OS_TARGET),win32)
-ifeq ($(CROSSBINDIR),)
 ASNAME=asw
 LDNAME=ldw
 ARNAME=arw
 endif
-endif
-endif
 ifndef ASPROG
 ifdef CROSSBINDIR
 ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT)
@@ -892,7 +843,7 @@ AS=$(ASPROG)
 LD=$(LDPROG)
 RC=$(RCPROG)
 AR=$(ARPROG)
-PPAS=ppas$(SRCBATCHEXT)
+PPAS=ppas$(BATCHEXT)
 ifdef inUnix
 LDCONFIG=ldconfig
 else
@@ -940,14 +891,6 @@ endif
 ifeq ($(OS_SOURCE),openbsd)
 override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
 endif
-ifndef CROSSBOOTSTRAP
-ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-XP$(BINUTILSPREFIX) -Xc
-endif
-ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-Xr$(RLINKPATH)
-endif
-endif
 ifdef UNITDIR
 override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
 endif
@@ -974,12 +917,8 @@ ifdef RELEASE
 ifeq ($(CPU_TARGET),i386)
 FPCCPUOPT:=-OG2p3
 else
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1
-else
 FPCCPUOPT:=
 endif
-endif
 override FPCOPT+=-Xs $(FPCCPUOPT) -n
 override FPCOPTDEF+=RELEASE
 endif
@@ -1061,7 +1000,7 @@ EXECPPAS:=@$(PPAS)
 endif
 endif
 .PHONY: fpc_loaders
-ifneq ($(TARGET_LOADERS),)
+ifdef TARGET_LOADERS
 override ALLTARGET+=fpc_loaders
 override CLEANTARGET+=fpc_loaders_clean
 override INSTALLTARGET+=fpc_loaders_install
@@ -1076,7 +1015,7 @@ fpc_loaders_install:
 	$(MKDIR) $(INSTALL_UNITDIR)
 	$(INSTALL) $(LOADEROFILES) $(INSTALL_UNITDIR)
 .PHONY: fpc_units
-ifneq ($(TARGET_UNITS),)
+ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
 override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
@@ -1098,7 +1037,7 @@ fpc_debug:
 	$(MAKE) all DEBUG=1
 fpc_release:
 	$(MAKE) all RELEASE=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .dpr .pp .rc .res
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -1111,14 +1050,10 @@ fpc_release:
 %$(EXEEXT): %.pas
 	$(COMPILER) $<
 	$(EXECPPAS)
-%$(EXEEXT): %.dpr
-	$(COMPILER) $<
-	$(EXECPPAS)
 %.res: %.rc
 	windres -i $< -o $@
 vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
 vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
 vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
 ifdef INSTALL_UNITS
@@ -1195,9 +1130,6 @@ override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
 endif
 ifdef CLEANPPUFILES
 override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
-ifdef DEBUGSYMEXT
-override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES)) 
-endif
 override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
 override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
 endif
@@ -1221,7 +1153,6 @@ ifdef LIB_NAME
 	-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
 endif
 	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-	-$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)
 fpc_distclean: clean
 ifdef COMPILER_UNITTARGETDIR
 TARGETDIRCLEAN=fpc_clean
@@ -1233,13 +1164,9 @@ endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
 	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-	-$(DEL) *_ppas$(BATCHEXT)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-ifdef DEBUGSYMEXT
-	-$(DEL) *$(DEBUGSYMEXT)
-endif
 .PHONY: fpc_baseinfo
 override INFORULES+=fpc_baseinfo
 fpc_baseinfo:

+ 1 - 1
rtl/netware/Makefile.fpc

@@ -9,7 +9,7 @@ main=rtl
 loaders=nwpre prelude
 units=$(SYSTEMUNIT) systhrds objpas strings \
       winsock \
-      dos crt objects \
+      dos crt objects matrix \
       sysutils classes typinfo math \
       cpu mmx getopts heaptrc lineinfo \
       sockets aio varutils \

+ 78 - 151
rtl/openbsd/Makefile

@@ -1,25 +1,15 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2004/05/23]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2004/07/07]
 #
 default: all
-MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx watcom
-BSDs = freebsd netbsd openbsd darwin
-UNIXs = linux $(BSDs) sunos qnx
-FORCE:
-.PHONY: FORCE
-override PATH:=$(patsubst %/,%,$(subst \,/,$(PATH)))
-ifneq ($(findstring darwin,$(OSTYPE)),)
-inUnix=1 #darwin
-SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
-else
+MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx
+override PATH:=$(subst \,/,$(PATH))
 ifeq ($(findstring ;,$(PATH)),)
 inUnix=1
 SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
 else
 SEARCHPATH:=$(subst ;, ,$(PATH))
 endif
-endif
-SEARCHPATH+=$(patsubst %/,%,$(subst \,/,$(dir $(MAKE))))
 PWD:=$(strip $(wildcard $(addsuffix /pwd.exe,$(SEARCHPATH))))
 ifeq ($(PWD),)
 PWD:=$(strip $(wildcard $(addsuffix /pwd,$(SEARCHPATH))))
@@ -46,13 +36,22 @@ ifneq ($(findstring cygdrive,$(PATH)),)
 inCygWin=1
 endif
 endif
+ifeq ($(OS_TARGET),freebsd)
+BSDhier=1
+endif
+ifeq ($(OS_TARGET),netbsd)
+BSDhier=1
+endif
+ifeq ($(OS_TARGET),openbsd)
+BSDhier=1
+endif
 ifdef inUnix
-SRCBATCHEXT=.sh
+BATCHEXT=.sh
 else
 ifdef inOS2
-SRCBATCHEXT=.cmd
+BATCHEXT=.cmd
 else
-SRCBATCHEXT=.bat
+BATCHEXT=.bat
 endif
 endif
 ifdef inUnix
@@ -156,12 +155,6 @@ ifeq ($(findstring $(OS_TARGET),$(MAKEFILETARGETS)),)
 $(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake first)
 endif
 endif
-ifneq ($(findstring $(OS_TARGET),$(BSDs)),)
-BSDhier=1
-endif
-ifeq ($(OS_TARGET),linux)
-linuxHier=1
-endif
 export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE CROSSCOMPILE
 ifdef FPCDIR
 override FPCDIR:=$(subst \,/,$(FPCDIR))
@@ -191,14 +184,11 @@ override FPCDIR:=$(FPCDIR)/..
 ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR:=$(FPCDIR)/..
 ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR:=$(BASEDIR)
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=c:/pp
 endif
 endif
 endif
 endif
-endif
 ifndef CROSSDIR
 CROSSDIR:=$(FPCDIR)/cross/$(FULL_TARGET)
 endif
@@ -241,7 +231,7 @@ GRAPHDIR=$(INC)/graph
 ifndef USELIBGGI
 USELIBGGI=NO
 endif
-override TARGET_UNITS+=$(SYSTEMUNIT) objpas strings syscall baseunix $(LINUXUNIT) unix initc systhrds dos crt objects printer sysutils classes typinfo math varutils charset ucomplex getopts heaptrc lineinfo errors sockets gpm ipc terminfo video mouse keyboard  serial variants types systhrds sysctl sysconst
+override TARGET_UNITS+=$(SYSTEMUNIT) objpas strings syscall baseunix $(LINUXUNIT) unix initc systhrds dos crt objects printer matrix sysutils classes typinfo math varutils charset ucomplex getopts heaptrc lineinfo errors sockets gpm ipc terminfo video mouse keyboard  serial variants types systhrds sysctl sysconst
 ifeq ($(OS_TARGET),netbsd)
 ifeq ($(CPU_TARGET),i386)
 override TARGET_UNITS+=mmx cpu
@@ -260,12 +250,42 @@ ifdef REQUIRE_PACKAGESDIR
 override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
 endif
 ifdef ZIPINSTALL
-ifneq ($(findstring $(OS_TARGET),$(UNIXs)),)
-UNIXHier=1
+ifeq ($(OS_TARGET),linux)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),freebsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),netbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),openbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),qnx)
+UNIXINSTALLDIR=1
 endif
 else
-ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),)
-UNIXHier=1
+ifeq ($(OS_SOURCE),linux)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),freebsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),netbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),openbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),qnx)
+UNIXINSTALLDIR=1
 endif
 endif
 ifndef INSTALL_PREFIX
@@ -274,7 +294,7 @@ INSTALL_PREFIX=$(PREFIX)
 endif
 endif
 ifndef INSTALL_PREFIX
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 INSTALL_PREFIX=/usr/local
 else
 ifdef INSTALL_FPCPACKAGE
@@ -293,7 +313,7 @@ DIST_DESTDIR:=$(BASEDIR)
 endif
 export DIST_DESTDIR
 ifndef INSTALL_BASEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef INSTALL_FPCPACKAGE
 INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
 else
@@ -304,18 +324,10 @@ INSTALL_BASEDIR:=$(INSTALL_PREFIX)
 endif
 endif
 ifndef INSTALL_BINDIR
-ifdef UNIXHier
-ifdef CROSSCOMPILE
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
-else
+ifdef UNIXINSTALLDIR
 INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
-endif
-else
-ifdef CROSSCOMPILE
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
 else
 INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
-endif
 ifdef INSTALL_FPCPACKAGE
 INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET)
 endif
@@ -334,23 +346,19 @@ endif
 endif
 endif
 ifndef INSTALL_LIBDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
 else
 INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
 endif
 endif
 ifndef INSTALL_SOURCEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef BSDhier
 SRCPREFIXDIR=share/src
 else
-ifdef linuxHier
-SRCPREFIXDIR=share/src
-else
 SRCPREFIXDIR=src
 endif
-endif
 ifdef INSTALL_FPCPACKAGE
 ifdef INSTALL_FPCSUBDIR
 INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
@@ -373,16 +381,12 @@ endif
 endif
 endif
 ifndef INSTALL_DOCDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef BSDhier
 DOCPREFIXDIR=share/doc
 else
-ifdef linuxHier
-DOCPREFIXDIR=share/doc
-else
 DOCPREFIXDIR=doc
 endif
-endif
 ifdef INSTALL_FPCPACKAGE
 INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
 else
@@ -397,28 +401,20 @@ endif
 endif
 endif
 ifndef INSTALL_EXAMPLEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef INSTALL_FPCPACKAGE
 ifdef BSDhier
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
 else
-ifdef linuxHier
-INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples
-else
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
 endif
-endif
 else
 ifdef BSDhier
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
 else
-ifdef linuxHier
-INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
 endif
 endif
-endif
 else
 ifdef INSTALL_FPCPACKAGE
 INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples/$(PACKAGE_NAME)
@@ -440,7 +436,6 @@ endif
 else
 CROSSBINDIR=
 endif
-BATCHEXT=.bat
 LOADEREXT=.as
 EXEEXT=.exe
 PPLEXT=.ppl
@@ -464,37 +459,25 @@ STATICLIBPREFIX=
 FPCMADE=fpcmade.dos
 ZIPSUFFIX=go32
 endif
-ifeq ($(OS_TARGET),watcom)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.wat
-ZIPSUFFIX=watc
-OEXT=.obj
-ASMEXT=.asm
-SHAREDLIBEXT=.dll
-endif
 ifeq ($(OS_TARGET),linux)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.lnx
 ZIPSUFFIX=linux
 endif
 ifeq ($(OS_TARGET),freebsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.freebsd
 ZIPSUFFIX=freebsd
 endif
 ifeq ($(OS_TARGET),netbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.netbsd
 ZIPSUFFIX=netbsd
 endif
 ifeq ($(OS_TARGET),openbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.openbsd
@@ -506,7 +489,6 @@ FPCMADE=fpcmade.w32
 ZIPSUFFIX=w32
 endif
 ifeq ($(OS_TARGET),os2)
-BATCHEXT=.cmd
 AOUTEXT=.out
 STATICLIBPREFIX=
 SHAREDLIBEXT=.dll
@@ -515,7 +497,6 @@ ZIPSUFFIX=os2
 ECHO=echo
 endif
 ifeq ($(OS_TARGET),emx)
-BATCHEXT=.cmd
 AOUTEXT=.out
 STATICLIBPREFIX=
 SHAREDLIBEXT=.dll
@@ -533,19 +514,16 @@ EXEEXT=.ttp
 FPCMADE=fpcmade.ata
 endif
 ifeq ($(OS_TARGET),beos)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.be
 ZIPSUFFIX=be
 endif
 ifeq ($(OS_TARGET),sunos)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.sun
 ZIPSUFFIX=sun
 endif
 ifeq ($(OS_TARGET),qnx)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.qnx
 ZIPSUFFIX=qnx
@@ -557,14 +535,10 @@ FPCMADE=fpcmade.nw
 ZIPSUFFIX=nw
 endif
 ifeq ($(OS_TARGET),macos)
-BATCHEXT=
 EXEEXT=
-FPCMADE=fpcmade.macos
-ZIPSUFFIX=macos
-DEBUGSYMEXT=.xcoff
+FPCMADE=fpcmade.mcc
 endif
 ifeq ($(OS_TARGET),darwin)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.darwin
@@ -587,34 +561,25 @@ STATICLIBPREFIX=
 FPCMADE=fpcmade.dos
 ZIPSUFFIX=go32
 endif
-ifeq ($(OS_TARGET),watcom)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.dos
-ZIPSUFFIX=watcom
-endif
 ifeq ($(OS_TARGET),linux)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.lnx
 ZIPSUFFIX=linux
 endif
 ifeq ($(OS_TARGET),freebsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.freebsd
 ZIPSUFFIX=freebsd
 endif
 ifeq ($(OS_TARGET),netbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.netbsd
 ZIPSUFFIX=netbsd
 endif
 ifeq ($(OS_TARGET),openbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.openbsd
@@ -631,7 +596,6 @@ FPCMADE=fpcmade.w32
 ZIPSUFFIX=w32
 endif
 ifeq ($(OS_TARGET),os2)
-BATCHEXT=.cmd
 PPUEXT=.ppo
 ASMEXT=.so2
 OEXT=.oo2
@@ -664,7 +628,6 @@ EXEEXT=.ttp
 FPCMADE=fpcmade.ata
 endif
 ifeq ($(OS_TARGET),beos)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -675,7 +638,6 @@ FPCMADE=fpcmade.be
 ZIPSUFFIX=be
 endif
 ifeq ($(OS_TARGET),sunos)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -686,7 +648,6 @@ FPCMADE=fpcmade.sun
 ZIPSUFFIX=sun
 endif
 ifeq ($(OS_TARGET),qnx)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -709,15 +670,13 @@ ZIPSUFFIX=nw
 EXEEXT=.nlm
 endif
 ifeq ($(OS_TARGET),macos)
-BATCHEXT=
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
 SMARTEXT=.sl
 STATICLIBEXT=.a
 EXEEXT=
-DEBUGSYMEXT=.xcoff
-FPCMADE=fpcmade.macos
+FPCMADE=fpcmade.mcc
 endif
 endif
 ifndef ECHO
@@ -725,7 +684,7 @@ ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ECHO),)
 ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ECHO),)
-ECHO= __missing_command__
+ECHO=
 else
 ECHO:=$(firstword $(ECHO))
 endif
@@ -739,7 +698,7 @@ DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(DATE),)
 DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(DATE),)
-DATE= __missing_command__
+DATE=
 else
 DATE:=$(firstword $(DATE))
 endif
@@ -753,7 +712,7 @@ GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(GINSTALL),)
 GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(GINSTALL),)
-GINSTALL= __missing_command__
+GINSTALL=
 else
 GINSTALL:=$(firstword $(GINSTALL))
 endif
@@ -765,7 +724,7 @@ export GINSTALL
 ifndef CPPROG
 CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(CPPROG),)
-CPPROG= __missing_command__
+CPPROG=
 else
 CPPROG:=$(firstword $(CPPROG))
 endif
@@ -774,7 +733,7 @@ export CPPROG
 ifndef RMPROG
 RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(RMPROG),)
-RMPROG= __missing_command__
+RMPROG=
 else
 RMPROG:=$(firstword $(RMPROG))
 endif
@@ -783,18 +742,14 @@ export RMPROG
 ifndef MVPROG
 MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(MVPROG),)
-MVPROG= __missing_command__
+MVPROG=
 else
 MVPROG:=$(firstword $(MVPROG))
 endif
 endif
 export MVPROG
 ifndef ECHOREDIR
-ifndef inUnix
-ECHOREDIR=echo
-else
-ECHOREDIR=$(ECHO)
-endif
+ECHOREDIR:=$(subst /,$(PATHSEP),$(ECHO))
 endif
 ifndef COPY
 COPY:=$(CPPROG) -fp
@@ -832,7 +787,7 @@ export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
 ifndef PPUMOVE
 PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(PPUMOVE),)
-PPUMOVE= __missing_command__
+PPUMOVE=
 else
 PPUMOVE:=$(firstword $(PPUMOVE))
 endif
@@ -841,7 +796,7 @@ export PPUMOVE
 ifndef FPCMAKE
 FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(FPCMAKE),)
-FPCMAKE= __missing_command__
+FPCMAKE=
 else
 FPCMAKE:=$(firstword $(FPCMAKE))
 endif
@@ -850,7 +805,7 @@ export FPCMAKE
 ifndef ZIPPROG
 ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ZIPPROG),)
-ZIPPROG= __missing_command__
+ZIPPROG=
 else
 ZIPPROG:=$(firstword $(ZIPPROG))
 endif
@@ -859,25 +814,21 @@ export ZIPPROG
 ifndef TARPROG
 TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(TARPROG),)
-TARPROG= __missing_command__
+TARPROG=
 else
 TARPROG:=$(firstword $(TARPROG))
 endif
 endif
 export TARPROG
-ASNAME=$(BINUTILSPREFIX)as
-LDNAME=$(BINUTILSPREFIX)ld
-ARNAME=$(BINUTILSPREFIX)ar
-RCNAME=$(BINUTILSPREFIX)rc
-ifneq ($(findstring 1.0.,$(FPC_VERSION)),)
+ASNAME=as
+LDNAME=ld
+ARNAME=ar
+RCNAME=rc
 ifeq ($(OS_TARGET),win32)
-ifeq ($(CROSSBINDIR),)
 ASNAME=asw
 LDNAME=ldw
 ARNAME=arw
 endif
-endif
-endif
 ifndef ASPROG
 ifdef CROSSBINDIR
 ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT)
@@ -910,7 +861,7 @@ AS=$(ASPROG)
 LD=$(LDPROG)
 RC=$(RCPROG)
 AR=$(ARPROG)
-PPAS=ppas$(SRCBATCHEXT)
+PPAS=ppas$(BATCHEXT)
 ifdef inUnix
 LDCONFIG=ldconfig
 else
@@ -958,14 +909,6 @@ endif
 ifeq ($(OS_SOURCE),openbsd)
 override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
 endif
-ifndef CROSSBOOTSTRAP
-ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-XP$(BINUTILSPREFIX) -Xc
-endif
-ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-Xr$(RLINKPATH)
-endif
-endif
 ifdef UNITDIR
 override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
 endif
@@ -992,12 +935,8 @@ ifdef RELEASE
 ifeq ($(CPU_TARGET),i386)
 FPCCPUOPT:=-OG2p3
 else
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1
-else
 FPCCPUOPT:=
 endif
-endif
 override FPCOPT+=-Xs $(FPCCPUOPT) -n
 override FPCOPTDEF+=RELEASE
 endif
@@ -1079,7 +1018,7 @@ EXECPPAS:=@$(PPAS)
 endif
 endif
 .PHONY: fpc_loaders
-ifneq ($(TARGET_LOADERS),)
+ifdef TARGET_LOADERS
 override ALLTARGET+=fpc_loaders
 override CLEANTARGET+=fpc_loaders_clean
 override INSTALLTARGET+=fpc_loaders_install
@@ -1094,7 +1033,7 @@ fpc_loaders_install:
 	$(MKDIR) $(INSTALL_UNITDIR)
 	$(INSTALL) $(LOADEROFILES) $(INSTALL_UNITDIR)
 .PHONY: fpc_units
-ifneq ($(TARGET_UNITS),)
+ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
 override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
@@ -1116,7 +1055,7 @@ fpc_debug:
 	$(MAKE) all DEBUG=1
 fpc_release:
 	$(MAKE) all RELEASE=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .dpr .pp .rc .res
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -1129,14 +1068,10 @@ fpc_release:
 %$(EXEEXT): %.pas
 	$(COMPILER) $<
 	$(EXECPPAS)
-%$(EXEEXT): %.dpr
-	$(COMPILER) $<
-	$(EXECPPAS)
 %.res: %.rc
 	windres -i $< -o $@
 vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
 vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
 vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
 ifdef INSTALL_UNITS
@@ -1213,9 +1148,6 @@ override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
 endif
 ifdef CLEANPPUFILES
 override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
-ifdef DEBUGSYMEXT
-override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES)) 
-endif
 override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
 override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
 endif
@@ -1239,7 +1171,6 @@ ifdef LIB_NAME
 	-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
 endif
 	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-	-$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)
 fpc_distclean: clean
 ifdef COMPILER_UNITTARGETDIR
 TARGETDIRCLEAN=fpc_clean
@@ -1251,13 +1182,9 @@ endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
 	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-	-$(DEL) *_ppas$(BATCHEXT)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-ifdef DEBUGSYMEXT
-	-$(DEL) *$(DEBUGSYMEXT)
-endif
 .PHONY: fpc_baseinfo
 override INFORULES+=fpc_baseinfo
 fpc_baseinfo:

+ 1 - 1
rtl/openbsd/Makefile.fpc

@@ -12,7 +12,7 @@ fpcpackage=y
 loaders=prt0 cprt0
 units=$(SYSTEMUNIT) objpas strings syscall baseunix \
       $(LINUXUNIT) unix initc systhrds \
-      dos crt objects printer \
+      dos crt objects printer matrix \
       sysutils classes typinfo math varutils \
        charset ucomplex getopts heaptrc lineinfo \
       errors sockets gpm ipc terminfo \

+ 78 - 151
rtl/os2/Makefile

@@ -1,25 +1,15 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2004/05/23]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2004/07/07]
 #
 default: all
-MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx watcom
-BSDs = freebsd netbsd openbsd darwin
-UNIXs = linux $(BSDs) sunos qnx
-FORCE:
-.PHONY: FORCE
-override PATH:=$(patsubst %/,%,$(subst \,/,$(PATH)))
-ifneq ($(findstring darwin,$(OSTYPE)),)
-inUnix=1 #darwin
-SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
-else
+MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx
+override PATH:=$(subst \,/,$(PATH))
 ifeq ($(findstring ;,$(PATH)),)
 inUnix=1
 SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
 else
 SEARCHPATH:=$(subst ;, ,$(PATH))
 endif
-endif
-SEARCHPATH+=$(patsubst %/,%,$(subst \,/,$(dir $(MAKE))))
 PWD:=$(strip $(wildcard $(addsuffix /pwd.exe,$(SEARCHPATH))))
 ifeq ($(PWD),)
 PWD:=$(strip $(wildcard $(addsuffix /pwd,$(SEARCHPATH))))
@@ -46,13 +36,22 @@ ifneq ($(findstring cygdrive,$(PATH)),)
 inCygWin=1
 endif
 endif
+ifeq ($(OS_TARGET),freebsd)
+BSDhier=1
+endif
+ifeq ($(OS_TARGET),netbsd)
+BSDhier=1
+endif
+ifeq ($(OS_TARGET),openbsd)
+BSDhier=1
+endif
 ifdef inUnix
-SRCBATCHEXT=.sh
+BATCHEXT=.sh
 else
 ifdef inOS2
-SRCBATCHEXT=.cmd
+BATCHEXT=.cmd
 else
-SRCBATCHEXT=.bat
+BATCHEXT=.bat
 endif
 endif
 ifdef inUnix
@@ -157,12 +156,6 @@ ifeq ($(findstring $(OS_TARGET),$(MAKEFILETARGETS)),)
 $(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake first)
 endif
 endif
-ifneq ($(findstring $(OS_TARGET),$(BSDs)),)
-BSDhier=1
-endif
-ifeq ($(OS_TARGET),linux)
-linuxHier=1
-endif
 export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE CROSSCOMPILE
 ifdef FPCDIR
 override FPCDIR:=$(subst \,/,$(FPCDIR))
@@ -192,14 +185,11 @@ override FPCDIR:=$(FPCDIR)/..
 ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR:=$(FPCDIR)/..
 ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR:=$(BASEDIR)
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=c:/pp
 endif
 endif
 endif
 endif
-endif
 ifndef CROSSDIR
 CROSSDIR:=$(FPCDIR)/cross/$(FULL_TARGET)
 endif
@@ -230,7 +220,7 @@ override FPCOPT+=-Ur
 endif
 OBJPASDIR=$(RTL)/objpas
 GRAPHDIR=$(INC)/graph
-override TARGET_UNITS+=$(SYSTEMUNIT) objpas strings ports os2def doscalls moncalls kbdcalls moucalls viocalls pmbitmap pmwin pmgpi pmstddlg pmhelp pmdev pmspl pmshl pmwp pmwsock pmbidi dos crt objects printer sysutils classes math typinfo varutils winsock charset ucomplex cpu mmx getopts heaptrc lineinfo dynlibs video mouse keyboard variants types rtlconst sysconst dateutil
+override TARGET_UNITS+=$(SYSTEMUNIT) objpas strings ports os2def doscalls moncalls kbdcalls moucalls viocalls pmbitmap pmwin pmgpi pmstddlg pmhelp pmdev pmspl pmshl pmwp pmwsock pmbidi dos crt objects printer matrix sysutils classes math typinfo varutils winsock charset ucomplex cpu mmx getopts heaptrc lineinfo dynlibs video mouse keyboard variants types rtlconst sysconst dateutil
 override TARGET_LOADERS+=prt0
 override TARGET_RSTS+=math varutils typinfo variants pmhelp classes sysconst dateutil
 override INSTALL_FPCPACKAGE=y
@@ -244,12 +234,42 @@ ifdef REQUIRE_PACKAGESDIR
 override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
 endif
 ifdef ZIPINSTALL
-ifneq ($(findstring $(OS_TARGET),$(UNIXs)),)
-UNIXHier=1
+ifeq ($(OS_TARGET),linux)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),freebsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),netbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),openbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),qnx)
+UNIXINSTALLDIR=1
 endif
 else
-ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),)
-UNIXHier=1
+ifeq ($(OS_SOURCE),linux)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),freebsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),netbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),openbsd)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),qnx)
+UNIXINSTALLDIR=1
 endif
 endif
 ifndef INSTALL_PREFIX
@@ -258,7 +278,7 @@ INSTALL_PREFIX=$(PREFIX)
 endif
 endif
 ifndef INSTALL_PREFIX
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 INSTALL_PREFIX=/usr/local
 else
 ifdef INSTALL_FPCPACKAGE
@@ -277,7 +297,7 @@ DIST_DESTDIR:=$(BASEDIR)
 endif
 export DIST_DESTDIR
 ifndef INSTALL_BASEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef INSTALL_FPCPACKAGE
 INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
 else
@@ -288,18 +308,10 @@ INSTALL_BASEDIR:=$(INSTALL_PREFIX)
 endif
 endif
 ifndef INSTALL_BINDIR
-ifdef UNIXHier
-ifdef CROSSCOMPILE
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
-else
+ifdef UNIXINSTALLDIR
 INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
-endif
-else
-ifdef CROSSCOMPILE
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
 else
 INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
-endif
 ifdef INSTALL_FPCPACKAGE
 INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET)
 endif
@@ -318,23 +330,19 @@ endif
 endif
 endif
 ifndef INSTALL_LIBDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
 else
 INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
 endif
 endif
 ifndef INSTALL_SOURCEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef BSDhier
 SRCPREFIXDIR=share/src
 else
-ifdef linuxHier
-SRCPREFIXDIR=share/src
-else
 SRCPREFIXDIR=src
 endif
-endif
 ifdef INSTALL_FPCPACKAGE
 ifdef INSTALL_FPCSUBDIR
 INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
@@ -357,16 +365,12 @@ endif
 endif
 endif
 ifndef INSTALL_DOCDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef BSDhier
 DOCPREFIXDIR=share/doc
 else
-ifdef linuxHier
-DOCPREFIXDIR=share/doc
-else
 DOCPREFIXDIR=doc
 endif
-endif
 ifdef INSTALL_FPCPACKAGE
 INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
 else
@@ -381,28 +385,20 @@ endif
 endif
 endif
 ifndef INSTALL_EXAMPLEDIR
-ifdef UNIXHier
+ifdef UNIXINSTALLDIR
 ifdef INSTALL_FPCPACKAGE
 ifdef BSDhier
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
 else
-ifdef linuxHier
-INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples
-else
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
 endif
-endif
 else
 ifdef BSDhier
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
 else
-ifdef linuxHier
-INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
 INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
 endif
 endif
-endif
 else
 ifdef INSTALL_FPCPACKAGE
 INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples/$(PACKAGE_NAME)
@@ -424,7 +420,6 @@ endif
 else
 CROSSBINDIR=
 endif
-BATCHEXT=.bat
 LOADEREXT=.as
 EXEEXT=.exe
 PPLEXT=.ppl
@@ -448,37 +443,25 @@ STATICLIBPREFIX=
 FPCMADE=fpcmade.dos
 ZIPSUFFIX=go32
 endif
-ifeq ($(OS_TARGET),watcom)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.wat
-ZIPSUFFIX=watc
-OEXT=.obj
-ASMEXT=.asm
-SHAREDLIBEXT=.dll
-endif
 ifeq ($(OS_TARGET),linux)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.lnx
 ZIPSUFFIX=linux
 endif
 ifeq ($(OS_TARGET),freebsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.freebsd
 ZIPSUFFIX=freebsd
 endif
 ifeq ($(OS_TARGET),netbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.netbsd
 ZIPSUFFIX=netbsd
 endif
 ifeq ($(OS_TARGET),openbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.openbsd
@@ -490,7 +473,6 @@ FPCMADE=fpcmade.w32
 ZIPSUFFIX=w32
 endif
 ifeq ($(OS_TARGET),os2)
-BATCHEXT=.cmd
 AOUTEXT=.out
 STATICLIBPREFIX=
 SHAREDLIBEXT=.dll
@@ -499,7 +481,6 @@ ZIPSUFFIX=os2
 ECHO=echo
 endif
 ifeq ($(OS_TARGET),emx)
-BATCHEXT=.cmd
 AOUTEXT=.out
 STATICLIBPREFIX=
 SHAREDLIBEXT=.dll
@@ -517,19 +498,16 @@ EXEEXT=.ttp
 FPCMADE=fpcmade.ata
 endif
 ifeq ($(OS_TARGET),beos)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.be
 ZIPSUFFIX=be
 endif
 ifeq ($(OS_TARGET),sunos)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.sun
 ZIPSUFFIX=sun
 endif
 ifeq ($(OS_TARGET),qnx)
-BATCHEXT=.sh
 EXEEXT=
 FPCMADE=fpcmade.qnx
 ZIPSUFFIX=qnx
@@ -541,14 +519,10 @@ FPCMADE=fpcmade.nw
 ZIPSUFFIX=nw
 endif
 ifeq ($(OS_TARGET),macos)
-BATCHEXT=
 EXEEXT=
-FPCMADE=fpcmade.macos
-ZIPSUFFIX=macos
-DEBUGSYMEXT=.xcoff
+FPCMADE=fpcmade.mcc
 endif
 ifeq ($(OS_TARGET),darwin)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.darwin
@@ -571,34 +545,25 @@ STATICLIBPREFIX=
 FPCMADE=fpcmade.dos
 ZIPSUFFIX=go32
 endif
-ifeq ($(OS_TARGET),watcom)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.dos
-ZIPSUFFIX=watcom
-endif
 ifeq ($(OS_TARGET),linux)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.lnx
 ZIPSUFFIX=linux
 endif
 ifeq ($(OS_TARGET),freebsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.freebsd
 ZIPSUFFIX=freebsd
 endif
 ifeq ($(OS_TARGET),netbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.netbsd
 ZIPSUFFIX=netbsd
 endif
 ifeq ($(OS_TARGET),openbsd)
-BATCHEXT=.sh
 EXEEXT=
 HASSHAREDLIB=1
 FPCMADE=fpcmade.openbsd
@@ -615,7 +580,6 @@ FPCMADE=fpcmade.w32
 ZIPSUFFIX=w32
 endif
 ifeq ($(OS_TARGET),os2)
-BATCHEXT=.cmd
 PPUEXT=.ppo
 ASMEXT=.so2
 OEXT=.oo2
@@ -648,7 +612,6 @@ EXEEXT=.ttp
 FPCMADE=fpcmade.ata
 endif
 ifeq ($(OS_TARGET),beos)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -659,7 +622,6 @@ FPCMADE=fpcmade.be
 ZIPSUFFIX=be
 endif
 ifeq ($(OS_TARGET),sunos)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -670,7 +632,6 @@ FPCMADE=fpcmade.sun
 ZIPSUFFIX=sun
 endif
 ifeq ($(OS_TARGET),qnx)
-BATCHEXT=.sh
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
@@ -693,15 +654,13 @@ ZIPSUFFIX=nw
 EXEEXT=.nlm
 endif
 ifeq ($(OS_TARGET),macos)
-BATCHEXT=
 PPUEXT=.ppu
 ASMEXT=.s
 OEXT=.o
 SMARTEXT=.sl
 STATICLIBEXT=.a
 EXEEXT=
-DEBUGSYMEXT=.xcoff
-FPCMADE=fpcmade.macos
+FPCMADE=fpcmade.mcc
 endif
 endif
 ifndef ECHO
@@ -709,7 +668,7 @@ ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ECHO),)
 ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ECHO),)
-ECHO= __missing_command__
+ECHO=
 else
 ECHO:=$(firstword $(ECHO))
 endif
@@ -723,7 +682,7 @@ DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(DATE),)
 DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(DATE),)
-DATE= __missing_command__
+DATE=
 else
 DATE:=$(firstword $(DATE))
 endif
@@ -737,7 +696,7 @@ GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(GINSTALL),)
 GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(GINSTALL),)
-GINSTALL= __missing_command__
+GINSTALL=
 else
 GINSTALL:=$(firstword $(GINSTALL))
 endif
@@ -749,7 +708,7 @@ export GINSTALL
 ifndef CPPROG
 CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(CPPROG),)
-CPPROG= __missing_command__
+CPPROG=
 else
 CPPROG:=$(firstword $(CPPROG))
 endif
@@ -758,7 +717,7 @@ export CPPROG
 ifndef RMPROG
 RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(RMPROG),)
-RMPROG= __missing_command__
+RMPROG=
 else
 RMPROG:=$(firstword $(RMPROG))
 endif
@@ -767,18 +726,14 @@ export RMPROG
 ifndef MVPROG
 MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(MVPROG),)
-MVPROG= __missing_command__
+MVPROG=
 else
 MVPROG:=$(firstword $(MVPROG))
 endif
 endif
 export MVPROG
 ifndef ECHOREDIR
-ifndef inUnix
-ECHOREDIR=echo
-else
-ECHOREDIR=$(ECHO)
-endif
+ECHOREDIR:=$(subst /,$(PATHSEP),$(ECHO))
 endif
 ifndef COPY
 COPY:=$(CPPROG) -fp
@@ -816,7 +771,7 @@ export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
 ifndef PPUMOVE
 PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(PPUMOVE),)
-PPUMOVE= __missing_command__
+PPUMOVE=
 else
 PPUMOVE:=$(firstword $(PPUMOVE))
 endif
@@ -825,7 +780,7 @@ export PPUMOVE
 ifndef FPCMAKE
 FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(FPCMAKE),)
-FPCMAKE= __missing_command__
+FPCMAKE=
 else
 FPCMAKE:=$(firstword $(FPCMAKE))
 endif
@@ -834,7 +789,7 @@ export FPCMAKE
 ifndef ZIPPROG
 ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(ZIPPROG),)
-ZIPPROG= __missing_command__
+ZIPPROG=
 else
 ZIPPROG:=$(firstword $(ZIPPROG))
 endif
@@ -843,25 +798,21 @@ export ZIPPROG
 ifndef TARPROG
 TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(TARPROG),)
-TARPROG= __missing_command__
+TARPROG=
 else
 TARPROG:=$(firstword $(TARPROG))
 endif
 endif
 export TARPROG
-ASNAME=$(BINUTILSPREFIX)as
-LDNAME=$(BINUTILSPREFIX)ld
-ARNAME=$(BINUTILSPREFIX)ar
-RCNAME=$(BINUTILSPREFIX)rc
-ifneq ($(findstring 1.0.,$(FPC_VERSION)),)
+ASNAME=as
+LDNAME=ld
+ARNAME=ar
+RCNAME=rc
 ifeq ($(OS_TARGET),win32)
-ifeq ($(CROSSBINDIR),)
 ASNAME=asw
 LDNAME=ldw
 ARNAME=arw
 endif
-endif
-endif
 ifndef ASPROG
 ifdef CROSSBINDIR
 ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT)
@@ -894,7 +845,7 @@ AS=$(ASPROG)
 LD=$(LDPROG)
 RC=$(RCPROG)
 AR=$(ARPROG)
-PPAS=ppas$(SRCBATCHEXT)
+PPAS=ppas$(BATCHEXT)
 ifdef inUnix
 LDCONFIG=ldconfig
 else
@@ -942,14 +893,6 @@ endif
 ifeq ($(OS_SOURCE),openbsd)
 override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
 endif
-ifndef CROSSBOOTSTRAP
-ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-XP$(BINUTILSPREFIX) -Xc
-endif
-ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-Xr$(RLINKPATH)
-endif
-endif
 ifdef UNITDIR
 override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
 endif
@@ -976,12 +919,8 @@ ifdef RELEASE
 ifeq ($(CPU_TARGET),i386)
 FPCCPUOPT:=-OG2p3
 else
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1
-else
 FPCCPUOPT:=
 endif
-endif
 override FPCOPT+=-Xs $(FPCCPUOPT) -n
 override FPCOPTDEF+=RELEASE
 endif
@@ -1063,7 +1002,7 @@ EXECPPAS:=@$(PPAS)
 endif
 endif
 .PHONY: fpc_loaders
-ifneq ($(TARGET_LOADERS),)
+ifdef TARGET_LOADERS
 override ALLTARGET+=fpc_loaders
 override CLEANTARGET+=fpc_loaders_clean
 override INSTALLTARGET+=fpc_loaders_install
@@ -1078,7 +1017,7 @@ fpc_loaders_install:
 	$(MKDIR) $(INSTALL_UNITDIR)
 	$(INSTALL) $(LOADEROFILES) $(INSTALL_UNITDIR)
 .PHONY: fpc_units
-ifneq ($(TARGET_UNITS),)
+ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
 override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
@@ -1100,7 +1039,7 @@ fpc_debug:
 	$(MAKE) all DEBUG=1
 fpc_release:
 	$(MAKE) all RELEASE=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .dpr .pp .rc .res
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -1113,14 +1052,10 @@ fpc_release:
 %$(EXEEXT): %.pas
 	$(COMPILER) $<
 	$(EXECPPAS)
-%$(EXEEXT): %.dpr
-	$(COMPILER) $<
-	$(EXECPPAS)
 %.res: %.rc
 	windres -i $< -o $@
 vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
 vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
 vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
 ifdef INSTALL_UNITS
@@ -1197,9 +1132,6 @@ override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
 endif
 ifdef CLEANPPUFILES
 override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
-ifdef DEBUGSYMEXT
-override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES)) 
-endif
 override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
 override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
 endif
@@ -1223,7 +1155,6 @@ ifdef LIB_NAME
 	-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
 endif
 	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-	-$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)
 fpc_distclean: clean
 ifdef COMPILER_UNITTARGETDIR
 TARGETDIRCLEAN=fpc_clean
@@ -1235,13 +1166,9 @@ endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
 	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-	-$(DEL) *_ppas$(BATCHEXT)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-ifdef DEBUGSYMEXT
-	-$(DEL) *$(DEBUGSYMEXT)
-endif
 .PHONY: fpc_baseinfo
 override INFORULES+=fpc_baseinfo
 fpc_baseinfo:

+ 1 - 1
rtl/os2/Makefile.fpc

@@ -10,7 +10,7 @@ loaders=prt0
 units=$(SYSTEMUNIT) objpas strings \
       ports os2def doscalls moncalls kbdcalls moucalls viocalls \
       pmbitmap pmwin pmgpi pmstddlg pmhelp pmdev pmspl pmshl pmwp pmwsock pmbidi \
-      dos crt objects printer \
+      dos crt objects printer matrix \
       sysutils classes math typinfo varutils winsock \
       charset ucomplex cpu mmx getopts heaptrc lineinfo dynlibs \
       video mouse keyboard variants types rtlconst sysconst dateutil

+ 1 - 1
rtl/win32/Makefile.fpc

@@ -8,7 +8,7 @@ main=rtl
 [target]
 loaders=wprt0 wdllprt0 gprt0
 units=$(SYSTEMUNIT) systhrds objpas strings \
-      lineinfo heaptrc \
+      lineinfo heaptrc matrix \
       windows ole2 activex shellapi shlobj winsock initc cmem \
       dos crt objects graph messages \
       sysutils classes typinfo math varutils variants \