Browse Source

* and delete 4 pkgs leftovers, ldap mad modplug dts

git-svn-id: trunk@9969 -
marco 17 years ago
parent
commit
6fb3d9cd7a

+ 0 - 18
.gitattributes

@@ -1098,9 +1098,6 @@ packages/extra/chm/htmlutil.pas svneol=native#text/plain
 packages/extra/chm/paslznonslide.pas svneol=native#text/plain
 packages/extra/chm/paslzx.pas svneol=native#text/plain
 packages/extra/chm/paslzxcomp.pas svneol=native#text/plain
-packages/extra/dts/Makefile svneol=native#text/plain
-packages/extra/dts/Makefile.fpc svneol=native#text/plain
-packages/extra/dts/dts.pas svneol=native#text/plain
 packages/extra/fftw/Makefile -text
 packages/extra/fftw/Makefile.fpc -text
 packages/extra/fftw/example.pas -text
@@ -2035,15 +2032,6 @@ packages/extra/imlib/fpmake.inc svneol=native#text/plain
 packages/extra/imlib/fpmake.pp svneol=native#text/plain
 packages/extra/imlib/gdk_imlib/gdk_imlib.pp svneol=native#text/plain
 packages/extra/imlib/imlib/imlib.pp svneol=native#text/plain
-packages/extra/ldap/Makefile svneol=native#text/plain
-packages/extra/ldap/Makefile.fpc svneol=native#text/plain
-packages/extra/ldap/lber.pas svneol=native#text/plain
-packages/extra/ldap/lber_typesh.inc svneol=native#text/plain
-packages/extra/ldap/lberh.inc svneol=native#text/plain
-packages/extra/ldap/ldap.pas svneol=native#text/plain
-packages/extra/ldap/ldap_featuresh.inc svneol=native#text/plain
-packages/extra/ldap/ldap_schemah.inc svneol=native#text/plain
-packages/extra/ldap/ldaph.inc svneol=native#text/plain
 packages/extra/libcurl/Makefile svneol=native#text/plain
 packages/extra/libcurl/Makefile.fpc svneol=native#text/plain
 packages/extra/libcurl/fpmake.inc svneol=native#text/plain
@@ -2216,15 +2204,9 @@ packages/extra/lua/fpmake.pp svneol=native#text/plain
 packages/extra/lua/lauxlib.pas svneol=native#text/plain
 packages/extra/lua/lua.pas svneol=native#text/plain
 packages/extra/lua/lualib.pas svneol=native#text/plain
-packages/extra/mad/Makefile svneol=native#text/plain
-packages/extra/mad/Makefile.fpc svneol=native#text/plain
-packages/extra/mad/mad.pas svneol=native#text/plain
 packages/extra/matroska/Makefile svneol=native#text/plain
 packages/extra/matroska/Makefile.fpc svneol=native#text/plain
 packages/extra/matroska/matroska.pas svneol=native#text/plain
-packages/extra/modplug/Makefile svneol=native#text/plain
-packages/extra/modplug/Makefile.fpc svneol=native#text/plain
-packages/extra/modplug/modplug.pas svneol=native#text/plain
 packages/extra/newt/Makefile svneol=native#text/plain
 packages/extra/newt/Makefile.fpc svneol=native#text/plain
 packages/extra/newt/README -text

+ 0 - 1931
packages/extra/dts/Makefile

@@ -1,1931 +0,0 @@
-#
-# Don't edit, this file is generated by FPCMake Version 2.0.0 [2007/11/08]
-#
-default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-netbsd i386-solaris i386-qnx i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-darwin x86_64-win64 x86_64-embedded arm-linux arm-palmos arm-wince arm-gba arm-nds arm-embedded arm-symbian powerpc64-linux powerpc64-darwin powerpc64-embedded
-BSDs = freebsd netbsd openbsd darwin
-UNIXs = linux $(BSDs) solaris qnx
-LIMIT83fs = go32v2 os2 emx watcom
-OSNeedsComspecToRunBatch = go32v2 watcom
-FORCE:
-.PHONY: FORCE
-override PATH:=$(patsubst %/,%,$(subst \,/,$(PATH)))
-ifneq ($(findstring darwin,$(OSTYPE)),)
-inUnix=1 #darwin
-SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
-else
-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))))
-ifeq ($(PWD),)
-$(error You need the GNU utils package to use this Makefile)
-else
-PWD:=$(firstword $(PWD))
-SRCEXEEXT=
-endif
-else
-PWD:=$(firstword $(PWD))
-SRCEXEEXT=.exe
-endif
-ifndef inUnix
-ifeq ($(OS),Windows_NT)
-inWinNT=1
-else
-ifdef OS2_SHELL
-inOS2=1
-endif
-endif
-else
-ifneq ($(findstring cygdrive,$(PATH)),)
-inCygWin=1
-endif
-endif
-ifdef inUnix
-SRCBATCHEXT=.sh
-else
-ifdef inOS2
-SRCBATCHEXT=.cmd
-else
-SRCBATCHEXT=.bat
-endif
-endif
-ifdef COMSPEC
-ifneq ($(findstring $(OS_SOURCE),$(OSNeedsComspecToRunBatch)),)
-RUNBATCH=$(COMSPEC) /C
-endif
-endif
-ifdef inUnix
-PATHSEP=/
-else
-PATHSEP:=$(subst /,\,/)
-ifdef inCygWin
-PATHSEP=/
-endif
-endif
-ifdef PWD
-BASEDIR:=$(subst \,/,$(shell $(PWD)))
-ifdef inCygWin
-ifneq ($(findstring /cygdrive/,$(BASEDIR)),)
-BASENODIR:=$(patsubst /cygdrive%,%,$(BASEDIR))
-BASEDRIVE:=$(firstword $(subst /, ,$(BASENODIR)))
-BASEDIR:=$(subst /cygdrive/$(BASEDRIVE)/,$(BASEDRIVE):/,$(BASEDIR))
-endif
-endif
-else
-BASEDIR=.
-endif
-ifdef inOS2
-ifndef ECHO
-ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-ECHO=echo
-else
-ECHO:=$(firstword $(ECHO))
-endif
-else
-ECHO:=$(firstword $(ECHO))
-endif
-endif
-export ECHO
-endif
-override DEFAULT_FPCDIR=../../..
-ifndef FPC
-ifdef PP
-FPC=$(PP)
-endif
-endif
-ifndef FPC
-FPCPROG:=$(strip $(wildcard $(addsuffix /fpc$(SRCEXEEXT),$(SEARCHPATH))))
-ifneq ($(FPCPROG),)
-FPCPROG:=$(firstword $(FPCPROG))
-ifneq ($(CPU_TARGET),)
-FPC:=$(shell $(FPCPROG) -P$(CPU_TARGET) -PB)
-else
-FPC:=$(shell $(FPCPROG) -PB)
-endif
-ifneq ($(findstring Error,$(FPC)),)
-override FPC=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH)))))
-endif
-else
-override FPC=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH)))))
-endif
-endif
-override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
-override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT)
-FOUNDFPC:=$(strip $(wildcard $(FPC)))
-ifeq ($(FOUNDFPC),)
-FOUNDFPC=$(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH))))
-ifeq ($(FOUNDFPC),)
-$(error Compiler $(FPC) not found)
-endif
-endif
-ifndef FPC_COMPILERINFO
-FPC_COMPILERINFO:=$(shell $(FPC) -iVSPTPSOTO)
-endif
-ifndef FPC_VERSION
-FPC_VERSION:=$(word 1,$(FPC_COMPILERINFO))
-endif
-export FPC FPC_VERSION FPC_COMPILERINFO
-unexport CHECKDEPEND ALLDEPENDENCIES
-ifndef CPU_TARGET
-ifdef CPU_TARGET_DEFAULT
-CPU_TARGET=$(CPU_TARGET_DEFAULT)
-endif
-endif
-ifndef OS_TARGET
-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
-ifndef CPU_SOURCE
-CPU_SOURCE:=$(word 2,$(FPC_COMPILERINFO))
-endif
-ifndef CPU_TARGET
-CPU_TARGET:=$(word 3,$(FPC_COMPILERINFO))
-endif
-ifndef OS_SOURCE
-OS_SOURCE:=$(word 4,$(FPC_COMPILERINFO))
-endif
-ifndef OS_TARGET
-OS_TARGET:=$(word 5,$(FPC_COMPILERINFO))
-endif
-FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
-FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
-ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),)
-TARGETSUFFIX=$(OS_TARGET)
-SOURCESUFFIX=$(OS_SOURCE)
-else
-TARGETSUFFIX=$(FULL_TARGET)
-SOURCESUFFIX=$(FULL_SOURCE)
-endif
-ifneq ($(FULL_TARGET),$(FULL_SOURCE))
-CROSSCOMPILE=1
-endif
-ifeq ($(findstring makefile,$(MAKECMDGOALS)),)
-ifeq ($(findstring $(FULL_TARGET),$(MAKEFILETARGETS)),)
-$(error The Makefile doesn't support target $(FULL_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 TARGETSUFFIX SOURCESUFFIX CROSSCOMPILE
-ifdef FPCDIR
-override FPCDIR:=$(subst \,/,$(FPCDIR))
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR=wrong
-endif
-else
-override FPCDIR=wrong
-endif
-ifdef DEFAULT_FPCDIR
-ifeq ($(FPCDIR),wrong)
-override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR=wrong
-endif
-endif
-endif
-ifeq ($(FPCDIR),wrong)
-ifdef inUnix
-override FPCDIR=/usr/local/lib/fpc/$(FPC_VERSION)
-ifeq ($(wildcard $(FPCDIR)/units),)
-override FPCDIR=/usr/lib/fpc/$(FPC_VERSION)
-endif
-else
-override FPCDIR:=$(subst /$(FPC),,$(firstword $(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH))))))
-override FPCDIR:=$(FPCDIR)/..
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR:=$(FPCDIR)/..
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR:=$(BASEDIR)
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR=c:/pp
-endif
-endif
-endif
-endif
-endif
-ifndef CROSSBINDIR
-CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX))
-endif
-ifndef BINUTILSPREFIX
-ifndef CROSSBINDIR
-ifdef CROSSCOMPILE
-BINUTILSPREFIX=$(CPU_TARGET)-$(OS_TARGET)-
-endif
-endif
-endif
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(TARGETSUFFIX))
-ifeq ($(UNITSDIR),)
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-endif
-PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages $(FPCDIR)/packages/base $(FPCDIR)/packages/extra)
-override PACKAGE_NAME=dts
-override PACKAGE_VERSION=2.0.0
-ifeq ($(FULL_TARGET),i386-linux)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),i386-go32v2)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),i386-win32)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),i386-os2)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),i386-freebsd)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),i386-beos)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),i386-netbsd)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),i386-solaris)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),i386-qnx)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),i386-netware)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),i386-openbsd)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),i386-wdosx)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),i386-darwin)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),i386-emx)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),i386-watcom)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),i386-netwlibc)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),i386-wince)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),i386-embedded)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),i386-symbian)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),m68k-linux)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),m68k-freebsd)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),m68k-netbsd)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),m68k-amiga)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),m68k-atari)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),m68k-openbsd)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),m68k-palmos)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),m68k-embedded)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),powerpc-linux)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),powerpc-netbsd)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),powerpc-amiga)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),powerpc-macos)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),powerpc-darwin)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),powerpc-morphos)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),powerpc-embedded)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),sparc-linux)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),sparc-netbsd)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),sparc-solaris)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),sparc-embedded)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),x86_64-linux)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),x86_64-freebsd)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),x86_64-darwin)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),x86_64-win64)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),x86_64-embedded)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),arm-linux)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),arm-palmos)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),arm-wince)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),arm-gba)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),arm-nds)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),arm-embedded)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),arm-symbian)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),powerpc64-linux)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),powerpc64-darwin)
-override TARGET_UNITS+=dts
-endif
-ifeq ($(FULL_TARGET),powerpc64-embedded)
-override TARGET_UNITS+=dts
-endif
-override INSTALL_FPCPACKAGE=y
-ifdef REQUIRE_UNITSDIR
-override UNITSDIR+=$(REQUIRE_UNITSDIR)
-endif
-ifdef REQUIRE_PACKAGESDIR
-override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
-endif
-ifdef ZIPINSTALL
-ifneq ($(findstring $(OS_TARGET),$(UNIXs)),)
-UNIXHier=1
-endif
-else
-ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),)
-UNIXHier=1
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef PREFIX
-INSTALL_PREFIX=$(PREFIX)
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef UNIXHier
-INSTALL_PREFIX=/usr/local
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BASEDIR:=/pp
-else
-INSTALL_BASEDIR:=/$(PACKAGE_NAME)
-endif
-endif
-endif
-export INSTALL_PREFIX
-ifdef INSTALL_FPCSUBDIR
-export INSTALL_FPCSUBDIR
-endif
-ifndef DIST_DESTDIR
-DIST_DESTDIR:=$(BASEDIR)
-endif
-export DIST_DESTDIR
-ifndef COMPILER_UNITTARGETDIR
-ifdef PACKAGEDIR_MAIN
-COMPILER_UNITTARGETDIR=$(PACKAGEDIR_MAIN)/units/$(TARGETSUFFIX)
-else
-COMPILER_UNITTARGETDIR=units/$(TARGETSUFFIX)
-endif
-endif
-ifndef COMPILER_TARGETDIR
-COMPILER_TARGETDIR=.
-endif
-ifndef INSTALL_BASEDIR
-ifdef UNIXHier
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
-else
-INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/$(PACKAGE_NAME)
-endif
-else
-INSTALL_BASEDIR:=$(INSTALL_PREFIX)
-endif
-endif
-ifndef INSTALL_BINDIR
-ifdef UNIXHier
-INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
-else
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
-ifdef INSTALL_FPCPACKAGE
-ifdef CROSSCOMPILE
-ifdef CROSSINSTALL
-INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(SOURCESUFFIX)
-else
-INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX)
-endif
-else
-INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX)
-endif
-endif
-endif
-endif
-ifndef INSTALL_UNITDIR
-INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(TARGETSUFFIX)
-ifdef INSTALL_FPCPACKAGE
-ifdef PACKAGE_NAME
-INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
-endif
-endif
-endif
-ifndef INSTALL_LIBDIR
-ifdef UNIXHier
-INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
-else
-INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
-endif
-endif
-ifndef INSTALL_SOURCEDIR
-ifdef UNIXHier
-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)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-endif
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-else
-ifdef INSTALL_FPCPACKAGE
-ifdef INSTALL_FPCSUBDIR
-INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
-endif
-else
-INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source
-endif
-endif
-endif
-ifndef INSTALL_DOCDIR
-ifdef UNIXHier
-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
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc/$(PACKAGE_NAME)
-else
-INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc
-endif
-endif
-endif
-ifndef INSTALL_EXAMPLEDIR
-ifdef UNIXHier
-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)
-else
-INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples
-endif
-endif
-endif
-ifndef INSTALL_DATADIR
-INSTALL_DATADIR=$(INSTALL_BASEDIR)
-endif
-ifndef INSTALL_SHAREDDIR
-INSTALL_SHAREDDIR=$(INSTALL_PREFIX)/lib
-endif
-ifdef CROSSCOMPILE
-ifndef CROSSBINDIR
-CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(SOURCESUFFIX))
-ifeq ($(CROSSBINDIR),)
-CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(TARGETSUFFIX)/bin/$(FULL_SOURCE))
-endif
-endif
-else
-CROSSBINDIR=
-endif
-BATCHEXT=.bat
-LOADEREXT=.as
-EXEEXT=.exe
-PPLEXT=.ppl
-PPUEXT=.ppu
-OEXT=.o
-ASMEXT=.s
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.so
-SHAREDLIBPREFIX=libfp
-STATICLIBPREFIX=libp
-IMPORTLIBPREFIX=libimp
-RSTEXT=.rst
-ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
-ifeq ($(OS_TARGET),go32v1)
-STATICLIBPREFIX=
-SHORTSUFFIX=v1
-endif
-ifeq ($(OS_TARGET),go32v2)
-STATICLIBPREFIX=
-SHORTSUFFIX=dos
-endif
-ifeq ($(OS_TARGET),watcom)
-STATICLIBPREFIX=
-OEXT=.obj
-ASMEXT=.asm
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=wat
-endif
-ifeq ($(OS_TARGET),linux)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=lnx
-endif
-ifeq ($(OS_TARGET),freebsd)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=fbs
-endif
-ifeq ($(OS_TARGET),netbsd)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=nbs
-endif
-ifeq ($(OS_TARGET),openbsd)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=obs
-endif
-ifeq ($(OS_TARGET),win32)
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=w32
-endif
-ifeq ($(OS_TARGET),os2)
-BATCHEXT=.cmd
-AOUTEXT=.out
-STATICLIBPREFIX=
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=os2
-ECHO=echo
-endif
-ifeq ($(OS_TARGET),emx)
-BATCHEXT=.cmd
-AOUTEXT=.out
-STATICLIBPREFIX=
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=emx
-ECHO=echo
-endif
-ifeq ($(OS_TARGET),amiga)
-EXEEXT=
-SHAREDLIBEXT=.library
-SHORTSUFFIX=amg
-endif
-ifeq ($(OS_TARGET),morphos)
-EXEEXT=
-SHAREDLIBEXT=.library
-SHORTSUFFIX=mos
-endif
-ifeq ($(OS_TARGET),atari)
-EXEEXT=.ttp
-SHORTSUFFIX=ata
-endif
-ifeq ($(OS_TARGET),beos)
-BATCHEXT=.sh
-EXEEXT=
-SHORTSUFFIX=be
-endif
-ifeq ($(OS_TARGET),solaris)
-BATCHEXT=.sh
-EXEEXT=
-SHORTSUFFIX=sun
-endif
-ifeq ($(OS_TARGET),qnx)
-BATCHEXT=.sh
-EXEEXT=
-SHORTSUFFIX=qnx
-endif
-ifeq ($(OS_TARGET),netware)
-EXEEXT=.nlm
-STATICLIBPREFIX=
-SHORTSUFFIX=nw
-endif
-ifeq ($(OS_TARGET),netwlibc)
-EXEEXT=.nlm
-STATICLIBPREFIX=
-SHORTSUFFIX=nwl
-endif
-ifeq ($(OS_TARGET),macos)
-BATCHEXT=
-EXEEXT=
-DEBUGSYMEXT=.xcoff
-SHORTSUFFIX=mac
-endif
-ifeq ($(OS_TARGET),darwin)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=dwn
-endif
-ifeq ($(OS_TARGET),gba)
-EXEEXT=.gba
-SHAREDLIBEXT=.so
-SHORTSUFFIX=gba
-endif
-ifeq ($(OS_TARGET),symbian)
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=symbian
-endif
-else
-ifeq ($(OS_TARGET),go32v1)
-PPUEXT=.pp1
-OEXT=.o1
-ASMEXT=.s1
-SMARTEXT=.sl1
-STATICLIBEXT=.a1
-SHAREDLIBEXT=.so1
-STATICLIBPREFIX=
-SHORTSUFFIX=v1
-endif
-ifeq ($(OS_TARGET),go32v2)
-STATICLIBPREFIX=
-SHORTSUFFIX=dos
-endif
-ifeq ($(OS_TARGET),watcom)
-STATICLIBPREFIX=
-SHORTSUFFIX=wat
-endif
-ifeq ($(OS_TARGET),linux)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=lnx
-endif
-ifeq ($(OS_TARGET),freebsd)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=fbs
-endif
-ifeq ($(OS_TARGET),netbsd)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=nbs
-endif
-ifeq ($(OS_TARGET),openbsd)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=obs
-endif
-ifeq ($(OS_TARGET),win32)
-PPUEXT=.ppw
-OEXT=.ow
-ASMEXT=.sw
-SMARTEXT=.slw
-STATICLIBEXT=.aw
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=w32
-endif
-ifeq ($(OS_TARGET),os2)
-BATCHEXT=.cmd
-PPUEXT=.ppo
-ASMEXT=.so2
-OEXT=.oo2
-AOUTEXT=.out
-SMARTEXT=.sl2
-STATICLIBPREFIX=
-STATICLIBEXT=.ao2
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=os2
-ECHO=echo
-endif
-ifeq ($(OS_TARGET),amiga)
-EXEEXT=
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.library
-SHORTSUFFIX=amg
-endif
-ifeq ($(OS_TARGET),atari)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=.ttp
-SHORTSUFFIX=ata
-endif
-ifeq ($(OS_TARGET),beos)
-BATCHEXT=.sh
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-SHORTSUFFIX=be
-endif
-ifeq ($(OS_TARGET),solaris)
-BATCHEXT=.sh
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-SHORTSUFFIX=sun
-endif
-ifeq ($(OS_TARGET),qnx)
-BATCHEXT=.sh
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-SHORTSUFFIX=qnx
-endif
-ifeq ($(OS_TARGET),netware)
-STATICLIBPREFIX=
-PPUEXT=.ppu
-OEXT=.o
-ASMEXT=.s
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.nlm
-EXEEXT=.nlm
-SHORTSUFFIX=nw
-endif
-ifeq ($(OS_TARGET),netwlibc)
-STATICLIBPREFIX=
-PPUEXT=.ppu
-OEXT=.o
-ASMEXT=.s
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.nlm
-EXEEXT=.nlm
-SHORTSUFFIX=nwl
-endif
-ifeq ($(OS_TARGET),macos)
-BATCHEXT=
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-DEBUGSYMEXT=.xcoff
-SHORTSUFFIX=mac
-endif
-endif
-ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),)
-FPCMADE=fpcmade.$(SHORTSUFFIX)
-ZIPSUFFIX=$(SHORTSUFFIX)
-ZIPCROSSPREFIX=
-ZIPSOURCESUFFIX=src
-ZIPEXAMPLESUFFIX=exm
-else
-FPCMADE=fpcmade.$(TARGETSUFFIX)
-ZIPSOURCESUFFIX=.source
-ZIPEXAMPLESUFFIX=.examples
-ifdef CROSSCOMPILE
-ZIPSUFFIX=.$(SOURCESUFFIX)
-ZIPCROSSPREFIX=$(TARGETSUFFIX)-
-else
-ZIPSUFFIX=.$(TARGETSUFFIX)
-ZIPCROSSPREFIX=
-endif
-endif
-ifndef ECHO
-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
-else
-ECHO:=$(firstword $(ECHO))
-endif
-endif
-export ECHO
-ifndef DATE
-DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(DATE),)
-DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(DATE),)
-DATE= __missing_command_DATE
-else
-DATE:=$(firstword $(DATE))
-endif
-else
-DATE:=$(firstword $(DATE))
-endif
-endif
-export DATE
-ifndef GINSTALL
-GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(GINSTALL),)
-GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(GINSTALL),)
-GINSTALL= __missing_command_GINSTALL
-else
-GINSTALL:=$(firstword $(GINSTALL))
-endif
-else
-GINSTALL:=$(firstword $(GINSTALL))
-endif
-endif
-export GINSTALL
-ifndef CPPROG
-CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(CPPROG),)
-CPPROG= __missing_command_CPPROG
-else
-CPPROG:=$(firstword $(CPPROG))
-endif
-endif
-export CPPROG
-ifndef RMPROG
-RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(RMPROG),)
-RMPROG= __missing_command_RMPROG
-else
-RMPROG:=$(firstword $(RMPROG))
-endif
-endif
-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 MKDIRPROG
-MKDIRPROG:=$(strip $(wildcard $(addsuffix /gmkdir$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(MKDIRPROG),)
-MKDIRPROG:=$(strip $(wildcard $(addsuffix /mkdir$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(MKDIRPROG),)
-MKDIRPROG= __missing_command_MKDIRPROG
-else
-MKDIRPROG:=$(firstword $(MKDIRPROG))
-endif
-else
-MKDIRPROG:=$(firstword $(MKDIRPROG))
-endif
-endif
-export MKDIRPROG
-ifndef ECHOREDIR
-ifndef inUnix
-ECHOREDIR=echo
-else
-ECHOREDIR=$(ECHO)
-endif
-endif
-ifndef COPY
-COPY:=$(CPPROG) -fp
-endif
-ifndef COPYTREE
-COPYTREE:=$(CPPROG) -Rfp
-endif
-ifndef MKDIRTREE
-MKDIRTREE:=$(MKDIRPROG) -p
-endif
-ifndef MOVE
-MOVE:=$(MVPROG) -f
-endif
-ifndef DEL
-DEL:=$(RMPROG) -f
-endif
-ifndef DELTREE
-DELTREE:=$(RMPROG) -rf
-endif
-ifndef INSTALL
-ifdef inUnix
-INSTALL:=$(GINSTALL) -c -m 644
-else
-INSTALL:=$(COPY)
-endif
-endif
-ifndef INSTALLEXE
-ifdef inUnix
-INSTALLEXE:=$(GINSTALL) -c -m 755
-else
-INSTALLEXE:=$(COPY)
-endif
-endif
-ifndef MKDIR
-MKDIR:=$(GINSTALL) -m 755 -d
-endif
-export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
-ifndef PPUMOVE
-PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(PPUMOVE),)
-PPUMOVE= __missing_command_PPUMOVE
-else
-PPUMOVE:=$(firstword $(PPUMOVE))
-endif
-endif
-export PPUMOVE
-ifndef FPCMAKE
-FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(FPCMAKE),)
-FPCMAKE= __missing_command_FPCMAKE
-else
-FPCMAKE:=$(firstword $(FPCMAKE))
-endif
-endif
-export FPCMAKE
-ifndef ZIPPROG
-ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ZIPPROG),)
-ZIPPROG= __missing_command_ZIPPROG
-else
-ZIPPROG:=$(firstword $(ZIPPROG))
-endif
-endif
-export ZIPPROG
-ifndef TARPROG
-TARPROG:=$(strip $(wildcard $(addsuffix /gtar$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(TARPROG),)
-TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(TARPROG),)
-TARPROG= __missing_command_TARPROG
-else
-TARPROG:=$(firstword $(TARPROG))
-endif
-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)),)
-ifeq ($(OS_TARGET),win32)
-ifeq ($(CROSSBINDIR),)
-ASNAME=asw
-LDNAME=ldw
-ARNAME=arw
-endif
-endif
-endif
-ifndef ASPROG
-ifdef CROSSBINDIR
-ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT)
-else
-ASPROG=$(ASNAME)
-endif
-endif
-ifndef LDPROG
-ifdef CROSSBINDIR
-LDPROG=$(CROSSBINDIR)/$(LDNAME)$(SRCEXEEXT)
-else
-LDPROG=$(LDNAME)
-endif
-endif
-ifndef RCPROG
-ifdef CROSSBINDIR
-RCPROG=$(CROSSBINDIR)/$(RCNAME)$(SRCEXEEXT)
-else
-RCPROG=$(RCNAME)
-endif
-endif
-ifndef ARPROG
-ifdef CROSSBINDIR
-ARPROG=$(CROSSBINDIR)/$(ARNAME)$(SRCEXEEXT)
-else
-ARPROG=$(ARNAME)
-endif
-endif
-AS=$(ASPROG)
-LD=$(LDPROG)
-RC=$(RCPROG)
-AR=$(ARPROG)
-PPAS=ppas$(SRCBATCHEXT)
-ifdef inUnix
-LDCONFIG=ldconfig
-else
-LDCONFIG=
-endif
-ifdef DATE
-DATESTR:=$(shell $(DATE) +%Y%m%d)
-else
-DATESTR=
-endif
-ifndef UPXPROG
-ifeq ($(OS_TARGET),go32v2)
-UPXPROG:=1
-endif
-ifeq ($(OS_TARGET),win32)
-UPXPROG:=1
-endif
-ifdef UPXPROG
-UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(UPXPROG),)
-UPXPROG=
-else
-UPXPROG:=$(firstword $(UPXPROG))
-endif
-else
-UPXPROG=
-endif
-endif
-export UPXPROG
-ZIPOPT=-9
-ZIPEXT=.zip
-ifeq ($(USETAR),bz2)
-TAROPT=vj
-TAREXT=.tar.bz2
-else
-TAROPT=vz
-TAREXT=.tar.gz
-endif
-override REQUIRE_PACKAGES=rtl 
-ifeq ($(FULL_TARGET),i386-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-go32v2)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-win32)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-os2)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-freebsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-beos)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-netbsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-solaris)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-qnx)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-netware)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-openbsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-wdosx)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-darwin)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-emx)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-watcom)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-netwlibc)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-wince)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-symbian)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),m68k-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),m68k-freebsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),m68k-netbsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),m68k-amiga)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),m68k-atari)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),m68k-openbsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),m68k-palmos)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),m68k-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc-netbsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc-amiga)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc-macos)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc-darwin)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc-morphos)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),sparc-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),sparc-netbsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),sparc-solaris)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),sparc-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),x86_64-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),x86_64-freebsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),x86_64-darwin)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),x86_64-win64)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),x86_64-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),arm-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),arm-palmos)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),arm-wince)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),arm-gba)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),arm-nds)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),arm-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),arm-symbian)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc64-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc64-darwin)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc64-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
-ifneq ($(PACKAGEDIR_RTL),)
-ifneq ($(wildcard $(PACKAGEDIR_RTL)/units/$(TARGETSUFFIX)),)
-UNITDIR_RTL=$(PACKAGEDIR_RTL)/units/$(TARGETSUFFIX)
-else
-UNITDIR_RTL=$(PACKAGEDIR_RTL)
-endif
-ifdef CHECKDEPEND
-$(PACKAGEDIR_RTL)/$(FPCMADE):
-	$(MAKE) -C $(PACKAGEDIR_RTL) $(FPCMADE)
-override ALLDEPENDENCIES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
-endif
-else
-PACKAGEDIR_RTL=
-UNITDIR_RTL:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /rtl/Package.fpc,$(UNITSDIR)))))
-ifneq ($(UNITDIR_RTL),)
-UNITDIR_RTL:=$(firstword $(UNITDIR_RTL))
-else
-UNITDIR_RTL=
-endif
-endif
-ifdef UNITDIR_RTL
-override COMPILER_UNITDIR+=$(UNITDIR_RTL)
-endif
-endif
-ifndef NOCPUDEF
-override FPCOPTDEF=$(CPU_TARGET)
-endif
-ifneq ($(OS_TARGET),$(OS_SOURCE))
-override FPCOPT+=-T$(OS_TARGET)
-endif
-ifneq ($(CPU_TARGET),$(CPU_SOURCE))
-override FPCOPT+=-P$(CPU_TARGET)
-endif
-ifeq ($(OS_SOURCE),openbsd)
-override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
-endif
-ifndef CROSSBOOTSTRAP
-ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-XP$(BINUTILSPREFIX)
-endif
-ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-Xr$(RLINKPATH)
-endif
-endif
-ifdef UNITDIR
-override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
-endif
-ifdef LIBDIR
-override FPCOPT+=$(addprefix -Fl,$(LIBDIR))
-endif
-ifdef OBJDIR
-override FPCOPT+=$(addprefix -Fo,$(OBJDIR))
-endif
-ifdef INCDIR
-override FPCOPT+=$(addprefix -Fi,$(INCDIR))
-endif
-ifdef LINKSMART
-override FPCOPT+=-XX
-endif
-ifdef CREATESMART
-override FPCOPT+=-CX
-endif
-ifdef DEBUG
-override FPCOPT+=-gl
-override FPCOPTDEF+=DEBUG
-endif
-ifdef RELEASE
-ifneq ($(findstring 2.0.,$(FPC_VERSION)),)
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-endif
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1r
-endif
-else
-FPCCPUOPT:=-O2
-endif
-override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n
-override FPCOPTDEF+=RELEASE
-endif
-ifdef STRIP
-override FPCOPT+=-Xs
-endif
-ifdef OPTIMIZE
-override FPCOPT+=-O2
-endif
-ifdef VERBOSE
-override FPCOPT+=-vwni
-endif
-ifdef COMPILER_OPTIONS
-override FPCOPT+=$(COMPILER_OPTIONS)
-endif
-ifdef COMPILER_UNITDIR
-override FPCOPT+=$(addprefix -Fu,$(COMPILER_UNITDIR))
-endif
-ifdef COMPILER_LIBRARYDIR
-override FPCOPT+=$(addprefix -Fl,$(COMPILER_LIBRARYDIR))
-endif
-ifdef COMPILER_OBJECTDIR
-override FPCOPT+=$(addprefix -Fo,$(COMPILER_OBJECTDIR))
-endif
-ifdef COMPILER_INCLUDEDIR
-override FPCOPT+=$(addprefix -Fi,$(COMPILER_INCLUDEDIR))
-endif
-ifdef CROSSBINDIR
-override FPCOPT+=-FD$(CROSSBINDIR)
-endif
-ifdef COMPILER_TARGETDIR
-override FPCOPT+=-FE$(COMPILER_TARGETDIR)
-ifeq ($(COMPILER_TARGETDIR),.)
-override TARGETDIRPREFIX=
-else
-override TARGETDIRPREFIX=$(COMPILER_TARGETDIR)/
-endif
-endif
-ifdef COMPILER_UNITTARGETDIR
-override FPCOPT+=-FU$(COMPILER_UNITTARGETDIR)
-ifeq ($(COMPILER_UNITTARGETDIR),.)
-override UNITTARGETDIRPREFIX=
-else
-override UNITTARGETDIRPREFIX=$(COMPILER_UNITTARGETDIR)/
-endif
-else
-ifdef COMPILER_TARGETDIR
-override COMPILER_UNITTARGETDIR=$(COMPILER_TARGETDIR)
-override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX)
-endif
-endif
-ifdef CREATESHARED
-override FPCOPT+=-Cg
-ifeq ($(CPU_TARGET),i386)
-override FPCOPT+=-Aas
-endif
-endif
-ifeq ($(findstring 2.0.,$(FPC_VERSION)),)
-ifeq ($(OS_TARGET),linux)
-ifeq ($(CPU_TARGET),x86_64)
-override FPCOPT+=-Cg
-endif
-endif
-endif
-ifdef LINKSHARED
-endif
-ifdef OPT
-override FPCOPT+=$(OPT)
-endif
-ifdef FPCOPTDEF
-override FPCOPT+=$(addprefix -d,$(FPCOPTDEF))
-endif
-ifdef CFGFILE
-override FPCOPT+=@$(CFGFILE)
-endif
-ifdef USEENV
-override FPCEXTCMD:=$(FPCOPT)
-override FPCOPT:=!FPCEXTCMD
-export FPCEXTCMD
-endif
-override AFULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
-override AFULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
-ifneq ($(AFULL_TARGET),$(AFULL_SOURCE))
-override ACROSSCOMPILE=1
-endif
-ifdef ACROSSCOMPILE
-override FPCOPT+=$(CROSSOPT)
-endif
-override COMPILER:=$(FPC) $(FPCOPT)
-ifeq (,$(findstring -s ,$(COMPILER)))
-EXECPPAS=
-else
-ifeq ($(FULL_SOURCE),$(FULL_TARGET))
-ifdef RUNBATCH
-EXECPPAS:=@$(RUNBATCH) $(PPAS)
-else
-EXECPPAS:=@$(PPAS)
-endif
-endif
-endif
-.PHONY: fpc_units
-ifneq ($(TARGET_UNITS),)
-override ALLTARGET+=fpc_units
-override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
-endif
-fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES)
-ifdef TARGET_RSTS
-override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
-override CLEANRSTFILES+=$(RSTFILES)
-endif
-.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared
-$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET)
-	@$(ECHOREDIR) Compiled > $(FPCMADE)
-fpc_all: $(FPCMADE)
-fpc_smart:
-	$(MAKE) all LINKSMART=1 CREATESMART=1
-fpc_debug:
-	$(MAKE) all DEBUG=1
-fpc_release:
-	$(MAKE) all RELEASE=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res
-$(COMPILER_UNITTARGETDIR):
-	$(MKDIRTREE) $(COMPILER_UNITTARGETDIR)
-$(COMPILER_TARGETDIR):
-	$(MKDIRTREE) $(COMPILER_TARGETDIR)
-%$(PPUEXT): %.pp
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(PPUEXT): %.pas
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.pp
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.pas
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.lpr
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.dpr
-	$(COMPILER) $<
-	$(EXECPPAS)
-%.res: %.rc
-	windres -i $< -o $@
-vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.inc $(COMPILER_INCLUDEDIR)
-vpath %$(OEXT) $(COMPILER_UNITTARGETDIR)
-vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
-.PHONY: fpc_shared
-override INSTALLTARGET+=fpc_shared_install
-ifndef SHARED_LIBVERSION
-SHARED_LIBVERSION=$(FPC_VERSION)
-endif
-ifndef SHARED_LIBNAME
-SHARED_LIBNAME=$(PACKAGE_NAME)
-endif
-ifndef SHARED_FULLNAME
-SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT)
-endif
-ifndef SHARED_LIBUNITS
-SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS)
-override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS))
-endif
-fpc_shared:
-ifdef HASSHAREDLIB
-	$(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1
-ifneq ($(SHARED_BUILD),n)
-	$(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR)
-endif
-else
-	@$(ECHO) Shared Libraries not supported
-endif
-fpc_shared_install:
-ifneq ($(SHARED_BUILD),n)
-ifneq ($(SHARED_LIBUNITS),)
-ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),)
-	$(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR)
-endif
-endif
-endif
-.PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
-ifdef INSTALL_UNITS
-override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS))
-endif
-ifdef INSTALL_BUILDUNIT
-override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPPUFILES))
-endif
-ifdef INSTALLPPUFILES
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
-ifneq ($(UNITTARGETDIRPREFIX),)
-override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES)))
-override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES))))
-endif
-override INSTALL_CREATEPACKAGEFPC=1
-endif
-ifdef INSTALLEXEFILES
-ifneq ($(TARGETDIRPREFIX),)
-override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(notdir $(INSTALLEXEFILES)))
-endif
-endif
-fpc_install: all $(INSTALLTARGET)
-ifdef INSTALLEXEFILES
-	$(MKDIR) $(INSTALL_BINDIR)
-ifdef UPXPROG
-	-$(UPXPROG) $(INSTALLEXEFILES)
-endif
-	$(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR)
-endif
-ifdef INSTALL_CREATEPACKAGEFPC
-ifdef FPCMAKE
-ifdef PACKAGE_VERSION
-ifneq ($(wildcard Makefile.fpc),)
-	$(FPCMAKE) -p -T$(CPU_TARGET)-$(OS_TARGET) Makefile.fpc
-	$(MKDIR) $(INSTALL_UNITDIR)
-	$(INSTALL) Package.fpc $(INSTALL_UNITDIR)
-endif
-endif
-endif
-endif
-ifdef INSTALLPPUFILES
-	$(MKDIR) $(INSTALL_UNITDIR)
-	$(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR)
-ifneq ($(INSTALLPPULINKFILES),)
-	$(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR)
-endif
-ifneq ($(wildcard $(LIB_FULLNAME)),)
-	$(MKDIR) $(INSTALL_LIBDIR)
-	$(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR)
-ifdef inUnix
-	ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)
-endif
-endif
-endif
-ifdef INSTALL_FILES
-	$(MKDIR) $(INSTALL_DATADIR)
-	$(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR)
-endif
-fpc_sourceinstall: distclean
-	$(MKDIR) $(INSTALL_SOURCEDIR)
-	$(COPYTREE) $(BASEDIR)/* $(INSTALL_SOURCEDIR)
-fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
-ifdef HASEXAMPLES
-	$(MKDIR) $(INSTALL_EXAMPLEDIR)
-endif
-ifdef EXAMPLESOURCEFILES
-	$(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
-endif
-ifdef TARGET_EXAMPLEDIRS
-	$(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
-endif
-.PHONY: fpc_distinstall
-fpc_distinstall: install exampleinstall
-.PHONY: fpc_zipinstall fpc_zipsourceinstall fpc_zipexampleinstall
-ifndef PACKDIR
-ifndef inUnix
-PACKDIR=$(BASEDIR)/../fpc-pack
-else
-PACKDIR=/tmp/fpc-pack
-endif
-endif
-ifndef ZIPNAME
-ifdef DIST_ZIPNAME
-ZIPNAME=$(DIST_ZIPNAME)
-else
-ZIPNAME=$(PACKAGE_NAME)
-endif
-endif
-ifndef FULLZIPNAME
-FULLZIPNAME=$(ZIPCROSSPREFIX)$(ZIPPREFIX)$(ZIPNAME)$(ZIPSUFFIX)
-endif
-ifndef ZIPTARGET
-ifdef DIST_ZIPTARGET
-ZIPTARGET=DIST_ZIPTARGET
-else
-ZIPTARGET=install
-endif
-endif
-ifndef USEZIP
-ifdef inUnix
-USETAR=1
-endif
-endif
-ifndef inUnix
-USEZIPWRAPPER=1
-endif
-ifdef USEZIPWRAPPER
-ZIPPATHSEP=$(PATHSEP)
-ZIPWRAPPER=$(subst /,$(PATHSEP),$(DIST_DESTDIR)/fpczip$(SRCBATCHEXT))
-else
-ZIPPATHSEP=/
-endif
-ZIPCMD_CDPACK:=cd $(subst /,$(ZIPPATHSEP),$(PACKDIR))
-ZIPCMD_CDBASE:=cd $(subst /,$(ZIPPATHSEP),$(BASEDIR))
-ifdef USETAR
-ZIPDESTFILE:=$(DIST_DESTDIR)/$(FULLZIPNAME)$(TAREXT)
-ZIPCMD_ZIP:=$(TARPROG) cf$(TAROPT) $(ZIPDESTFILE) *
-else
-ZIPDESTFILE:=$(DIST_DESTDIR)/$(FULLZIPNAME)$(ZIPEXT)
-ZIPCMD_ZIP:=$(subst /,$(ZIPPATHSEP),$(ZIPPROG)) -Dr $(ZIPOPT) $(ZIPDESTFILE) *
-endif
-fpc_zipinstall:
-	$(MAKE) $(ZIPTARGET) INSTALL_PREFIX=$(PACKDIR) ZIPINSTALL=1
-	$(MKDIR) $(DIST_DESTDIR)
-	$(DEL) $(ZIPDESTFILE)
-ifdef USEZIPWRAPPER
-ifneq ($(ECHOREDIR),echo)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDPACK))" > $(ZIPWRAPPER)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_ZIP))" >> $(ZIPWRAPPER)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDBASE))" >> $(ZIPWRAPPER)
-else
-	echo $(ZIPCMD_CDPACK) > $(ZIPWRAPPER)
-	echo $(ZIPCMD_ZIP) >> $(ZIPWRAPPER)
-	echo $(ZIPCMD_CDBASE) >> $(ZIPWRAPPER)
-endif
-ifdef inUnix
-	/bin/sh $(ZIPWRAPPER)
-else
-ifdef RUNBATCH
-	$(RUNBATCH) (ZIPWRAPPER)
-else
-	$(ZIPWRAPPER)
-endif
-endif
-	$(DEL) $(ZIPWRAPPER)
-else
-	$(ZIPCMD_CDPACK) ; $(ZIPCMD_ZIP) ; $(ZIPCMD_CDBASE)
-endif
-	$(DELTREE) $(PACKDIR)
-fpc_zipsourceinstall:
-	$(MAKE) fpc_zipinstall ZIPTARGET=sourceinstall ZIPSUFFIX=$(ZIPSOURCESUFFIX)
-fpc_zipexampleinstall:
-ifdef HASEXAMPLES
-	$(MAKE) fpc_zipinstall ZIPTARGET=exampleinstall ZIPSUFFIX=$(ZIPEXAMPLESUFFIX)
-endif
-fpc_zipdistinstall:
-	$(MAKE) fpc_zipinstall ZIPTARGET=distinstall
-.PHONY: fpc_clean fpc_cleanall fpc_distclean
-ifdef EXEFILES
-override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
-endif
-ifdef CLEAN_UNITS
-override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
-endif
-ifdef CLEANPPUFILES
-override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(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
-fpc_clean: $(CLEANTARGET)
-ifdef CLEANEXEFILES
-	-$(DEL) $(CLEANEXEFILES)
-endif
-ifdef CLEANPPUFILES
-	-$(DEL) $(CLEANPPUFILES)
-endif
-ifneq ($(CLEANPPULINKFILES),)
-	-$(DEL) $(CLEANPPULINKFILES)
-endif
-ifdef CLEANRSTFILES
-	-$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
-endif
-ifdef CLEAN_FILES
-	-$(DEL) $(CLEAN_FILES)
-endif
-ifdef LIB_NAME
-	-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
-endif
-	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-	-$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)
-fpc_cleanall: $(CLEANTARGET)
-ifdef CLEANEXEFILES
-	-$(DEL) $(CLEANEXEFILES)
-endif
-ifdef COMPILER_UNITTARGETDIR
-ifdef CLEANPPUFILES
-	-$(DEL) $(CLEANPPUFILES)
-endif
-ifneq ($(CLEANPPULINKFILES),)
-	-$(DEL) $(CLEANPPULINKFILES)
-endif
-ifdef CLEANRSTFILES
-	-$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
-endif
-endif
-	-$(DELTREE) units
-	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
-ifneq ($(PPUEXT),.ppu)
-	-$(DEL) *.o *.ppu *.a
-endif
-	-$(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
-fpc_distclean: cleanall
-.PHONY: fpc_baseinfo
-override INFORULES+=fpc_baseinfo
-fpc_baseinfo:
-	@$(ECHO)
-	@$(ECHO)  == Package info ==
-	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
-	@$(ECHO)  Package Version.. $(PACKAGE_VERSION)
-	@$(ECHO)
-	@$(ECHO)  == Configuration info ==
-	@$(ECHO)
-	@$(ECHO)  FPC.......... $(FPC)
-	@$(ECHO)  FPC Version.. $(FPC_VERSION)
-	@$(ECHO)  Source CPU... $(CPU_SOURCE)
-	@$(ECHO)  Target CPU... $(CPU_TARGET)
-	@$(ECHO)  Source OS.... $(OS_SOURCE)
-	@$(ECHO)  Target OS.... $(OS_TARGET)
-	@$(ECHO)  Full Source.. $(FULL_SOURCE)
-	@$(ECHO)  Full Target.. $(FULL_TARGET)
-	@$(ECHO)  SourceSuffix. $(SOURCESUFFIX)
-	@$(ECHO)  TargetSuffix. $(TARGETSUFFIX)
-	@$(ECHO)
-	@$(ECHO)  == Directory info ==
-	@$(ECHO)
-	@$(ECHO)  Required pkgs... $(REQUIRE_PACKAGES)
-	@$(ECHO)
-	@$(ECHO)  Basedir......... $(BASEDIR)
-	@$(ECHO)  FPCDir.......... $(FPCDIR)
-	@$(ECHO)  CrossBinDir..... $(CROSSBINDIR)
-	@$(ECHO)  UnitsDir........ $(UNITSDIR)
-	@$(ECHO)  PackagesDir..... $(PACKAGESDIR)
-	@$(ECHO)
-	@$(ECHO)  GCC library..... $(GCCLIBDIR)
-	@$(ECHO)  Other library... $(OTHERLIBDIR)
-	@$(ECHO)
-	@$(ECHO)  == Tools info ==
-	@$(ECHO)
-	@$(ECHO)  As........ $(AS)
-	@$(ECHO)  Ld........ $(LD)
-	@$(ECHO)  Ar........ $(AR)
-	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)
-	@$(ECHO)  Mv........ $(MVPROG)
-	@$(ECHO)  Cp........ $(CPPROG)
-	@$(ECHO)  Rm........ $(RMPROG)
-	@$(ECHO)  GInstall.. $(GINSTALL)
-	@$(ECHO)  Echo...... $(ECHO)
-	@$(ECHO)  Shell..... $(SHELL)
-	@$(ECHO)  Date...... $(DATE)
-	@$(ECHO)  FPCMake... $(FPCMAKE)
-	@$(ECHO)  PPUMove... $(PPUMOVE)
-	@$(ECHO)  Upx....... $(UPXPROG)
-	@$(ECHO)  Zip....... $(ZIPPROG)
-	@$(ECHO)
-	@$(ECHO)  == Object info ==
-	@$(ECHO)
-	@$(ECHO)  Target Loaders........ $(TARGET_LOADERS)
-	@$(ECHO)  Target Units.......... $(TARGET_UNITS)
-	@$(ECHO)  Target Implicit Units. $(TARGET_IMPLICITUNITS)
-	@$(ECHO)  Target Programs....... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs........... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples....... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.... $(TARGET_EXAMPLEDIRS)
-	@$(ECHO)
-	@$(ECHO)  Clean Units......... $(CLEAN_UNITS)
-	@$(ECHO)  Clean Files......... $(CLEAN_FILES)
-	@$(ECHO)
-	@$(ECHO)  Install Units....... $(INSTALL_UNITS)
-	@$(ECHO)  Install Files....... $(INSTALL_FILES)
-	@$(ECHO)
-	@$(ECHO)  == Install info ==
-	@$(ECHO)
-	@$(ECHO)  DateStr.............. $(DATESTR)
-	@$(ECHO)  ZipName.............. $(ZIPNAME)
-	@$(ECHO)  ZipPrefix............ $(ZIPPREFIX)
-	@$(ECHO)  ZipCrossPrefix....... $(ZIPCROSSPREFIX)
-	@$(ECHO)  ZipSuffix............ $(ZIPSUFFIX)
-	@$(ECHO)  FullZipName.......... $(FULLZIPNAME)
-	@$(ECHO)  Install FPC Package.. $(INSTALL_FPCPACKAGE)
-	@$(ECHO)
-	@$(ECHO)  Install base dir..... $(INSTALL_BASEDIR)
-	@$(ECHO)  Install binary dir... $(INSTALL_BINDIR)
-	@$(ECHO)  Install library dir.. $(INSTALL_LIBDIR)
-	@$(ECHO)  Install units dir.... $(INSTALL_UNITDIR)
-	@$(ECHO)  Install source dir... $(INSTALL_SOURCEDIR)
-	@$(ECHO)  Install doc dir...... $(INSTALL_DOCDIR)
-	@$(ECHO)  Install example dir.. $(INSTALL_EXAMPLEDIR)
-	@$(ECHO)  Install data dir..... $(INSTALL_DATADIR)
-	@$(ECHO)
-	@$(ECHO)  Dist destination dir. $(DIST_DESTDIR)
-	@$(ECHO)  Dist zip name........ $(DIST_ZIPNAME)
-	@$(ECHO)
-.PHONY: fpc_info
-fpc_info: $(INFORULES)
-.PHONY: fpc_makefile fpc_makefiles fpc_makefile_sub1 fpc_makefile_sub2 \
-	fpc_makefile_dirs
-fpc_makefile:
-	$(FPCMAKE) -w -T$(OS_TARGET) Makefile.fpc
-fpc_makefile_sub1:
-ifdef TARGET_DIRS
-	$(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
-endif
-ifdef TARGET_EXAMPLEDIRS
-	$(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_EXAMPLEDIRS))
-endif
-fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS))
-fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2
-fpc_makefiles: fpc_makefile fpc_makefile_dirs
-all: fpc_all
-debug: fpc_debug
-smart: fpc_smart
-release: fpc_release
-units: fpc_units
-examples:
-shared: fpc_shared
-install: fpc_install
-sourceinstall: fpc_sourceinstall
-exampleinstall: fpc_exampleinstall
-distinstall: fpc_distinstall
-zipinstall: fpc_zipinstall
-zipsourceinstall: fpc_zipsourceinstall
-zipexampleinstall: fpc_zipexampleinstall
-zipdistinstall: fpc_zipdistinstall
-clean: fpc_clean
-distclean: fpc_distclean
-cleanall: fpc_cleanall
-info: fpc_info
-makefiles: fpc_makefiles
-.PHONY: all debug smart release units examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
-ifneq ($(wildcard fpcmake.loc),)
-include fpcmake.loc
-endif
-.NOTPARALLEL:

+ 0 - 21
packages/extra/dts/Makefile.fpc

@@ -1,21 +0,0 @@
-#
-#   Makefile.fpc for A52DEC bindings
-#
-
-[package]
-name=dts
-version=2.0.0
-
-[target]
-units=dts
-
-[require]
-
-[install]
-fpcpackage=y
-
-[default]
-fpcdir=../../..
-
-[rules]
-.NOTPARALLEL:

+ 0 - 529
packages/extra/dts/dts.pas

@@ -1,529 +0,0 @@
-{
-  Translation of the DTS headers for FreePascal
-  Copyright (C) 2006 by Ivo Steinmann
-}
-
-(*
- * dts.h
- * Copyright (C) 2004 Gildas Bazin <[email protected]>
- *
- * This file is part of dtsdec, a free DTS Coherent Acoustics stream decoder.
- * See http://www.videolan.org/dtsdec.html for updates.
- *
- * dtsdec is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * dtsdec is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- *)
-
-{
-Using the libdts API
---------------------
-
-libdts provides a low-level interface to decoding audio frames encoded
-using DTS Coherent Acoustics. libdts provides downmixing and
-dynamic range compression for the following output configurations:
-
-DTS_CHANNEL  : Dual mono. Two independant mono channels.
-DTS_CHANNEL1 : First of the two mono channels above.
-DTS_CHANNEL2 : Second of the two mono channels above.
-DTS_MONO     : Mono.
-DTS_STEREO   : Stereo.
-DTS_DOLBY    : Dolby surround compatible stereo.
-DTS_3F       : 3 front channels (left, center, right)
-DTS_2F1R     : 2 front, 1 rear surround channel (L, R, S)
-DTS_3F1R     : 3 front, 1 rear surround channel (L, C, R, S)
-DTS_2F2R     : 2 front, 2 rear surround channels (L, R, LS, RS)
-DTS_3F2R     : 3 front, 2 rear surround channels (L, C, R, LS, RS)
-
-DTS_LFE      : Low frequency effects channel. Normally used to connect a
-               subwoofer. Can be combined with any of the above channels.
-               For example: DTS_3F2R | DTS_LFE -> 3 front, 2 rear, 1 LFE (5.1)
-
-
-Initialization
---------------
-
-dts_state_t * dts_init (uint32_t mm_accel);
-
-Initializes the DTS library. Takes as a parameter the acceptable
-optimizations which may be used, such as MMX. These are found in the
-included header file 'mm_accel', along with an autodetection function
-(mm_accel()). Currently, there is no accelleration implemented.
-
-The return value is a pointer to a dts state object.
-
-
-Probing the bitstream
----------------------
-
-int dts_syncinfo (uint8_t * buf, int * flags,
-                  int * sample_rate, int * bit_rate, int * frame_length);
-
-The DTS bitstream is composed of several dts frames concatenated one
-after each other. A dts frame is the smallest independantly decodable
-unit in the stream.
-
-buf must contain at least 14 bytes from the input stream. If these look
-like the start of a valid dts frame, dts_syncinfo() returns the size
-of the coded frame in bytes, and fills flags, sample_rate, bit_rate and
-frame_length with the information encoded in the stream. The returned size
-is guaranteed to be an even number between 96 and 16384 for the 16 bits
-version of the bitstream and 109 and 18726 for the 14 bits version.
-sample_rate will be the sampling frequency in Hz, bit_rate is for the
-compressed stream and is in bits per second, and flags is a description of
-the coded channels: the DTS_LFE bit is set if there is an LFE channel coded
-in this stream, and by masking flags with DTS_CHANNEL_MASK you will get a
-value that describes the full-bandwidth channels, as one of the
-DTS_CHANNEL...DTS_3F2R flags.
-
-If this can not possibly be a valid frame, then the function returns
-0. You should then try to re-synchronize with the dts stream - one way
-to try this would be to advance buf by one byte until its contents
-looks like a valid frame, but there might be better
-application-specific ways to synchronize.
-
-You need to call this function for each frame, for several
-reasons: this function detects errors that the other functions will
-not double-check, consecutive frames might have different lengths, and
-it helps you re-sync with the stream if you get de-synchronized. It will as
-well detect the kind of bitstream it is dealing with (big/little endian,
-16/14 bits mode)
-
-
-Starting to decode a frame
---------------------------
-
-int dts_frame (dts_state_t * state, uint8_t * buf, int * flags,
-           sample_t * level, sample_t bias);
-
-This starts the work of decoding the DTS frame (to be completed using
-dts_block()). buf should point to the beginning of the complete frame
-of the full size returned by dts_syncinfo().
-
-You should pass in the flags the speaker configuration that you
-support, and libdts will return the speaker configuration it will use
-for its output, based on what is coded in the stream and what you
-asked for. For example, if the stream contains 2+2 channels
-(dts_syncinfo() returned DTS_2F2R in the flags), and you have 3+1
-speakers (you passed DTS_3F1R), then libdts will choose do downmix to
-2+1 speakers, since there is no center channel to send to your center
-speaker. So in that case the left and right channels will be
-essentially unmodified by the downmix, and the two surround channels
-will be added together and sent to your surround speaker. libdts will
-return DTS_2F1R to indicate this.
-
-The good news is that when you downmix to stereo you dont have to
-worry about this, you will ALWAYS get a stereo output no matter what
-was coded in the stream. For more complex output configurations you
-will have to handle the case where libdts couldnt give you what you
-wanted because some of the channels were not encoded in the stream
-though.
-
-Level, bias, and DTS_ADJUST_LEVEL:
-
-Before downmixing, samples are floating point values with a range of
-[-1,1]. Most types of downmixing will combine channels together, which
-will potentially result in a larger range for the output
-samples. libdts provides two methods of controlling the range of the
-output, either before or after the downmix stage.
-
-If you do not set DTS_ADJUST_LEVEL, libdts will multiply the samples
-by your level value, so that they fit in the [-level,level]
-range. Then it will apply the standardized downmix equations,
-potentially making the samples go out of that interval again. The
-level parameter is not modified.
-
-Setting the DTS_ADJUST_LEVEL flag will instruct libdts to treat your
-level value as the intended range interval after downmixing. It will
-then figure out what level to use before the downmix (what you should
-have passed if you hadnt used the DTS_ADJUST_LEVEL flag), and
-overwrite the level value you gave it with that new level value.
-
-The bias represents a value which should be added to the result
-regardless:
-
-output_sample = (input_sample * level) + bias;
-
-For example, a bias of 384 and a level of 1 tells liba52 you want
-samples between 383 and 385 instead of -1 and 1. This is what the
-sample program dtsdec does, as it makes it faster to convert the
-samples to integer format, using a trick based on the IEEE
-floating-point format.
-
-This function also initialises the state for that frame, which will be
-reused next when decoding blocks.
-
-
-Dynamic range compression
--------------------------
-
-void dts_dynrng (dts_state_t * state,
-                 sample_t (* call) (sample_t, void *), void * data);
-
-This function is purely optional. If you dont call it, libdts will
-provide the default behaviour, which is to apply the full dynamic
-range compression as specified in the DTS stream. This basically
-makes the loud sounds softer, and the soft sounds louder, so you can
-more easily listen to the stream in a noisy environment without
-disturbing anyone.
-
-If you do call this function and set a NULL callback, this will
-totally disable the dynamic range compression and provide a playback
-more adapted to a movie theater or a listening room.
-
-If you call this function and specify a callback function, this
-callback might be called up to once for each block, with two
-arguments: the compression factor 'c' recommended by the bitstream,
-and the private data pointer you specified in dts_dynrng(). The
-callback will then return the amount of compression to actually use -
-typically pow(c,x) where x is somewhere between 0 and 1. More
-elaborate compression functions might want to use a different value
-for 'x' depending wether c>1 or c<1 - or even something more complex
-if this is what you want.
-
-
-Finding the number of blocks
-----------------------------
-
-int dts_blocks_num (dts_state_t * state);
-
-Every DTS frame is composed of a variable number of blocks. Calling
-dts_blocks_num() after dts_frame() will give you the number of blocks in the
-current frame.
-
-Decoding blocks
----------------
-
-int dts_block (dts_state_t * state);
-
-Every DTS frame is composed of a variable number of blocks, each with an
-output of 256 samples for each channel. The dts_block() function decodes
-the next block in the frame, and should be called dts_blocks_num() times to
-decode all of the audio in the frame.
-
-Getting the decoded audio samples
----------------------------------
-
-sample_t * dts_samples (dts_state_t * state);
-
-After each call to dts_block(), you should extract the audio data from the
-internal samples buffer.
-
-This function returns a pointer to an internal buffer which will contain 256
-samples for the first channel, followed by 256 samples for the second
-channel, etc... the channel order is center, left, right, left
-surround, right surround, LFE. If one of the channels is not present in the
-libdts output, as indicated by the flags returned by dts_frame(), then
-this channel is skipped and the following channels are shifted so
-libdts does not leave an empty space between channels.
-
-
-Pseudocode example
-------------------
-
-dts_state_t * state = dts_init (mm_accel());
-
-loop on input bytes:
-  if at least 14 bytes in the buffer:
-
-    bytes_to_get = dts_syncinfo (...)
-
-    if bytes_to_get == 0:
-      goto loop to keep looking for sync point
-    else
-      get rest of bytes
-
-      dts_frame (state, buf, ...)
-      [dts_dynrng (state, ...); this is only optional]
-      for i = 1 ... dts_blocks_num():
-        dts_block (state)
-        dts_samples (state)
-        convert samples to integer and queue to soundcard
-}
-
-unit dts;
-
-{$mode objfpc}
-{$MINENUMSIZE 4}
-
-interface
-
-uses
-  ctypes;
-
-{$UNDEF LIBA52_DOUBLE}
-
-{$IFDEF WINDOWS}
-  {$DEFINE DYNLINK}
-{$ENDIF}
-
-{$IFDEF DYNLINK}
-const
-{$IF Defined(WINDOWS)}
-  dtslib = 'dts.dll';
-{$ELSEIF Defined(UNIX)}
-  dtslib = 'libdts.so';
-{$ELSE}
-  {$MESSAGE ERROR 'DYNLINK not supported'}
-{$IFEND}
-{$ELSE}
-  {$LINKLIB dts}
-{$ENDIF}
-
-(* x86 accelerations *)
-const
-  MM_ACCEL_X86_MMX    = $80000000;
-  MM_ACCEL_X86_3DNOW  = $40000000;
-  MM_ACCEL_X86_MMXEXT = $20000000;
-
-function mm_accel: cuint32; cdecl; external {$IFDEF DYNLINK}dtslib{$ENDIF};
-
-
-type
-  pdts_sample_t = ^dts_sample_t;
-{$IF Defined(LIBDTS_FIXED)}
-  dts_sample_t = cint32;
-{$ELSEIF Defined(LIBDTS_DOUBLE)}
-  dts_sample_t = cdouble;
-{$ELSE}
-  dts_sample_t = cfloat;
-{$IFEND}
-
-  pdts_level_t = ^dts_level_t;
-  dts_level_t = dts_sample_t;
-
-  pdts_state_t = ^dts_state_t;
-  dts_state_t = record
-  end;
-
-  dts_dynrng_call = function(s: dts_sample_t; data: pointer): dts_level_t; cdecl;
-
-const
-  DTS_MONO            = 0;
-  DTS_CHANNEL         = 1;
-  DTS_STEREO          = 2;
-  DTS_STEREO_SUMDIFF  = 3;
-  DTS_STEREO_TOTAL    = 4;
-  DTS_3F              = 5;
-  DTS_2F1R            = 6;
-  DTS_3F1R            = 7;
-  DTS_2F2R            = 8;
-  DTS_3F2R            = 9;
-  DTS_4F2R            = 10;
-
-  DTS_DOLBY           = 101; (* FIXME *)
-
-  DTS_CHANNEL_MAX     = DTS_3F2R; (* We don't handle anything above that *)
-  DTS_CHANNEL_BITS    = 6;
-  DTS_CHANNEL_MASK    = $3F;
-
-  DTS_LFE             = $80;
-  DTS_ADJUST_LEVEL    = $100;
-
-
-function dts_init(mm_accel: cuint32): pdts_state_t; cdecl; external {$IFDEF DYNLINK}dtslib{$ENDIF};
-function dts_syncinfo(state: pdts_state_t; buf: pcuint8; var flags: cint; var sample_rate: cint; var bit_rate: cint; var frame_length: cint): cint; cdecl; external {$IFDEF DYNLINK}dtslib{$ENDIF};
-function dts_frame(state: pdts_state_t; buf: pcuint8; var flags: cint; var level: dts_level_t; bias: dts_sample_t): cint; cdecl; external {$IFDEF DYNLINK}dtslib{$ENDIF};
-procedure dts_dynrng(state: pdts_state_t; call: dts_dynrng_call; data: pointer); cdecl; external {$IFDEF DYNLINK}dtslib{$ENDIF};
-function dts_blocks_num(state: pdts_state_t): cint; cdecl; external {$IFDEF DYNLINK}dtslib{$ENDIF};
-function dts_block(state: pdts_state_t): cint; cdecl; external {$IFDEF DYNLINK}dtslib{$ENDIF};
-function dts_samples(state: pdts_state_t): pdts_sample_t; cdecl; external {$IFDEF DYNLINK}dtslib{$ENDIF};
-procedure dts_free(state: pdts_state_t); cdecl; external {$IFDEF DYNLINK}dtslib{$ENDIF};
-
-
-
-{
-  Developer of the A52 helpers for FreePascal
-  Copyright (C) 2006 by Ivo Steinmann
-}
-
-type
-  dts_read_func  = function(user: pointer; ptr: pointer; size: cuint): cuint; cdecl;
-  dts_seek_func  = function(user: pointer; offset: clong; whence: cint): clong; cdecl;
-  dts_close_func = function(user: pointer): cint; cdecl;
-  dts_tell_func  = function(user: pointer): clong; cdecl;
-
-  pdts_decoder = ^dts_decoder;
-  dts_decoder = record
-    inbuf       : array[0..24576-1] of cuint8;
-    inbuf_ptr   : pcuint8;
-    frame_size  : cint;
-    state       : pdts_state_t;
-    fsamples    : pdts_sample_t; // internal samples buffer of dts (returned by dts_samples)
-
-    samples     : array[0..1,0..6*256-1] of cint16;
-    samplecnt   : cint;
-    sampleofs   : cint;
-    user        : pointer;
-    read        : dts_read_func;
-    seek        : dts_seek_func;
-    close       : dts_close_func;
-    tell        : dts_tell_func;
-
-  // Userinfo
-    flags       : cint;
-    channels    : cint;
-    sample_rate : cint;
-    bit_rate    : cint;
-  end;
-
-
-function dts_decoder_init(mm_accel: cuint32; user: pointer; read: dts_read_func; seek: dts_seek_func; close: dts_close_func; tell: dts_tell_func): pdts_decoder;
-function dts_decoder_read(decoder: pdts_decoder; buffer: pointer; length: cint): cint;
-procedure dts_decoder_free(decoder: pdts_decoder);
-
-implementation
-
-function dts_decoder_init(mm_accel: cuint32; user: pointer; read: dts_read_func; seek: dts_seek_func; close: dts_close_func; tell: dts_tell_func): pdts_decoder;
-begin
-  GetMem(Result, Sizeof(dts_decoder));
-  FillChar(Result^, Sizeof(dts_decoder), 0);
-  Result^.state := dts_init(mm_accel);
-  Result^.fsamples := dts_samples(Result^.state);
-  Result^.inbuf_ptr := @Result^.inbuf[0];
-  Result^.user := user;
-  Result^.read := read;
-  Result^.seek := seek;
-  Result^.close := close;
-  Result^.tell := tell;
-end;
-
-procedure dts_decoder_free(decoder: pdts_decoder);
-begin
-  if not Assigned(decoder) then
-    Exit;
-
-  dts_free(decoder^.state);
-  decoder^.close(decoder^.user);
-  FreeMem(decoder);
-end;
-
-function dts_decoder_read(decoder: pdts_decoder; buffer: pointer; length: cint): cint;
-const
-  HEADER_SIZE = 14;
-//  ac3_channels: array[0..7] of cint = (2,1,2,3,3,4,4,5);
-var
-  num, ofs: cint;
-  flags, len, i, j: cint;
-  sample_rate, bit_rate: cint;
-  level: dts_sample_t;
-begin
-  // check blocksize here!
-
-  ofs := 0;
-  num := length;
-
-  while num > 0 do
-  begin
-    if decoder^.samplecnt = 0 then
-    begin
-      len := ptrint(decoder^.inbuf_ptr) - ptrint(@decoder^.inbuf);
-
-      if (len < HEADER_SIZE) or (len < decoder^.frame_size) then
-      begin
-        (* inbuf too small : enlarge *)
-        len := Sizeof(dts_decoder.inbuf) - len;
-        len := decoder^.read(decoder^.user, decoder^.inbuf_ptr, len);
-        if len <= 0 then
-          Exit(ofs);
-
-        Inc(decoder^.inbuf_ptr, len);
-      end;
-
-      if decoder^.frame_size = 0 then
-      begin
-        (* no header seen : find one. We need at least 7 bytes to parse it *)
-
-        len := dts_syncinfo(decoder^.state, @decoder^.inbuf[0], decoder^.flags, sample_rate, bit_rate, i{dummy});
-        if len = 0 then
-        begin
-          (* no sync found : move by one byte (inefficient, but simple!) *)
-          Move(decoder^.inbuf[1], decoder^.inbuf[0], ptrint(decoder^.inbuf_ptr) - ptrint(@decoder^.inbuf) - 1);
-          Dec(decoder^.inbuf_ptr, 1);
-        end else begin
-          decoder^.frame_size := len;
-
-          (* update codec info *)
-          decoder^.sample_rate := sample_rate;
-          decoder^.bit_rate := bit_rate;
-          {decoder^.channels := ac3_channels[decoder^.flags and $7];
-          if decoder^.flags and A52_LFE <> 0 then
-            Inc(decoder^.channels);}
-
-          {WriteLn('  frame_size  : ', decoder^.frame_size);
-          WriteLn('  sample_rate : ', sample_rate);
-          WriteLn('  bit_rate    : ', bit_rate);
-          WriteLn('  channels    : ', decoder^.channels);}
-        end;
-
-        Continue;
-      end;
-
-      (* decode the frame *)
-      flags := DTS_STEREO or DTS_ADJUST_LEVEL;//decoder^.flags;
-      level := 0;//High(Smallint)-30;
-      (* FIXME dts_frame dont care on level parameters, so I set it to zero and multiply with High(Smallint) later *)
-
-      if dts_frame(decoder^.state, @decoder^.inbuf[0], flags, level, 0) <> 0 then
-      begin
-        decoder^.inbuf_ptr := @decoder^.inbuf[0];
-        decoder^.frame_size := 0;
-        Continue;
-      end;
-
-      len := dts_blocks_num(decoder^.state);
-      for i := 0 to len - 1 do
-      begin
-        if dts_block(decoder^.state) <> 0 then
-        begin
-          decoder^.inbuf_ptr := @decoder^.inbuf[0];
-          decoder^.frame_size := 0;
-          Exit(-1);
-        end;
-
-        for j := 0 to 255 do
-        begin
-          decoder^.samples[0, i*256+j] := Round(High(Smallint)*decoder^.fsamples[j + 000]);
-          decoder^.samples[1, i*256+j] := Round(High(Smallint)*decoder^.fsamples[j + 256]);
-        end;
-      end;
-
-      (* skip decoded frame *)
-      Move(decoder^.inbuf[decoder^.frame_size], decoder^.inbuf[0], ptrint(decoder^.inbuf_ptr) - ptrint(@decoder^.inbuf) - decoder^.frame_size);
-      Dec(decoder^.inbuf_ptr, decoder^.frame_size);
-      decoder^.frame_size := 0;
-
-      decoder^.sampleofs := 0;
-      decoder^.samplecnt := len*256;
-    end;
-
-    len := num div 4;
-    if len > decoder^.samplecnt then
-      len := decoder^.samplecnt;
-
-    for i := 0 to len - 1 do
-    begin
-      pcint16(ptrint(buffer) + ofs + 0)^ := decoder^.samples[0][decoder^.sampleofs];
-      pcint16(ptrint(buffer) + ofs + 2)^ := decoder^.samples[1][decoder^.sampleofs];
-
-      Inc(decoder^.sampleofs);
-      Dec(decoder^.samplecnt);
-      ofs := ofs + 4;
-      num := num - 4;
-    end;
-  end;
-
-  Result := ofs;
-end;
-
-end.

+ 0 - 2010
packages/extra/ldap/Makefile

@@ -1,2010 +0,0 @@
-#
-# Don't edit, this file is generated by FPCMake Version 2.0.0 [2007/11/08]
-#
-default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-netbsd i386-solaris i386-qnx i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-darwin x86_64-win64 x86_64-embedded arm-linux arm-palmos arm-wince arm-gba arm-nds arm-embedded arm-symbian powerpc64-linux powerpc64-darwin powerpc64-embedded
-BSDs = freebsd netbsd openbsd darwin
-UNIXs = linux $(BSDs) solaris qnx
-LIMIT83fs = go32v2 os2 emx watcom
-OSNeedsComspecToRunBatch = go32v2 watcom
-FORCE:
-.PHONY: FORCE
-override PATH:=$(patsubst %/,%,$(subst \,/,$(PATH)))
-ifneq ($(findstring darwin,$(OSTYPE)),)
-inUnix=1 #darwin
-SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
-else
-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))))
-ifeq ($(PWD),)
-$(error You need the GNU utils package to use this Makefile)
-else
-PWD:=$(firstword $(PWD))
-SRCEXEEXT=
-endif
-else
-PWD:=$(firstword $(PWD))
-SRCEXEEXT=.exe
-endif
-ifndef inUnix
-ifeq ($(OS),Windows_NT)
-inWinNT=1
-else
-ifdef OS2_SHELL
-inOS2=1
-endif
-endif
-else
-ifneq ($(findstring cygdrive,$(PATH)),)
-inCygWin=1
-endif
-endif
-ifdef inUnix
-SRCBATCHEXT=.sh
-else
-ifdef inOS2
-SRCBATCHEXT=.cmd
-else
-SRCBATCHEXT=.bat
-endif
-endif
-ifdef COMSPEC
-ifneq ($(findstring $(OS_SOURCE),$(OSNeedsComspecToRunBatch)),)
-RUNBATCH=$(COMSPEC) /C
-endif
-endif
-ifdef inUnix
-PATHSEP=/
-else
-PATHSEP:=$(subst /,\,/)
-ifdef inCygWin
-PATHSEP=/
-endif
-endif
-ifdef PWD
-BASEDIR:=$(subst \,/,$(shell $(PWD)))
-ifdef inCygWin
-ifneq ($(findstring /cygdrive/,$(BASEDIR)),)
-BASENODIR:=$(patsubst /cygdrive%,%,$(BASEDIR))
-BASEDRIVE:=$(firstword $(subst /, ,$(BASENODIR)))
-BASEDIR:=$(subst /cygdrive/$(BASEDRIVE)/,$(BASEDRIVE):/,$(BASEDIR))
-endif
-endif
-else
-BASEDIR=.
-endif
-ifdef inOS2
-ifndef ECHO
-ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-ECHO=echo
-else
-ECHO:=$(firstword $(ECHO))
-endif
-else
-ECHO:=$(firstword $(ECHO))
-endif
-endif
-export ECHO
-endif
-override DEFAULT_FPCDIR=../../..
-ifndef FPC
-ifdef PP
-FPC=$(PP)
-endif
-endif
-ifndef FPC
-FPCPROG:=$(strip $(wildcard $(addsuffix /fpc$(SRCEXEEXT),$(SEARCHPATH))))
-ifneq ($(FPCPROG),)
-FPCPROG:=$(firstword $(FPCPROG))
-ifneq ($(CPU_TARGET),)
-FPC:=$(shell $(FPCPROG) -P$(CPU_TARGET) -PB)
-else
-FPC:=$(shell $(FPCPROG) -PB)
-endif
-ifneq ($(findstring Error,$(FPC)),)
-override FPC=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH)))))
-endif
-else
-override FPC=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH)))))
-endif
-endif
-override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
-override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT)
-FOUNDFPC:=$(strip $(wildcard $(FPC)))
-ifeq ($(FOUNDFPC),)
-FOUNDFPC=$(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH))))
-ifeq ($(FOUNDFPC),)
-$(error Compiler $(FPC) not found)
-endif
-endif
-ifndef FPC_COMPILERINFO
-FPC_COMPILERINFO:=$(shell $(FPC) -iVSPTPSOTO)
-endif
-ifndef FPC_VERSION
-FPC_VERSION:=$(word 1,$(FPC_COMPILERINFO))
-endif
-export FPC FPC_VERSION FPC_COMPILERINFO
-unexport CHECKDEPEND ALLDEPENDENCIES
-ifndef CPU_TARGET
-ifdef CPU_TARGET_DEFAULT
-CPU_TARGET=$(CPU_TARGET_DEFAULT)
-endif
-endif
-ifndef OS_TARGET
-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
-ifndef CPU_SOURCE
-CPU_SOURCE:=$(word 2,$(FPC_COMPILERINFO))
-endif
-ifndef CPU_TARGET
-CPU_TARGET:=$(word 3,$(FPC_COMPILERINFO))
-endif
-ifndef OS_SOURCE
-OS_SOURCE:=$(word 4,$(FPC_COMPILERINFO))
-endif
-ifndef OS_TARGET
-OS_TARGET:=$(word 5,$(FPC_COMPILERINFO))
-endif
-FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
-FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
-ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),)
-TARGETSUFFIX=$(OS_TARGET)
-SOURCESUFFIX=$(OS_SOURCE)
-else
-TARGETSUFFIX=$(FULL_TARGET)
-SOURCESUFFIX=$(FULL_SOURCE)
-endif
-ifneq ($(FULL_TARGET),$(FULL_SOURCE))
-CROSSCOMPILE=1
-endif
-ifeq ($(findstring makefile,$(MAKECMDGOALS)),)
-ifeq ($(findstring $(FULL_TARGET),$(MAKEFILETARGETS)),)
-$(error The Makefile doesn't support target $(FULL_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 TARGETSUFFIX SOURCESUFFIX CROSSCOMPILE
-ifdef FPCDIR
-override FPCDIR:=$(subst \,/,$(FPCDIR))
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR=wrong
-endif
-else
-override FPCDIR=wrong
-endif
-ifdef DEFAULT_FPCDIR
-ifeq ($(FPCDIR),wrong)
-override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR=wrong
-endif
-endif
-endif
-ifeq ($(FPCDIR),wrong)
-ifdef inUnix
-override FPCDIR=/usr/local/lib/fpc/$(FPC_VERSION)
-ifeq ($(wildcard $(FPCDIR)/units),)
-override FPCDIR=/usr/lib/fpc/$(FPC_VERSION)
-endif
-else
-override FPCDIR:=$(subst /$(FPC),,$(firstword $(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH))))))
-override FPCDIR:=$(FPCDIR)/..
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR:=$(FPCDIR)/..
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR:=$(BASEDIR)
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR=c:/pp
-endif
-endif
-endif
-endif
-endif
-ifndef CROSSBINDIR
-CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX))
-endif
-ifndef BINUTILSPREFIX
-ifndef CROSSBINDIR
-ifdef CROSSCOMPILE
-BINUTILSPREFIX=$(CPU_TARGET)-$(OS_TARGET)-
-endif
-endif
-endif
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(TARGETSUFFIX))
-ifeq ($(UNITSDIR),)
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-endif
-PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages $(FPCDIR)/packages/base $(FPCDIR)/packages/extra)
-override PACKAGE_NAME=ldap
-override PACKAGE_VERSION=2.0.0
-ifeq ($(FULL_TARGET),i386-linux)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),i386-go32v2)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),i386-win32)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),i386-os2)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),i386-freebsd)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),i386-beos)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),i386-netbsd)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),i386-solaris)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),i386-qnx)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),i386-netware)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),i386-openbsd)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),i386-wdosx)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),i386-darwin)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),i386-emx)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),i386-watcom)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),i386-netwlibc)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),i386-wince)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),i386-embedded)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),i386-symbian)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),m68k-linux)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),m68k-freebsd)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),m68k-netbsd)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),m68k-amiga)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),m68k-atari)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),m68k-openbsd)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),m68k-palmos)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),m68k-embedded)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),powerpc-linux)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),powerpc-netbsd)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),powerpc-amiga)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),powerpc-macos)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),powerpc-darwin)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),powerpc-morphos)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),powerpc-embedded)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),sparc-linux)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),sparc-netbsd)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),sparc-solaris)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),sparc-embedded)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),x86_64-linux)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),x86_64-freebsd)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),x86_64-darwin)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),x86_64-win64)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),x86_64-embedded)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),arm-linux)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),arm-palmos)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),arm-wince)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),arm-gba)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),arm-nds)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),arm-embedded)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),arm-symbian)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),powerpc64-linux)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),powerpc64-darwin)
-override TARGET_UNITS+=lber ldap
-endif
-ifeq ($(FULL_TARGET),powerpc64-embedded)
-override TARGET_UNITS+=lber ldap
-endif
-override INSTALL_FPCPACKAGE=y
-ifdef REQUIRE_UNITSDIR
-override UNITSDIR+=$(REQUIRE_UNITSDIR)
-endif
-ifdef REQUIRE_PACKAGESDIR
-override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
-endif
-ifdef ZIPINSTALL
-ifneq ($(findstring $(OS_TARGET),$(UNIXs)),)
-UNIXHier=1
-endif
-else
-ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),)
-UNIXHier=1
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef PREFIX
-INSTALL_PREFIX=$(PREFIX)
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef UNIXHier
-INSTALL_PREFIX=/usr/local
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BASEDIR:=/pp
-else
-INSTALL_BASEDIR:=/$(PACKAGE_NAME)
-endif
-endif
-endif
-export INSTALL_PREFIX
-ifdef INSTALL_FPCSUBDIR
-export INSTALL_FPCSUBDIR
-endif
-ifndef DIST_DESTDIR
-DIST_DESTDIR:=$(BASEDIR)
-endif
-export DIST_DESTDIR
-ifndef COMPILER_UNITTARGETDIR
-ifdef PACKAGEDIR_MAIN
-COMPILER_UNITTARGETDIR=$(PACKAGEDIR_MAIN)/units/$(TARGETSUFFIX)
-else
-COMPILER_UNITTARGETDIR=units/$(TARGETSUFFIX)
-endif
-endif
-ifndef COMPILER_TARGETDIR
-COMPILER_TARGETDIR=.
-endif
-ifndef INSTALL_BASEDIR
-ifdef UNIXHier
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
-else
-INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/$(PACKAGE_NAME)
-endif
-else
-INSTALL_BASEDIR:=$(INSTALL_PREFIX)
-endif
-endif
-ifndef INSTALL_BINDIR
-ifdef UNIXHier
-INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
-else
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
-ifdef INSTALL_FPCPACKAGE
-ifdef CROSSCOMPILE
-ifdef CROSSINSTALL
-INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(SOURCESUFFIX)
-else
-INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX)
-endif
-else
-INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX)
-endif
-endif
-endif
-endif
-ifndef INSTALL_UNITDIR
-INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(TARGETSUFFIX)
-ifdef INSTALL_FPCPACKAGE
-ifdef PACKAGE_NAME
-INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
-endif
-endif
-endif
-ifndef INSTALL_LIBDIR
-ifdef UNIXHier
-INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
-else
-INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
-endif
-endif
-ifndef INSTALL_SOURCEDIR
-ifdef UNIXHier
-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)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-endif
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-else
-ifdef INSTALL_FPCPACKAGE
-ifdef INSTALL_FPCSUBDIR
-INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
-endif
-else
-INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source
-endif
-endif
-endif
-ifndef INSTALL_DOCDIR
-ifdef UNIXHier
-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
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc/$(PACKAGE_NAME)
-else
-INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc
-endif
-endif
-endif
-ifndef INSTALL_EXAMPLEDIR
-ifdef UNIXHier
-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)
-else
-INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples
-endif
-endif
-endif
-ifndef INSTALL_DATADIR
-INSTALL_DATADIR=$(INSTALL_BASEDIR)
-endif
-ifndef INSTALL_SHAREDDIR
-INSTALL_SHAREDDIR=$(INSTALL_PREFIX)/lib
-endif
-ifdef CROSSCOMPILE
-ifndef CROSSBINDIR
-CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(SOURCESUFFIX))
-ifeq ($(CROSSBINDIR),)
-CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(TARGETSUFFIX)/bin/$(FULL_SOURCE))
-endif
-endif
-else
-CROSSBINDIR=
-endif
-BATCHEXT=.bat
-LOADEREXT=.as
-EXEEXT=.exe
-PPLEXT=.ppl
-PPUEXT=.ppu
-OEXT=.o
-ASMEXT=.s
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.so
-SHAREDLIBPREFIX=libfp
-STATICLIBPREFIX=libp
-IMPORTLIBPREFIX=libimp
-RSTEXT=.rst
-ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
-ifeq ($(OS_TARGET),go32v1)
-STATICLIBPREFIX=
-SHORTSUFFIX=v1
-endif
-ifeq ($(OS_TARGET),go32v2)
-STATICLIBPREFIX=
-SHORTSUFFIX=dos
-endif
-ifeq ($(OS_TARGET),watcom)
-STATICLIBPREFIX=
-OEXT=.obj
-ASMEXT=.asm
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=wat
-endif
-ifeq ($(OS_TARGET),linux)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=lnx
-endif
-ifeq ($(OS_TARGET),freebsd)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=fbs
-endif
-ifeq ($(OS_TARGET),netbsd)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=nbs
-endif
-ifeq ($(OS_TARGET),openbsd)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=obs
-endif
-ifeq ($(OS_TARGET),win32)
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=w32
-endif
-ifeq ($(OS_TARGET),os2)
-BATCHEXT=.cmd
-AOUTEXT=.out
-STATICLIBPREFIX=
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=os2
-ECHO=echo
-endif
-ifeq ($(OS_TARGET),emx)
-BATCHEXT=.cmd
-AOUTEXT=.out
-STATICLIBPREFIX=
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=emx
-ECHO=echo
-endif
-ifeq ($(OS_TARGET),amiga)
-EXEEXT=
-SHAREDLIBEXT=.library
-SHORTSUFFIX=amg
-endif
-ifeq ($(OS_TARGET),morphos)
-EXEEXT=
-SHAREDLIBEXT=.library
-SHORTSUFFIX=mos
-endif
-ifeq ($(OS_TARGET),atari)
-EXEEXT=.ttp
-SHORTSUFFIX=ata
-endif
-ifeq ($(OS_TARGET),beos)
-BATCHEXT=.sh
-EXEEXT=
-SHORTSUFFIX=be
-endif
-ifeq ($(OS_TARGET),solaris)
-BATCHEXT=.sh
-EXEEXT=
-SHORTSUFFIX=sun
-endif
-ifeq ($(OS_TARGET),qnx)
-BATCHEXT=.sh
-EXEEXT=
-SHORTSUFFIX=qnx
-endif
-ifeq ($(OS_TARGET),netware)
-EXEEXT=.nlm
-STATICLIBPREFIX=
-SHORTSUFFIX=nw
-endif
-ifeq ($(OS_TARGET),netwlibc)
-EXEEXT=.nlm
-STATICLIBPREFIX=
-SHORTSUFFIX=nwl
-endif
-ifeq ($(OS_TARGET),macos)
-BATCHEXT=
-EXEEXT=
-DEBUGSYMEXT=.xcoff
-SHORTSUFFIX=mac
-endif
-ifeq ($(OS_TARGET),darwin)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=dwn
-endif
-ifeq ($(OS_TARGET),gba)
-EXEEXT=.gba
-SHAREDLIBEXT=.so
-SHORTSUFFIX=gba
-endif
-ifeq ($(OS_TARGET),symbian)
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=symbian
-endif
-else
-ifeq ($(OS_TARGET),go32v1)
-PPUEXT=.pp1
-OEXT=.o1
-ASMEXT=.s1
-SMARTEXT=.sl1
-STATICLIBEXT=.a1
-SHAREDLIBEXT=.so1
-STATICLIBPREFIX=
-SHORTSUFFIX=v1
-endif
-ifeq ($(OS_TARGET),go32v2)
-STATICLIBPREFIX=
-SHORTSUFFIX=dos
-endif
-ifeq ($(OS_TARGET),watcom)
-STATICLIBPREFIX=
-SHORTSUFFIX=wat
-endif
-ifeq ($(OS_TARGET),linux)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=lnx
-endif
-ifeq ($(OS_TARGET),freebsd)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=fbs
-endif
-ifeq ($(OS_TARGET),netbsd)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=nbs
-endif
-ifeq ($(OS_TARGET),openbsd)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=obs
-endif
-ifeq ($(OS_TARGET),win32)
-PPUEXT=.ppw
-OEXT=.ow
-ASMEXT=.sw
-SMARTEXT=.slw
-STATICLIBEXT=.aw
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=w32
-endif
-ifeq ($(OS_TARGET),os2)
-BATCHEXT=.cmd
-PPUEXT=.ppo
-ASMEXT=.so2
-OEXT=.oo2
-AOUTEXT=.out
-SMARTEXT=.sl2
-STATICLIBPREFIX=
-STATICLIBEXT=.ao2
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=os2
-ECHO=echo
-endif
-ifeq ($(OS_TARGET),amiga)
-EXEEXT=
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.library
-SHORTSUFFIX=amg
-endif
-ifeq ($(OS_TARGET),atari)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=.ttp
-SHORTSUFFIX=ata
-endif
-ifeq ($(OS_TARGET),beos)
-BATCHEXT=.sh
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-SHORTSUFFIX=be
-endif
-ifeq ($(OS_TARGET),solaris)
-BATCHEXT=.sh
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-SHORTSUFFIX=sun
-endif
-ifeq ($(OS_TARGET),qnx)
-BATCHEXT=.sh
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-SHORTSUFFIX=qnx
-endif
-ifeq ($(OS_TARGET),netware)
-STATICLIBPREFIX=
-PPUEXT=.ppu
-OEXT=.o
-ASMEXT=.s
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.nlm
-EXEEXT=.nlm
-SHORTSUFFIX=nw
-endif
-ifeq ($(OS_TARGET),netwlibc)
-STATICLIBPREFIX=
-PPUEXT=.ppu
-OEXT=.o
-ASMEXT=.s
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.nlm
-EXEEXT=.nlm
-SHORTSUFFIX=nwl
-endif
-ifeq ($(OS_TARGET),macos)
-BATCHEXT=
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-DEBUGSYMEXT=.xcoff
-SHORTSUFFIX=mac
-endif
-endif
-ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),)
-FPCMADE=fpcmade.$(SHORTSUFFIX)
-ZIPSUFFIX=$(SHORTSUFFIX)
-ZIPCROSSPREFIX=
-ZIPSOURCESUFFIX=src
-ZIPEXAMPLESUFFIX=exm
-else
-FPCMADE=fpcmade.$(TARGETSUFFIX)
-ZIPSOURCESUFFIX=.source
-ZIPEXAMPLESUFFIX=.examples
-ifdef CROSSCOMPILE
-ZIPSUFFIX=.$(SOURCESUFFIX)
-ZIPCROSSPREFIX=$(TARGETSUFFIX)-
-else
-ZIPSUFFIX=.$(TARGETSUFFIX)
-ZIPCROSSPREFIX=
-endif
-endif
-ifndef ECHO
-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
-else
-ECHO:=$(firstword $(ECHO))
-endif
-endif
-export ECHO
-ifndef DATE
-DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(DATE),)
-DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(DATE),)
-DATE= __missing_command_DATE
-else
-DATE:=$(firstword $(DATE))
-endif
-else
-DATE:=$(firstword $(DATE))
-endif
-endif
-export DATE
-ifndef GINSTALL
-GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(GINSTALL),)
-GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(GINSTALL),)
-GINSTALL= __missing_command_GINSTALL
-else
-GINSTALL:=$(firstword $(GINSTALL))
-endif
-else
-GINSTALL:=$(firstword $(GINSTALL))
-endif
-endif
-export GINSTALL
-ifndef CPPROG
-CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(CPPROG),)
-CPPROG= __missing_command_CPPROG
-else
-CPPROG:=$(firstword $(CPPROG))
-endif
-endif
-export CPPROG
-ifndef RMPROG
-RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(RMPROG),)
-RMPROG= __missing_command_RMPROG
-else
-RMPROG:=$(firstword $(RMPROG))
-endif
-endif
-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 MKDIRPROG
-MKDIRPROG:=$(strip $(wildcard $(addsuffix /gmkdir$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(MKDIRPROG),)
-MKDIRPROG:=$(strip $(wildcard $(addsuffix /mkdir$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(MKDIRPROG),)
-MKDIRPROG= __missing_command_MKDIRPROG
-else
-MKDIRPROG:=$(firstword $(MKDIRPROG))
-endif
-else
-MKDIRPROG:=$(firstword $(MKDIRPROG))
-endif
-endif
-export MKDIRPROG
-ifndef ECHOREDIR
-ifndef inUnix
-ECHOREDIR=echo
-else
-ECHOREDIR=$(ECHO)
-endif
-endif
-ifndef COPY
-COPY:=$(CPPROG) -fp
-endif
-ifndef COPYTREE
-COPYTREE:=$(CPPROG) -Rfp
-endif
-ifndef MKDIRTREE
-MKDIRTREE:=$(MKDIRPROG) -p
-endif
-ifndef MOVE
-MOVE:=$(MVPROG) -f
-endif
-ifndef DEL
-DEL:=$(RMPROG) -f
-endif
-ifndef DELTREE
-DELTREE:=$(RMPROG) -rf
-endif
-ifndef INSTALL
-ifdef inUnix
-INSTALL:=$(GINSTALL) -c -m 644
-else
-INSTALL:=$(COPY)
-endif
-endif
-ifndef INSTALLEXE
-ifdef inUnix
-INSTALLEXE:=$(GINSTALL) -c -m 755
-else
-INSTALLEXE:=$(COPY)
-endif
-endif
-ifndef MKDIR
-MKDIR:=$(GINSTALL) -m 755 -d
-endif
-export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
-ifndef PPUMOVE
-PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(PPUMOVE),)
-PPUMOVE= __missing_command_PPUMOVE
-else
-PPUMOVE:=$(firstword $(PPUMOVE))
-endif
-endif
-export PPUMOVE
-ifndef FPCMAKE
-FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(FPCMAKE),)
-FPCMAKE= __missing_command_FPCMAKE
-else
-FPCMAKE:=$(firstword $(FPCMAKE))
-endif
-endif
-export FPCMAKE
-ifndef ZIPPROG
-ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ZIPPROG),)
-ZIPPROG= __missing_command_ZIPPROG
-else
-ZIPPROG:=$(firstword $(ZIPPROG))
-endif
-endif
-export ZIPPROG
-ifndef TARPROG
-TARPROG:=$(strip $(wildcard $(addsuffix /gtar$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(TARPROG),)
-TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(TARPROG),)
-TARPROG= __missing_command_TARPROG
-else
-TARPROG:=$(firstword $(TARPROG))
-endif
-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)),)
-ifeq ($(OS_TARGET),win32)
-ifeq ($(CROSSBINDIR),)
-ASNAME=asw
-LDNAME=ldw
-ARNAME=arw
-endif
-endif
-endif
-ifndef ASPROG
-ifdef CROSSBINDIR
-ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT)
-else
-ASPROG=$(ASNAME)
-endif
-endif
-ifndef LDPROG
-ifdef CROSSBINDIR
-LDPROG=$(CROSSBINDIR)/$(LDNAME)$(SRCEXEEXT)
-else
-LDPROG=$(LDNAME)
-endif
-endif
-ifndef RCPROG
-ifdef CROSSBINDIR
-RCPROG=$(CROSSBINDIR)/$(RCNAME)$(SRCEXEEXT)
-else
-RCPROG=$(RCNAME)
-endif
-endif
-ifndef ARPROG
-ifdef CROSSBINDIR
-ARPROG=$(CROSSBINDIR)/$(ARNAME)$(SRCEXEEXT)
-else
-ARPROG=$(ARNAME)
-endif
-endif
-AS=$(ASPROG)
-LD=$(LDPROG)
-RC=$(RCPROG)
-AR=$(ARPROG)
-PPAS=ppas$(SRCBATCHEXT)
-ifdef inUnix
-LDCONFIG=ldconfig
-else
-LDCONFIG=
-endif
-ifdef DATE
-DATESTR:=$(shell $(DATE) +%Y%m%d)
-else
-DATESTR=
-endif
-ifndef UPXPROG
-ifeq ($(OS_TARGET),go32v2)
-UPXPROG:=1
-endif
-ifeq ($(OS_TARGET),win32)
-UPXPROG:=1
-endif
-ifdef UPXPROG
-UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(UPXPROG),)
-UPXPROG=
-else
-UPXPROG:=$(firstword $(UPXPROG))
-endif
-else
-UPXPROG=
-endif
-endif
-export UPXPROG
-ZIPOPT=-9
-ZIPEXT=.zip
-ifeq ($(USETAR),bz2)
-TAROPT=vj
-TAREXT=.tar.bz2
-else
-TAROPT=vz
-TAREXT=.tar.gz
-endif
-override REQUIRE_PACKAGES=rtl hash
-ifeq ($(FULL_TARGET),i386-linux)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),i386-go32v2)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),i386-win32)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),i386-os2)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),i386-freebsd)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),i386-beos)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),i386-netbsd)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),i386-solaris)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),i386-qnx)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),i386-netware)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),i386-openbsd)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),i386-wdosx)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),i386-darwin)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),i386-emx)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),i386-watcom)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),i386-netwlibc)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),i386-wince)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),i386-embedded)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),i386-symbian)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),m68k-linux)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),m68k-freebsd)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),m68k-netbsd)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),m68k-amiga)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),m68k-atari)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),m68k-openbsd)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),m68k-palmos)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),m68k-embedded)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),powerpc-linux)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),powerpc-netbsd)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),powerpc-amiga)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),powerpc-macos)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),powerpc-darwin)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),powerpc-morphos)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),powerpc-embedded)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),sparc-linux)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),sparc-netbsd)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),sparc-solaris)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),sparc-embedded)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),x86_64-linux)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),x86_64-freebsd)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),x86_64-darwin)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),x86_64-win64)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),x86_64-embedded)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),arm-linux)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),arm-palmos)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),arm-wince)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),arm-gba)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),arm-nds)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),arm-embedded)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),arm-symbian)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),powerpc64-linux)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),powerpc64-darwin)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifeq ($(FULL_TARGET),powerpc64-embedded)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-endif
-ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
-ifneq ($(PACKAGEDIR_RTL),)
-ifneq ($(wildcard $(PACKAGEDIR_RTL)/units/$(TARGETSUFFIX)),)
-UNITDIR_RTL=$(PACKAGEDIR_RTL)/units/$(TARGETSUFFIX)
-else
-UNITDIR_RTL=$(PACKAGEDIR_RTL)
-endif
-ifdef CHECKDEPEND
-$(PACKAGEDIR_RTL)/$(FPCMADE):
-	$(MAKE) -C $(PACKAGEDIR_RTL) $(FPCMADE)
-override ALLDEPENDENCIES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
-endif
-else
-PACKAGEDIR_RTL=
-UNITDIR_RTL:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /rtl/Package.fpc,$(UNITSDIR)))))
-ifneq ($(UNITDIR_RTL),)
-UNITDIR_RTL:=$(firstword $(UNITDIR_RTL))
-else
-UNITDIR_RTL=
-endif
-endif
-ifdef UNITDIR_RTL
-override COMPILER_UNITDIR+=$(UNITDIR_RTL)
-endif
-endif
-ifdef REQUIRE_PACKAGES_HASH
-PACKAGEDIR_HASH:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /hash/Makefile.fpc,$(PACKAGESDIR))))))
-ifneq ($(PACKAGEDIR_HASH),)
-ifneq ($(wildcard $(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX)),)
-UNITDIR_HASH=$(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX)
-else
-UNITDIR_HASH=$(PACKAGEDIR_HASH)
-endif
-ifdef CHECKDEPEND
-$(PACKAGEDIR_HASH)/$(FPCMADE):
-	$(MAKE) -C $(PACKAGEDIR_HASH) $(FPCMADE)
-override ALLDEPENDENCIES+=$(PACKAGEDIR_HASH)/$(FPCMADE)
-endif
-else
-PACKAGEDIR_HASH=
-UNITDIR_HASH:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /hash/Package.fpc,$(UNITSDIR)))))
-ifneq ($(UNITDIR_HASH),)
-UNITDIR_HASH:=$(firstword $(UNITDIR_HASH))
-else
-UNITDIR_HASH=
-endif
-endif
-ifdef UNITDIR_HASH
-override COMPILER_UNITDIR+=$(UNITDIR_HASH)
-endif
-endif
-ifndef NOCPUDEF
-override FPCOPTDEF=$(CPU_TARGET)
-endif
-ifneq ($(OS_TARGET),$(OS_SOURCE))
-override FPCOPT+=-T$(OS_TARGET)
-endif
-ifneq ($(CPU_TARGET),$(CPU_SOURCE))
-override FPCOPT+=-P$(CPU_TARGET)
-endif
-ifeq ($(OS_SOURCE),openbsd)
-override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
-endif
-ifndef CROSSBOOTSTRAP
-ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-XP$(BINUTILSPREFIX)
-endif
-ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-Xr$(RLINKPATH)
-endif
-endif
-ifdef UNITDIR
-override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
-endif
-ifdef LIBDIR
-override FPCOPT+=$(addprefix -Fl,$(LIBDIR))
-endif
-ifdef OBJDIR
-override FPCOPT+=$(addprefix -Fo,$(OBJDIR))
-endif
-ifdef INCDIR
-override FPCOPT+=$(addprefix -Fi,$(INCDIR))
-endif
-ifdef LINKSMART
-override FPCOPT+=-XX
-endif
-ifdef CREATESMART
-override FPCOPT+=-CX
-endif
-ifdef DEBUG
-override FPCOPT+=-gl
-override FPCOPTDEF+=DEBUG
-endif
-ifdef RELEASE
-ifneq ($(findstring 2.0.,$(FPC_VERSION)),)
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-endif
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1r
-endif
-else
-FPCCPUOPT:=-O2
-endif
-override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n
-override FPCOPTDEF+=RELEASE
-endif
-ifdef STRIP
-override FPCOPT+=-Xs
-endif
-ifdef OPTIMIZE
-override FPCOPT+=-O2
-endif
-ifdef VERBOSE
-override FPCOPT+=-vwni
-endif
-ifdef COMPILER_OPTIONS
-override FPCOPT+=$(COMPILER_OPTIONS)
-endif
-ifdef COMPILER_UNITDIR
-override FPCOPT+=$(addprefix -Fu,$(COMPILER_UNITDIR))
-endif
-ifdef COMPILER_LIBRARYDIR
-override FPCOPT+=$(addprefix -Fl,$(COMPILER_LIBRARYDIR))
-endif
-ifdef COMPILER_OBJECTDIR
-override FPCOPT+=$(addprefix -Fo,$(COMPILER_OBJECTDIR))
-endif
-ifdef COMPILER_INCLUDEDIR
-override FPCOPT+=$(addprefix -Fi,$(COMPILER_INCLUDEDIR))
-endif
-ifdef CROSSBINDIR
-override FPCOPT+=-FD$(CROSSBINDIR)
-endif
-ifdef COMPILER_TARGETDIR
-override FPCOPT+=-FE$(COMPILER_TARGETDIR)
-ifeq ($(COMPILER_TARGETDIR),.)
-override TARGETDIRPREFIX=
-else
-override TARGETDIRPREFIX=$(COMPILER_TARGETDIR)/
-endif
-endif
-ifdef COMPILER_UNITTARGETDIR
-override FPCOPT+=-FU$(COMPILER_UNITTARGETDIR)
-ifeq ($(COMPILER_UNITTARGETDIR),.)
-override UNITTARGETDIRPREFIX=
-else
-override UNITTARGETDIRPREFIX=$(COMPILER_UNITTARGETDIR)/
-endif
-else
-ifdef COMPILER_TARGETDIR
-override COMPILER_UNITTARGETDIR=$(COMPILER_TARGETDIR)
-override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX)
-endif
-endif
-ifdef CREATESHARED
-override FPCOPT+=-Cg
-ifeq ($(CPU_TARGET),i386)
-override FPCOPT+=-Aas
-endif
-endif
-ifeq ($(findstring 2.0.,$(FPC_VERSION)),)
-ifeq ($(OS_TARGET),linux)
-ifeq ($(CPU_TARGET),x86_64)
-override FPCOPT+=-Cg
-endif
-endif
-endif
-ifdef LINKSHARED
-endif
-ifdef OPT
-override FPCOPT+=$(OPT)
-endif
-ifdef FPCOPTDEF
-override FPCOPT+=$(addprefix -d,$(FPCOPTDEF))
-endif
-ifdef CFGFILE
-override FPCOPT+=@$(CFGFILE)
-endif
-ifdef USEENV
-override FPCEXTCMD:=$(FPCOPT)
-override FPCOPT:=!FPCEXTCMD
-export FPCEXTCMD
-endif
-override AFULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
-override AFULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
-ifneq ($(AFULL_TARGET),$(AFULL_SOURCE))
-override ACROSSCOMPILE=1
-endif
-ifdef ACROSSCOMPILE
-override FPCOPT+=$(CROSSOPT)
-endif
-override COMPILER:=$(FPC) $(FPCOPT)
-ifeq (,$(findstring -s ,$(COMPILER)))
-EXECPPAS=
-else
-ifeq ($(FULL_SOURCE),$(FULL_TARGET))
-ifdef RUNBATCH
-EXECPPAS:=@$(RUNBATCH) $(PPAS)
-else
-EXECPPAS:=@$(PPAS)
-endif
-endif
-endif
-.PHONY: fpc_units
-ifneq ($(TARGET_UNITS),)
-override ALLTARGET+=fpc_units
-override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
-endif
-fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES)
-ifdef TARGET_RSTS
-override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
-override CLEANRSTFILES+=$(RSTFILES)
-endif
-.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared
-$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET)
-	@$(ECHOREDIR) Compiled > $(FPCMADE)
-fpc_all: $(FPCMADE)
-fpc_smart:
-	$(MAKE) all LINKSMART=1 CREATESMART=1
-fpc_debug:
-	$(MAKE) all DEBUG=1
-fpc_release:
-	$(MAKE) all RELEASE=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res
-$(COMPILER_UNITTARGETDIR):
-	$(MKDIRTREE) $(COMPILER_UNITTARGETDIR)
-$(COMPILER_TARGETDIR):
-	$(MKDIRTREE) $(COMPILER_TARGETDIR)
-%$(PPUEXT): %.pp
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(PPUEXT): %.pas
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.pp
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.pas
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.lpr
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.dpr
-	$(COMPILER) $<
-	$(EXECPPAS)
-%.res: %.rc
-	windres -i $< -o $@
-vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.inc $(COMPILER_INCLUDEDIR)
-vpath %$(OEXT) $(COMPILER_UNITTARGETDIR)
-vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
-.PHONY: fpc_shared
-override INSTALLTARGET+=fpc_shared_install
-ifndef SHARED_LIBVERSION
-SHARED_LIBVERSION=$(FPC_VERSION)
-endif
-ifndef SHARED_LIBNAME
-SHARED_LIBNAME=$(PACKAGE_NAME)
-endif
-ifndef SHARED_FULLNAME
-SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT)
-endif
-ifndef SHARED_LIBUNITS
-SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS)
-override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS))
-endif
-fpc_shared:
-ifdef HASSHAREDLIB
-	$(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1
-ifneq ($(SHARED_BUILD),n)
-	$(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR)
-endif
-else
-	@$(ECHO) Shared Libraries not supported
-endif
-fpc_shared_install:
-ifneq ($(SHARED_BUILD),n)
-ifneq ($(SHARED_LIBUNITS),)
-ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),)
-	$(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR)
-endif
-endif
-endif
-.PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
-ifdef INSTALL_UNITS
-override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS))
-endif
-ifdef INSTALL_BUILDUNIT
-override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPPUFILES))
-endif
-ifdef INSTALLPPUFILES
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
-ifneq ($(UNITTARGETDIRPREFIX),)
-override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES)))
-override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES))))
-endif
-override INSTALL_CREATEPACKAGEFPC=1
-endif
-ifdef INSTALLEXEFILES
-ifneq ($(TARGETDIRPREFIX),)
-override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(notdir $(INSTALLEXEFILES)))
-endif
-endif
-fpc_install: all $(INSTALLTARGET)
-ifdef INSTALLEXEFILES
-	$(MKDIR) $(INSTALL_BINDIR)
-ifdef UPXPROG
-	-$(UPXPROG) $(INSTALLEXEFILES)
-endif
-	$(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR)
-endif
-ifdef INSTALL_CREATEPACKAGEFPC
-ifdef FPCMAKE
-ifdef PACKAGE_VERSION
-ifneq ($(wildcard Makefile.fpc),)
-	$(FPCMAKE) -p -T$(CPU_TARGET)-$(OS_TARGET) Makefile.fpc
-	$(MKDIR) $(INSTALL_UNITDIR)
-	$(INSTALL) Package.fpc $(INSTALL_UNITDIR)
-endif
-endif
-endif
-endif
-ifdef INSTALLPPUFILES
-	$(MKDIR) $(INSTALL_UNITDIR)
-	$(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR)
-ifneq ($(INSTALLPPULINKFILES),)
-	$(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR)
-endif
-ifneq ($(wildcard $(LIB_FULLNAME)),)
-	$(MKDIR) $(INSTALL_LIBDIR)
-	$(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR)
-ifdef inUnix
-	ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)
-endif
-endif
-endif
-ifdef INSTALL_FILES
-	$(MKDIR) $(INSTALL_DATADIR)
-	$(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR)
-endif
-fpc_sourceinstall: distclean
-	$(MKDIR) $(INSTALL_SOURCEDIR)
-	$(COPYTREE) $(BASEDIR)/* $(INSTALL_SOURCEDIR)
-fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
-ifdef HASEXAMPLES
-	$(MKDIR) $(INSTALL_EXAMPLEDIR)
-endif
-ifdef EXAMPLESOURCEFILES
-	$(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
-endif
-ifdef TARGET_EXAMPLEDIRS
-	$(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
-endif
-.PHONY: fpc_distinstall
-fpc_distinstall: install exampleinstall
-.PHONY: fpc_zipinstall fpc_zipsourceinstall fpc_zipexampleinstall
-ifndef PACKDIR
-ifndef inUnix
-PACKDIR=$(BASEDIR)/../fpc-pack
-else
-PACKDIR=/tmp/fpc-pack
-endif
-endif
-ifndef ZIPNAME
-ifdef DIST_ZIPNAME
-ZIPNAME=$(DIST_ZIPNAME)
-else
-ZIPNAME=$(PACKAGE_NAME)
-endif
-endif
-ifndef FULLZIPNAME
-FULLZIPNAME=$(ZIPCROSSPREFIX)$(ZIPPREFIX)$(ZIPNAME)$(ZIPSUFFIX)
-endif
-ifndef ZIPTARGET
-ifdef DIST_ZIPTARGET
-ZIPTARGET=DIST_ZIPTARGET
-else
-ZIPTARGET=install
-endif
-endif
-ifndef USEZIP
-ifdef inUnix
-USETAR=1
-endif
-endif
-ifndef inUnix
-USEZIPWRAPPER=1
-endif
-ifdef USEZIPWRAPPER
-ZIPPATHSEP=$(PATHSEP)
-ZIPWRAPPER=$(subst /,$(PATHSEP),$(DIST_DESTDIR)/fpczip$(SRCBATCHEXT))
-else
-ZIPPATHSEP=/
-endif
-ZIPCMD_CDPACK:=cd $(subst /,$(ZIPPATHSEP),$(PACKDIR))
-ZIPCMD_CDBASE:=cd $(subst /,$(ZIPPATHSEP),$(BASEDIR))
-ifdef USETAR
-ZIPDESTFILE:=$(DIST_DESTDIR)/$(FULLZIPNAME)$(TAREXT)
-ZIPCMD_ZIP:=$(TARPROG) cf$(TAROPT) $(ZIPDESTFILE) *
-else
-ZIPDESTFILE:=$(DIST_DESTDIR)/$(FULLZIPNAME)$(ZIPEXT)
-ZIPCMD_ZIP:=$(subst /,$(ZIPPATHSEP),$(ZIPPROG)) -Dr $(ZIPOPT) $(ZIPDESTFILE) *
-endif
-fpc_zipinstall:
-	$(MAKE) $(ZIPTARGET) INSTALL_PREFIX=$(PACKDIR) ZIPINSTALL=1
-	$(MKDIR) $(DIST_DESTDIR)
-	$(DEL) $(ZIPDESTFILE)
-ifdef USEZIPWRAPPER
-ifneq ($(ECHOREDIR),echo)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDPACK))" > $(ZIPWRAPPER)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_ZIP))" >> $(ZIPWRAPPER)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDBASE))" >> $(ZIPWRAPPER)
-else
-	echo $(ZIPCMD_CDPACK) > $(ZIPWRAPPER)
-	echo $(ZIPCMD_ZIP) >> $(ZIPWRAPPER)
-	echo $(ZIPCMD_CDBASE) >> $(ZIPWRAPPER)
-endif
-ifdef inUnix
-	/bin/sh $(ZIPWRAPPER)
-else
-ifdef RUNBATCH
-	$(RUNBATCH) (ZIPWRAPPER)
-else
-	$(ZIPWRAPPER)
-endif
-endif
-	$(DEL) $(ZIPWRAPPER)
-else
-	$(ZIPCMD_CDPACK) ; $(ZIPCMD_ZIP) ; $(ZIPCMD_CDBASE)
-endif
-	$(DELTREE) $(PACKDIR)
-fpc_zipsourceinstall:
-	$(MAKE) fpc_zipinstall ZIPTARGET=sourceinstall ZIPSUFFIX=$(ZIPSOURCESUFFIX)
-fpc_zipexampleinstall:
-ifdef HASEXAMPLES
-	$(MAKE) fpc_zipinstall ZIPTARGET=exampleinstall ZIPSUFFIX=$(ZIPEXAMPLESUFFIX)
-endif
-fpc_zipdistinstall:
-	$(MAKE) fpc_zipinstall ZIPTARGET=distinstall
-.PHONY: fpc_clean fpc_cleanall fpc_distclean
-ifdef EXEFILES
-override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
-endif
-ifdef CLEAN_UNITS
-override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
-endif
-ifdef CLEANPPUFILES
-override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(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
-fpc_clean: $(CLEANTARGET)
-ifdef CLEANEXEFILES
-	-$(DEL) $(CLEANEXEFILES)
-endif
-ifdef CLEANPPUFILES
-	-$(DEL) $(CLEANPPUFILES)
-endif
-ifneq ($(CLEANPPULINKFILES),)
-	-$(DEL) $(CLEANPPULINKFILES)
-endif
-ifdef CLEANRSTFILES
-	-$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
-endif
-ifdef CLEAN_FILES
-	-$(DEL) $(CLEAN_FILES)
-endif
-ifdef LIB_NAME
-	-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
-endif
-	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-	-$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)
-fpc_cleanall: $(CLEANTARGET)
-ifdef CLEANEXEFILES
-	-$(DEL) $(CLEANEXEFILES)
-endif
-ifdef COMPILER_UNITTARGETDIR
-ifdef CLEANPPUFILES
-	-$(DEL) $(CLEANPPUFILES)
-endif
-ifneq ($(CLEANPPULINKFILES),)
-	-$(DEL) $(CLEANPPULINKFILES)
-endif
-ifdef CLEANRSTFILES
-	-$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
-endif
-endif
-	-$(DELTREE) units
-	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
-ifneq ($(PPUEXT),.ppu)
-	-$(DEL) *.o *.ppu *.a
-endif
-	-$(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
-fpc_distclean: cleanall
-.PHONY: fpc_baseinfo
-override INFORULES+=fpc_baseinfo
-fpc_baseinfo:
-	@$(ECHO)
-	@$(ECHO)  == Package info ==
-	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
-	@$(ECHO)  Package Version.. $(PACKAGE_VERSION)
-	@$(ECHO)
-	@$(ECHO)  == Configuration info ==
-	@$(ECHO)
-	@$(ECHO)  FPC.......... $(FPC)
-	@$(ECHO)  FPC Version.. $(FPC_VERSION)
-	@$(ECHO)  Source CPU... $(CPU_SOURCE)
-	@$(ECHO)  Target CPU... $(CPU_TARGET)
-	@$(ECHO)  Source OS.... $(OS_SOURCE)
-	@$(ECHO)  Target OS.... $(OS_TARGET)
-	@$(ECHO)  Full Source.. $(FULL_SOURCE)
-	@$(ECHO)  Full Target.. $(FULL_TARGET)
-	@$(ECHO)  SourceSuffix. $(SOURCESUFFIX)
-	@$(ECHO)  TargetSuffix. $(TARGETSUFFIX)
-	@$(ECHO)
-	@$(ECHO)  == Directory info ==
-	@$(ECHO)
-	@$(ECHO)  Required pkgs... $(REQUIRE_PACKAGES)
-	@$(ECHO)
-	@$(ECHO)  Basedir......... $(BASEDIR)
-	@$(ECHO)  FPCDir.......... $(FPCDIR)
-	@$(ECHO)  CrossBinDir..... $(CROSSBINDIR)
-	@$(ECHO)  UnitsDir........ $(UNITSDIR)
-	@$(ECHO)  PackagesDir..... $(PACKAGESDIR)
-	@$(ECHO)
-	@$(ECHO)  GCC library..... $(GCCLIBDIR)
-	@$(ECHO)  Other library... $(OTHERLIBDIR)
-	@$(ECHO)
-	@$(ECHO)  == Tools info ==
-	@$(ECHO)
-	@$(ECHO)  As........ $(AS)
-	@$(ECHO)  Ld........ $(LD)
-	@$(ECHO)  Ar........ $(AR)
-	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)
-	@$(ECHO)  Mv........ $(MVPROG)
-	@$(ECHO)  Cp........ $(CPPROG)
-	@$(ECHO)  Rm........ $(RMPROG)
-	@$(ECHO)  GInstall.. $(GINSTALL)
-	@$(ECHO)  Echo...... $(ECHO)
-	@$(ECHO)  Shell..... $(SHELL)
-	@$(ECHO)  Date...... $(DATE)
-	@$(ECHO)  FPCMake... $(FPCMAKE)
-	@$(ECHO)  PPUMove... $(PPUMOVE)
-	@$(ECHO)  Upx....... $(UPXPROG)
-	@$(ECHO)  Zip....... $(ZIPPROG)
-	@$(ECHO)
-	@$(ECHO)  == Object info ==
-	@$(ECHO)
-	@$(ECHO)  Target Loaders........ $(TARGET_LOADERS)
-	@$(ECHO)  Target Units.......... $(TARGET_UNITS)
-	@$(ECHO)  Target Implicit Units. $(TARGET_IMPLICITUNITS)
-	@$(ECHO)  Target Programs....... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs........... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples....... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.... $(TARGET_EXAMPLEDIRS)
-	@$(ECHO)
-	@$(ECHO)  Clean Units......... $(CLEAN_UNITS)
-	@$(ECHO)  Clean Files......... $(CLEAN_FILES)
-	@$(ECHO)
-	@$(ECHO)  Install Units....... $(INSTALL_UNITS)
-	@$(ECHO)  Install Files....... $(INSTALL_FILES)
-	@$(ECHO)
-	@$(ECHO)  == Install info ==
-	@$(ECHO)
-	@$(ECHO)  DateStr.............. $(DATESTR)
-	@$(ECHO)  ZipName.............. $(ZIPNAME)
-	@$(ECHO)  ZipPrefix............ $(ZIPPREFIX)
-	@$(ECHO)  ZipCrossPrefix....... $(ZIPCROSSPREFIX)
-	@$(ECHO)  ZipSuffix............ $(ZIPSUFFIX)
-	@$(ECHO)  FullZipName.......... $(FULLZIPNAME)
-	@$(ECHO)  Install FPC Package.. $(INSTALL_FPCPACKAGE)
-	@$(ECHO)
-	@$(ECHO)  Install base dir..... $(INSTALL_BASEDIR)
-	@$(ECHO)  Install binary dir... $(INSTALL_BINDIR)
-	@$(ECHO)  Install library dir.. $(INSTALL_LIBDIR)
-	@$(ECHO)  Install units dir.... $(INSTALL_UNITDIR)
-	@$(ECHO)  Install source dir... $(INSTALL_SOURCEDIR)
-	@$(ECHO)  Install doc dir...... $(INSTALL_DOCDIR)
-	@$(ECHO)  Install example dir.. $(INSTALL_EXAMPLEDIR)
-	@$(ECHO)  Install data dir..... $(INSTALL_DATADIR)
-	@$(ECHO)
-	@$(ECHO)  Dist destination dir. $(DIST_DESTDIR)
-	@$(ECHO)  Dist zip name........ $(DIST_ZIPNAME)
-	@$(ECHO)
-.PHONY: fpc_info
-fpc_info: $(INFORULES)
-.PHONY: fpc_makefile fpc_makefiles fpc_makefile_sub1 fpc_makefile_sub2 \
-	fpc_makefile_dirs
-fpc_makefile:
-	$(FPCMAKE) -w -T$(OS_TARGET) Makefile.fpc
-fpc_makefile_sub1:
-ifdef TARGET_DIRS
-	$(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
-endif
-ifdef TARGET_EXAMPLEDIRS
-	$(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_EXAMPLEDIRS))
-endif
-fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS))
-fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2
-fpc_makefiles: fpc_makefile fpc_makefile_dirs
-all: fpc_all
-debug: fpc_debug
-smart: fpc_smart
-release: fpc_release
-units: fpc_units
-examples:
-shared: fpc_shared
-install: fpc_install
-sourceinstall: fpc_sourceinstall
-exampleinstall: fpc_exampleinstall
-distinstall: fpc_distinstall
-zipinstall: fpc_zipinstall
-zipsourceinstall: fpc_zipsourceinstall
-zipexampleinstall: fpc_zipexampleinstall
-zipdistinstall: fpc_zipdistinstall
-clean: fpc_clean
-distclean: fpc_distclean
-cleanall: fpc_cleanall
-info: fpc_info
-makefiles: fpc_makefiles
-.PHONY: all debug smart release units examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
-ifneq ($(wildcard fpcmake.loc),)
-include fpcmake.loc
-endif
-.NOTPARALLEL:

+ 0 - 22
packages/extra/ldap/Makefile.fpc

@@ -1,22 +0,0 @@
-#
-#   Makefile.fpc for LDAP bindings
-#
-
-[package]
-name=ldap
-version=2.0.0
-
-[target]
-units=lber ldap
-
-[require]
-packages=hash
-
-[install]
-fpcpackage=y
-
-[default]
-fpcdir=../../..
-
-[rules]
-.NOTPARALLEL:

+ 0 - 99
packages/extra/ldap/lber.pas

@@ -1,99 +0,0 @@
-{
-  Translation of the LDAP lber headers for FreePascal
-  Copyright (C) 2006 by Ivo Steinmann
-}
-
-unit lber;
-
-{$mode objfpc}
-
-interface
-
-{$linklib lber}
-
-{$include lber_typesh.inc}
-{$include lberh.inc}
-
-implementation
-
-function LBER_INVALID(t: ber_tag_t): ber_tag_t;
-// #define LBER_INVALID(t)     (((t) & (ber_tag_t) = $080UL) && (((t) & (ber_tag_t) ~ = $0FF))
-begin
-  LBER_INVALID := (t and $80) and (t and $FF);
-end;
-
-function LBER_OPT_ON: Pointer;
-// #define LBER_OPT_ON     ((void *) &ber_pvt_opt_on)
-begin
-  LBER_OPT_ON := @ber_pvt_opt_on;
-end;
-
-function LBER_SBIOD_READ_NEXT(sbiod: PSockbuf_IO_Desc; buf: Pointer; len: ber_len_t): ber_slen_t;
-// #define LBER_SBIOD_READ_NEXT( sbiod, buf, len ) ( (sbiod)->sbiod_next->sbiod_io->sbi_read( (sbiod)->sbiod_next,  buf, len ) )
-begin
-  LBER_SBIOD_READ_NEXT := sbiod^.sbiod_next^.sbiod_io^.sbi_read(sbiod^.sbiod_next, buf, len);
-end;
-
-function LBER_SBIOD_WRITE_NEXT(sbiod: PSockbuf_IO_Desc; buf: Pointer; len: ber_len_t): ber_slen_t;
-// #define LBER_SBIOD_WRITE_NEXT( sbiod, buf, len ) ( (sbiod)->sbiod_next->sbiod_io->sbi_write( (sbiod)->sbiod_next, buf, len ) )
-begin
-  LBER_SBIOD_WRITE_NEXT := sbiod^.sbiod_next^.sbiod_io^.sbi_write(sbiod^.sbiod_next, buf, len);
-end;
-
-function LBER_SBIOD_CTRL_NEXT(sbiod: PSockbuf_IO_Desc; opt: cint; arg: Pointer): cint;
-// #define LBER_SBIOD_CTRL_NEXT( sbiod, opt, arg ) ( (sbiod)->sbiod_next ? ( (sbiod)->sbiod_next->sbiod_io->sbi_ctrl( (sbiod)->sbiod_next, opt, arg ) ) : 0 )
-begin
-  if Assigned(sbiod^.sbiod_next) then
-    LBER_SBIOD_CTRL_NEXT := sbiod^.sbiod_next^.sbiod_io^.sbi_ctrl(sbiod^.sbiod_next, opt, arg) else
-    LBER_SBIOD_CTRL_NEXT := 0;
-end;
-
-function ber_bvstr(const str: pcchar): PBerval;
-begin
-  ber_bvstr := ber_str2bv(str, 0, false, nil);
-end;
-
-function ber_bvstrdup(const str: pcchar): PBerval;
-begin
-  ber_bvstrdup := ber_str2bv(str, 0, true, nil);
-end;
-
-function memcmp(p1, p2: Pointer; len: cint): cint;
-var
-  I: cint;
-begin
-  for I := 0 to len -1 do
-  begin
-    if pbyte(p1)^ < pbyte(p2)^ then
-    begin
-      memcmp := -1;
-      Exit;
-    end;
-
-    if pbyte(p1)^ > pbyte(p2)^ then
-    begin
-      memcmp := 1;
-      Exit;
-    end;
-
-    inc(p1, 1);
-    inc(p2, 1);
-  end;
-
-  memcmp := 0;
-end;
-
-function ber_bvcmp(v1, v2: PBerval): cint;
-// #define ber_bvcmp(v1,v2) ((v1)->bv_len < (v2)->bv_len ? -1 : ((v1)->bv_len > (v2)->bv_len ? 1 : memcmp((v1)->bv_val, (v2)->bv_val, (v1)->bv_len) ))
-begin
-  if v1^.bv_len < v2^.bv_len then ber_bvcmp := -1 else
-  if v1^.bv_len > v2^.bv_len then ber_bvcmp :=  1 else
-    ber_bvcmp := memcmp(v1^.bv_val, v2^.bv_val, v1^.bv_len);
-end;
-
-function ber_errno: cint;
-begin
-  ber_errno := ber_errno_addr^;
-end;
-
-end.

+ 0 - 67
packages/extra/ldap/lber_typesh.inc

@@ -1,67 +0,0 @@
-(* include/lber_types.h.  Generated by configure.  *)
-(* $OpenLDAP: pkg/ldap/include/lber_types.h.in,v 1.10.2.3 2005/01/20 17:00:58 kurt Exp $ *)
-(* This work is part of OpenLDAP Software <http://www.openldap.org/>.
- *
- * Copyright 1998-2005 The OpenLDAP Foundation.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted only as authorized by the OpenLDAP
- * Public License.
- *
- * A copy of this license is available in file LICENSE in the
- * top-level directory of the distribution or, alternatively, at
- * <http://www.OpenLDAP.org/license.html>.
- *)
-
-(*
- * LBER types
- *)
-
-uses
-  ctypes;
-
-type
-  ppcchar                           = ^pcchar;
-  pppcchar                          = ^ppcchar;
-
-(* LBER Boolean, enum, integers (32 bits or larger) *)
-  LBER_INT_T                        = cint;
-
-(* LBER tags (32 bits or larger) *)
-  LBER_TAG_T                        = clong;
-
-(* LBER socket descriptor *)
-  LBER_SOCKET_T                     = cint;
-
-(* LBER lengths (32 bits or larger) *)
-  LBER_LEN_T                        = clong;
-
-(* ------------------------------------------------------------ *)
-
-(* Booleans, enumerations, and integers *)
-  pber_int_t                        = ^ber_int_t;
-  ber_int_t                         = cint;      // LBER_INT_T;
-
-(* signed and unsigned versions *)
-  pber_sint_t                       = ^ber_sint_t;
-  ber_sint_t                        = csint;     // signed LBER_INT_T
-
-  pber_uint_t                       = ^ber_uint_t;
-  ber_uint_t                        = cuint;     // unsigned LBER_INT_T
-
-(* tags *)
-  pber_tag_t                        = ^ber_tag_t;
-  ber_tag_t                         = culong;    // unsigned LBER_TAG_T
-
-(* "socket" descriptors *)
-  pber_socket_t                     = ^ber_socket_t;
-  ber_socket_t                      = cint;      // LBER_SOCKET_T
-
-(* lengths *)
-  pber_len_t                        = ^ber_len_t;
-  ber_len_t                         = culong;    // unsigned LBER_LEN_T
-
-(* signed lengths *)
-  pber_slen_t                       = ^ber_slen_t;
-  ber_slen_t                        = clong;     // signed LBER_LEN_T;

+ 0 - 427
packages/extra/ldap/lberh.inc

@@ -1,427 +0,0 @@
-(* $OpenLDAP: pkg/ldap/include/lber.h,v 1.83.2.11 2005/01/20 17:00:58 kurt Exp $ *)
-(* This work is part of OpenLDAP Software <http://www.openldap.org/>.
- *
- * Copyright 1998-2005 The OpenLDAP Foundation.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted only as authorized by the OpenLDAP
- * Public License.
- *
- * A copy of this license is available in file LICENSE in the
- * top-level directory of the distribution or, alternatively, at
- * <http://www.OpenLDAP.org/license.html>.
- *)
-(* Portions Copyright (c) 1990 Regents of the University of Michigan.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that this notice is preserved and that due credit is given
- * to the University of Michigan at Ann Arbor. The name of the University
- * may not be used to endorse or promote products derived from this
- * software without specific prior written permission. This software
- * is provided ``as is'' without express or implied warranty.
- *)
-
-(* Overview of LBER tag construction
- *
- *  Bits
- *  ______
- *  8 7 | CLASS
- *  0 0 = UNIVERSAL
- *  0 1 = APPLICATION
- *  1 0 = CONTEXT-SPECIFIC
- *  1 1 = PRIVATE
- *      _____
- *      | 6 | DATA-TYPE
- *        0 = PRIMITIVE
- *        1 = CONSTRUCTED
- *          ___________
- *          | 5 ... 1 | TAG-NUMBER
- *)
-
-const
-(* BER classes and mask *)
-  LBER_CLASS_UNIVERSAL              = ber_tag_t($00);
-  LBER_CLASS_APPLICATION            = ber_tag_t($40);
-  LBER_CLASS_CONTEXT                = ber_tag_t($80);
-  LBER_CLASS_PRIVATE                = ber_tag_t($c0);
-  LBER_CLASS_MASK                   = ber_tag_t($c0);
-
-(* BER encoding type and mask *)
-  LBER_PRIMITIVE                    = ber_tag_t($00);
-  LBER_CONSTRUCTED                  = ber_tag_t($20);
-  LBER_ENCODING_MASK                = ber_tag_t($20);
-
-  LBER_BIG_TAG_MASK                 = ber_tag_t($1f);
-  LBER_MORE_TAG_MASK                = ber_tag_t($80);
-
-(*
- * Note that LBER_ERROR and LBER_DEFAULT are values that can never appear
- * as valid BER tags, and so it is safe to use them to report errors.  In
- * fact, any tag for which the following is true is invalid:
- *)
-function LBER_INVALID(t: ber_tag_t): ber_tag_t;
-
-const
-  LBER_ERROR                        = ber_tag_t(-1);
-  LBER_DEFAULT                      = ber_tag_t(-1);
-
-(* general BER types we know about *)
-  LBER_BOOLEAN                      = ber_tag_t($01);
-  LBER_INTEGER                      = ber_tag_t($02);
-  LBER_BITSTRING                    = ber_tag_t($03);
-  LBER_OCTETSTRING                  = ber_tag_t($04);
-  LBER_NULL                         = ber_tag_t($05);
-  LBER_ENUMERATED                   = ber_tag_t($0a);
-  LBER_SEQUENCE                     = ber_tag_t($30);    (* constructed *)
-  LBER_SET                          = ber_tag_t($31);    (* constructed *)
-
-(* LBER BerElement options *)
-  LBER_USE_DER                      = $01;
-
-(* get/set options for BerElement *)
-  LBER_OPT_BER_OPTIONS              = $01;
-  LBER_OPT_BER_DEBUG                = $02;
-  LBER_OPT_BER_REMAINING_BYTES      = $03;
-  LBER_OPT_BER_TOTAL_BYTES          = $04;
-  LBER_OPT_BER_BYTES_TO_WRITE       = $05;
-  LBER_OPT_BER_MEMCTX               = $06;
-
-  LBER_OPT_DEBUG_LEVEL              = LBER_OPT_BER_DEBUG;
-  LBER_OPT_REMAINING_BYTES          = LBER_OPT_BER_REMAINING_BYTES;
-  LBER_OPT_TOTAL_BYTES              = LBER_OPT_BER_TOTAL_BYTES;
-  LBER_OPT_BYTES_TO_WRITE           = LBER_OPT_BER_BYTES_TO_WRITE;
-
-  LBER_OPT_LOG_PRINT_FN             = $8001;
-  LBER_OPT_MEMORY_FNS               = $8002;
-  LBER_OPT_ERROR_FN                 = $8003;
-  LBER_OPT_LOG_PRINT_FILE           = $8004;
-
-(* get/set Memory Debug options *)
-  LBER_OPT_MEMORY_INUSE             = $8005;  (* for memory debugging *)
-  LBER_OPT_LOG_PROC                 = $8006;  (* for external logging function *)
-
-
-type
-  BER_ERRNO_FN                      = function: pcint; cdecl;
-
-  BER_LOG_PRINT_FN                  = procedure(const buf: pcchar); cdecl;
-
-  BER_MEMALLOC_FN                   = function(size: ber_len_t): Pointer; cdecl;
-  BER_MEMCALLOC_FN                  = function(n: ber_len_t; size: ber_len_t): Pointer; cdecl;
-  BER_MEMREALLOC_FN                 = function(p: Pointer; size: ber_len_t): Pointer; cdecl;
-  BER_MEMFREE_FN                    = function(p: Pointer): Pointer; cdecl;
-
-  plber_memory_fns                  = ^lber_memory_fns;
-  lber_memory_fns                   = record
-    bmf_malloc  : BER_MEMALLOC_FN;
-    bmf_calloc  : BER_MEMCALLOC_FN;
-    bmf_realloc : BER_MEMREALLOC_FN;
-    bmf_free    : BER_MEMFREE_FN;
-  end;
-
-  PBerMemoryFunctions               = ^BerMemoryFunctions;
-  BerMemoryFunctions                = lber_memory_fns;
-
-const
-(* LBER Sockbuf_IO options *)
-  LBER_SB_OPT_GET_FD                = 1;
-  LBER_SB_OPT_SET_FD                = 2;
-  LBER_SB_OPT_HAS_IO                = 3;
-  LBER_SB_OPT_SET_NONBLOCK          = 4;
-  LBER_SB_OPT_GET_SSL               = 7;
-  LBER_SB_OPT_DATA_READY            = 8;
-  LBER_SB_OPT_SET_READAHEAD         = 9;
-  LBER_SB_OPT_DRAIN                 = 10;
-  LBER_SB_OPT_NEEDS_READ            = 11;
-  LBER_SB_OPT_NEEDS_WRITE           = 12;
-  LBER_SB_OPT_GET_MAX_INCOMING      = 13;
-  LBER_SB_OPT_SET_MAX_INCOMING      = 14;
-(* Largest option used by the library *)
-  LBER_SB_OPT_OPT_MAX               = 14;
-
-(* LBER IO operations stacking levels *)
-  LBER_SBIOD_LEVEL_PROVIDER         = 10;
-  LBER_SBIOD_LEVEL_TRANSPORT        = 20;
-  LBER_SBIOD_LEVEL_APPLICATION      = 30;
-
-(* get/set options for Sockbuf *)
-  LBER_OPT_SOCKBUF_DESC             = $1000;
-  LBER_OPT_SOCKBUF_OPTIONS          = $1001;
-  LBER_OPT_SOCKBUF_DEBUG            = $1002;
-
-  LBER_OPT_SUCCESS                  =  0;
-  LBER_OPT_ERROR                    = -1;
-
-(* on/off values *)
-const
-  LBER_OPT_OFF                      = Pointer(0);
-
-var
-  ber_pvt_opt_on: cchar; cvar; external;
-
-function LBER_OPT_ON: Pointer;
-
-(* Structure for LBER IO operarion descriptor *)
-type
-  PBerElement                       = Pointer;
-
-  PSockbuf                          = Pointer;
-
-  PSeqorset                         = Pointer;
-
-  PSockbuf_IO                       = ^Sockbuf_IO;
-
-  PSockbuf_IO_Desc                  = ^Sockbuf_IO_Desc;
-  Sockbuf_IO_Desc                   = record
-    sbiod_level     : cint;
-    sbiod_sb        : PSockbuf;
-    sbiod_io        : PSockbuf_IO;
-    sbiod_pvt       : Pointer;
-    sbiod_next      : PSockbuf_IO_Desc;
-  end;
-
-(* Structure for LBER IO operation functions *)
-  Sockbuf_IO                        = record
-    sbi_setup       : function(sbiod: PSockbuf_IO_Desc; arg: Pointer): cint; cdecl;
-    sbi_remove      : function(sbiod: PSockbuf_IO_Desc): cint; cdecl;
-    sbi_ctrl        : function(sbiod: PSockbuf_IO_Desc; opt: cint; arg: Pointer): cint; cdecl;
-    sbi_read        : function(sbiod: PSockbuf_IO_Desc; buf: Pointer; len: ber_len_t): ber_slen_t; cdecl;
-    sbi_write       : function(sbiod: PSockbuf_IO_Desc; buf: Pointer; len: ber_len_t): ber_slen_t; cdecl;
-    sbi_close       : function(sbiod: PSockbuf_IO_Desc): cint; cdecl;
-  end;
-
-(* Helper macros for LBER IO functions *)
-function LBER_SBIOD_READ_NEXT(sbiod: PSockbuf_IO_Desc; buf: Pointer; len: ber_len_t): ber_slen_t;
-
-function LBER_SBIOD_WRITE_NEXT(sbiod: PSockbuf_IO_Desc; buf: Pointer; len: ber_len_t): ber_slen_t;
-
-function LBER_SBIOD_CTRL_NEXT(sbiod: PSockbuf_IO_Desc; opt: cint; arg: Pointer): cint;
-
-
-(* structure for returning a sequence of octet strings + length *)
-type
-  PPPBerval                         = ^PPBerval;
-  PPBerval                          = ^PBerval;
-  PBerval                           = ^Berval;
-  Berval                            = record
-    bv_len  : ber_len_t;
-    bv_val  : pcchar;
-  end;
-  
-  PBerVarray                        = ^BerVarray;
-  BerVarray                         = ^PBerval;  (* To distinguish from a single bv *)
-
-
-(* this should be moved to lber-cint.h *)
-
-(*
- * in bprint.c:
- *)
-procedure ber_error_print(const data: pcchar); cdecl; external;
-
-procedure ber_bprint(const data: pcchar; len: ber_len_t); cdecl; external;
-
-procedure ber_dump(ber: PBerElement; inout : cint); cdecl; external;
-
-procedure ber_sos_dump(sos: PSeqorset); cdecl; external;
-
-
-(*
- * in decode.c:
- *)
-type
-  BERDecodeCallback = function(ber: PBerElement; data: Pointer; mode: cint): cint; cdecl;
-
-
-function ber_get_tag(ber: PBerElement): ber_tag_t; cdecl; external;
-
-function ber_skip_tag(ber: PBerElement; var len: ber_len_t): ber_tag_t; cdecl; external;
-
-function ber_peek_tag(ber: PBerElement; var len: ber_len_t): ber_tag_t; cdecl; external;
-
-function ber_get_int(ber: PBerElement; var num: ber_int_t): ber_tag_t; cdecl; external;
-
-function ber_get_enum(ber: PBerElement; var num: ber_int_t): ber_tag_t; cdecl; external;
-
-function ber_get_stringb(ber: PBerElement; buf: pcchar; var len: ber_len_t): ber_tag_t; cdecl; external;
-
-function ber_get_stringbv(ber: PBerElement; bv: PBerval; alloc: cbool): ber_tag_t; cdecl; external;
-
-function ber_get_stringa(ber: PBerElement; var buf: pcchar): ber_tag_t; cdecl; external;
-
-function ber_get_stringal(ber: PBerElement; var bv: PBerval): ber_tag_t; cdecl; external;
-
-function ber_get_bitstringa(ber: PBerElement; var buf: pcchar; var len: ber_len_t): ber_tag_t; cdecl; external;
-
-function ber_get_null(ber: PBerElement): ber_tag_t; cdecl; external;
-
-function ber_get_Boolean(ber: PBerElement; var boolval: ber_int_t): ber_tag_t; cdecl; external;
-
-function ber_first_element(ber: PBerElement; var len: ber_len_t; var last: pcchar): ber_tag_t; cdecl; external;
-
-function ber_next_element(ber: PBerElement; var len: ber_len_t; const last: pcchar): ber_tag_t; cdecl; external;
-
-function ber_scanf(ber: PBerElement;const fmt: pcchar): ber_tag_t; cdecl; varargs; external;
-
-
-(*
- * in encode.c
- *)
-type
-  BEREncodeCallback = function(ber: PBerElement; data: Pointer): cint;
-
-
-function ber_put_enum(ber: PBerElement; num: ber_int_t; tag: ber_tag_t): cint; cdecl; external;
-
-function ber_put_int(ber: PBerElement; num: ber_int_t; tag: ber_tag_t): cint; cdecl; external;
-
-function ber_put_ostring(ber: PBerElement; const str: pcchar; len: ber_len_t; tag: ber_tag_t): cint; cdecl; external;
-
-function ber_put_berval(ber: PBerElement; bv: PBerval; tag: ber_tag_t): cint; cdecl; external;
-
-function ber_put_string(ber: PBerElement; const str: pcchar; tag: ber_tag_t): cint; cdecl; external;
-
-function ber_put_bitstring(ber: PBerElement; const str: pcchar; bitlen: ber_len_t; tag: ber_tag_t): cint; cdecl; external;
-
-function ber_put_null(ber: PBerElement; tag: ber_tag_t): cint; cdecl; external;
-
-function ber_put_boolean(ber: PBerElement; boolval: ber_int_t; tag: ber_tag_t): cint; cdecl; external;
-
-function ber_start_seq(ber: PBerElement; tag: ber_tag_t): cint; cdecl; external;
-
-function ber_start_set(ber: PBerElement; tag: ber_tag_t): cint; cdecl; external;
-
-function ber_put_seq(ber: PBerElement): cint; cdecl; external;
-
-function ber_put_set(ber: PBerElement): cint; cdecl; external;
-
-function ber_printf(ber: PBerElement; const fmt: pcchar): cint; cdecl; varargs; external;
-
-
-(*
- * in io.c:
- *)
-
-function ber_read(ber: PBerElement; buf: pcchar; len: ber_len_t): ber_slen_t; cdecl; external;
-
-function ber_write(ber: PBerElement; const buf: pcchar; len: ber_len_t; nosos: cint): ber_slen_t; cdecl; external;
-
-procedure ber_free(ber: PBerElement; freebuf: cbool); cdecl; external;
-
-procedure ber_free_buf(ber: PBerElement); cdecl; external;
-
-function ber_flush(sb: PSockbuf; ber: PBerElement; freeit: cbool): cint; cdecl; external;
-
-function ber_alloc: PBerElement; cdecl; external; deprecated;
-
-function der_alloc: PBerElement; cdecl; external; deprecated;
-
-function ber_alloc_t(beroptions: cint): PBerElement; cdecl; external;
-
-function ber_dup(ber: PBerElement): PBerElement; cdecl; external;
-
-function ber_get_next(sb: PSockbuf; var len: ber_len_t; ber: PBerElement): ber_tag_t; cdecl; external;
-
-procedure ber_init2(ber: PBerElement; bv: PBerval; options: cint); cdecl; external;
-
-procedure ber_init_w_nullc(ber: PBerElement; options: cint); cdecl; external; deprecated;
-
-procedure ber_reset(ber: PBerElement; was_writing: cbool); cdecl; external;
-
-function ber_init(bv: PBerval): PBerElement; cdecl; external;
-
-function ber_flatten(ber: PBerElement; var bvPtr: PBerval): cint; cdecl; external;
-
-function ber_flatten2(ber: PBerElement; bv: PBerval; alloc: cbool): cint; cdecl; external;
-
-function ber_remaining(ber: PBerElement): cint; cdecl; external;
-
-
-(*
- * LBER ber accessor functions
- *)
-
-function ber_get_option(item: Pointer; option: cint; outvalue: Pointer): cint; cdecl; external;
-
-function ber_set_option(item: Pointer; option: cint; const invalue: Pointer): cint; cdecl; external;
-
-
-(*
- * LBER sockbuf.c
- *)
-
-function ber_sockbuf_alloc: PSockbuf; cdecl; external;
-
-procedure ber_sockbuf_free(sb: PSockbuf); cdecl; external;
-
-function ber_sockbuf_add_io(sb: PSockbuf; sbio: PSockbuf_IO; layer: cint; arg: Pointer): cint; cdecl; external;
-
-function ber_sockbuf_remove_io(sb: PSockbuf; sbio: PSockbuf_IO; layer: cint): cint; cdecl; external;
-
-function ber_sockbuf_ctrl(sb: PSockbuf; opt: cint; arg: Pointer): cint; cdecl; external;
-
-var
-  ber_sockbuf_io_tcp                : Sockbuf_IO; cvar; external;
-  ber_sockbuf_io_readahead          : Sockbuf_IO; cvar; external;
-  ber_sockbuf_io_fd                 : Sockbuf_IO; cvar; external;
-  ber_sockbuf_io_debug              : Sockbuf_IO; cvar; external;
-{$IFDEF LDAP_CONNECTIONLESS}
-  ber_sockbuf_io_udp                : Sockbuf_IO; cvar; external;
-{$ENDIF}
-
-
-(*
- * LBER memory.c
- *)
-
-function ber_memalloc(s: ber_len_t): Pointer; cdecl; external;
-
-function ber_memrealloc(p: Pointer; s: ber_len_t): Pointer; cdecl; external;
-
-function ber_memcalloc(n: ber_len_t; s: ber_len_t): Pointer; cdecl; external;
-
-procedure ber_memfree(p: Pointer); cdecl; external;
-
-procedure ber_memvfree(vector: PPointer); cdecl; external;
-
-procedure ber_bvfree(bv: PBerval); cdecl; external;
-
-procedure ber_bvecfree(bv: PPBerval); cdecl; external;
-
-function ber_bvecadd(var bvec: PPBerval; bv: PBerval): cint; cdecl; external;
-
-function ber_dupbv(dst: PBerval; src: PBerval): PBerval; cdecl; external;
-
-function ber_bvdup(src: PBerval): PBerval; cdecl; external;
-
-function ber_str2bv(const str: pcchar; len: ber_len_t; duplicate: cbool; bv: PBerval): PBerval; cdecl; external;
-
-function ber_mem2bv(const str: pcchar; len: ber_len_t; duplicate: cbool; bv: PBerval): PBerval; cdecl; external;
-
-function ber_bvstr(const str: pcchar): PBerval;
-
-function ber_bvstrdup(const str: pcchar): PBerval;
-
-function ber_strdup(const str: pcchar): pcchar; cdecl; external;
-
-procedure ber_bvarray_free(p: BerVarray); cdecl; external;
-
-function ber_bvarray_add(p: PBerVarray; bv: PBerval): cint; cdecl; external;
-
-function ber_bvcmp(v1, v2: PBerval): cint;
-
-
-(*
- * error.c
- *)
-
-function ber_errno_addr: pcint; cdecl; external;
-
-function ber_errno: cint;
-
-const
-  LBER_ERROR_NONE                   = $0;
-  LBER_ERROR_PARAM                  = $1;
-  LBER_ERROR_MEMORY                 = $2;

+ 0 - 78
packages/extra/ldap/ldap.pas

@@ -1,78 +0,0 @@
-{
-  Translation of the LDAP headers for FreePascal
-  Copyright (C) 2006 by Ivo Steinmann
-}
-
-unit ldap;
-
-{$mode objfpc}
-
-interface
-
-uses
-  ctypes,
-  lber;
-
-{$linklib ldap}
-
-{$include ldap_featuresh.inc}
-{$include ldap_schemah.inc}
-{$include ldaph.inc}
-
-implementation
-
-function LDAP_OPT_ON: Pointer;
-// #define LDAP_OPT_ON     ((void *) &ber_pvt_opt_on)
-begin
-  LDAP_OPT_ON := @ber_pvt_opt_on;
-end;
-
-function LDAP_RANGE(n, x, y: ber_int_t): Boolean;
-// #define LDAP_RANGE(n,x,y)   (((x) <= (n)) && ((n) <= (y)))
-begin
-  LDAP_RANGE := (x <= n) and (n <= y);
-end;
-
-function LDAP_ATTR_ERROR(n: ber_int_t): Boolean;
-// #define LDAP_ATTR_ERROR(n)  LDAP_RANGE((n),0x10,0x15) (* 16-21 *)
-begin
-  LDAP_ATTR_ERROR := LDAP_RANGE(n, $10, $15);
-end;
-
-function LDAP_NAME_ERROR(n: ber_int_t): Boolean;
-// #define LDAP_NAME_ERROR(n)  LDAP_RANGE((n),0x20,0x24) (* 32-34,36 *)
-begin
-  LDAP_NAME_ERROR := LDAP_RANGE(n, $20, $24);
-end;
-
-function LDAP_SECURITY_ERROR(n: ber_int_t): Boolean;
-// #define LDAP_SECURITY_ERROR(n)  LDAP_RANGE((n),0x2F,0x32) (* 47-50 *)
-begin
-  LDAP_SECURITY_ERROR := LDAP_RANGE(n, $2F, $32);
-end;
-
-function LDAP_SERVICE_ERROR(n: ber_int_t): Boolean;
-// #define LDAP_SERVICE_ERROR(n)   LDAP_RANGE((n),0x33,0x36) (* 51-54 *)
-begin
-  LDAP_SERVICE_ERROR := LDAP_RANGE(n, $33, $36);
-end;
-
-function LDAP_UPDATE_ERROR(n: ber_int_t): Boolean;
-// #define LDAP_UPDATE_ERROR(n)    LDAP_RANGE((n),0x40,0x47) (* 64-69,71 *)
-begin
-  LDAP_UPDATE_ERROR := LDAP_RANGE(n, $40, $47);
-end;
-
-function LDAP_API_ERROR(n: ber_int_t): Boolean;
-// #define LDAP_API_ERROR(n)       LDAP_RANGE((n),0x51,0x61) (* 81-97 *)}
-begin
-  LDAP_API_ERROR := n < 0;
-end;
-
-function LDAP_API_RESULT(n: ber_int_t): Boolean;
-// #define LDAP_API_RESULT(n)      (((n) == LDAP_SUCCESS) || LDAP_RANGE((n),0x51,0x61)) (* 0,81-97 *)
-begin
-  LDAP_API_RESULT := n <= 0;
-end;
-
-end.

+ 0 - 59
packages/extra/ldap/ldap_featuresh.inc

@@ -1,59 +0,0 @@
-(* include/ldap_features.h.  Generated automatically by configure.  *)
-(* $OpenLDAP: pkg/ldap/include/ldap_features.h.in,v 1.13.2.1 2003/02/09 17:02:17 kurt Exp $ *)
-(*
- * Copyright 1998-2003 The OpenLDAP Foundation, Redwood City, California, USA
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted only as authorized by the OpenLDAP
- * Public License.  A copy of this license is available at
- * http://www.OpenLDAP.org/license.html or in file LICENSE in the
- * top-level directory of the distribution.
- *)
-
-(*
- * LDAP Features
- *)
-
-(* OpenLDAP API version macros *)
-const
-  LDAP_VENDOR_VERSION               = 20228;
-  LDAP_VENDOR_VERSION_MAJOR         = 2;
-  LDAP_VENDOR_VERSION_MINOR         = 2;
-  LDAP_VENDOR_VERSION_PATCH         = 28;
-
-(*
-** WORK IN PROGRESS!
-**
-** OpenLDAP reentrancy/thread-safeness should be dynamically
-** checked using ldap_get_option().
-**
-** The -lldap implementation is not thread-safe.
-**
-** The -lldap_r implementation is:
-**      LDAP_API_FEATURE_THREAD_SAFE (basic thread safety)
-** but also be:
-**      LDAP_API_FEATURE_SESSION_THREAD_SAFE
-**      LDAP_API_FEATURE_OPERATION_THREAD_SAFE
-**
-** The preprocessor flag LDAP_API_FEATURE_X_OPENLDAP_THREAD_SAFE
-** can be used to determine if -lldap_r is available at compile
-** time.  You must define LDAP_THREAD_SAFE if and only if you
-** link with -lldap_r.
-**
-** If you fail to define LDAP_THREAD_SAFE when linking with
-** -lldap_r or define LDAP_THREAD_SAFE when linking with -lldap,
-** provided header definations and declarations may be incorrect.
-**
-*)
-
-(* is -lldap_r available or not *)
-{$DEFINE LDAP_API_FEATURE_X_OPENLDAP_THREAD_SAFE}
-
-(* LDAP v2 Kerberos Bind *)
-//{$UNDEF LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND}
-
-(* LDAP v2 Referrals *)
-//{$UNDEF LDAP_API_FEATURE_X_OPENLDAP_V2_REFERRALS}
-
-

+ 0 - 255
packages/extra/ldap/ldap_schemah.inc

@@ -1,255 +0,0 @@
-(* $OpenLDAP: pkg/ldap/include/ldap_schema.h,v 1.32.2.3 2005/01/20 17:00:59 kurt Exp $ *)
-(* This work is part of OpenLDAP Software <http://www.openldap.org/>.
- *
- * Copyright 1998-2005 The OpenLDAP Foundation.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted only as authorized by the OpenLDAP
- * Public License.
- *
- * A copy of this license is available in file LICENSE in the
- * top-level directory of the distribution or, alternatively, at
- * <http://www.OpenLDAP.org/license.html>.
- *)
-
-(* ldap-schema.h - Header for basic schema handling functions that can be
- *      used by both clients and servers.
- * these routines should be renamed ldap_x_...
- *)
-
-
-(* Codes for parsing errors *)
-
-const
-  LDAP_SCHERR_OUTOFMEM              = 1;
-  LDAP_SCHERR_UNEXPTOKEN            = 2;
-  LDAP_SCHERR_NOLEFTPAREN           = 3;
-  LDAP_SCHERR_NORIGHTPAREN          = 4;
-  LDAP_SCHERR_NODIGIT               = 5;
-  LDAP_SCHERR_BADNAME               = 6;
-  LDAP_SCHERR_BADDESC               = 7;
-  LDAP_SCHERR_BADSUP                = 8;
-  LDAP_SCHERR_DUPOPT                = 9;
-  LDAP_SCHERR_EMPTY                 = 10;
-  LDAP_SCHERR_MISSING               = 11;
-  LDAP_SCHERR_OUT_OF_ORDER          = 12;
-
-type
-  pldap_schema_extension_item       = ^ldap_schema_extension_item;
-  ldap_schema_extension_item        = record
-    lsei_name   : pcchar;
-    lsei_values : ppcchar;
-  end;
-
-  PPLDAPSchemaExtensionItem         = ^PLDAPSchemaExtensionItem;
-  PLDAPSchemaExtensionItem          = ^LDAPSchemaExtensionItem;
-  LDAPSchemaExtensionItem           = ldap_schema_extension_item;
-
-  pldap_syntax                      = ^ldap_syntax;
-  ldap_syntax                       = record
-    syn_oid         : pcchar;        (* REQUIRED *)
-    syn_names       : ppcchar;       (* OPTIONAL *)
-    syn_desc        : pcchar;        (* OPTIONAL *)
-    syn_extensions  : PPLDAPSchemaExtensionItem; (* OPTIONAL *)
-  end;
-
-  PLDAPSyntax                       = ^ldap_syntax;
-  LDAPSyntax                        = ldap_syntax;
-
-  pldap_matchingrule                = ^ldap_matchingrule;
-  ldap_matchingrule                 = record
-    mr_oid          : pcchar;        (* REQUIRED *)
-    mr_names        : ppcchar;       (* OPTIONAL *)
-    mr_desc         : pcchar;        (* OPTIONAL *)
-    mr_obsolete     : cint;         (* OPTIONAL *)
-    mr_syntax_oid   : pcchar;        (* REQUIRED *)
-    mr_extensions   : PPLDAPSchemaExtensionItem; (* OPTIONAL *)
-  end;
-
-  PLDAPMatchingRule                 = ^LDAPMatchingRule;
-  LDAPMatchingRule                  = ldap_matchingrule;
-
-  pldap_matchingruleuse             = ^ldap_matchingruleuse;
-  ldap_matchingruleuse              = record
-    mru_oid         : pcchar;        (* REQUIRED *)
-    mru_names       : ppcchar;       (* OPTIONAL *)
-    mru_desc        : pcchar;        (* OPTIONAL *)
-    mru_obsolete    : cint;         (* OPTIONAL *)
-    mru_applies_oids: ppcchar;       (* REQUIRED *)
-    mru_extensions  : PPLDAPSchemaExtensionItem; (* OPTIONAL *)
-  end;
-
-  PLDAPMatchingRuleUse              = ^LDAPMatchingRuleUse;
-  LDAPMatchingRuleUse               = ldap_matchingruleuse;
-
-  pldap_attributetype               = ^ldap_attributetype;
-  ldap_attributetype                = record
-    at_oid          : pcchar;        (* REQUIRED *)
-    at_names        : ppcchar;       (* OPTIONAL *)
-    at_desc         : pcchar;        (* OPTIONAL *)
-    at_obsolete     : cint;         (* 0=no, 1=yes *)
-    at_sup_oid      : pcchar;        (* OPTIONAL *)
-    at_equality_oid : pcchar;        (* OPTIONAL *)
-    at_ordering_oid : pcchar;        (* OPTIONAL *)
-    at_substr_oid   : pcchar;        (* OPTIONAL *)
-    at_syntax_oid   : pcchar;        (* OPTIONAL *)
-    at_syntax_len   : cint;         (* OPTIONAL *)
-    at_single_value : cint;         (* 0=no, 1=yes *)
-    at_collective   : cint;         (* 0=no, 1=yes *)
-    at_no_user_mod  : cint;         (* 0=no, 1=yes *)
-    at_usage        : cint;         (* 0=userApplications, 1=directoryOperation, 2=distributedOperation, 3=dSAOperation *)
-    at_extensions   : PPLDAPSchemaExtensionItem; (* OPTIONAL *)
-  end;
-
-  PLDAPAttributeType                = ^LDAPAttributeType;
-  LDAPAttributeType                 = ldap_attributetype;
-
-  pldap_objectclass                 = ^ldap_objectclass;
-  ldap_objectclass                  = record
-    oc_oid          : pcchar;        (* REQUIRED *)
-    oc_names        : ppcchar;       (* OPTIONAL *)
-    oc_desc         : pcchar;        (* OPTIONAL *)
-    oc_obsolete     : cint;         (* 0=no, 1=yes *)
-    oc_sup_oids     : ppcchar;       (* OPTIONAL *)
-    oc_kind         : cint;         (* 0=ABSTRACT, 1=STRUCTURAL, 2=AUXILIARY *)
-    oc_at_oids_must : ppcchar;       (* OPTIONAL *)
-    oc_at_oids_may  : ppcchar;       (* OPTIONAL *)
-    oc_extensions   : PPLDAPSchemaExtensionItem; (* OPTIONAL *)
-  end;
-
-  PLDAPObjectClass                  = ^LDAPObjectClass;
-  LDAPObjectClass                   = ldap_objectclass;
-
-  pldap_contentrule                 = ^ldap_contentrule;
-  ldap_contentrule                  = record
-    cr_oid          : pcchar;        (* REQUIRED *)
-    cr_names        : ppcchar;       (* OPTIONAL *)
-    cr_desc         : pcchar;        (* OPTIONAL *)
-    cr_sup_oids     : ppcchar;       (* OPTIONAL *)
-    cr_obsolete     : cint;         (* 0=no, 1=yes *)
-    cr_oc_oids_aux  : ppcchar;       (* OPTIONAL *)
-    cr_at_oids_must : ppcchar;       (* OPTIONAL *)
-    cr_at_oids_may  : ppcchar;       (* OPTIONAL *)
-    cr_at_oids_not  : ppcchar;       (* OPTIONAL *)
-    cr_extensions   : PPLDAPSchemaExtensionItem; (* OPTIONAL *)
-  end;
-
-  PLDAPContentRule                  = ^LDAPContentRule;
-  LDAPContentRule                   = ldap_contentrule;
-
-  pldap_nameform                    = ^ldap_nameform;
-  ldap_nameform                     = record
-    nf_oid          : pcchar;        (* REQUIRED *)
-    nf_names        : ppcchar;       (* OPTIONAL *)
-    nf_desc         : pcchar;        (* OPTIONAL *)
-    nf_obsolete     : cint;         (* 0=no, 1=yes *)
-    nf_objectclass  : pcchar;        (* REQUIRED *)
-    nf_at_oids_must : ppcchar;       (* REQUIRED *)
-    nf_at_oids_may  : ppcchar;       (* OPTIONAL *)
-    nf_extensions   : PPLDAPSchemaExtensionItem; (* OPTIONAL *)
-  end;
-
-  PLDAPNameForm                     = ^LDAPNameForm;
-  LDAPNameForm                      = ldap_nameform;
-
-  pldap_structurerule               = ^ldap_structurerule;
-  ldap_structurerule                = record
-    sr_ruleid       : cint;          (* REQUIRED *)
-    sr_names        : ppcchar;        (* OPTIONAL *)
-    sr_desc         : pcchar;         (* OPTIONAL *)
-    sr_obsolete     : cint;          (* 0=no, 1=yes *)
-    sr_nameform     : pcchar;         (* REQUIRED *)
-    sr_nsup_ruleids : cint;          (* number of sr_sup_ruleids *)
-    sr_sup_ruleids  : pcint;         (* OPTIONAL *)
-    sr_extensions   : PPLDAPSchemaExtensionItem; (* OPTIONAL *)
-  end;
-
-  PLDAPStructureRule                = ^LDAPStructureRule;
-  LDAPStructureRule                 = ldap_structurerule;
-
-
-(*
- * Misc macros
- *)
-const
-  LDAP_SCHEMA_NO                    = 0;
-  LDAP_SCHEMA_YES                   = 1;
-
-  LDAP_SCHEMA_USER_APPLICATIONS     = 0;
-  LDAP_SCHEMA_DIRECTORY_OPERATION   = 1;
-  LDAP_SCHEMA_DISTRIBUTED_OPERATION = 2;
-  LDAP_SCHEMA_DSA_OPERATION         = 3;
-
-  LDAP_SCHEMA_ABSTRACT              = 0;
-  LDAP_SCHEMA_STRUCTURAL            = 1;
-  LDAP_SCHEMA_AUXILIARY             = 2;
-
-
-(*
- * Flags that control how liberal the parsing routines are.
- *)
-const
-  LDAP_SCHEMA_ALLOW_NONE            = $00;      (* Strict parsing               *)
-  LDAP_SCHEMA_ALLOW_NO_OID          = $01;      (* Allow missing oid            *)
-  LDAP_SCHEMA_ALLOW_QUOTED          = $02;      (* Allow bogus extra quotes     *)
-  LDAP_SCHEMA_ALLOW_DESCR           = $04;      (* Allow descr instead of OID   *)
-  LDAP_SCHEMA_ALLOW_DESCR_PREFIX    = $08;      (* Allow descr as OID prefix    *)
-  LDAP_SCHEMA_ALLOW_OID_MACRO       = $10;      (* Allow OID macros in slapd    *)
-  LDAP_SCHEMA_ALLOW_OUT_OF_ORDER_FIELDS = $20;  (* Allow fields in most any order *)
-  LDAP_SCHEMA_ALLOW_ALL             = $3f;      (* Be very liberal in parsing   *)
-  LDAP_SCHEMA_SKIP                  = $80;      (* Don't malloc any result      *)
-
-
-function ldap_syntax2name(syn: PLDAPSyntax): pcchar; cdecl; external;
-function ldap_matchingrule2name(mr: PLDAPMatchingRule): pcchar; cdecl; external;
-function ldap_matchingruleuse2name(mru: PLDAPMatchingRuleUse): pcchar; cdecl; external;
-function ldap_attributetype2name(_at: PLDAPAttributeType): pcchar; cdecl; external;
-function ldap_objectclass2name(oc: PLDAPObjectClass): pcchar; cdecl; external;
-function ldap_contentrule2name(cr: PLDAPContentRule): pcchar; cdecl; external;
-function ldap_nameform2name(nf: PLDAPNameForm): pcchar; cdecl; external;
-function ldap_structurerule2name(sr: PLDAPStructureRule): pcchar; cdecl; external;
-
-procedure ldap_syntax_free(syn: PLDAPSyntax); cdecl; external;
-procedure ldap_matchingrule_free(mr: PLDAPMatchingRule); cdecl; external;
-procedure ldap_matchingruleuse_free(mru: PLDAPMatchingRuleUse); cdecl; external;
-procedure ldap_attributetype_free(_at: PLDAPAttributeType); cdecl; external;
-procedure ldap_objectclass_free(oc: PLDAPObjectClass); cdecl; external;
-procedure ldap_contentrule_free(cr: PLDAPContentRule); cdecl; external;
-procedure ldap_nameform_free(nf: PLDAPNameForm); cdecl; external;
-procedure ldap_structurerule_free(sr: PLDAPStructureRule); cdecl; external;
-
-function ldap_str2structurerule(const s: pcchar; code: pcint; const errp: ppcchar; flags: cuint): PLDAPStructureRule; cdecl; external;
-function ldap_str2nameform(const s: pcchar; code: pcint; const errp: ppcchar; flags: cuint): PLDAPNameForm; cdecl; external;
-function ldap_str2contentrule(const s: pcchar; code: pcint; const errp: ppcchar; flags: cuint): PLDAPContentRule; cdecl; external;
-function ldap_str2objectclass(const s: pcchar; code: pcint; const errp: ppcchar; flags: cuint): PLDAPObjectClass; cdecl; external;
-function ldap_str2attributetype(const s: pcchar; code: pcint; const errp: ppcchar; flags: cuint): PLDAPAttributeType; cdecl; external;
-function ldap_str2syntax(const s: pcchar; code: pcint; const errp: ppcchar; flags: cuint): PLDAPSyntax; cdecl; external;
-function ldap_str2matchingrule(const s: pcchar; code: pcint; const errp: ppcchar; flags: cuint): PLDAPMatchingRule; cdecl; external;
-function ldap_str2matchingruleuse(const s: pcchar; code: pcint; const errp: ppcchar; flags: cuint): PLDAPMatchingRuleUse; cdecl; external;
-
-function ldap_structurerule2str(sr: PLDAPStructureRule): pcchar; cdecl; external;
-function ldap_structurerule2bv(sr: PLDAPStructureRule; bv: PBerval): PBerval; cdecl; external;
-
-function ldap_nameform2str(nf: PLDAPNameForm): pcchar; cdecl; external;
-function ldap_nameform2bv(nf: PLDAPNameForm; bv: PBerval): PBerval; cdecl; external;
-
-function ldap_contentrule2str(cr: PLDAPContentRule): pcchar; cdecl; external;
-function ldap_contentrule2bv(cr: PLDAPContentRule; bv: PBerval): PBerval; cdecl; external;
-
-function ldap_objectclass2str(oc: PLDAPObjectClass): pcchar; cdecl; external;
-function ldap_objectclass2bv(oc: PLDAPObjectClass; bv: PBerval): PBerval; cdecl; external;
-
-function ldap_attributetype2str(_at: PLDAPAttributeType): pcchar; cdecl; external;
-function ldap_attributetype2bv(_at: PLDAPAttributeType; bv: PBerval): PBerval; cdecl; external;
-
-function ldap_syntax2str(syn: PLDAPSyntax): pcchar; cdecl; external;
-function ldap_syntax2bv(syn: PLDAPSyntax; bv: PBerval): PBerval; cdecl; external;
-
-function ldap_matchingrule2str(mr: PLDAPMatchingRule): pcchar; cdecl; external;
-function ldap_matchingrule2bv(mr: PLDAPMatchingRule; bv: PBerval): PBerval; cdecl; external;
-
-function ldap_matchingruleuse2str(mru: PLDAPMatchingRuleUse): pcchar; cdecl; external;
-function ldap_matchingruleuse2bv(mru: PLDAPMatchingRuleUse; bv: PBerval): PBerval; cdecl; external;
-
-function ldap_scherr2str(code: cint): pcchar; cdecl; external;

+ 0 - 1805
packages/extra/ldap/ldaph.inc

@@ -1,1805 +0,0 @@
-(* $OpenLDAP: pkg/ldap/include/ldap.h,v 1.168.2.16 2003/03/05 23:48:31 kurt Exp $ *)
-(*
- * Copyright 1998-2003 The OpenLDAP Foundation, Redwood City, California, USA
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted only as authorized by the OpenLDAP
- * Public License.  A copy of this license is available at
- * http://www.OpenLDAP.org/license.html or in file LICENSE in the
- * top-level directory of the distribution.
- *)
-(* Portions
- * Copyright (c) 1990 Regents of the University of Michigan.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that this notice is preserved and that due credit is given
- * to the University of Michigan at Ann Arbor. The name of the University
- * may not be used to endorse or promote products derived from this
- * software without specific prior written permission. This software
- * is provided ``as is'' without express or implied warranty.
- *)
-
-const
-  LDAP_VERSION1                     = 1;
-  LDAP_VERSION2                     = 2;
-  LDAP_VERSION3                     = 3;
-
-  LDAP_VERSION_MIN                  = LDAP_VERSION2;
-  LDAP_VERSION                      = LDAP_VERSION2;
-  LDAP_VERSION_MAX                  = LDAP_VERSION3;
-
-(*
- * We'll use 2000+draft revision for our API version number
- * As such, the number will be above the old RFC but below
- * whatever number does finally get assigned
- *)
-const
-  LDAP_API_VERSION                  = 3001;
-  LDAP_VENDOR_NAME                  = 'OpenLDAP';
-
-(* OpenLDAP API Features *)
-  LDAP_API_FEATURE_X_OPENLDAP       = LDAP_VENDOR_VERSION;
-
-{$IF defined(LDAP_API_FEATURE_X_OPENLDAP_REENTRANT) or (defined(LDAP_THREAD_SAFE) and defined(LDAP_API_FEATURE_X_OPENLDAP_THREAD_SAFE))}
-    (* -lldap may or may not be thread safe *)
-    (* -lldap_r, if available, is always thread safe *)
-  {$DEFINE LDAP_API_FEATURE_THREAD_SAFE}
-{$IFEND}
-{$IF defined(LDAP_THREAD_SAFE) and defined(LDAP_API_FEATURE_X_OPENLDAP_THREAD_SAFE)}
-  //{$DEFINE LDAP_API_FEATURE_SESSION_SAFE}
-  //{$DEFINE LDAP_API_OPERATION_SESSION_SAFE}
-{$IFEND}
-
-  LDAP_PORT                         = 389;     (* ldap:///     default LDAP port *)
-  LDAPS_PORT                        = 636;     (* ldaps:///    default LDAP over TLS port *)
-
-  LDAP_ROOT_DSE                     = '';
-  LDAP_NO_ATTRS                     = '1.1';
-  LDAP_ALL_USER_ATTRIBUTES          = '*';
-  LDAP_ALL_OPERATIONAL_ATTRIBUTES   = '+'; (* OpenLDAP extension *)
-
-  LDAP_MAXINT                       = 2147483647;
-
-(*
- * LDAP_OPTions defined by draft-ldapext-ldap-c-api-02
- * 0x0000 - 0x0fff reserved for api options
- * 0x1000 - 0x3fff reserved for api extended options
- * 0x4000 - 0x7fff reserved for private and experimental options
- *)
-  LDAP_OPT_API_INFO                 = $0000;
-  LDAP_OPT_DESC                     = $0001; (* deprecated *)
-  LDAP_OPT_DEREF                    = $0002;
-  LDAP_OPT_SIZELIMIT                = $0003;
-  LDAP_OPT_TIMELIMIT                = $0004;
-(* $05 - $07 not defined by current draft *)
-  LDAP_OPT_REFERRALS                = $0008;
-  LDAP_OPT_RESTART                  = $0009;
-(* $0a - $10 not defined by current draft *)
-  LDAP_OPT_PROTOCOL_VERSION         = $0011;
-  LDAP_OPT_SERVER_CONTROLS          = $0012;
-  LDAP_OPT_CLIENT_CONTROLS          = $0013;
-(* $14 not defined by current draft *)
-  LDAP_OPT_API_FEATURE_INFO         = $0015;
-
-(* $16 - $2f not defined by current draft *)
-  LDAP_OPT_HOST_NAME                = $0030;
-  LDAP_OPT_RESULT_CODE              = $0031;
-  LDAP_OPT_ERROR_NUMBER             = LDAP_OPT_RESULT_CODE;
-  LDAP_OPT_ERROR_STRING             = $0032;
-  LDAP_OPT_MATCHED_DN               = $0033;
-
-(* $34 - $0fff not defined by current draft *)
-
-(* private and experimental options *)
-(* OpenLDAP specific options *)
-  LDAP_OPT_DEBUG_LEVEL              = $5001;  (* debug level *)
-  LDAP_OPT_TIMEOUT                  = $5002;  (* default timeout *)
-  LDAP_OPT_REFHOPLIMIT              = $5003;  (* ref hop limit *)
-  LDAP_OPT_NETWORK_TIMEOUT          = $5005;  (* socket level timeout *)
-  LDAP_OPT_URI                      = $5006;
-  LDAP_OPT_REFERRAL_URLS            = $5007;  (* Referral URLs *)
-
-(* OpenLDAP TLS options *)
-  LDAP_OPT_X_TLS                    = $6000;
-  LDAP_OPT_X_TLS_CTX                = $6001;  (* SSL CTX *)
-  LDAP_OPT_X_TLS_CACERTFILE         = $6002;
-  LDAP_OPT_X_TLS_CACERTDIR          = $6003;
-  LDAP_OPT_X_TLS_CERTFILE           = $6004;
-  LDAP_OPT_X_TLS_KEYFILE            = $6005;
-  LDAP_OPT_X_TLS_REQUIRE_CERT       = $6006;
-(*   LDAP_OPT_X_TLS_PROTOCOL        = $6007; *)
-  LDAP_OPT_X_TLS_CIPHER_SUITE       = $6008;
-  LDAP_OPT_X_TLS_RANDOM_FILE        = $6009;
-  LDAP_OPT_X_TLS_SSL_CTX            = $600a;
-  LDAP_OPT_X_TLS_CRLCHECK           = $600b;
-  LDAP_OPT_X_TLS_CONNECT_CB         = $6600c;
-  LDAP_OPT_X_TLS_CONNECT_ARG        = $6600d;
-  LDAP_OPT_X_TLS_DHFILE             = $6600e;
-
-  LDAP_OPT_X_TLS_NEVER              = 0;
-  LDAP_OPT_X_TLS_HARD               = 1;
-  LDAP_OPT_X_TLS_DEMAND             = 2;
-  LDAP_OPT_X_TLS_ALLOW              = 3;
-  LDAP_OPT_X_TLS_TRY                = 4;
-
-(* OpenLDAP SASL options *)
-  LDAP_OPT_X_SASL_MECH              = $6100;
-  LDAP_OPT_X_SASL_REALM             = $6101;
-  LDAP_OPT_X_SASL_AUTHCID           = $6102;
-  LDAP_OPT_X_SASL_AUTHZID           = $6103;
-  LDAP_OPT_X_SASL_SSF               = $6104; (* read-only *)
-  LDAP_OPT_X_SASL_SSF_EXTERNAL      = $6105; (* write-only *)
-  LDAP_OPT_X_SASL_SECPROPS          = $6106; (* write-only *)
-  LDAP_OPT_X_SASL_SSF_MIN           = $6107;
-  LDAP_OPT_X_SASL_SSF_MAX           = $6108;
-  LDAP_OPT_X_SASL_MAXBUFSIZE        = $6109;
-
-(* Private API Extensions -- reserved for application use *)
-  LDAP_OPT_PRIVATE_EXTENSION_BASE   = $7000;  (* Private API inclusive *)
-
-(*
- * ldap_get_option() and ldap_set_option() return values.
- * As later versions may return other values indicating
- * failure, current applications should only compare returned
- * value against LDAP_OPT_SUCCESS.
- *)
-  LDAP_OPT_SUCCESS                  =  0;
-  LDAP_OPT_ERROR                    = -1;
-
-(* on/off values *)
-  LDAP_OPT_OFF                      = Pointer(0);
-
-function LDAP_OPT_ON: Pointer;
-
-const
-  LDAP_API_INFO_VERSION             = 1;
-
-type
-  PLDAPAPIInfo                      = ^LDAPAPIInfo;
-  LDAPAPIInfo                       = record
-    ldapai_info_version     : cint;      (* version of LDAPAPIInfo (1) *)
-    ldapai_api_version      : cint;      (* revision of API supported *)
-    ldapai_protocol_version : cint;      (* highest LDAP version supported *)
-    ldapai_extensions       : ppcchar;   (* names of API extensions *)
-    ldapai_vendor_name      : pcchar;    (* name of supplier *)
-    ldapai_vendor_version   : cint;      (* supplier-specific version * 100 *)
-  end;
-
-const
-  LDAP_FEATURE_INFO_VERSION         = 1; (* version of api feature structure *)
-
-type
-  pldap_apifeature_info             = ^ldap_apifeature_info;
-  ldap_apifeature_info              = record
-    ldapaif_info_version    : cint;      (* version of this struct (1) *)
-    ldapaif_name            : pcchar;    (* matches LDAP_API_FEATURE_... less the prefix *)
-    ldapaif_version         : cint;      (* matches the value LDAP_API_FEATURE_... *)
-  end;
-
-  PLDAPAPIFeatureInfo               = ^LDAPAPIFeatureInfo;
-  LDAPAPIFeatureInfo                = ldap_apifeature_info;
-
-  PPPLDAPControl                    = ^PPLDAPControl;
-  PPLDAPControl                     = ^PLDAPControl;
-  PLDAPControl                      = ^LDAPControl;
-  LDAPControl                       = record
-    ldctl_oid               : pcchar;
-    ldctl_value             : berval;
-    ldctl_iscritical        : cchar;
-  end;
-
-const
-(* LDAP Controls *)
-(*  standard track controls *)
-  LDAP_CONTROL_MANAGEDSAIT          = '2.16.840.1.113730.3.4.2'; (* RFC 3296 *)
-  LDAP_CONTROL_SUBENTRIES           = '1.3.6.1.4.1.4203.1.10.1'; (* RFC 3672 *)
-  LDAP_CONTROL_PAGEDRESULTS         = '1.2.840.113556.1.4.319';  (* RFC 2696 *)
-
-  LDAP_CONTROL_VALUESRETURNFILTER   = '1.2.826.0.1.3344810.2.3'; (* RFC 3876 *)
-  LDAP_CONTROL_X_VALUESRETURNFILTER = '1.2.826.0.1.334810.2.3';  (* bad OID *)
-
-  LDAP_CONTROL_ASSERT               = '1.3.6.1.1.12';
-  LDAP_CONTROL_PRE_READ             = '1.3.6.1.1.13.1';
-  LDAP_CONTROL_POST_READ            = '1.3.6.1.1.13.2';
-
-(*  standard track - not implemented in slapd(8) *)
-  LDAP_CONTROL_SORTREQUEST          = '1.2.840.113556.1.4.473'; (* RFC 2891 *)
-  LDAP_CONTROL_SORTRESPONSE         = '1.2.840.113556.1.4.474'; (* RFC 2891 *)
-
-(* but not yet formalized controls *)
-  LDAP_CONTROL_PROXY_AUTHZ          = '2.16.840.1.113730.3.4.18';
-
-(* various works in progress *)
-  LDAP_CONTROL_NOOP                 = '1.3.6.1.4.1.4203.666.5.2';
-
-(* LDAP VLV *)(* not implemented in slapd(8) *)
-  LDAP_CONTROL_VLVREQUEST           = '2.16.840.1.113730.3.4.9';
-  LDAP_CONTROL_VLVRESPONSE          = '2.16.840.1.113730.3.4.10';
-
-(* LDAP Sync -- draft-zeilenga-ldup-sync *)(* submitted for publication *)
-  LDAP_SYNC_OID                     = '1.3.6.1.4.1.4203.1.9.1';
-  LDAP_CONTROL_SYNC                 = LDAP_SYNC_OID + '.1';
-  LDAP_CONTROL_SYNC_STATE           = LDAP_SYNC_OID + '.2';
-  LDAP_CONTROL_SYNC_DONE            = LDAP_SYNC_OID + '.3';
-  LDAP_SYNC_INFO                    = LDAP_SYNC_OID + '.4';
-
-  LDAP_SYNC_NONE                    = $00;
-  LDAP_SYNC_REFRESH_ONLY            = $01;
-  LDAP_SYNC_RESERVED                = $02;
-  LDAP_SYNC_REFRESH_AND_PERSIST     = $03;
-
-  LDAP_SYNC_REFRESH_PRESENTS        = 0;
-  LDAP_SYNC_REFRESH_DELETES         = 1;
-
-  LDAP_TAG_SYNC_NEW_COOKIE          = ber_tag_t($80);
-  LDAP_TAG_SYNC_REFRESH_DELETE      = ber_tag_t($a1);
-  LDAP_TAG_SYNC_REFRESH_PRESENT     = ber_tag_t($a2);
-  LDAP_TAG_SYNC_ID_SET              = ber_tag_t($a3);
-
-  LDAP_TAG_SYNC_COOKIE              = ber_tag_t($04);
-  LDAP_TAG_REFRESHDELETES           = ber_tag_t($01);
-  LDAP_TAG_REFRESHDONE              = ber_tag_t($01);
-  LDAP_TAG_RELOAD_HINT              = ber_tag_t($01);
-
-  LDAP_SYNC_PRESENT                 = 0;
-  LDAP_SYNC_ADD                     = 1;
-  LDAP_SYNC_MODIFY                  = 2;
-  LDAP_SYNC_DELETE                  = 3;
-
-(* MS ActiveDirectory controls (for compatibility) *)
-  LDAP_CONTROL_X_DOMAIN_SCOPE       = '1.2.840.113556.1.4.1339';
-  LDAP_CONTROL_X_PERMISSIVE_MODIFY  = '1.2.840.113556.1.4.1413';
-
-(* LDAP Unsolicited Notifications *)
-  LDAP_NOTICE_OF_DISCONNECTION      = '1.3.6.1.4.1.1466.20036'; (* RFC 2251 *)
-  LDAP_NOTICE_DISCONNECT            = LDAP_NOTICE_OF_DISCONNECTION;
-
-(* LDAP Extended Operations *)
-  LDAP_EXOP_START_TLS               = '1.3.6.1.4.1.1466.20037';    (* RFC 2830 *)
-
-  LDAP_EXOP_MODIFY_PASSWD           = '1.3.6.1.4.1.4203.1.11.1';   (* RFC 3062 *)
-  LDAP_TAG_EXOP_MODIFY_PASSWD_ID    = ber_tag_t($80);
-  LDAP_TAG_EXOP_MODIFY_PASSWD_OLD   = ber_tag_t($81);
-  LDAP_TAG_EXOP_MODIFY_PASSWD_NEW   = ber_tag_t($82);
-  LDAP_TAG_EXOP_MODIFY_PASSWD_GEN   = ber_tag_t($80);
-
-  LDAP_EXOP_X_WHO_AM_I              = '1.3.6.1.4.1.4203.1.11.3';
-  LDAP_EXOP_X_CANCEL                = '1.3.6.1.4.1.4203.666.6.3';
-
-(* LDAP Features *)
-  LDAP_FEATURE_ALL_OP_ATTRS         = '1.3.6.1.4.1.4203.1.5.1';    (* RFC 3673 *)
-  LDAP_FEATURE_OBJECTCLASS_ATTRS    = '1.3.6.1.4.1.4203.1.5.2'; (*  @objectClass - new number to be assigned *)
-  LDAP_FEATURE_ABSOLUTE_FILTERS     = '1.3.6.1.4.1.4203.1.5.3';  (* (&) (|) *)
-  LDAP_FEATURE_LANGUAGE_TAG_OPTIONS = '1.3.6.1.4.1.4203.1.5.4';
-  LDAP_FEATURE_LANGUAGE_RANGE_OPTIONS = '1.3.6.1.4.1.4203.1.5.5';
-  LDAP_FEATURE_MODIFY_INCREMENT     = '1.3.6.1.1.14';
-
-(*
- * specific LDAP instantiations of BER types we know about
- *)
-
-(* Overview of LBER tag construction
- *
- *  Bits
- *  ______
- *  8 7 | CLASS
- *  0 0 = UNIVERSAL
- *  0 1 = APPLICATION
- *  1 0 = CONTEXT-SPECIFIC
- *  1 1 = PRIVATE
- *      _____
- *      | 6 | DATA-TYPE
- *        0 = PRIMITIVE
- *        1 = CONSTRUCTED
- *          ___________
- *          | 5 ... 1 | TAG-NUMBER
- *)
-
-(* general stuff *)
-  LDAP_TAG_MESSAGE                  = ber_tag_t($30); (* constructed + 16 *)
-  LDAP_TAG_MSGID                    = ber_tag_t($02); (* integer *)
-
-  LDAP_TAG_LDAPDN                   = ber_tag_t($04); (* octet string *)
-  LDAP_TAG_LDAPCRED                 = ber_tag_t($04); (* octet string *)
-
-  LDAP_TAG_CONTROLS                 = ber_tag_t($a0); (* context specific + constructed + 0 *)
-  LDAP_TAG_REFERRAL                 = ber_tag_t($a3); (* context specific + constructed + 3 *)
-
-  LDAP_TAG_NEWSUPERIOR              = ber_tag_t($80); (* context-specific + primitive + 0 *)
-
-  LDAP_TAG_EXOP_REQ_OID             = ber_tag_t($80); (* context specific + primitive *)
-  LDAP_TAG_EXOP_REQ_VALUE           = ber_tag_t($81); (* context specific + primitive *)
-  LDAP_TAG_EXOP_RES_OID             = ber_tag_t($8a); (* context specific + primitive *)
-  LDAP_TAG_EXOP_RES_VALUE           = ber_tag_t($8b); (* context specific + primitive *)
-
-  LDAP_TAG_IM_RES_OID               = ber_tag_t($80); (* context specific + primitive *)
-  LDAP_TAG_IM_RES_VALUE             = ber_tag_t($81); (* context specific + primitive *)
-
-  LDAP_TAG_SASL_RES_CREDS           = ber_tag_t($87); (* context specific + primitive *)
-
-
-(* possible operations a client can invoke *)
-  LDAP_REQ_BIND                     = ber_tag_t($60); (* application + constructed *)
-  LDAP_REQ_UNBIND                   = ber_tag_t($42); (* application + primitive   *)
-  LDAP_REQ_SEARCH                   = ber_tag_t($63); (* application + constructed *)
-  LDAP_REQ_MODIFY                   = ber_tag_t($66); (* application + constructed *)
-  LDAP_REQ_ADD                      = ber_tag_t($68); (* application + constructed *)
-  LDAP_REQ_DELETE                   = ber_tag_t($4a); (* application + primitive   *)
-  LDAP_REQ_MODDN                    = ber_tag_t($6c); (* application + constructed *)
-  LDAP_REQ_MODRDN                   = LDAP_REQ_MODDN;
-  LDAP_REQ_RENAME                   = LDAP_REQ_MODDN;
-  LDAP_REQ_COMPARE                  = ber_tag_t($6e); (* application + constructed *)
-  LDAP_REQ_ABANDON                  = ber_tag_t($50); (* application + primitive   *)
-  LDAP_REQ_EXTENDED                 = ber_tag_t($77); (* application + constructed *)
-
-(* possible result types a server can return *)
-  LDAP_RES_BIND                     = ber_tag_t($61); (* application + constructed *)
-  LDAP_RES_SEARCH_ENTRY             = ber_tag_t($64); (* application + constructed *)
-  LDAP_RES_SEARCH_REFERENCE         = ber_tag_t($73); (* V3: application + constructed *)
-  LDAP_RES_SEARCH_RESULT            = ber_tag_t($65); (* application + constructed *)
-  LDAP_RES_MODIFY                   = ber_tag_t($67); (* application + constructed *)
-  LDAP_RES_ADD                      = ber_tag_t($69); (* application + constructed *)
-  LDAP_RES_DELETE                   = ber_tag_t($6b); (* application + constructed *)
-  LDAP_RES_MODDN                    = ber_tag_t($6d); (* application + constructed *)
-  LDAP_RES_MODRDN                   = LDAP_RES_MODDN; (* application + constructed *)
-  LDAP_RES_RENAME                   = LDAP_RES_MODDN; (* application + constructed *)
-  LDAP_RES_COMPARE                  = ber_tag_t($6f); (* application + constructed *)
-  LDAP_RES_EXTENDED                 = ber_tag_t($78); (* V3: application + constructed *)
-  LDAP_RES_INTERMEDIATE             = ber_tag_t($79); (* V3+: application + constructed *)
-
-  LDAP_RES_ANY                      = -1;
-  LDAP_RES_UNSOLICITED              =  0;
-
-
-(* sasl methods *)
-  LDAP_SASL_SIMPLE                  = pcchar(0);
-  LDAP_SASL_NULL                    = '';
-
-
-(* authentication methods available *)
-  LDAP_AUTH_NONE                    = ber_tag_t($00); (* no authentication          *)
-  LDAP_AUTH_SIMPLE                  = ber_tag_t($80); (* context specific + primitive *)
-  LDAP_AUTH_SASL                    = ber_tag_t($a3); (* context specific + constructed *)
-  LDAP_AUTH_KRBV4                   = ber_tag_t($ff); (* means do both of the following *)
-  LDAP_AUTH_KRBV41                  = ber_tag_t($81); (* context specific + primitive *)
-  LDAP_AUTH_KRBV42                  = ber_tag_t($82); (* context specific + primitive *)
-
-
-(* filter types *)
-  LDAP_FILTER_AND                   = ber_tag_t($a0); (* context specific + constructed *)
-  LDAP_FILTER_OR                    = ber_tag_t($a1); (* context specific + constructed *)
-  LDAP_FILTER_NOT                   = ber_tag_t($a2); (* context specific + constructed *)
-  LDAP_FILTER_EQUALITY              = ber_tag_t($a3); (* context specific + constructed *)
-  LDAP_FILTER_SUBSTRINGS            = ber_tag_t($a4); (* context specific + constructed *)
-  LDAP_FILTER_GE                    = ber_tag_t($a5); (* context specific + constructed *)
-  LDAP_FILTER_LE                    = ber_tag_t($a6); (* context specific + constructed *)
-  LDAP_FILTER_PRESENT               = ber_tag_t($87); (* context specific + primitive   *)
-  LDAP_FILTER_APPROX                = ber_tag_t($a8); (* context specific + constructed *)
-  LDAP_FILTER_EXT                   = ber_tag_t($a9); (* context specific + constructed *)
-
-(* extended filter component types *)
-  LDAP_FILTER_EXT_OID               = ber_tag_t($81); (* context specific *)
-  LDAP_FILTER_EXT_TYPE              = ber_tag_t($82); (* context specific *)
-  LDAP_FILTER_EXT_VALUE             = ber_tag_t($83); (* context specific *)
-  LDAP_FILTER_EXT_DNATTRS           = ber_tag_t($84); (* context specific *)
-
-(* substring filter component types *)
-  LDAP_SUBSTRING_INITIAL            = ber_tag_t($80); (* context specific *)
-  LDAP_SUBSTRING_ANY                = ber_tag_t($81); (* context specific *)
-  LDAP_SUBSTRING_FINAL              = ber_tag_t($82); (* context specific *)
-
-(* search scopes *)
-  LDAP_SCOPE_DEFAULT                = ber_int_t(-1);     (* OpenLDAP extension *)
-  LDAP_SCOPE_BASE                   = ber_int_t($0000);
-  LDAP_SCOPE_BASEOBJECT             = LDAP_SCOPE_BASE;
-  LDAP_SCOPE_ONELEVEL               = ber_int_t($0001);
-  LDAP_SCOPE_ONE                    = LDAP_SCOPE_ONELEVEL;
-  LDAP_SCOPE_SUBTREE                = ber_int_t($0002);
-  LDAP_SCOPE_SUB                    = LDAP_SCOPE_SUBTREE;
-
-
-(*
- * possible error codes we can return
- *)
-
-function LDAP_RANGE(n, x, y: ber_int_t): Boolean;
-
-const
-  LDAP_SUCCESS                      = $00;
-  LDAP_OPERATIONS_ERROR             = $01;
-  LDAP_PROTOCOL_ERROR               = $02;
-  LDAP_TIMELIMIT_EXCEEDED           = $03;
-  LDAP_SIZELIMIT_EXCEEDED           = $04;
-  LDAP_COMPARE_FALSE                = $05;
-  LDAP_COMPARE_TRUE                 = $06;
-  LDAP_AUTH_METHOD_NOT_SUPPORTED    = $07;
-  LDAP_STRONG_AUTH_NOT_SUPPORTED    = LDAP_AUTH_METHOD_NOT_SUPPORTED;
-  LDAP_STRONG_AUTH_REQUIRED         = $08;
-  LDAP_PARTIAL_RESULTS              = $09;   (* LDAPv2+ (not LDAPv3) *)
-
-  LDAP_REFERRAL                     = $0a; (* LDAPv3 *)
-  LDAP_ADMINLIMIT_EXCEEDED          = $0b; (* LDAPv3 *)
-  LDAP_UNAVAILABLE_CRITICAL_EXTENSION = $0c; (* LDAPv3 *)
-  LDAP_CONFIDENTIALITY_REQUIRED     = $0d; (* LDAPv3 *)
-  LDAP_SASL_BIND_IN_PROGRESS        = $0e; (* LDAPv3 *)
-
-function LDAP_ATTR_ERROR(n: ber_int_t): Boolean;
-
-const
-  LDAP_NO_SUCH_ATTRIBUTE            = $10;
-  LDAP_UNDEFINED_TYPE               = $11;
-  LDAP_INAPPROPRIATE_MATCHING       = $12;
-  LDAP_CONSTRAINT_VIOLATION         = $13;
-  LDAP_TYPE_OR_VALUE_EXISTS         = $14;
-  LDAP_INVALID_SYNTAX               = $15;
-
-function LDAP_NAME_ERROR(n: ber_int_t): Boolean;
-
-const
-  LDAP_NO_SUCH_OBJECT               = $20;
-  LDAP_ALIAS_PROBLEM                = $21;
-  LDAP_INVALID_DN_SYNTAX            = $22;
-  LDAP_IS_LEAF                      = $23; (* not LDAPv3 *)
-  LDAP_ALIAS_DEREF_PROBLEM          = $24;
-
-function LDAP_SECURITY_ERROR(n: ber_int_t): Boolean;
-
-const
-  LDAP_PROXY_AUTHZ_FAILURE          = $2F; (* LDAPv3 proxy authorization *)
-  LDAP_INAPPROPRIATE_AUTH           = $30;
-  LDAP_INVALID_CREDENTIALS          = $31;
-  LDAP_INSUFFICIENT_ACCESS          = $32;
-
-function LDAP_SERVICE_ERROR(n: ber_int_t): Boolean;
-
-const
-  LDAP_BUSY                         = $33;
-  LDAP_UNAVAILABLE                  = $34;
-  LDAP_UNWILLING_TO_PERFORM         = $35;
-  LDAP_LOOP_DETECT                  = $36;
-
-function LDAP_UPDATE_ERROR(n: ber_int_t): Boolean;
-
-const
-  LDAP_NAMING_VIOLATION             = $40;
-  LDAP_OBJECT_CLASS_VIOLATION       = $41;
-  LDAP_NOT_ALLOWED_ON_NONLEAF       = $42;
-  LDAP_NOT_ALLOWED_ON_RDN           = $43;
-  LDAP_ALREADY_EXISTS               = $44;
-  LDAP_NO_OBJECT_CLASS_MODS         = $45;
-  LDAP_RESULTS_TOO_LARGE            = $46; (* CLDAP *)
-  LDAP_AFFECTS_MULTIPLE_DSAS        = $47; (* LDAPv3 *)
-
-  LDAP_OTHER                        = $50;
-
-(* for the LDAP Sync operation *)
-  LDAP_SYNC_REFRESH_REQUIRED        = $4100;
-
-(* for the LDAP No-Op control *)
-  LDAP_NO_OPERATION                 = $410e;
-
-(* for the Assertion control *)
-  LDAP_ASSERTION_FAILED             = $410f;
-
-(* for the Cancel operation *)
-  LDAP_CANCELLED                    = $4110;
-  LDAP_NO_SUCH_OPERATION            = $4111;
-  LDAP_TOO_LATE                     = $4112;
-  LDAP_CANNOT_CANCEL                = $4113;
-
-(* API Error Codes
- *
- * Based on draft-ietf-ldap-c-api-xx
- * but with new negative code values
- *)
-
-function LDAP_API_ERROR(n: ber_int_t): Boolean;
-function LDAP_API_RESULT(n: ber_int_t): Boolean;
-
-const
-  LDAP_SERVER_DOWN                  = -1;
-  LDAP_LOCAL_ERROR                  = -2;
-  LDAP_ENCODING_ERROR               = -3;
-  LDAP_DECODING_ERROR               = -4;
-  LDAP_TIMEOUT                      = -5;
-  LDAP_AUTH_UNKNOWN                 = -6;
-  LDAP_FILTER_ERROR                 = -7;
-  LDAP_USER_CANCELLED               = -8;
-  LDAP_PARAM_ERROR                  = -9;
-  LDAP_NO_MEMORY                    = -10;
-  LDAP_CONNECT_ERROR                = -11;
-  LDAP_NOT_SUPPORTED                = -12;
-  LDAP_CONTROL_NOT_FOUND            = -13;
-  LDAP_NO_RESULTS_RETURNED          = -14;
-  LDAP_MORE_RESULTS_TO_RETURN       = -15;
-  LDAP_CLIENT_LOOP                  = -16;
-  LDAP_REFERRAL_LIMIT_EXCEEDED      = -17;
-
-
-(*
- * This structure represents both ldap messages and ldap responses.
- * These are really the same, except in the case of search responses,
- * where a response has multiple messages.
- *)
-
-type
-//typedef struct ldapmsg LDAPMessage;
-  pldapmsg                          = Pointer;
-
-  PPLDAPMessage                     = ^PLDAPMessage;
-  PLDAPMessage                      = pldapmsg;
-
-
-(* for modifications *)
-const
-  LDAP_MOD_OP                       = $0007;
-  LDAP_MOD_ADD                      = $0000;
-  LDAP_MOD_DELETE                   = $0001;
-  LDAP_MOD_REPLACE                  = $0002;
-  LDAP_MOD_INCREMENT                = $0003; (* OpenLDAP extension *)
-  LDAP_MOD_BVALUES                  = $0080;
-
-type
-  PPPLDAPMod                        = ^PPLDAPMod;
-  PPLDAPMod                         = ^PLDAPMod;
-  PLDAPMod                          = ^LDAPMod;
-  LDAPMod                           = record
-    mod_op      : cint;
-
-(* IMPORTANT: do not use code 0x1000 (or above),
- * it is used internally by the backends!
- * (see ldap/servers/slapd/slap.h)
- *)
-
-    mod_type    : pcchar;
-
-    case cint of
-      0: (mod_vals    : record
-           case cint of
-             0: (modv_strvals  : ppcchar);
-             1: (modv_bvals    : PPBerval);
-         end);
-      1: (case cint of
-           0: (mod_values      : ppcchar);
-           1: (mod_bvalues     : PPBerval));
-  end;
-
-
-(*
- * structure representing an ldap session which can
- * encompass connections to multiple servers (in the
- * face of referrals).
- *)
-  PLDAP                             = Pointer;
-
-const
-  LDAP_DEREF_NEVER                  = $00;
-  LDAP_DEREF_SEARCHING              = $01;
-  LDAP_DEREF_FINDING                = $02;
-  LDAP_DEREF_ALWAYS                 = $03;
-
-  LDAP_NO_LIMIT                     = 0;
-
-(* how many messages to retrieve results for *)
-  LDAP_MSG_ONE                      = $00;
-  LDAP_MSG_ALL                      = $01;
-  LDAP_MSG_RECEIVED                 = $02;
-
-(*
- * types for ldap URL handling
- *)
-
-type
-  pldap_url_desc                    = ^ldap_url_desc;
-  ldap_url_desc                     = record
-    lud_next        : pldap_url_desc;
-    lud_scheme      : pcchar;
-    lud_host        : pcchar;
-    lud_port        : cint;
-    lud_dn          : pcchar;
-    lud_attrs       : ppcchar;
-    lud_scope       : cint;
-    lud_filter      : pcchar;
-    lud_exts        : pcchar;
-    lud_crit_exts   : cint;
-  end;
-
-  PLDAPURLDesc                      = ^LDAPURLDesc;
-  LDAPURLDesc                       = ldap_url_desc;
-
-const
-  LDAP_URL_SUCCESS                  = $00;    (* Success *)
-  LDAP_URL_ERR_MEM                  = $01;    (* can't allocate memory space *)
-  LDAP_URL_ERR_PARAM                = $02;    (* parameter is bad *)
-
-  LDAP_URL_ERR_BADSCHEME            = $03;    (* URL doesn't begin with "ldap[si]://" *)
-  LDAP_URL_ERR_BADENCLOSURE         = $04;    (* URL is missing trailing ">" *)
-  LDAP_URL_ERR_BADURL               = $05;    (* URL is bad *)
-  LDAP_URL_ERR_BADHOST              = $06;    (* host port is bad *)
-  LDAP_URL_ERR_BADATTRS             = $07;    (* bad (or missing) attributes *)
-  LDAP_URL_ERR_BADSCOPE             = $08;    (* scope string is invalid (or missing) *)
-  LDAP_URL_ERR_BADFILTER            = $09;    (* bad or missing filter *)
-  LDAP_URL_ERR_BADEXTS              = $0a;    (* bad or missing extensions *)
-
-(*
- * The API draft spec says we should declare (or cause to be declared)
- * 'struct timeval'.   We don't.  See IETF LDAPext discussions.
- *)
-type
-  ptimeval                          = Pointer;
-
-(*
- * in options.c:
- *)
-function ldap_get_option(
-    ld              : PLDAP;
-    option          : cint;
-    outvalue        : Pointer
-  ): cint; cdecl; external;
-
-function ldap_set_option(
-    ld              : PLDAP;
-    option          : cint;
-    const invalue   : Pointer
-  ): cint; cdecl; external;
-
-(* V3 REBIND Function Callback Prototype *)
-type
-  LDAP_REBIND_PROC = function(ld: PLDAP; const url: pcchar; request: ber_tag_t; msgid: ber_int_t; params: Pointer): cint; cdecl;
-
-function ldap_set_rebind_proc(
-    ld              : PLDAP;
-    rebind_proc     : LDAP_REBIND_PROC;
-    params          : Pointer
-  ): cint; cdecl; external;
-
-(* V3 referral selection Function Callback Prototype *)
-type
-  LDAP_NEXTREF_PROC = function(ld: PLDAP; refsp: pppcchar; cntp: pcint; params: Pointer): cint; cdecl;
-
-
-function ldap_set_nextref_proc(
-    ld              : PLDAP;
-    nextref_proc    : LDAP_NEXTREF_PROC;
-    params          : Pointer
-  ): cint; cdecl; external;
-
-
-(*
- * in controls.c:
- *)
-
-function ldap_create_control(
-    const requestOID: pcchar;
-    ber             : PBerElement;
-    iscritical      : cint;
-    var ctrlp       : PLDAPControl
-  ): cint; cdecl; external;
-
-function ldap_find_control(
-    const oid       : pcchar;
-    ctrls           : PPLDAPControl
-  ): PLDAPControl; cdecl; external;
-
-procedure ldap_control_free(
-    ctrl            : PLDAPControl
-  ); cdecl; external;
-
-procedure ldap_controls_free(
-    ctrls           : PPLDAPControl
-  ); cdecl; external;
-
-
-(*
- * in dnssrv.c:
- *)
-
-function ldap_domain2dn(
-    const domain    : pcchar;
-    var dn          : pcchar
-  ): cint; cdecl; external;
-
-function ldap_dn2domain(
-    const dn        : pcchar;
-    var domain      : pcchar
-  ): cint; cdecl; external;
-
-function ldap_domain2hostlist(
-    const domain    : pcchar;
-    var hostlist    : pcchar
-  ): cint; cdecl; external;
-
-
-(*
- * in extended.c:
- *)
-
-function ldap_extended_operation(
-    ld              : PLDAP;
-    const reqoid    : pcchar;
-    reqdata         : PBerval;
-    serverctrls     : PPLDAPControl;
-    clientctrls     : PPLDAPControl;
-    var msgidp      : cint
-  ): cint; cdecl; external;
-
-function ldap_extended_operation_s(
-    ld              : PLDAP;
-    const reqoid    : pcchar;
-    reqdata         : PBerval;
-    serverctrls     : PPLDAPControl;
-    clientctrls     : PPLDAPControl;
-    var retoidp     : pcchar;
-    var retdatap    : PBerval
-  ): cint; cdecl; external;
-
-function ldap_parse_extended_result(
-    ld              : PLDAP;
-    res             : PLDAPMessage;
-    var retoidp     : pcchar;
-    var retdatap    : PBerval;
-    freeit          : cbool
-  ): cint; cdecl; external;
-
-function ldap_parse_intermediate(
-    ld              : PLDAP;
-    res             : PLDAPMessage;
-    var retoidp     : pcchar;
-    var retdatap    : PBerval;
-    serverctrls     : PPPLDAPControl;
-    freeit          : cbool
-  ): cint; cdecl; external;
-
-
-(*
- * in groupings.c:
- *)
-(*#ifdef LDAP_EXOP_GROUPING_CREATE
-
-LDAP_F( int )
-ldap_grouping_create LDAP_P((
-    LDAP            *ld,
-    LDAP_CONST cchar *grpoid,
-    struct berval   *grpdata,
-    LDAPControl     **serverctrls,
-    LDAPControl     **clientctrls,
-    int             *msgidp ));
-
-LDAP_F( int )
-ldap_grouping_create_s LDAP_P((
-    LDAP            *ld,
-    LDAP_CONST cchar *grpoid,
-    struct berval   *grpdata,
-    LDAPControl     **serverctrls,
-    LDAPControl     **clientctrls,
-    struct berval   **retgrpcookiep,
-    struct berval   **retgrpdatap ));
-
-LDAP_F( int )
-ldap_parse_grouping_create_result LDAP_P((
-    LDAP            *ld,
-    LDAPMessage     *res,
-    struct berval   **retgrpcookiep,
-    struct berval   **retgrpdatap,
-    LDAPControl     ***serverctrls,
-    int             freeit ));
-
-LDAP_F( int )
-ldap_grouping_end LDAP_P((
-    LDAP            *ld,
-    LDAP_CONST cchar *grpoid,
-    struct berval   *grpdata,
-    LDAPControl     **serverctrls,
-    LDAPControl     **clientctrls,
-    int             *msgidp ));
-
-LDAP_F( int )
-ldap_grouping_end_s LDAP_P((
-    LDAP            *ld,
-    LDAP_CONST cchar *grpoid,
-    struct berval   *grpdata,
-    LDAPControl     **serverctrls,
-    LDAPControl     **clientctrls,
-    struct berval   **retgrpdatap ));
-
-LDAP_F( int )
-ldap_parse_grouping_end_result LDAP_P((
-    LDAP            *ld,
-    LDAPMessage     *res,
-    struct berval   **retgrpdatap,
-    LDAPControl     ***serverctrls,
-    int             freeit ));
-
-LDAP_F( int )
-ldap_grouping_action_operation LDAP_P((
-    LDAP            *ld,
-    LDAP_CONST cchar *grpoid,
-    struct berval   *grpdata,
-    LDAPControl     **serverctrls,
-    LDAPControl     **clientctrls,
-    int             *msgidp ));
-
-LDAP_F( int )
-ldap_grouping_action_operation_s LDAP_P((
-    LDAP            *ld,
-    LDAP_CONST cchar *grpoid,
-    struct berval   *grpdata,
-    LDAPControl     **serverctrls,
-    LDAPControl     **clientctrls,
-    struct berval   **retgrpcookiep,
-    struct berval   **retgrpdatap ));
-
-LDAP_F( int )
-ldap_parse_grouping_action_result LDAP_P((
-    LDAP            *ld,
-    LDAPMessage     *res,
-    struct berval   **retgrpcookiep,
-    struct berval   **retgrpdatap,
-    LDAPControl     ***serverctrls,
-    int             freeit ));
-
-LDAP_F( int )
-ldap_parse_grouping_end_notice LDAP_P((
-    LDAP            *ld,
-    LDAPMessage     *res,
-    struct berval   **retdatap,
-    struct berval   **retgrpcookiep,
-    struct berval   **retgrpdatap,
-    int             freeit ));
-
-LDAP_F( int )
-ldap_parse_grouping_info_notice LDAP_P((
-    LDAP            *ld,
-    LDAPMessage     *res,
-    struct berval   **retdatap,
-    struct berval   **retgrpcookiep,
-    struct berval   **retgrpdatap,
-    int             freeit ));
-#endif
-*)
-
-
-(*
- * in abandon.c:
- *)
-
-function ldap_abandon_ext(
-    ld              : PLDAP;
-    msgid           : cint;
-    serverctrls     : PPLDAPControl;
-    clientctrls     : PPLDAPControl
-  ): cint; cdecl; external;
-
-
-(*
- * in add.c:
- *)
-
-function ldap_add_ext(
-    ld              : PLDAP;
-    const dn        : pcchar;
-    attrs           : PPLDAPMod;
-    serverctrls     : PPLDAPControl;
-    clientctrls     : PPLDAPControl;
-    var msgidp      : cint
-  ): cint; cdecl; external;
-
-function ldap_add_ext_s(
-    ld              : PLDAP;
-    const dn        : pcchar;
-    attrs           : PPLDAPMod;
-    serverctrls     : PPLDAPControl;
-    clientctrls     : PPLDAPControl
-  ): cint; cdecl; external;
-
-
-(*
- * in sasl.c:
- *)
-
-function ldap_sasl_bind(
-    ld              : PLDAP;
-    const dn        : pcchar;
-    const mechanism : pcchar;
-    cred            : PBerval;
-    serverctrls     : PPLDAPControl;
-    clientctrls     : PPLDAPControl;
-    var msgidp      : cint
-  ): cint; cdecl; external;
-
-function ldap_sasl_bind_s(
-    ld              : PLDAP;
-    const dn        : pcchar;
-    const mechanism : pcchar;
-    cred            : PBerval;
-    serverctrls     : PPLDAPControl;
-    clientctrls     : PPLDAPControl;
-    servercredp     : PPBerval
-  ): cint; cdecl; external;
-
-(* Interaction flags (should be passed about in a control)
- *  Automatic (default): use defaults, prompt otherwise
- *  Interactive: prompt always
- *  Quiet: never prompt
- *)
-const
-  LDAP_SASL_AUTOMATIC               = 0;
-  LDAP_SASL_INTERACTIVE             = 1;
-  LDAP_SASL_QUIET                   = 2;
-
-(*
- * V3 SASL Interaction Function Callback Prototype
- *  when using Cyrus SASL, interact is pointer to sasl_interact_t
- *  should likely passed in a control (and provided controls)
- *)
-type
-  LDAP_SASL_INTERACT_PROC = function(ld: PLDAP; flags: cuint; defaults, interact: Pointer): cint; cdecl;
-
-function ldap_sasl_interactive_bind_s(
-    ld              : PLDAP;
-    const dn        : pcchar;
-    const mechanism : pcchar;
-    serverctrls     : PPLDAPControl;
-    clientctrls     : PPLDAPControl;
-    flags           : cuint;
-    proc            : LDAP_SASL_INTERACT_PROC;
-    defaults        : Pointer
-  ): cint; cdecl; external;
-
-function ldap_parse_sasl_bind_result(
-    ld              : PLDAP;
-    res             : PLDAPMessage;
-    var servercredp : PBerval;
-    freeit          : cbool
-  ): cint; cdecl; external;
-
-
-(*
- * in compare.c:
- *)
-
-function ldap_compare_ext(
-    ld              : PLDAP;
-    const dn        : pcchar;
-    const attr      : pcchar;
-    bvalue          : PBerval;
-    serverctrls     : PPLDAPControl;
-    clientctrls     : PPLDAPControl;
-    var msgidp      : cint
-  ): cint; cdecl; external;
-
-function ldap_compare_ext_s(
-    ld              : PLDAP;
-    const dn        : pcchar;
-    const attr      : pcchar;
-    bvalue          : PBerval;
-    serverctrls     : PPLDAPControl;
-    clientctrls     : PPLDAPControl
-  ): cint; cdecl; external;
-
-
-(*
- * in delete.c:
- *)
-
-function ldap_delete_ext(
-    ld              : PLDAP;
-    const dn        : pcchar;
-    serverctrls     : PPLDAPControl;
-    clientctrls     : PPLDAPControl;
-    var msgidp      : cint
-  ): cint; cdecl; external;
-
-function ldap_delete_ext_s(
-    ld              : PLDAP;
-    const dn        : pcchar;
-    serverctrls     : PPLDAPControl;
-    clientctrls     : PPLDAPControl
-  ): cint; cdecl; external;
-
-
-(*
- * in error.c:
- *)
-
-function ldap_parse_result(
-    ld              : PLDAP;
-    res             : PLDAPMessage;
-    errcodep        : pcint;
-    matcheddnp      : ppcchar;
-    errmsgp         : ppcchar;
-    referralsp      : pppcchar;
-    serverctrls     : PPPLDAPControl;
-    freeit          : cbool
-  ): cint; cdecl; external;
-
-function ldap_err2string(
-    err             : cint
-  ): pcchar; cdecl; external;
-
-
-(*
- * in modify.c:
- *)
-
-function ldap_modify_ext(
-    ld              : PLDAP;
-    const dn        : pcchar;
-    mods            : PPLDAPMod;
-    serverctrls     : PPLDAPControl;
-    clientctrls     : PPLDAPControl;
-    var msgidp      : cint
-  ): cint; cdecl; external;
-
-function ldap_modify_ext_s(
-    ld              : PLDAP;
-    const dn        : pcchar;
-    mods            : PPLDAPMod;
-    serverctrls     : PPLDAPControl;
-    clientctrls     : PPLDAPControl
-  ): cint; cdecl; external;
-
-
-(*
- * in modrdn.c:
- *)
-
-function ldap_rename(
-    ld              : PLDAP;
-    const dn        : pcchar;
-    const newrdn    : pcchar;
-    const newSuperior: pcchar;
-    deleteoldrdn    : cbool;
-    sctrls          : PPLDAPControl;
-    cctrls          : PPPLDAPControl;
-    var msgidp      : cint
-  ): cint; cdecl; external;
-
-function ldap_rename_s(
-    ld              : PLDAP;
-    const dn        : pcchar;
-    const newrdn    : pcchar;
-    const newSuperior: pcchar;
-    deleteoldrdn    : cbool;
-    sctrls          : PPLDAPControl;
-    cctrls          : PPLDAPControl
-  ): cint; cdecl; external;
-
-
-(*
- * in open.c:
- *)
-
-function ldap_create(
-    var ld          : PLDAP
-  ): cint; cdecl; external;
-
-function ldap_initialize(
-    var ld          : PLDAP;
-    const url       : pcchar
-  ): cint; cdecl; external;
-
-
-(*
- * in tls.c
- *)
-
-function ldap_tls_inplace(
-    ld              : PLDAP
-  ): cint; cdecl; external;
-
-function ldap_install_tls(
-    ld              : PLDAP
-  ): cint; cdecl; external;
-
-function ldap_start_tls(
-    ld              : PLDAP;
-    serverctrls     : PPLDAPControl;
-    clientctrls     : PPLDAPControl;
-    var msgidp      : cint
-  ): cint; cdecl; external;
-
-function ldap_start_tls_s(
-    ld              : PLDAP;
-    serverctrls     : PPLDAPControl;
-    clientctrls     : PPLDAPControl
-  ): cint; cdecl; external;
-
-
-(*
- * in messages.c:
- *)
-
-function ldap_first_message(
-    ld              : PLDAP;
-    chain           : PLDAPMessage
-  ): PLDAPMessage; cdecl; external;
-
-function ldap_next_message(
-    ld              : PLDAP;
-    msg             : PLDAPMessage
-  ): PLDAPMessage; cdecl; external;
-
-function ldap_count_messages(
-    ld              : PLDAP;
-    chain           : PLDAPMessage
-  ): cint; cdecl; external;
-
-
-(*
- * in references.c:
- *)
-
-function ldap_first_reference(
-    ld              : PLDAP;
-    chain           : PLDAPMessage
-  ): PLDAPMessage; cdecl; external;
-
-function ldap_next_reference(
-    ld              : PLDAP;
-    ref             : PLDAPMessage
-  ): PLDAPMessage; cdecl; external;
-
-function ldap_count_references(
-    ld              : PLDAP;
-    chain           : PLDAPMessage
-  ): cint; cdecl; external;
-
-function ldap_parse_reference(
-    ld              : PLDAP;
-    ref             : PLDAPMessage;
-    var referralsp  : ppcchar;
-    serverctrls     : PPPLDAPControl;
-    freeit          : cbool
-  ): cint; cdecl; external;
-
-
-(*
- * in getentry.c:
- *)
-
-function ldap_first_entry(
-    ld              : PLDAP;
-    chain           : PLDAPMessage
-  ): PLDAPMessage; cdecl; external;
-
-function ldap_next_entry(
-    ld              : PLDAP;
-    entry           : PLDAPMessage
-  ): PLDAPMessage; cdecl; external;
-
-function ldap_count_entries(
-    ld              : PLDAP;
-    chain           : PLDAPMessage
-  ): cint; cdecl; external;
-
-function ldap_get_entry_controls(
-    ld              : PLDAP;
-    entry           : PLDAPMessage;
-    var serverctrls : PPLDAPControl
-  ): cint; cdecl; external;
-
-
-(*
- * in addentry.c
- *)
-
-function ldap_delete_result_entry(
-    list            : PPLDAPMessage;
-    e               : PLDAPMessage
-  ): PLDAPMessage; cdecl; external;
-
-procedure ldap_add_result_entry(
-    list            : PPLDAPMessage;
-    e               : PLDAPMessage
-  ); cdecl; external;
-
-
-(*
- * in getdn.c
- *)
-
-function ldap_get_dn(
-    ld              : PLDAP;
-    entry           : PLDAPMessage
-  ): pcchar; cdecl; external;
-
-const
-  LDAP_AVA_NULL                     = $0000;
-  LDAP_AVA_STRING                   = $0001;
-  LDAP_AVA_BINARY                   = $0002;
-  LDAP_AVA_NONPRINTABLE             = $0004;
-  LDAP_AVA_FREE_ATTR                = $0010;
-  LDAP_AVA_FREE_VALUE               = $0020;
-
-type
-  pldap_ava                         = ^ldap_ava;
-  ldap_ava                          = record
-    la_attr     : berval;
-    la_value    : berval;
-    la_flags    : cuint;
-    la_private  : Pointer;
-  end;
-
-  PLDAPAVA                          = ^LDAPAVA;
-  LDAPAVA                           = ldap_ava;
-
-  PLDAPRDN                          = ^LDAPRDN;
-  LDAPRDN                           = ^PLDAPAVA;
-
-  PLDAPDN                           = ^LDAPDN;
-  LDAPDN                            = ^LDAPRDN;
-
-const
-(* DN formats *)
-  LDAP_DN_FORMAT_LDAP               = $0000;
-  LDAP_DN_FORMAT_LDAPV3             = $0010;
-  LDAP_DN_FORMAT_LDAPV2             = $0020;
-  LDAP_DN_FORMAT_DCE                = $0030;
-  LDAP_DN_FORMAT_UFN                = $0040; (* dn2str only *)
-  LDAP_DN_FORMAT_AD_CANONICAL       = $0050; (* dn2str only *)
-  LDAP_DN_FORMAT_LBER               = $00F0; (* for testing only *)
-  LDAP_DN_FORMAT_MASK               = $00F0;
-
-(* DN flags *)
-  LDAP_DN_PRETTY                    = $0100;
-  LDAP_DN_SKIP                      = $0200;
-  LDAP_DN_P_NOLEADTRAILSPACES       = $1000;
-  LDAP_DN_P_NOSPACEAFTERRDN         = $2000;
-  LDAP_DN_PEDANTIC                  = $F000;
-
-procedure ldap_rdnfree(rdn: LDAPRDN); cdecl; external;
-procedure ldap_dnfree(rdn: LDAPDN); cdecl; external;
-
-function ldap_bv2dn(
-    bv              : PBerval;
-    var dn          : LDAPDN;
-    flags           : cuint
-  ): cint; cdecl; external;
-
-function ldap_str2dn(
-    const str       : pcchar;
-    var dn          : LDAPDN;
-    flags           : cuint
-  ): cint; cdecl; external;
-
-function ldap_dn2bv(
-    dn              : LDAPDN;
-    bv              : PBerval;
-    flags           : cuint
-  ): cint; cdecl; external;
-
-function ldap_dn2str(
-    dn              : LDAPDN;
-    var str         : pcchar;
-    flags           : cuint
-  ): cint; cdecl; external;
-
-function ldap_bv2rdn(
-    bv              : PBerval;
-    var rdn         : LDAPRDN;
-    var next        : pcchar;
-    flags           : cuint
-  ): cint; cdecl; external;
-
-function ldap_str2rdn(
-    const str       : pcchar;
-    var rdn         : LDAPRDN;
-    var next        : pcchar;
-    flags           : cuint
-  ): cint; cdecl; external;
-
-function ldap_rdn2bv(
-    rdn             : LDAPRDN;
-    bv              : PBerval;
-    flags           : cuint
-  ): cint; cdecl; external;
-
-function ldap_rdn2str(
-    rdn             : LDAPRDN;
-    var str         : pcchar;
-    flags           : cuint
-  ): cint; cdecl; external;
-
-function ldap_dn_normalize(
-    const _in       : pcchar;
-    iflags          : cuint;
-    var _out        : pcchar;
-    oflags          : cuint
-  ): cint; cdecl; external;
-
-
-type
-  LDAPDN_rewrite_func = function(dn: LDAPDN; flags: cuint; ctx: Pointer): cint; cdecl;
-
-function ldap_X509dn2bv(
-    x509_name       : Pointer;
-    dn              : PBerval;
-    func            : LDAPDN_rewrite_func;
-    flags           : cuint
-  ): cint; cdecl; external;
-
-function ldap_get_dn_ber(
-    ld              : PLDAP;
-    e               : PLDAPMessage;
-    var berout      : PBerElement;
-    dn              : PBerval
-  ): cint; cdecl; external;
-
-function ldap_get_attribute_ber(
-    ld              : PLDAP;
-    e               : PLDAPMessage;
-    ber             : PBerElement;
-    attr            : PBerval;
-    var vals        : PBerval
-  ): cint; cdecl; external;
-
-
-(*
- * in getattr.c
- *)
-
-function ldap_first_attribute(
-    ld              : PLDAP;
-    entry           : PLDAPMessage;
-    var ber         : PBerElement
-  ): pcchar; cdecl; external;
-
-function ldap_next_attribute(
-    ld              : PLDAP;
-    entry           : PLDAPMessage;
-    ber             : PBerElement
-  ): pcchar; cdecl; external;
-
-
-(*
- * in getvalues.c
- *)
-
-function ldap_get_values_len(
-    ld              : PLDAP;
-    entry           : PLDAPMessage;
-    const target    : pcchar
-  ): PPBerval; cdecl; external;
-
-function ldap_count_values_len(
-    vals            : PPBerval
-  ): cint; cdecl; external;
-
-procedure ldap_value_free_len(
-    vals            : PPBerval
-  ); cdecl; external;
-
-
-(*
- * in result.c:
- *)
-
-function ldap_result(
-    ld              : PLDAP;
-    msgid           : cint;
-    all             : cint;
-    timeout         : ptimeval;
-    var result      : PLDAPMessage
-  ): cint; cdecl; external;
-
-function ldap_msgtype(
-    lm              : PLDAPMessage
-  ): cint; cdecl; external;
-
-function ldap_msgid(
-    lm              : PLDAPMessage
-  ): cint; cdecl; external;
-
-function ldap_msgfree(
-    lm              : PLDAPMessage
-  ): cint; cdecl; external;
-
-function ldap_msgdelete(
-    ld              : PLDAP;
-    msgid           : cint
-  ): cint; cdecl; external;
-
-
-(*
- * in search.c:
- *)
-
-function ldap_search_ext(
-    ld              : PLDAP;
-    const base      : pcchar;
-    scope           : cint;
-    const filter    : pcchar;
-    attrs           : ppcchar;
-    attrsonly       : cbool;
-    serverctrls     : PPLDAPControl;
-    clientctrls     : PPLDAPControl;
-    timout          : ptimeval;
-    sizelimit       : cint;
-    var msgidp      : cint
-  ): cint; cdecl; external;
-
-function ldap_search_ext_s(
-    ld              : PLDAP;
-    const base      : pcchar;
-    scope           : cint;
-    const filter    : pcchar;
-    attrs           : ppcchar;
-    attrsonly       : cbool;
-    serverctrls     : PPLDAPControl;
-    clientctrls     : PPLDAPControl;
-    timout          : ptimeval;
-    sizelimit       : cint;
-    var res         : PLDAPMessage
-  ): cint; cdecl; external;
-
-
-(*
- * in unbind.c
- *)
-
-function ldap_unbind_ext(
-    ld              : PLDAP;
-    serverctrls     : PPLDAPControl;
-    clientctrls     : PPLDAPControl
-  ): cint; cdecl; external;
-
-function ldap_unbind_ext_s(
-    ld              : PLDAP;
-    serverctrls     : PPLDAPControl;
-    clientctrls     : PPLDAPControl
-  ): cint; cdecl; external;
-
-
-(*
- * in filter.c
- *)
-
-function ldap_put_vrFilter(
-    ber             : PBerElement;
-    const vrf       : pcchar
-  ): cint; cdecl; external;
-
-
-(*
- * in free.c
- *)
-
-function ldap_memalloc(
-    s               : ber_len_t
-  ): Pointer; cdecl; external;
-
-function ldap_memrealloc(
-    p               : Pointer;
-    s               : ber_len_t
-  ): Pointer; cdecl; external;
-
-function ldap_memcalloc(
-    n               : ber_len_t;
-    s               : ber_len_t
-  ): Pointer; cdecl; external;
-
-procedure ldap_memfree(
-    p               : Pointer
-  ); cdecl; external;
-
-procedure ldap_memvfree(
-    v               : PPointer
-  ); cdecl; external;
-
-function ldap_strdup(
-    const str       : pcchar
-  ): pcchar; cdecl; external;
-
-procedure ldap_mods_free(
-    mods            : PPLDAPMod;
-    freemods        : cbool
-  ); cdecl; external;
-
-
-(*
- * in url.c
- *)
-
-function ldap_is_ldap_url(
-    const url       : pcchar
-  ): cint; cdecl; external;
-
-function ldap_is_ldaps_url(
-    const url       : pcchar
-  ): cint; cdecl; external;
-
-function ldap_is_ldapi_url(
-    const url       : pcchar
-  ): cint; cdecl; external;
-
-function ldap_url_parse(
-    const url       : pcchar;
-    var ludpp       : PLDAPURLDesc
-  ): cint; cdecl; external;
-
-function ldap_url_desc2str(
-    ludpp           : PLDAPURLDesc
-  ): pcchar; cdecl; external;
-
-procedure ldap_free_urldesc(
-    ludpp           : PLDAPURLDesc
-  ); cdecl; external;
-
-
-(*
- * LDAP Cancel Extended Operation <draft-zeilenga-ldap-cancel-xx.txt>
- *  in cancel.c
- *)
-const
-  LDAP_API_FEATURE_CANCEL           = 1000;
-
-function ldap_cancel(
-    ld              : PLDAP;
-    cancelid        : cint;
-    sctrl           : PPLDAPControl;
-    cctrl           : PPLDAPControl;
-    var msgidp      : cint
-  ): cint; cdecl; external;
-
-
-function ldap_cancel_s(
-    ld              : PLDAP;
-    cancelid        : cint;
-    sctrl           : PPLDAPControl;
-    cctrl           : PPLDAPControl
-  ): cint; cdecl; external;
-
-
-(*
- * LDAP Server Side Sort
- *  in sortctrl.c
- *)
-
-const
-  LDAP_API_FEATURE_SERVER_SIDE_SORT = 1000;
-
-(* structure for a sort-key *)
-type
-  PPLDAPSortKey                     = ^PLDAPSortKey;
-  PLDAPSortKey                      = ^LDAPSortKey;
-  LDAPSortKey                       = record
-    attributeType   : pcchar;
-    orderingRule    : pcchar;
-    reverseOrder    : cbool;
-  end;
-
-
-function ldap_create_sort_keylist(
-    var sortKeyList : PPLDAPSortKey;
-    keyString       : pcchar
-  ): cint; cdecl; external;
-
-procedure ldap_free_sort_keylist(
-    sortKeyList     : PPLDAPSortKey
-  ); cdecl; external;
-
-function ldap_create_sort_control(
-    ld              : PLDAP;
-    keyList         : PPLDAPSortKey;
-    ctl_iscritical  : cbool;
-    var ctrlp       : PLDAPControl
-  ): cint; cdecl; external;
-
-function ldap_parse_sort_control(
-    ld              : PLDAP;
-    ctrlp           : PPLDAPControl;
-    var result      : culong;
-    var attribute   : pcchar
-  ): cint; cdecl; external;
-
-
-(*
- * LDAP Virtual List View
- *  in vlvctrl.c
- *)
-const
-  LDAP_API_FEATURE_VIRTUAL_LIST_VIEW = 1000;
-
-(* structure for virtual list *)
-type
-  PLDAPVLVInfo                      = ^LDAPVLVInfo;
-  LDAPVLVInfo                       = record
-    ldvlv_version       : cint;
-    ldvlv_before_count  : culong;
-    ldvlv_after_count   : culong;
-    ldvlv_offset        : culong;
-    ldvlv_count         : culong;
-    ldvlv_attrvalue     : PBerval;
-    ldvlv_context       : PBerval;
-    ldvlv_extradata     : Pointer;
-  end;
-
-function ldap_create_vlv_control(
-    ld              : PLDAP;
-    ldvlistp        : PLDAPVLVInfo;
-    var ctrlp       : PLDAPControl
-  ): cint; cdecl; external;
-
-function ldap_parse_vlv_control(
-    ld              : PLDAP;
-    ctrls           : PPLDAPControl;
-    var target_posp : culong;
-    var list_countp : culong;
-    var contextp    : PBerval;
-    var errcodep    : cint
-  ): cint; cdecl; external;
-
-
-(*
- * LDAP Transactions
- *  in txn.c
- *)
-
-(*
-#ifdef LDAP_GROUP_TRANSACTION
-LDAP_F( int )
-ldap_parse_txn_create LDAP_P((
-    LDAP *ld,
-    LDAPMessage *res,
-    struct berval **cookie ));
-
-LDAP_F( int )
-ldap_txn_create LDAP_P((
-    LDAP *ld,
-    LDAPControl     **sctrls,
-    LDAPControl     **cctrls,
-    int             *msgidp ));
-
-LDAP_F( int )
-ldap_txn_create_s LDAP_P((
-    LDAP *ld,
-    struct berval **cookie,
-    LDAPControl **sctrls,
-    LDAPControl **cctrls ));
-
-LDAP_F( int )
-ldap_txn_end LDAP_P((
-    LDAP *ld,
-    struct berval *cookie,
-    int commit,
-    LDAPControl     **sctrls,
-    LDAPControl     **cctrls,
-    int             *msgidp ));
-
-LDAP_F( int )
-ldap_txn_end_s LDAP_P((
-    LDAP *ld,
-    struct berval *cookie,
-    int commit,
-    LDAPControl **sctrls,
-    LDAPControl **cctrls ));
-#endif*)
-
-
-(*
- * LDAP Who Am I?
- *  in whoami.c
- *)
-const
-  LDAP_API_FEATURE_WHOAMI           = 1000;
-
-function ldap_parse_whoami(
-    ld              : PLDAP;
-    res             : PLDAPMessage;
-    var authzid     : PBerval
-  ): cint; cdecl; external;
-
-function ldap_whoami(
-    ld              : PLDAP;
-    sctrl           : PPLDAPControl;
-    cctrl           : PPLDAPControl;
-    var msgidp      : cint
-  ): cint; cdecl; external;
-
-function ldap_whoami_s(
-    ld              : PLDAP;
-    var authzid     : PBerval;
-    sctrl           : PPLDAPControl;
-    cctrl           : PPLDAPControl
-  ): cint; cdecl; external;
-
-
-(*
- * LDAP Password Modify
- *  in passwd.c
- *)
-const
-  LDAP_API_FEATURE_PASSWD_MODIFY    = 1000;
-
-function ldap_parse_passwd(
-    ld              : PLDAP;
-    res             : PLDAPMessage;
-    newpasswd       : PBerval
-  ): cint; cdecl; external;
-
-function ldap_passwd(
-    ld              : PLDAP;
-    user            : PBerval;
-    oldpw           : PBerval;
-    newpw           : PBerval;
-    sctrl           : PPLDAPControl;
-    cctrl           : PPLDAPControl;
-    var msgidp      : cint
-  ): cint; cdecl; external;
-
-function ldap_passwd_s(
-    ld              : PLDAP;
-    user            : PBerval;
-    oldpw           : PBerval;
-    newpw           : PBerval;
-    newpasswd       : PBerval;
-    sctrl           : PPLDAPControl;
-    cctrl           : PPLDAPControl
-  ): cint; cdecl; external;
-
-
-(*
- * LDAP Password Policy controls
- *  in ppolicy.c
- *)
-
-(*
-#ifdef LDAP_CONTROL_PASSWORDPOLICYREQUEST
-#define LDAP_API_FEATURE_PASSWORD_POLICY 1000
-
-typedef enum passpolicyerror_enum {
-       PP_passwordExpired = 0,
-       PP_accountLocked = 1,
-       PP_changeAfterReset = 2,
-       PP_passwordModNotAllowed = 3,
-       PP_mustSupplyOldPassword = 4,
-       PP_insufficientPasswordQuality = 5,
-       PP_passwordTooShort = 6,
-       PP_passwordTooYoung = 7,
-       PP_passwordInHistory = 8,
-       PP_noError = 65535
-} LDAPPasswordPolicyError;
-
-LDAP_F( int )
-ldap_create_passwordpolicy_control LDAP_P((
-        LDAP *ld,
-        LDAPControl **ctrlp ));
-
-LDAP_F( int )
-ldap_parse_passwordpolicy_control LDAP_P((
-        LDAP *ld,
-        LDAPControl *ctrl,
-        int *expirep,
-        int *gracep,
-        LDAPPasswordPolicyError *errorp ));
-
-LDAP_F( const cchar * )
-ldap_passwordpolicy_err2txt LDAP_P(( LDAPPasswordPolicyError ));
-#endif*)
-
-
-(*
- * hacks for NTLM
- *)
-const
-  LDAP_AUTH_NTLM_REQUEST            = ber_tag_t($8a);
-  LDAP_AUTH_NTLM_RESPONSE           = ber_tag_t($8b);
-
-function ldap_ntlm_bind(
-    ld              : PLDAP;
-    const dn        : pcchar;
-    tag             : ber_tag_t;
-    cred            : PBerval;
-    sctrl           : PPLDAPControl;
-    cctrl           : PPLDAPControl;
-    var msgidp      : cint
-  ): cint; cdecl; external;
-
-function ldap_parse_ntlm_bind_result(
-    ld              : PLDAP;
-    res             : PLDAPMessage;
-    challenge       : PBerval
-  ): cint; cdecl; external;

+ 0 - 1931
packages/extra/mad/Makefile

@@ -1,1931 +0,0 @@
-#
-# Don't edit, this file is generated by FPCMake Version 2.0.0 [2007/11/08]
-#
-default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-netbsd i386-solaris i386-qnx i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-darwin x86_64-win64 x86_64-embedded arm-linux arm-palmos arm-wince arm-gba arm-nds arm-embedded arm-symbian powerpc64-linux powerpc64-darwin powerpc64-embedded
-BSDs = freebsd netbsd openbsd darwin
-UNIXs = linux $(BSDs) solaris qnx
-LIMIT83fs = go32v2 os2 emx watcom
-OSNeedsComspecToRunBatch = go32v2 watcom
-FORCE:
-.PHONY: FORCE
-override PATH:=$(patsubst %/,%,$(subst \,/,$(PATH)))
-ifneq ($(findstring darwin,$(OSTYPE)),)
-inUnix=1 #darwin
-SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
-else
-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))))
-ifeq ($(PWD),)
-$(error You need the GNU utils package to use this Makefile)
-else
-PWD:=$(firstword $(PWD))
-SRCEXEEXT=
-endif
-else
-PWD:=$(firstword $(PWD))
-SRCEXEEXT=.exe
-endif
-ifndef inUnix
-ifeq ($(OS),Windows_NT)
-inWinNT=1
-else
-ifdef OS2_SHELL
-inOS2=1
-endif
-endif
-else
-ifneq ($(findstring cygdrive,$(PATH)),)
-inCygWin=1
-endif
-endif
-ifdef inUnix
-SRCBATCHEXT=.sh
-else
-ifdef inOS2
-SRCBATCHEXT=.cmd
-else
-SRCBATCHEXT=.bat
-endif
-endif
-ifdef COMSPEC
-ifneq ($(findstring $(OS_SOURCE),$(OSNeedsComspecToRunBatch)),)
-RUNBATCH=$(COMSPEC) /C
-endif
-endif
-ifdef inUnix
-PATHSEP=/
-else
-PATHSEP:=$(subst /,\,/)
-ifdef inCygWin
-PATHSEP=/
-endif
-endif
-ifdef PWD
-BASEDIR:=$(subst \,/,$(shell $(PWD)))
-ifdef inCygWin
-ifneq ($(findstring /cygdrive/,$(BASEDIR)),)
-BASENODIR:=$(patsubst /cygdrive%,%,$(BASEDIR))
-BASEDRIVE:=$(firstword $(subst /, ,$(BASENODIR)))
-BASEDIR:=$(subst /cygdrive/$(BASEDRIVE)/,$(BASEDRIVE):/,$(BASEDIR))
-endif
-endif
-else
-BASEDIR=.
-endif
-ifdef inOS2
-ifndef ECHO
-ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-ECHO=echo
-else
-ECHO:=$(firstword $(ECHO))
-endif
-else
-ECHO:=$(firstword $(ECHO))
-endif
-endif
-export ECHO
-endif
-override DEFAULT_FPCDIR=../../..
-ifndef FPC
-ifdef PP
-FPC=$(PP)
-endif
-endif
-ifndef FPC
-FPCPROG:=$(strip $(wildcard $(addsuffix /fpc$(SRCEXEEXT),$(SEARCHPATH))))
-ifneq ($(FPCPROG),)
-FPCPROG:=$(firstword $(FPCPROG))
-ifneq ($(CPU_TARGET),)
-FPC:=$(shell $(FPCPROG) -P$(CPU_TARGET) -PB)
-else
-FPC:=$(shell $(FPCPROG) -PB)
-endif
-ifneq ($(findstring Error,$(FPC)),)
-override FPC=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH)))))
-endif
-else
-override FPC=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH)))))
-endif
-endif
-override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
-override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT)
-FOUNDFPC:=$(strip $(wildcard $(FPC)))
-ifeq ($(FOUNDFPC),)
-FOUNDFPC=$(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH))))
-ifeq ($(FOUNDFPC),)
-$(error Compiler $(FPC) not found)
-endif
-endif
-ifndef FPC_COMPILERINFO
-FPC_COMPILERINFO:=$(shell $(FPC) -iVSPTPSOTO)
-endif
-ifndef FPC_VERSION
-FPC_VERSION:=$(word 1,$(FPC_COMPILERINFO))
-endif
-export FPC FPC_VERSION FPC_COMPILERINFO
-unexport CHECKDEPEND ALLDEPENDENCIES
-ifndef CPU_TARGET
-ifdef CPU_TARGET_DEFAULT
-CPU_TARGET=$(CPU_TARGET_DEFAULT)
-endif
-endif
-ifndef OS_TARGET
-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
-ifndef CPU_SOURCE
-CPU_SOURCE:=$(word 2,$(FPC_COMPILERINFO))
-endif
-ifndef CPU_TARGET
-CPU_TARGET:=$(word 3,$(FPC_COMPILERINFO))
-endif
-ifndef OS_SOURCE
-OS_SOURCE:=$(word 4,$(FPC_COMPILERINFO))
-endif
-ifndef OS_TARGET
-OS_TARGET:=$(word 5,$(FPC_COMPILERINFO))
-endif
-FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
-FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
-ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),)
-TARGETSUFFIX=$(OS_TARGET)
-SOURCESUFFIX=$(OS_SOURCE)
-else
-TARGETSUFFIX=$(FULL_TARGET)
-SOURCESUFFIX=$(FULL_SOURCE)
-endif
-ifneq ($(FULL_TARGET),$(FULL_SOURCE))
-CROSSCOMPILE=1
-endif
-ifeq ($(findstring makefile,$(MAKECMDGOALS)),)
-ifeq ($(findstring $(FULL_TARGET),$(MAKEFILETARGETS)),)
-$(error The Makefile doesn't support target $(FULL_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 TARGETSUFFIX SOURCESUFFIX CROSSCOMPILE
-ifdef FPCDIR
-override FPCDIR:=$(subst \,/,$(FPCDIR))
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR=wrong
-endif
-else
-override FPCDIR=wrong
-endif
-ifdef DEFAULT_FPCDIR
-ifeq ($(FPCDIR),wrong)
-override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR=wrong
-endif
-endif
-endif
-ifeq ($(FPCDIR),wrong)
-ifdef inUnix
-override FPCDIR=/usr/local/lib/fpc/$(FPC_VERSION)
-ifeq ($(wildcard $(FPCDIR)/units),)
-override FPCDIR=/usr/lib/fpc/$(FPC_VERSION)
-endif
-else
-override FPCDIR:=$(subst /$(FPC),,$(firstword $(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH))))))
-override FPCDIR:=$(FPCDIR)/..
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR:=$(FPCDIR)/..
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR:=$(BASEDIR)
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR=c:/pp
-endif
-endif
-endif
-endif
-endif
-ifndef CROSSBINDIR
-CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX))
-endif
-ifndef BINUTILSPREFIX
-ifndef CROSSBINDIR
-ifdef CROSSCOMPILE
-BINUTILSPREFIX=$(CPU_TARGET)-$(OS_TARGET)-
-endif
-endif
-endif
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(TARGETSUFFIX))
-ifeq ($(UNITSDIR),)
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-endif
-PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages $(FPCDIR)/packages/base $(FPCDIR)/packages/extra)
-override PACKAGE_NAME=mad
-override PACKAGE_VERSION=2.0.0
-ifeq ($(FULL_TARGET),i386-linux)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),i386-go32v2)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),i386-win32)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),i386-os2)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),i386-freebsd)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),i386-beos)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),i386-netbsd)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),i386-solaris)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),i386-qnx)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),i386-netware)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),i386-openbsd)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),i386-wdosx)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),i386-darwin)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),i386-emx)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),i386-watcom)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),i386-netwlibc)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),i386-wince)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),i386-embedded)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),i386-symbian)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),m68k-linux)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),m68k-freebsd)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),m68k-netbsd)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),m68k-amiga)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),m68k-atari)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),m68k-openbsd)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),m68k-palmos)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),m68k-embedded)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),powerpc-linux)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),powerpc-netbsd)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),powerpc-amiga)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),powerpc-macos)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),powerpc-darwin)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),powerpc-morphos)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),powerpc-embedded)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),sparc-linux)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),sparc-netbsd)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),sparc-solaris)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),sparc-embedded)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),x86_64-linux)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),x86_64-freebsd)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),x86_64-darwin)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),x86_64-win64)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),x86_64-embedded)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),arm-linux)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),arm-palmos)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),arm-wince)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),arm-gba)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),arm-nds)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),arm-embedded)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),arm-symbian)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),powerpc64-linux)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),powerpc64-darwin)
-override TARGET_UNITS+=mad
-endif
-ifeq ($(FULL_TARGET),powerpc64-embedded)
-override TARGET_UNITS+=mad
-endif
-override INSTALL_FPCPACKAGE=y
-ifdef REQUIRE_UNITSDIR
-override UNITSDIR+=$(REQUIRE_UNITSDIR)
-endif
-ifdef REQUIRE_PACKAGESDIR
-override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
-endif
-ifdef ZIPINSTALL
-ifneq ($(findstring $(OS_TARGET),$(UNIXs)),)
-UNIXHier=1
-endif
-else
-ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),)
-UNIXHier=1
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef PREFIX
-INSTALL_PREFIX=$(PREFIX)
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef UNIXHier
-INSTALL_PREFIX=/usr/local
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BASEDIR:=/pp
-else
-INSTALL_BASEDIR:=/$(PACKAGE_NAME)
-endif
-endif
-endif
-export INSTALL_PREFIX
-ifdef INSTALL_FPCSUBDIR
-export INSTALL_FPCSUBDIR
-endif
-ifndef DIST_DESTDIR
-DIST_DESTDIR:=$(BASEDIR)
-endif
-export DIST_DESTDIR
-ifndef COMPILER_UNITTARGETDIR
-ifdef PACKAGEDIR_MAIN
-COMPILER_UNITTARGETDIR=$(PACKAGEDIR_MAIN)/units/$(TARGETSUFFIX)
-else
-COMPILER_UNITTARGETDIR=units/$(TARGETSUFFIX)
-endif
-endif
-ifndef COMPILER_TARGETDIR
-COMPILER_TARGETDIR=.
-endif
-ifndef INSTALL_BASEDIR
-ifdef UNIXHier
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
-else
-INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/$(PACKAGE_NAME)
-endif
-else
-INSTALL_BASEDIR:=$(INSTALL_PREFIX)
-endif
-endif
-ifndef INSTALL_BINDIR
-ifdef UNIXHier
-INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
-else
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
-ifdef INSTALL_FPCPACKAGE
-ifdef CROSSCOMPILE
-ifdef CROSSINSTALL
-INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(SOURCESUFFIX)
-else
-INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX)
-endif
-else
-INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX)
-endif
-endif
-endif
-endif
-ifndef INSTALL_UNITDIR
-INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(TARGETSUFFIX)
-ifdef INSTALL_FPCPACKAGE
-ifdef PACKAGE_NAME
-INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
-endif
-endif
-endif
-ifndef INSTALL_LIBDIR
-ifdef UNIXHier
-INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
-else
-INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
-endif
-endif
-ifndef INSTALL_SOURCEDIR
-ifdef UNIXHier
-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)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-endif
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-else
-ifdef INSTALL_FPCPACKAGE
-ifdef INSTALL_FPCSUBDIR
-INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
-endif
-else
-INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source
-endif
-endif
-endif
-ifndef INSTALL_DOCDIR
-ifdef UNIXHier
-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
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc/$(PACKAGE_NAME)
-else
-INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc
-endif
-endif
-endif
-ifndef INSTALL_EXAMPLEDIR
-ifdef UNIXHier
-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)
-else
-INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples
-endif
-endif
-endif
-ifndef INSTALL_DATADIR
-INSTALL_DATADIR=$(INSTALL_BASEDIR)
-endif
-ifndef INSTALL_SHAREDDIR
-INSTALL_SHAREDDIR=$(INSTALL_PREFIX)/lib
-endif
-ifdef CROSSCOMPILE
-ifndef CROSSBINDIR
-CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(SOURCESUFFIX))
-ifeq ($(CROSSBINDIR),)
-CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(TARGETSUFFIX)/bin/$(FULL_SOURCE))
-endif
-endif
-else
-CROSSBINDIR=
-endif
-BATCHEXT=.bat
-LOADEREXT=.as
-EXEEXT=.exe
-PPLEXT=.ppl
-PPUEXT=.ppu
-OEXT=.o
-ASMEXT=.s
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.so
-SHAREDLIBPREFIX=libfp
-STATICLIBPREFIX=libp
-IMPORTLIBPREFIX=libimp
-RSTEXT=.rst
-ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
-ifeq ($(OS_TARGET),go32v1)
-STATICLIBPREFIX=
-SHORTSUFFIX=v1
-endif
-ifeq ($(OS_TARGET),go32v2)
-STATICLIBPREFIX=
-SHORTSUFFIX=dos
-endif
-ifeq ($(OS_TARGET),watcom)
-STATICLIBPREFIX=
-OEXT=.obj
-ASMEXT=.asm
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=wat
-endif
-ifeq ($(OS_TARGET),linux)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=lnx
-endif
-ifeq ($(OS_TARGET),freebsd)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=fbs
-endif
-ifeq ($(OS_TARGET),netbsd)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=nbs
-endif
-ifeq ($(OS_TARGET),openbsd)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=obs
-endif
-ifeq ($(OS_TARGET),win32)
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=w32
-endif
-ifeq ($(OS_TARGET),os2)
-BATCHEXT=.cmd
-AOUTEXT=.out
-STATICLIBPREFIX=
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=os2
-ECHO=echo
-endif
-ifeq ($(OS_TARGET),emx)
-BATCHEXT=.cmd
-AOUTEXT=.out
-STATICLIBPREFIX=
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=emx
-ECHO=echo
-endif
-ifeq ($(OS_TARGET),amiga)
-EXEEXT=
-SHAREDLIBEXT=.library
-SHORTSUFFIX=amg
-endif
-ifeq ($(OS_TARGET),morphos)
-EXEEXT=
-SHAREDLIBEXT=.library
-SHORTSUFFIX=mos
-endif
-ifeq ($(OS_TARGET),atari)
-EXEEXT=.ttp
-SHORTSUFFIX=ata
-endif
-ifeq ($(OS_TARGET),beos)
-BATCHEXT=.sh
-EXEEXT=
-SHORTSUFFIX=be
-endif
-ifeq ($(OS_TARGET),solaris)
-BATCHEXT=.sh
-EXEEXT=
-SHORTSUFFIX=sun
-endif
-ifeq ($(OS_TARGET),qnx)
-BATCHEXT=.sh
-EXEEXT=
-SHORTSUFFIX=qnx
-endif
-ifeq ($(OS_TARGET),netware)
-EXEEXT=.nlm
-STATICLIBPREFIX=
-SHORTSUFFIX=nw
-endif
-ifeq ($(OS_TARGET),netwlibc)
-EXEEXT=.nlm
-STATICLIBPREFIX=
-SHORTSUFFIX=nwl
-endif
-ifeq ($(OS_TARGET),macos)
-BATCHEXT=
-EXEEXT=
-DEBUGSYMEXT=.xcoff
-SHORTSUFFIX=mac
-endif
-ifeq ($(OS_TARGET),darwin)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=dwn
-endif
-ifeq ($(OS_TARGET),gba)
-EXEEXT=.gba
-SHAREDLIBEXT=.so
-SHORTSUFFIX=gba
-endif
-ifeq ($(OS_TARGET),symbian)
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=symbian
-endif
-else
-ifeq ($(OS_TARGET),go32v1)
-PPUEXT=.pp1
-OEXT=.o1
-ASMEXT=.s1
-SMARTEXT=.sl1
-STATICLIBEXT=.a1
-SHAREDLIBEXT=.so1
-STATICLIBPREFIX=
-SHORTSUFFIX=v1
-endif
-ifeq ($(OS_TARGET),go32v2)
-STATICLIBPREFIX=
-SHORTSUFFIX=dos
-endif
-ifeq ($(OS_TARGET),watcom)
-STATICLIBPREFIX=
-SHORTSUFFIX=wat
-endif
-ifeq ($(OS_TARGET),linux)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=lnx
-endif
-ifeq ($(OS_TARGET),freebsd)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=fbs
-endif
-ifeq ($(OS_TARGET),netbsd)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=nbs
-endif
-ifeq ($(OS_TARGET),openbsd)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=obs
-endif
-ifeq ($(OS_TARGET),win32)
-PPUEXT=.ppw
-OEXT=.ow
-ASMEXT=.sw
-SMARTEXT=.slw
-STATICLIBEXT=.aw
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=w32
-endif
-ifeq ($(OS_TARGET),os2)
-BATCHEXT=.cmd
-PPUEXT=.ppo
-ASMEXT=.so2
-OEXT=.oo2
-AOUTEXT=.out
-SMARTEXT=.sl2
-STATICLIBPREFIX=
-STATICLIBEXT=.ao2
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=os2
-ECHO=echo
-endif
-ifeq ($(OS_TARGET),amiga)
-EXEEXT=
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.library
-SHORTSUFFIX=amg
-endif
-ifeq ($(OS_TARGET),atari)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=.ttp
-SHORTSUFFIX=ata
-endif
-ifeq ($(OS_TARGET),beos)
-BATCHEXT=.sh
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-SHORTSUFFIX=be
-endif
-ifeq ($(OS_TARGET),solaris)
-BATCHEXT=.sh
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-SHORTSUFFIX=sun
-endif
-ifeq ($(OS_TARGET),qnx)
-BATCHEXT=.sh
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-SHORTSUFFIX=qnx
-endif
-ifeq ($(OS_TARGET),netware)
-STATICLIBPREFIX=
-PPUEXT=.ppu
-OEXT=.o
-ASMEXT=.s
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.nlm
-EXEEXT=.nlm
-SHORTSUFFIX=nw
-endif
-ifeq ($(OS_TARGET),netwlibc)
-STATICLIBPREFIX=
-PPUEXT=.ppu
-OEXT=.o
-ASMEXT=.s
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.nlm
-EXEEXT=.nlm
-SHORTSUFFIX=nwl
-endif
-ifeq ($(OS_TARGET),macos)
-BATCHEXT=
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-DEBUGSYMEXT=.xcoff
-SHORTSUFFIX=mac
-endif
-endif
-ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),)
-FPCMADE=fpcmade.$(SHORTSUFFIX)
-ZIPSUFFIX=$(SHORTSUFFIX)
-ZIPCROSSPREFIX=
-ZIPSOURCESUFFIX=src
-ZIPEXAMPLESUFFIX=exm
-else
-FPCMADE=fpcmade.$(TARGETSUFFIX)
-ZIPSOURCESUFFIX=.source
-ZIPEXAMPLESUFFIX=.examples
-ifdef CROSSCOMPILE
-ZIPSUFFIX=.$(SOURCESUFFIX)
-ZIPCROSSPREFIX=$(TARGETSUFFIX)-
-else
-ZIPSUFFIX=.$(TARGETSUFFIX)
-ZIPCROSSPREFIX=
-endif
-endif
-ifndef ECHO
-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
-else
-ECHO:=$(firstword $(ECHO))
-endif
-endif
-export ECHO
-ifndef DATE
-DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(DATE),)
-DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(DATE),)
-DATE= __missing_command_DATE
-else
-DATE:=$(firstword $(DATE))
-endif
-else
-DATE:=$(firstword $(DATE))
-endif
-endif
-export DATE
-ifndef GINSTALL
-GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(GINSTALL),)
-GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(GINSTALL),)
-GINSTALL= __missing_command_GINSTALL
-else
-GINSTALL:=$(firstword $(GINSTALL))
-endif
-else
-GINSTALL:=$(firstword $(GINSTALL))
-endif
-endif
-export GINSTALL
-ifndef CPPROG
-CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(CPPROG),)
-CPPROG= __missing_command_CPPROG
-else
-CPPROG:=$(firstword $(CPPROG))
-endif
-endif
-export CPPROG
-ifndef RMPROG
-RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(RMPROG),)
-RMPROG= __missing_command_RMPROG
-else
-RMPROG:=$(firstword $(RMPROG))
-endif
-endif
-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 MKDIRPROG
-MKDIRPROG:=$(strip $(wildcard $(addsuffix /gmkdir$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(MKDIRPROG),)
-MKDIRPROG:=$(strip $(wildcard $(addsuffix /mkdir$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(MKDIRPROG),)
-MKDIRPROG= __missing_command_MKDIRPROG
-else
-MKDIRPROG:=$(firstword $(MKDIRPROG))
-endif
-else
-MKDIRPROG:=$(firstword $(MKDIRPROG))
-endif
-endif
-export MKDIRPROG
-ifndef ECHOREDIR
-ifndef inUnix
-ECHOREDIR=echo
-else
-ECHOREDIR=$(ECHO)
-endif
-endif
-ifndef COPY
-COPY:=$(CPPROG) -fp
-endif
-ifndef COPYTREE
-COPYTREE:=$(CPPROG) -Rfp
-endif
-ifndef MKDIRTREE
-MKDIRTREE:=$(MKDIRPROG) -p
-endif
-ifndef MOVE
-MOVE:=$(MVPROG) -f
-endif
-ifndef DEL
-DEL:=$(RMPROG) -f
-endif
-ifndef DELTREE
-DELTREE:=$(RMPROG) -rf
-endif
-ifndef INSTALL
-ifdef inUnix
-INSTALL:=$(GINSTALL) -c -m 644
-else
-INSTALL:=$(COPY)
-endif
-endif
-ifndef INSTALLEXE
-ifdef inUnix
-INSTALLEXE:=$(GINSTALL) -c -m 755
-else
-INSTALLEXE:=$(COPY)
-endif
-endif
-ifndef MKDIR
-MKDIR:=$(GINSTALL) -m 755 -d
-endif
-export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
-ifndef PPUMOVE
-PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(PPUMOVE),)
-PPUMOVE= __missing_command_PPUMOVE
-else
-PPUMOVE:=$(firstword $(PPUMOVE))
-endif
-endif
-export PPUMOVE
-ifndef FPCMAKE
-FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(FPCMAKE),)
-FPCMAKE= __missing_command_FPCMAKE
-else
-FPCMAKE:=$(firstword $(FPCMAKE))
-endif
-endif
-export FPCMAKE
-ifndef ZIPPROG
-ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ZIPPROG),)
-ZIPPROG= __missing_command_ZIPPROG
-else
-ZIPPROG:=$(firstword $(ZIPPROG))
-endif
-endif
-export ZIPPROG
-ifndef TARPROG
-TARPROG:=$(strip $(wildcard $(addsuffix /gtar$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(TARPROG),)
-TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(TARPROG),)
-TARPROG= __missing_command_TARPROG
-else
-TARPROG:=$(firstword $(TARPROG))
-endif
-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)),)
-ifeq ($(OS_TARGET),win32)
-ifeq ($(CROSSBINDIR),)
-ASNAME=asw
-LDNAME=ldw
-ARNAME=arw
-endif
-endif
-endif
-ifndef ASPROG
-ifdef CROSSBINDIR
-ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT)
-else
-ASPROG=$(ASNAME)
-endif
-endif
-ifndef LDPROG
-ifdef CROSSBINDIR
-LDPROG=$(CROSSBINDIR)/$(LDNAME)$(SRCEXEEXT)
-else
-LDPROG=$(LDNAME)
-endif
-endif
-ifndef RCPROG
-ifdef CROSSBINDIR
-RCPROG=$(CROSSBINDIR)/$(RCNAME)$(SRCEXEEXT)
-else
-RCPROG=$(RCNAME)
-endif
-endif
-ifndef ARPROG
-ifdef CROSSBINDIR
-ARPROG=$(CROSSBINDIR)/$(ARNAME)$(SRCEXEEXT)
-else
-ARPROG=$(ARNAME)
-endif
-endif
-AS=$(ASPROG)
-LD=$(LDPROG)
-RC=$(RCPROG)
-AR=$(ARPROG)
-PPAS=ppas$(SRCBATCHEXT)
-ifdef inUnix
-LDCONFIG=ldconfig
-else
-LDCONFIG=
-endif
-ifdef DATE
-DATESTR:=$(shell $(DATE) +%Y%m%d)
-else
-DATESTR=
-endif
-ifndef UPXPROG
-ifeq ($(OS_TARGET),go32v2)
-UPXPROG:=1
-endif
-ifeq ($(OS_TARGET),win32)
-UPXPROG:=1
-endif
-ifdef UPXPROG
-UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(UPXPROG),)
-UPXPROG=
-else
-UPXPROG:=$(firstword $(UPXPROG))
-endif
-else
-UPXPROG=
-endif
-endif
-export UPXPROG
-ZIPOPT=-9
-ZIPEXT=.zip
-ifeq ($(USETAR),bz2)
-TAROPT=vj
-TAREXT=.tar.bz2
-else
-TAROPT=vz
-TAREXT=.tar.gz
-endif
-override REQUIRE_PACKAGES=rtl 
-ifeq ($(FULL_TARGET),i386-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-go32v2)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-win32)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-os2)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-freebsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-beos)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-netbsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-solaris)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-qnx)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-netware)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-openbsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-wdosx)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-darwin)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-emx)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-watcom)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-netwlibc)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-wince)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-symbian)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),m68k-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),m68k-freebsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),m68k-netbsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),m68k-amiga)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),m68k-atari)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),m68k-openbsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),m68k-palmos)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),m68k-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc-netbsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc-amiga)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc-macos)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc-darwin)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc-morphos)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),sparc-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),sparc-netbsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),sparc-solaris)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),sparc-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),x86_64-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),x86_64-freebsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),x86_64-darwin)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),x86_64-win64)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),x86_64-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),arm-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),arm-palmos)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),arm-wince)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),arm-gba)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),arm-nds)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),arm-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),arm-symbian)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc64-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc64-darwin)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc64-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
-ifneq ($(PACKAGEDIR_RTL),)
-ifneq ($(wildcard $(PACKAGEDIR_RTL)/units/$(TARGETSUFFIX)),)
-UNITDIR_RTL=$(PACKAGEDIR_RTL)/units/$(TARGETSUFFIX)
-else
-UNITDIR_RTL=$(PACKAGEDIR_RTL)
-endif
-ifdef CHECKDEPEND
-$(PACKAGEDIR_RTL)/$(FPCMADE):
-	$(MAKE) -C $(PACKAGEDIR_RTL) $(FPCMADE)
-override ALLDEPENDENCIES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
-endif
-else
-PACKAGEDIR_RTL=
-UNITDIR_RTL:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /rtl/Package.fpc,$(UNITSDIR)))))
-ifneq ($(UNITDIR_RTL),)
-UNITDIR_RTL:=$(firstword $(UNITDIR_RTL))
-else
-UNITDIR_RTL=
-endif
-endif
-ifdef UNITDIR_RTL
-override COMPILER_UNITDIR+=$(UNITDIR_RTL)
-endif
-endif
-ifndef NOCPUDEF
-override FPCOPTDEF=$(CPU_TARGET)
-endif
-ifneq ($(OS_TARGET),$(OS_SOURCE))
-override FPCOPT+=-T$(OS_TARGET)
-endif
-ifneq ($(CPU_TARGET),$(CPU_SOURCE))
-override FPCOPT+=-P$(CPU_TARGET)
-endif
-ifeq ($(OS_SOURCE),openbsd)
-override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
-endif
-ifndef CROSSBOOTSTRAP
-ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-XP$(BINUTILSPREFIX)
-endif
-ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-Xr$(RLINKPATH)
-endif
-endif
-ifdef UNITDIR
-override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
-endif
-ifdef LIBDIR
-override FPCOPT+=$(addprefix -Fl,$(LIBDIR))
-endif
-ifdef OBJDIR
-override FPCOPT+=$(addprefix -Fo,$(OBJDIR))
-endif
-ifdef INCDIR
-override FPCOPT+=$(addprefix -Fi,$(INCDIR))
-endif
-ifdef LINKSMART
-override FPCOPT+=-XX
-endif
-ifdef CREATESMART
-override FPCOPT+=-CX
-endif
-ifdef DEBUG
-override FPCOPT+=-gl
-override FPCOPTDEF+=DEBUG
-endif
-ifdef RELEASE
-ifneq ($(findstring 2.0.,$(FPC_VERSION)),)
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-endif
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1r
-endif
-else
-FPCCPUOPT:=-O2
-endif
-override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n
-override FPCOPTDEF+=RELEASE
-endif
-ifdef STRIP
-override FPCOPT+=-Xs
-endif
-ifdef OPTIMIZE
-override FPCOPT+=-O2
-endif
-ifdef VERBOSE
-override FPCOPT+=-vwni
-endif
-ifdef COMPILER_OPTIONS
-override FPCOPT+=$(COMPILER_OPTIONS)
-endif
-ifdef COMPILER_UNITDIR
-override FPCOPT+=$(addprefix -Fu,$(COMPILER_UNITDIR))
-endif
-ifdef COMPILER_LIBRARYDIR
-override FPCOPT+=$(addprefix -Fl,$(COMPILER_LIBRARYDIR))
-endif
-ifdef COMPILER_OBJECTDIR
-override FPCOPT+=$(addprefix -Fo,$(COMPILER_OBJECTDIR))
-endif
-ifdef COMPILER_INCLUDEDIR
-override FPCOPT+=$(addprefix -Fi,$(COMPILER_INCLUDEDIR))
-endif
-ifdef CROSSBINDIR
-override FPCOPT+=-FD$(CROSSBINDIR)
-endif
-ifdef COMPILER_TARGETDIR
-override FPCOPT+=-FE$(COMPILER_TARGETDIR)
-ifeq ($(COMPILER_TARGETDIR),.)
-override TARGETDIRPREFIX=
-else
-override TARGETDIRPREFIX=$(COMPILER_TARGETDIR)/
-endif
-endif
-ifdef COMPILER_UNITTARGETDIR
-override FPCOPT+=-FU$(COMPILER_UNITTARGETDIR)
-ifeq ($(COMPILER_UNITTARGETDIR),.)
-override UNITTARGETDIRPREFIX=
-else
-override UNITTARGETDIRPREFIX=$(COMPILER_UNITTARGETDIR)/
-endif
-else
-ifdef COMPILER_TARGETDIR
-override COMPILER_UNITTARGETDIR=$(COMPILER_TARGETDIR)
-override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX)
-endif
-endif
-ifdef CREATESHARED
-override FPCOPT+=-Cg
-ifeq ($(CPU_TARGET),i386)
-override FPCOPT+=-Aas
-endif
-endif
-ifeq ($(findstring 2.0.,$(FPC_VERSION)),)
-ifeq ($(OS_TARGET),linux)
-ifeq ($(CPU_TARGET),x86_64)
-override FPCOPT+=-Cg
-endif
-endif
-endif
-ifdef LINKSHARED
-endif
-ifdef OPT
-override FPCOPT+=$(OPT)
-endif
-ifdef FPCOPTDEF
-override FPCOPT+=$(addprefix -d,$(FPCOPTDEF))
-endif
-ifdef CFGFILE
-override FPCOPT+=@$(CFGFILE)
-endif
-ifdef USEENV
-override FPCEXTCMD:=$(FPCOPT)
-override FPCOPT:=!FPCEXTCMD
-export FPCEXTCMD
-endif
-override AFULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
-override AFULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
-ifneq ($(AFULL_TARGET),$(AFULL_SOURCE))
-override ACROSSCOMPILE=1
-endif
-ifdef ACROSSCOMPILE
-override FPCOPT+=$(CROSSOPT)
-endif
-override COMPILER:=$(FPC) $(FPCOPT)
-ifeq (,$(findstring -s ,$(COMPILER)))
-EXECPPAS=
-else
-ifeq ($(FULL_SOURCE),$(FULL_TARGET))
-ifdef RUNBATCH
-EXECPPAS:=@$(RUNBATCH) $(PPAS)
-else
-EXECPPAS:=@$(PPAS)
-endif
-endif
-endif
-.PHONY: fpc_units
-ifneq ($(TARGET_UNITS),)
-override ALLTARGET+=fpc_units
-override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
-endif
-fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES)
-ifdef TARGET_RSTS
-override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
-override CLEANRSTFILES+=$(RSTFILES)
-endif
-.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared
-$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET)
-	@$(ECHOREDIR) Compiled > $(FPCMADE)
-fpc_all: $(FPCMADE)
-fpc_smart:
-	$(MAKE) all LINKSMART=1 CREATESMART=1
-fpc_debug:
-	$(MAKE) all DEBUG=1
-fpc_release:
-	$(MAKE) all RELEASE=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res
-$(COMPILER_UNITTARGETDIR):
-	$(MKDIRTREE) $(COMPILER_UNITTARGETDIR)
-$(COMPILER_TARGETDIR):
-	$(MKDIRTREE) $(COMPILER_TARGETDIR)
-%$(PPUEXT): %.pp
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(PPUEXT): %.pas
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.pp
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.pas
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.lpr
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.dpr
-	$(COMPILER) $<
-	$(EXECPPAS)
-%.res: %.rc
-	windres -i $< -o $@
-vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.inc $(COMPILER_INCLUDEDIR)
-vpath %$(OEXT) $(COMPILER_UNITTARGETDIR)
-vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
-.PHONY: fpc_shared
-override INSTALLTARGET+=fpc_shared_install
-ifndef SHARED_LIBVERSION
-SHARED_LIBVERSION=$(FPC_VERSION)
-endif
-ifndef SHARED_LIBNAME
-SHARED_LIBNAME=$(PACKAGE_NAME)
-endif
-ifndef SHARED_FULLNAME
-SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT)
-endif
-ifndef SHARED_LIBUNITS
-SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS)
-override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS))
-endif
-fpc_shared:
-ifdef HASSHAREDLIB
-	$(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1
-ifneq ($(SHARED_BUILD),n)
-	$(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR)
-endif
-else
-	@$(ECHO) Shared Libraries not supported
-endif
-fpc_shared_install:
-ifneq ($(SHARED_BUILD),n)
-ifneq ($(SHARED_LIBUNITS),)
-ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),)
-	$(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR)
-endif
-endif
-endif
-.PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
-ifdef INSTALL_UNITS
-override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS))
-endif
-ifdef INSTALL_BUILDUNIT
-override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPPUFILES))
-endif
-ifdef INSTALLPPUFILES
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
-ifneq ($(UNITTARGETDIRPREFIX),)
-override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES)))
-override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES))))
-endif
-override INSTALL_CREATEPACKAGEFPC=1
-endif
-ifdef INSTALLEXEFILES
-ifneq ($(TARGETDIRPREFIX),)
-override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(notdir $(INSTALLEXEFILES)))
-endif
-endif
-fpc_install: all $(INSTALLTARGET)
-ifdef INSTALLEXEFILES
-	$(MKDIR) $(INSTALL_BINDIR)
-ifdef UPXPROG
-	-$(UPXPROG) $(INSTALLEXEFILES)
-endif
-	$(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR)
-endif
-ifdef INSTALL_CREATEPACKAGEFPC
-ifdef FPCMAKE
-ifdef PACKAGE_VERSION
-ifneq ($(wildcard Makefile.fpc),)
-	$(FPCMAKE) -p -T$(CPU_TARGET)-$(OS_TARGET) Makefile.fpc
-	$(MKDIR) $(INSTALL_UNITDIR)
-	$(INSTALL) Package.fpc $(INSTALL_UNITDIR)
-endif
-endif
-endif
-endif
-ifdef INSTALLPPUFILES
-	$(MKDIR) $(INSTALL_UNITDIR)
-	$(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR)
-ifneq ($(INSTALLPPULINKFILES),)
-	$(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR)
-endif
-ifneq ($(wildcard $(LIB_FULLNAME)),)
-	$(MKDIR) $(INSTALL_LIBDIR)
-	$(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR)
-ifdef inUnix
-	ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)
-endif
-endif
-endif
-ifdef INSTALL_FILES
-	$(MKDIR) $(INSTALL_DATADIR)
-	$(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR)
-endif
-fpc_sourceinstall: distclean
-	$(MKDIR) $(INSTALL_SOURCEDIR)
-	$(COPYTREE) $(BASEDIR)/* $(INSTALL_SOURCEDIR)
-fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
-ifdef HASEXAMPLES
-	$(MKDIR) $(INSTALL_EXAMPLEDIR)
-endif
-ifdef EXAMPLESOURCEFILES
-	$(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
-endif
-ifdef TARGET_EXAMPLEDIRS
-	$(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
-endif
-.PHONY: fpc_distinstall
-fpc_distinstall: install exampleinstall
-.PHONY: fpc_zipinstall fpc_zipsourceinstall fpc_zipexampleinstall
-ifndef PACKDIR
-ifndef inUnix
-PACKDIR=$(BASEDIR)/../fpc-pack
-else
-PACKDIR=/tmp/fpc-pack
-endif
-endif
-ifndef ZIPNAME
-ifdef DIST_ZIPNAME
-ZIPNAME=$(DIST_ZIPNAME)
-else
-ZIPNAME=$(PACKAGE_NAME)
-endif
-endif
-ifndef FULLZIPNAME
-FULLZIPNAME=$(ZIPCROSSPREFIX)$(ZIPPREFIX)$(ZIPNAME)$(ZIPSUFFIX)
-endif
-ifndef ZIPTARGET
-ifdef DIST_ZIPTARGET
-ZIPTARGET=DIST_ZIPTARGET
-else
-ZIPTARGET=install
-endif
-endif
-ifndef USEZIP
-ifdef inUnix
-USETAR=1
-endif
-endif
-ifndef inUnix
-USEZIPWRAPPER=1
-endif
-ifdef USEZIPWRAPPER
-ZIPPATHSEP=$(PATHSEP)
-ZIPWRAPPER=$(subst /,$(PATHSEP),$(DIST_DESTDIR)/fpczip$(SRCBATCHEXT))
-else
-ZIPPATHSEP=/
-endif
-ZIPCMD_CDPACK:=cd $(subst /,$(ZIPPATHSEP),$(PACKDIR))
-ZIPCMD_CDBASE:=cd $(subst /,$(ZIPPATHSEP),$(BASEDIR))
-ifdef USETAR
-ZIPDESTFILE:=$(DIST_DESTDIR)/$(FULLZIPNAME)$(TAREXT)
-ZIPCMD_ZIP:=$(TARPROG) cf$(TAROPT) $(ZIPDESTFILE) *
-else
-ZIPDESTFILE:=$(DIST_DESTDIR)/$(FULLZIPNAME)$(ZIPEXT)
-ZIPCMD_ZIP:=$(subst /,$(ZIPPATHSEP),$(ZIPPROG)) -Dr $(ZIPOPT) $(ZIPDESTFILE) *
-endif
-fpc_zipinstall:
-	$(MAKE) $(ZIPTARGET) INSTALL_PREFIX=$(PACKDIR) ZIPINSTALL=1
-	$(MKDIR) $(DIST_DESTDIR)
-	$(DEL) $(ZIPDESTFILE)
-ifdef USEZIPWRAPPER
-ifneq ($(ECHOREDIR),echo)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDPACK))" > $(ZIPWRAPPER)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_ZIP))" >> $(ZIPWRAPPER)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDBASE))" >> $(ZIPWRAPPER)
-else
-	echo $(ZIPCMD_CDPACK) > $(ZIPWRAPPER)
-	echo $(ZIPCMD_ZIP) >> $(ZIPWRAPPER)
-	echo $(ZIPCMD_CDBASE) >> $(ZIPWRAPPER)
-endif
-ifdef inUnix
-	/bin/sh $(ZIPWRAPPER)
-else
-ifdef RUNBATCH
-	$(RUNBATCH) (ZIPWRAPPER)
-else
-	$(ZIPWRAPPER)
-endif
-endif
-	$(DEL) $(ZIPWRAPPER)
-else
-	$(ZIPCMD_CDPACK) ; $(ZIPCMD_ZIP) ; $(ZIPCMD_CDBASE)
-endif
-	$(DELTREE) $(PACKDIR)
-fpc_zipsourceinstall:
-	$(MAKE) fpc_zipinstall ZIPTARGET=sourceinstall ZIPSUFFIX=$(ZIPSOURCESUFFIX)
-fpc_zipexampleinstall:
-ifdef HASEXAMPLES
-	$(MAKE) fpc_zipinstall ZIPTARGET=exampleinstall ZIPSUFFIX=$(ZIPEXAMPLESUFFIX)
-endif
-fpc_zipdistinstall:
-	$(MAKE) fpc_zipinstall ZIPTARGET=distinstall
-.PHONY: fpc_clean fpc_cleanall fpc_distclean
-ifdef EXEFILES
-override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
-endif
-ifdef CLEAN_UNITS
-override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
-endif
-ifdef CLEANPPUFILES
-override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(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
-fpc_clean: $(CLEANTARGET)
-ifdef CLEANEXEFILES
-	-$(DEL) $(CLEANEXEFILES)
-endif
-ifdef CLEANPPUFILES
-	-$(DEL) $(CLEANPPUFILES)
-endif
-ifneq ($(CLEANPPULINKFILES),)
-	-$(DEL) $(CLEANPPULINKFILES)
-endif
-ifdef CLEANRSTFILES
-	-$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
-endif
-ifdef CLEAN_FILES
-	-$(DEL) $(CLEAN_FILES)
-endif
-ifdef LIB_NAME
-	-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
-endif
-	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-	-$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)
-fpc_cleanall: $(CLEANTARGET)
-ifdef CLEANEXEFILES
-	-$(DEL) $(CLEANEXEFILES)
-endif
-ifdef COMPILER_UNITTARGETDIR
-ifdef CLEANPPUFILES
-	-$(DEL) $(CLEANPPUFILES)
-endif
-ifneq ($(CLEANPPULINKFILES),)
-	-$(DEL) $(CLEANPPULINKFILES)
-endif
-ifdef CLEANRSTFILES
-	-$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
-endif
-endif
-	-$(DELTREE) units
-	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
-ifneq ($(PPUEXT),.ppu)
-	-$(DEL) *.o *.ppu *.a
-endif
-	-$(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
-fpc_distclean: cleanall
-.PHONY: fpc_baseinfo
-override INFORULES+=fpc_baseinfo
-fpc_baseinfo:
-	@$(ECHO)
-	@$(ECHO)  == Package info ==
-	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
-	@$(ECHO)  Package Version.. $(PACKAGE_VERSION)
-	@$(ECHO)
-	@$(ECHO)  == Configuration info ==
-	@$(ECHO)
-	@$(ECHO)  FPC.......... $(FPC)
-	@$(ECHO)  FPC Version.. $(FPC_VERSION)
-	@$(ECHO)  Source CPU... $(CPU_SOURCE)
-	@$(ECHO)  Target CPU... $(CPU_TARGET)
-	@$(ECHO)  Source OS.... $(OS_SOURCE)
-	@$(ECHO)  Target OS.... $(OS_TARGET)
-	@$(ECHO)  Full Source.. $(FULL_SOURCE)
-	@$(ECHO)  Full Target.. $(FULL_TARGET)
-	@$(ECHO)  SourceSuffix. $(SOURCESUFFIX)
-	@$(ECHO)  TargetSuffix. $(TARGETSUFFIX)
-	@$(ECHO)
-	@$(ECHO)  == Directory info ==
-	@$(ECHO)
-	@$(ECHO)  Required pkgs... $(REQUIRE_PACKAGES)
-	@$(ECHO)
-	@$(ECHO)  Basedir......... $(BASEDIR)
-	@$(ECHO)  FPCDir.......... $(FPCDIR)
-	@$(ECHO)  CrossBinDir..... $(CROSSBINDIR)
-	@$(ECHO)  UnitsDir........ $(UNITSDIR)
-	@$(ECHO)  PackagesDir..... $(PACKAGESDIR)
-	@$(ECHO)
-	@$(ECHO)  GCC library..... $(GCCLIBDIR)
-	@$(ECHO)  Other library... $(OTHERLIBDIR)
-	@$(ECHO)
-	@$(ECHO)  == Tools info ==
-	@$(ECHO)
-	@$(ECHO)  As........ $(AS)
-	@$(ECHO)  Ld........ $(LD)
-	@$(ECHO)  Ar........ $(AR)
-	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)
-	@$(ECHO)  Mv........ $(MVPROG)
-	@$(ECHO)  Cp........ $(CPPROG)
-	@$(ECHO)  Rm........ $(RMPROG)
-	@$(ECHO)  GInstall.. $(GINSTALL)
-	@$(ECHO)  Echo...... $(ECHO)
-	@$(ECHO)  Shell..... $(SHELL)
-	@$(ECHO)  Date...... $(DATE)
-	@$(ECHO)  FPCMake... $(FPCMAKE)
-	@$(ECHO)  PPUMove... $(PPUMOVE)
-	@$(ECHO)  Upx....... $(UPXPROG)
-	@$(ECHO)  Zip....... $(ZIPPROG)
-	@$(ECHO)
-	@$(ECHO)  == Object info ==
-	@$(ECHO)
-	@$(ECHO)  Target Loaders........ $(TARGET_LOADERS)
-	@$(ECHO)  Target Units.......... $(TARGET_UNITS)
-	@$(ECHO)  Target Implicit Units. $(TARGET_IMPLICITUNITS)
-	@$(ECHO)  Target Programs....... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs........... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples....... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.... $(TARGET_EXAMPLEDIRS)
-	@$(ECHO)
-	@$(ECHO)  Clean Units......... $(CLEAN_UNITS)
-	@$(ECHO)  Clean Files......... $(CLEAN_FILES)
-	@$(ECHO)
-	@$(ECHO)  Install Units....... $(INSTALL_UNITS)
-	@$(ECHO)  Install Files....... $(INSTALL_FILES)
-	@$(ECHO)
-	@$(ECHO)  == Install info ==
-	@$(ECHO)
-	@$(ECHO)  DateStr.............. $(DATESTR)
-	@$(ECHO)  ZipName.............. $(ZIPNAME)
-	@$(ECHO)  ZipPrefix............ $(ZIPPREFIX)
-	@$(ECHO)  ZipCrossPrefix....... $(ZIPCROSSPREFIX)
-	@$(ECHO)  ZipSuffix............ $(ZIPSUFFIX)
-	@$(ECHO)  FullZipName.......... $(FULLZIPNAME)
-	@$(ECHO)  Install FPC Package.. $(INSTALL_FPCPACKAGE)
-	@$(ECHO)
-	@$(ECHO)  Install base dir..... $(INSTALL_BASEDIR)
-	@$(ECHO)  Install binary dir... $(INSTALL_BINDIR)
-	@$(ECHO)  Install library dir.. $(INSTALL_LIBDIR)
-	@$(ECHO)  Install units dir.... $(INSTALL_UNITDIR)
-	@$(ECHO)  Install source dir... $(INSTALL_SOURCEDIR)
-	@$(ECHO)  Install doc dir...... $(INSTALL_DOCDIR)
-	@$(ECHO)  Install example dir.. $(INSTALL_EXAMPLEDIR)
-	@$(ECHO)  Install data dir..... $(INSTALL_DATADIR)
-	@$(ECHO)
-	@$(ECHO)  Dist destination dir. $(DIST_DESTDIR)
-	@$(ECHO)  Dist zip name........ $(DIST_ZIPNAME)
-	@$(ECHO)
-.PHONY: fpc_info
-fpc_info: $(INFORULES)
-.PHONY: fpc_makefile fpc_makefiles fpc_makefile_sub1 fpc_makefile_sub2 \
-	fpc_makefile_dirs
-fpc_makefile:
-	$(FPCMAKE) -w -T$(OS_TARGET) Makefile.fpc
-fpc_makefile_sub1:
-ifdef TARGET_DIRS
-	$(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
-endif
-ifdef TARGET_EXAMPLEDIRS
-	$(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_EXAMPLEDIRS))
-endif
-fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS))
-fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2
-fpc_makefiles: fpc_makefile fpc_makefile_dirs
-all: fpc_all
-debug: fpc_debug
-smart: fpc_smart
-release: fpc_release
-units: fpc_units
-examples:
-shared: fpc_shared
-install: fpc_install
-sourceinstall: fpc_sourceinstall
-exampleinstall: fpc_exampleinstall
-distinstall: fpc_distinstall
-zipinstall: fpc_zipinstall
-zipsourceinstall: fpc_zipsourceinstall
-zipexampleinstall: fpc_zipexampleinstall
-zipdistinstall: fpc_zipdistinstall
-clean: fpc_clean
-distclean: fpc_distclean
-cleanall: fpc_cleanall
-info: fpc_info
-makefiles: fpc_makefiles
-.PHONY: all debug smart release units examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
-ifneq ($(wildcard fpcmake.loc),)
-include fpcmake.loc
-endif
-.NOTPARALLEL:

+ 0 - 21
packages/extra/mad/Makefile.fpc

@@ -1,21 +0,0 @@
-#
-#   Makefile.fpc for libmad bindings
-#
-
-[package]
-name=mad
-version=2.0.0
-
-[target]
-units=mad
-
-[require]
-
-[install]
-fpcpackage=y
-
-[default]
-fpcdir=../../..
-
-[rules]
-.NOTPARALLEL:

+ 0 - 717
packages/extra/mad/mad.pas

@@ -1,717 +0,0 @@
-{
-  Translation of the libmad headers for FreePascal
-  Copyright (C) 2006 by Ivo Steinmann
-}
-
-(*
- * libmad - MPEG audio decoder library
- * Copyright (C) 2000-2003 Underbit Technologies, Inc.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- *
- * If you would like to negotiate alternate licensing terms, you may do
- * so by contacting: Underbit Technologies, Inc. <[email protected]>
- *)
-
-unit mad;
-
-{$mode objfpc}
-{$MINENUMSIZE 4}
-
-interface
-
-uses
-  ctypes;
-
-{$IFDEF WINDOWS}
-  {$DEFINE DYNLINK}
-{$ENDIF}
-
-{$DEFINE MAD_DISABLE_BUILTIN_DECODER}
-
-{$IFDEF DYNLINK}
-const
-{$IF Defined(WINDOWS)}
-  madlib = 'libmad.dll';
-{$ELSEIF Defined(UNIX)}
-  madlib = 'libmad.so';
-{$ELSE}
-  {$MESSAGE ERROR 'DYNLINK not supported'}
-{$IFEND}
-{$ELSE}
-  {$LINKLIB mad}
-{$ENDIF}
-
-
-(***********************************************************************)
-(* Header : version.h                                                  *)
-(***********************************************************************)
-
-const
-  MAD_VERSION_MAJOR                 = 0;
-  MAD_VERSION_MINOR                 = 15;
-  MAD_VERSION_PATCH                 = 1;
-  MAD_VERSION_EXTRA                 = ' (beta)';
-
-function MAD_VERSION_STRINGIZE(num: cint): String;
-function MAD_VERSION_STRING(num: cint): String;
-function MAD_VERSION: String;
-
-const
-  MAD_PUBLISHYEAR                   = '2000-2004';
-  MAD_AUTHOR                        = 'Underbit Technologies, Inc.';
-  MAD_EMAIL                         = '[email protected]';
-
-
-(***********************************************************************)
-(* Header : fixed.h                                                    *)
-(***********************************************************************)
-
-type
-  mad_fixed_t                       = csint;
-  mad_fixed64hi_t                   = csint;
-  mad_fixed64lo_t                   = cuint;
-  mad_fixed64_t                     = cslonglong;
-  mad_sample_t                      = mad_fixed_t;
-
-{*
- * Fixed-point format: 0xABBBBBBB
- * A == whole part      (sign + 3 bits)
- * B == fractional part (28 bits)
- *
- * Values are signed two's complement, so the effective range is:
- * 0x80000000 to 0x7fffffff
- *       -8.0 to +7.9999999962747097015380859375
- *
- * The smallest representable value is:
- * 0x00000001 == 0.0000000037252902984619140625 (i.e. about 3.725e-9)
- *
- * 28 bits of fractional accuracy represent about
- * 8.6 digits of decimal accuracy.
- *
- * Fixed-point numbers can be added or subtracted as normal
- * integers, but multiplication requires shifting the 64-bit result
- * from 56 fractional bits back to 28 (and rounding.)
- *
- * Changing the definition of MAD_F_FRACBITS is only partially
- * supported, and must be done with care.
- *}
-
-const
-  MAD_F_FRACBITS                    = 28;
-//  MAD_F_MIN                       = mad_fixed_t(-$80000000);
-  MAD_F_MAX                         = mad_fixed_t(+$7fffffff);
-  MAD_F_ONE                         = mad_fixed_t( $10000000);
-  MAD_F_SCALEBITS                   = MAD_F_FRACBITS;
-
-//function  mad_f_tofixed(x: double): mad_fixed_t;
-
-
-(***********************************************************************)
-(* Header : bit.h                                                      *)
-(***********************************************************************)
-
-type
-  mad_bitptr = record
-    byte  : ^cuchar;
-    cache : cushort;
-    left  : cushort;
-  end;
-
-procedure mad_bit_init(var bitptr: mad_bitptr; byte: pcuchar); cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-procedure mad_bit_finish(var bitptr: mad_bitptr);
-function  mad_bit_length(var begin_, end_: mad_bitptr): cuint; cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-function  mad_bit_bitsleft(var bitptr: mad_bitptr): cushort;
-function  mad_bit_nextbyte(var bitptr: mad_bitptr): pcuchar; cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-procedure mad_bit_skip(var bitptr: mad_bitptr); cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-function  mad_bit_read(var bitptr: mad_bitptr; len: cuint): culong; cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-procedure mad_bit_write(var bitptr: mad_bitptr; len: cuint; value: culong); cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-function  mad_bit_crc(bitptr: mad_bitptr; len: cuint; init: cushort): cushort; cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-
-
-(***********************************************************************)
-(* Header : timer.h                                                    *)
-(***********************************************************************)
-
-type
-  mad_timer_t = record
-    seconds  : cslong;        { whole seconds }
-    fraction : culong;      { 1/MAD_TIMER_RESOLUTION seconds }
-  end;
-
-const
-  MAD_TIMER_RESOLUTION              = 352800000;
-  mad_timer_zero                    : mad_timer_t = (seconds:0; fraction:0);
-
-type
-  mad_units = (
-    MAD_UNITS_HOURS                 =    -2,
-    MAD_UNITS_MINUTES               =    -1,
-    MAD_UNITS_SECONDS               =     0,
-
-    { metric units }
-
-    MAD_UNITS_DECISECONDS           =    10,
-    MAD_UNITS_CENTISECONDS          =   100,
-    MAD_UNITS_MILLISECONDS          =  1000,
-
-    { audio sample units }
-
-    MAD_UNITS_8000_HZ               =  8000,
-    MAD_UNITS_11025_HZ              = 11025,
-    MAD_UNITS_12000_HZ              = 12000,
-
-    MAD_UNITS_16000_HZ              = 16000,
-    MAD_UNITS_22050_HZ              = 22050,
-    MAD_UNITS_24000_HZ              = 24000,
-
-    MAD_UNITS_32000_HZ              = 32000,
-    MAD_UNITS_44100_HZ              = 44100,
-    MAD_UNITS_48000_HZ              = 48000,
-
-    { video frame/field units }
-
-    MAD_UNITS_24_FPS                =    24,
-    MAD_UNITS_25_FPS                =    25,
-    MAD_UNITS_30_FPS                =    30,
-    MAD_UNITS_48_FPS                =    48,
-    MAD_UNITS_50_FPS                =    50,
-    MAD_UNITS_60_FPS                =    60,
-
-    { CD audio frames }
-
-    MAD_UNITS_75_FPS                =    75,
-
-    { video drop-frame units }
-
-    MAD_UNITS_23_976_FPS            =   -24,
-    MAD_UNITS_24_975_FPS            =   -25,
-    MAD_UNITS_29_97_FPS             =   -30,
-    MAD_UNITS_47_952_FPS            =   -48,
-    MAD_UNITS_49_95_FPS             =   -50,
-    MAD_UNITS_59_94_FPS             =   -60
-  );
-
-
-procedure mad_timer_reset(var timer: mad_timer_t);
-function  mad_timer_compare(timer1: mad_timer_t; timer2: mad_timer_t): cint; cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-function  mad_timer_sign(timer: mad_timer_t): cint;
-procedure mad_timer_negate(var timer: mad_timer_t); cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-function  mad_timer_abs(timer: mad_timer_t): mad_timer_t; cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-procedure mad_timer_set(var timer: mad_timer_t; seconds, numer, denom: culong); cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-procedure mad_timer_add(var timer: mad_timer_t; incr: mad_timer_t); cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-procedure mad_timer_multiply(var timer: mad_timer_t; scalar: cslong); cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-function  mad_timer_count(timer: mad_timer_t; units: mad_units): cslong; cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-function  mad_timer_fraction(timer: mad_timer_t; denom: culong): culong; cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-procedure mad_timer_string(timer: mad_timer_t; dest, format: pcchar; units, fracunits: mad_units; subparts: culong); cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-
-
-(***********************************************************************)
-(* Header : stream.h                                                   *)
-(***********************************************************************)
-
-type
-  mad_error = (
-    MAD_ERROR_NONE                  = $0000,    { no error }
-
-    MAD_ERROR_BUFLEN                = $0001,    { input buffer too small (or EOF) }
-    MAD_ERROR_BUFPTR                = $0002,    { invalid (null) buffer pointer }
-
-    MAD_ERROR_NOMEM                 = $0031,    { not enough memory }
-
-    MAD_ERROR_LOSTSYNC              = $0101,    { lost synchronization }
-    MAD_ERROR_BADLAYER              = $0102,    { reserved header layer value }
-    MAD_ERROR_BADBITRATE            = $0103,    { forbidden bitrate value }
-    MAD_ERROR_BADSAMPLERATE         = $0104,    { reserved sample frequency value }
-    MAD_ERROR_BADEMPHASIS           = $0105,    { reserved emphasis value }
-
-    MAD_ERROR_BADCRC                = $0201,    { CRC check failed }
-    MAD_ERROR_BADBITALLOC           = $0211,    { forbidden bit allocation value }
-    MAD_ERROR_BADSCALEFACTOR        = $0221,    { bad scalefactor index }
-    MAD_ERROR_BADFRAMELEN           = $0231,    { bad frame length }
-    MAD_ERROR_BADBIGVALUES          = $0232,    { bad big_values count }
-    MAD_ERROR_BADBLOCKTYPE          = $0233,    { reserved block_type }
-    MAD_ERROR_BADSCFSI              = $0234,    { bad scalefactor selection info }
-    MAD_ERROR_BADDATAPTR            = $0235,    { bad main_data_begin pointer }
-    MAD_ERROR_BADPART3LEN           = $0236,    { bad audio data length }
-    MAD_ERROR_BADHUFFTABLE          = $0237,    { bad Huffman table select }
-    MAD_ERROR_BADHUFFDATA           = $0238,    { Huffman data overrun }
-    MAD_ERROR_BADSTEREO             = $0239     { incompatible block_type for JS }
-  );
-
-function MAD_RECOVERABLE(error: mad_error) : Boolean;
-
-type
-  mad_stream = record
-    buffer       : pointer;             { input bitstream buffer }
-    bufend       : pointer;             { end of buffer }
-    skiplen      : culong;       { bytes to skip before next frame }
-    sync         : cint;                 { stream sync found }
-    freerate     : culong;       { free bitrate (fixed) }
-    this_frame   : pointer;             { start of current frame }
-    next_frame   : pointer;             { start of next frame }
-    ptr          : mad_bitptr;          { current processing bit pointer }
-    anc_ptr      : mad_bitptr;          { ancillary bits pointer }
-    anc_bitlen   : cuint;        { number of ancillary bits }
-    main_data    : pointer;             { Layer III main_data() }
-    md_len       : cuint;        { bytes in main_data }
-    options      : cint;                 { decoding options (see below) }
-    error        : mad_error;           { error code (see above) }
-  end;
-
-const
-  MAD_BUFFER_GUARD                  = 8;
-  MAD_BUFFER_MDLEN                  = 511 + 2048 + MAD_BUFFER_GUARD;
-
-  MAD_OPTION_IGNORECRC              = $0001;    { ignore CRC errors }
-  MAD_OPTION_HALFSAMPLERATE         = $0002;    { generate PCM at 1/2 sample rate }
-{$if defined(false)}                            { not yet implemented }
-  MAD_OPTION_LEFTCHANNEL            = $0010;    { decode left channel only }
-  MAD_OPTION_RIGHTCHANNEL           = $0020;    { decode right channel only }
-  MAD_OPTION_SINGLECHANNEL          = $0030;    { combine channels }
-{$ifend}
-
-procedure mad_stream_init(var stream: mad_stream); cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-procedure mad_stream_finish(var stream: mad_stream); cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-procedure mad_stream_options(stream: mad_stream; opts: cint);
-procedure mad_stream_buffer(var stream: mad_stream; buffer: pcuchar; length: culong); cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-procedure mad_stream_skip(var stream: mad_stream; length: culong); cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-function  mad_stream_sync(var stream: mad_stream): cint; cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-function  mad_stream_errorstr(var stream: mad_stream): pcchar; cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-
-
-(***********************************************************************)
-(* Header : frame.h                                                    *)
-(***********************************************************************)
-
-type
-  mad_layer = (
-    MAD_LAYER_I                     = 1,    { Layer I }
-    MAD_LAYER_II                    = 2,    { Layer II }
-    MAD_LAYER_III                   = 3     { Layer III }
-  );
-
-   mad_mode = (
-    MAD_MODE_SINGLE_CHANNEL         = 0,    { single channel }
-    MAD_MODE_DUAL_CHANNEL           = 1,    { dual channel }
-    MAD_MODE_JOINT_STEREO           = 2,    { joint (MS/intensity) stereo }
-    MAD_MODE_STEREO                 = 3     { normal LR stereo }
-  );
-
-  mad_emphasis = (
-    MAD_EMPHASIS_NONE               = 0,    { no emphasis }
-    MAD_EMPHASIS_50_15_US           = 1,    { 50/15 microseconds emphasis }
-    MAD_EMPHASIS_CCITT_J_17         = 3,    { CCITT J.17 emphasis }
-    MAD_EMPHASIS_RESERVED           = 2     { unknown emphasis }
-  );
-
-  mad_header = record
-    layer          : mad_layer;         { audio layer (1, 2, or 3) }
-    mode           : mad_mode;          { channel mode (see above) }
-    mode_extension : cint;               { additional mode info }
-    emphasis       : mad_emphasis;      { de-emphasis to use (see above) }
-    bitrate        : culong;     { stream bitrate (bps) }
-    samplerate     : cuint;      { sampling frequency (Hz) }
-    crc_check      : cushort;    { frame CRC accumulator }
-    crc_target     : cushort;    { final target CRC checksum }
-    flags          : cint;               { flags (see below) }
-    private_bits   : cint;               { private bits (see below) }
-    duration       : mad_timer_t;       { audio playing time of frame }
-  end;
-
-  mad_overlap = array[0..1, 0..31, 0..17] of mad_fixed_t;
-
-  mad_frame = record
-    header         : mad_header;        { MPEG audio header }
-    options        : cint;               { decoding options (from stream) }
-                                        { synthesis subband filter samples }
-    sbsample       : packed array[0..1, 0..35, 0..31] of mad_fixed_t;
-    overlap        : ^mad_overlap;      { Layer III block overlap data }
-  end;
-
-const
-  MAD_FLAG_NPRIVATE_III             = $0007;    { number of Layer III private bits }
-  MAD_FLAG_INCOMPLETE               = $0008;    { header but not data is decoded }
-
-  MAD_FLAG_PROTECTION               = $0010;    { frame has CRC protection }
-  MAD_FLAG_COPYRIGHT                = $0020;    { frame is copyright }
-  MAD_FLAG_ORIGINAL                 = $0040;    { frame is original (else copy) }
-  MAD_FLAG_PADDING                  = $0080;    { frame has additional slot }
-
-  MAD_FLAG_I_STEREO                 = $0100;    { uses intensity joint stereo }
-  MAD_FLAG_MS_STEREO                = $0200;    { uses middle/side joint stereo }
-  MAD_FLAG_FREEFORMAT               = $0400;    { uses free format bitrate }
-
-  MAD_FLAG_LSF_EXT                  = $1000;    { lower sampling freq. extension }
-  MAD_FLAG_MC_EXT                   = $2000;    { multichannel audio extension }
-  MAD_FLAG_MPEG_2_5_EXT             = $4000;    { MPEG 2.5 (unofficial) extension }
-
-  MAD_PRIVATE_HEADER                = $0100;    { header private bit }
-  MAD_PRIVATE_III                   = $001f;    { Layer III private bits (up to 5) }
-
-function  mad_nchannels(header: mad_header): cint;
-function  mad_nsbsamples(header: mad_header): cint;
-procedure mad_header_init(var header: mad_header); cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-procedure mad_header_finish(var header: mad_header);
-function  mad_header_decode(var header: mad_header; var stream: mad_stream): cint; cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-procedure mad_frame_init(var frame: mad_frame); cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-procedure mad_frame_finish(var frame: mad_frame); cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-function  mad_frame_decode(var frame: mad_frame; var stream: mad_stream): cint; cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-procedure mad_frame_mute(var frame: mad_frame); cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-
-
-(***********************************************************************)
-(* Header : synth.h                                                    *)
-(***********************************************************************)
-
-type
-  mad_pcm = record
-    samplerate : cuint;          { sampling frequency (Hz) }
-    channels   : cushort;        { number of channels }
-    length     : cushort;        { number of samples per channel }
-                                        { PCM output samples [ch][sample] }
-    samples    : packed array [0..1, 0..1151] of mad_fixed_t;
-  end;
-
-  mad_synth = record
-                                        { polyphase filterbank outputs [ch][eo][peo][s][v] }
-    filter     : array[0..1, 0..1, 0..1, 0..15, 0..7] of mad_fixed_t;
-    phase      : cuint;          { current processing phase }
-    pcm        : mad_pcm;               { PCM output }
-  end;
-
-const
-  { single channel PCM selector }
-  MAD_PCM_CHANNEL_SINGLE            = 0;
-
-  { dual channel PCM selector }
-  MAD_PCM_CHANNEL_DUAL_1            = 0;
-  MAD_PCM_CHANNEL_DUAL_2            = 1;
-
-  { stereo PCM selector }
-  MAD_PCM_CHANNEL_STEREO_LEFT       = 0;
-  MAD_PCM_CHANNEL_STEREO_RIGHT      = 1;
-
-procedure mad_synth_init(var synth: mad_synth); cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-procedure mad_synth_finish(var synth: mad_synth);
-procedure mad_synth_mute(var synth: mad_synth); cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-procedure mad_synth_frame(var synth: mad_synth; var frame: mad_frame); cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-
-
-(***********************************************************************)
-(* Header : decoder.h                                                  *)
-(***********************************************************************)
-
-{$IFNDEF MAD_DISABLE_BUILTIN_DECODER}
-type
-  mad_decoder_mode = (
-    MAD_DECODER_MODE_SYNC           = 0,
-    MAD_DECODER_MODE_ASYNC          = 1
-  );
-
-  mad_flow = (
-    MAD_FLOW_CONTINUE               = $0000,    { continue normally }
-    MAD_FLOW_STOP                   = $0010,    { stop decoding normally }
-    MAD_FLOW_BREAK                  = $0011,    { stop decoding and signal an error }
-    MAD_FLOW_IGNORE                 = $0020     { ignore the current frame }
-  );
-
-  async_struct = record
-    pid         : clong;
-    _in         : cint;
-    _out        : cint;
-  end;
-
-  sync_struct = record
-    stream      : mad_stream;
-    frame       : mad_frame;
-    synth       : mad_synth;
-  end;
-
-  mad_input_func    = function(user: Pointer; var stream: mad_stream): mad_flow; cdecl;
-  mad_header_func   = function(user: Pointer; var header: mad_header): mad_flow; cdecl;
-  mad_filter_func   = function(user: Pointer; var frame: mad_frame): mad_flow; cdecl;
-  mad_output_func   = function(user: Pointer; var header: mad_header; var pcm: mad_pcm): mad_flow; cdecl;
-  mad_error_func    = function(user: Pointer; var stream: mad_stream; var frame: mad_frame): mad_flow; cdecl;
-  mad_message_func  = function(user, msg: Pointer; var l: cuint): mad_flow; cdecl;
-
-  mad_decoder = record
-    mode        : mad_decoder_mode;
-    options     : cint;
-    async       : async_struct;
-    sync        : ^sync_struct;
-    data        : pointer;
-    InputFunc   : mad_input_func;
-    HeaderFunc  : mad_header_func;
-    FilterFunc  : mad_filter_func;
-    OutputFunc  : mad_output_func;
-    ErrorFunc   : mad_error_func;
-    MessageFunc : mad_message_func;
-  end;
-
-procedure mad_decoder_init(var decoder: mad_decoder; user: pointer; Input: mad_input_func; Header: mad_header_func; Filter: mad_filter_func; Output: mad_output_func; Error: mad_error_func; Message: mad_message_func); cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-function mad_decoder_finish(var decoder: mad_decoder): cint; cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-function mad_decoder_run(var decoder: mad_decoder; mode: mad_decoder_mode): cint; cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-function mad_decoder_message(var decoder: mad_decoder; msg: Pointer; var l: cuint): cint; cdecl; external {$IFDEF DYNLINK}madlib{$ENDIF};
-{$ENDIF}
-
-
-{
-  Developer of the MAD helpers for FreePascal
-  Copyright (C) 2006 by Ivo Steinmann
-}
-{$IFDEF MAD_DISABLE_BUILTIN_DECODER}
-const
-  MAD_INPUT_BUFFER_SIZE = 5*8192;
-
-type
-  mad_read_func  = function(user: pointer; ptr: pointer; size: cuint): cuint; cdecl;
-  mad_seek_func  = function(user: pointer; offset: clong; whence: cint): clong; cdecl;
-  mad_close_func = function(user: pointer): cint; cdecl;
-  mad_tell_func  = function(user: pointer): clong; cdecl;
-
-  pmad_decoder = ^mad_decoder;
-  mad_decoder = record
-    inbuf       : array[0..MAD_INPUT_BUFFER_SIZE-1] of cuint8;
-    stream      : mad_stream;
-    frame       : mad_frame;
-    synth       : mad_synth;
-    samplecnt   : cint;
-    sampleofs   : cint;
-    user        : pointer;
-    read        : mad_read_func;
-    seek        : mad_seek_func;
-    close       : mad_close_func;
-    tell        : mad_tell_func;
-
-  // Userinfo
-    sample_rate : cint;
-  end;
-
-function mad_decoder_init(user: pointer; read: mad_read_func; seek: mad_seek_func; close: mad_close_func; tell: mad_tell_func): pmad_decoder;
-function mad_decoder_read(decoder: pmad_decoder; buffer: pointer; length: cint): cint;
-procedure mad_decoder_free(decoder: pmad_decoder);
-{$ENDIF}
-
-implementation
-
-function MAD_VERSION_STRINGIZE(num: cint): String;
-begin
-  MAD_VERSION_STRINGIZE := '';
-  Str(num, MAD_VERSION_STRINGIZE);
-end;
-
-function MAD_VERSION_STRING(num: cint): String;
-begin
-  MAD_VERSION_STRING := MAD_VERSION_STRINGIZE(num);
-end;
-
-function MAD_VERSION: String;
-begin
-  MAD_VERSION :=
-    MAD_VERSION_STRING(MAD_VERSION_MAJOR) + '.' +
-    MAD_VERSION_STRING(MAD_VERSION_MINOR) + '.' +
-    MAD_VERSION_STRING(MAD_VERSION_PATCH) +
-    MAD_VERSION_EXTRA;
-end;
-
-{function mad_f_tofixed(x: double): mad_fixed_t;
-begin
-  Result := mad_fixed_t(x * double(1 shl MAD_F_FRACBITS) + 0.5);
-end;}
-
-procedure mad_bit_finish(var bitptr: mad_bitptr);
-begin
-end;
-
-function mad_bit_bitsleft(var bitptr: mad_bitptr): cushort;
-begin
-  mad_bit_bitsleft := bitptr.left;
-end;
-
-procedure mad_timer_reset(var timer: mad_timer_t);
-begin
-  timer := mad_timer_zero;
-end;
-
-function mad_timer_sign(timer: mad_timer_t): cint;
-begin
-  mad_timer_sign := mad_timer_compare(timer, mad_timer_zero);
-end;
-
-function MAD_RECOVERABLE(error: mad_error): Boolean;
-begin
-  MAD_RECOVERABLE := word(error) and $ff00 > 0;
-end;
-
-procedure mad_stream_options(stream: mad_stream; opts: cint);
-begin
-  stream.options := opts;
-end;
-
-procedure mad_header_finish(var header: mad_header);
-begin
-  FillChar(header, sizeof(mad_header), 0);
-end;
-
-function mad_nchannels(header: mad_header): cint;
-begin
-  if longword(header.mode) <> 0 then
-    mad_nchannels := 2 else
-    mad_nchannels := 1;
-end;
-
-function mad_nsbsamples(header: mad_header): cint;
-begin
-  if header.layer = MAD_LAYER_I then mad_nsbsamples := 12 else
-  if (header.layer = MAD_LAYER_III) and (header.flags and MAD_FLAG_LSF_EXT > 0)
-    then mad_nsbsamples := 18
-    else mad_nsbsamples := 36;
-end;
-
-procedure mad_synth_finish(var synth: mad_synth);
-begin
-  FillChar(synth, sizeof(mad_synth), 0);
-end;
-
-{$IFDEF MAD_DISABLE_BUILTIN_DECODER}
-function mad_decoder_init(user: pointer; read: mad_read_func; seek: mad_seek_func; close: mad_close_func; tell: mad_tell_func): pmad_decoder;
-begin
-  GetMem(Result, Sizeof(mad_decoder));
-  FillChar(Result^, Sizeof(mad_decoder), 0);
-  mad_stream_init(Result^.stream);
-  mad_frame_init(Result^.frame);
-  mad_synth_init(Result^.synth);
-  Result^.user := user;
-  Result^.read := read;
-  Result^.seek := seek;
-  Result^.close := close;
-  Result^.tell := tell;
-end;
-
-procedure mad_decoder_free(decoder: pmad_decoder);
-begin
-  if not Assigned(decoder) then
-    Exit;
-
-  mad_synth_finish(decoder^.synth);
-  mad_frame_finish(decoder^.frame);
-  mad_stream_finish(decoder^.stream);
-  decoder^.close(decoder^.user);
-  FreeMem(decoder);
-end;
-
-function mad_decoder_read(decoder: pmad_decoder; buffer: pointer; length: cint): cint;
-var
-  ofs, num, i: cint;
-  inbuf_ptr: pointer;
-  len, remaining: cint;
-begin
-  // check blocksize here!
-
-  ofs := 0;
-  num := length;
-
-  while num > 0 do
-  begin
-    if decoder^.samplecnt = 0 then
-    begin
-      if (decoder^.stream.buffer = nil) or (decoder^.stream.error = MAD_ERROR_BUFLEN) then
-      begin
-        if Assigned(decoder^.stream.next_frame) then
-        begin
-          remaining := ptrint(decoder^.stream.bufend) - ptrint(decoder^.stream.next_frame);
-          inbuf_ptr := pointer(ptrint(@decoder^.inbuf) + remaining);
-          len  := MAD_INPUT_BUFFER_SIZE - remaining;
-          Move(decoder^.stream.next_frame^, decoder^.inbuf, remaining);
-        end else begin
-          remaining := 0;
-          len  := MAD_INPUT_BUFFER_SIZE;
-          inbuf_ptr := @decoder^.inbuf;
-        end;
-
-        len := decoder^.read(decoder^.user, inbuf_ptr, len);
-        if len <= 0 then
-          Exit(ofs);
-
-        mad_stream_buffer(decoder^.stream, decoder^.inbuf, len+remaining);
-        decoder^.stream.error := MAD_ERROR_NONE;
-      end;
-
-      if mad_frame_decode(decoder^.frame, decoder^.stream) <> 0 then
-      begin
-        if MAD_RECOVERABLE(decoder^.stream.error) or (decoder^.stream.error = MAD_ERROR_BUFLEN) then
-          Continue;
-
-        Exit(ofs);
-      end;
-
-      mad_synth_frame(decoder^.synth, decoder^.frame);
-
-      with decoder^.synth do
-      if pcm.channels = 2 then
-      begin
-        for i := 0 to pcm.length -1 do
-        begin
-          if pcm.samples[0][i] >= MAD_F_ONE then
-            pcm.samples[0][i] := MAD_F_ONE - 1;
-          if pcm.samples[0][i] < -MAD_F_ONE then
-            pcm.samples[0][i] := -MAD_F_ONE;
-          pcm.samples[0][i] := pcm.samples[0][i] shr (MAD_F_FRACBITS + 1 - 16 + 1);
-
-          if pcm.samples[1][i] >= MAD_F_ONE then
-            pcm.samples[1][i] := MAD_F_ONE - 1;
-          if pcm.samples[1][i] < -MAD_F_ONE then
-            pcm.samples[1][i] := -MAD_F_ONE;
-          pcm.samples[1][i] := pcm.samples[1][i] shr (MAD_F_FRACBITS + 1 - 16 + 1);
-        end;
-      end else begin
-        for i := 0 to pcm.length -1 do
-        begin
-          if pcm.samples[0][i] >= MAD_F_ONE then
-            pcm.samples[0][i] := MAD_F_ONE - 1;
-          if pcm.samples[0][i] < -MAD_F_ONE then
-            pcm.samples[0][i] := -MAD_F_ONE;
-          pcm.samples[0][i] := pcm.samples[0][i] shr (MAD_F_FRACBITS + 1 - 16 + 1);
-          pcm.samples[1][i] := pcm.samples[0][i];
-        end;
-      end;
-
-      decoder^.sampleofs := 0;
-      decoder^.samplecnt := decoder^.synth.pcm.length;
-      decoder^.sample_rate := decoder^.synth.pcm.samplerate;
-    end;
-
-    len := num div 4;
-    if len > decoder^.samplecnt then
-      len := decoder^.samplecnt;
-
-    for i := 0 to len - 1 do
-    begin
-      pcint16(ptrint(buffer) + ofs + 0)^ := decoder^.synth.pcm.samples[0][decoder^.sampleofs];
-      pcint16(ptrint(buffer) + ofs + 2)^ := decoder^.synth.pcm.samples[1][decoder^.sampleofs];
-
-      Inc(decoder^.sampleofs);
-      Dec(decoder^.samplecnt);
-      ofs := ofs + 4;
-      num := num - 4;
-    end;
-  end;
-
-  Result := ofs;
-end;
-{$ENDIF}
-
-end.

+ 0 - 1931
packages/extra/modplug/Makefile

@@ -1,1931 +0,0 @@
-#
-# Don't edit, this file is generated by FPCMake Version 2.0.0 [2007/11/08]
-#
-default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-netbsd i386-solaris i386-qnx i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-darwin x86_64-win64 x86_64-embedded arm-linux arm-palmos arm-wince arm-gba arm-nds arm-embedded arm-symbian powerpc64-linux powerpc64-darwin powerpc64-embedded
-BSDs = freebsd netbsd openbsd darwin
-UNIXs = linux $(BSDs) solaris qnx
-LIMIT83fs = go32v2 os2 emx watcom
-OSNeedsComspecToRunBatch = go32v2 watcom
-FORCE:
-.PHONY: FORCE
-override PATH:=$(patsubst %/,%,$(subst \,/,$(PATH)))
-ifneq ($(findstring darwin,$(OSTYPE)),)
-inUnix=1 #darwin
-SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
-else
-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))))
-ifeq ($(PWD),)
-$(error You need the GNU utils package to use this Makefile)
-else
-PWD:=$(firstword $(PWD))
-SRCEXEEXT=
-endif
-else
-PWD:=$(firstword $(PWD))
-SRCEXEEXT=.exe
-endif
-ifndef inUnix
-ifeq ($(OS),Windows_NT)
-inWinNT=1
-else
-ifdef OS2_SHELL
-inOS2=1
-endif
-endif
-else
-ifneq ($(findstring cygdrive,$(PATH)),)
-inCygWin=1
-endif
-endif
-ifdef inUnix
-SRCBATCHEXT=.sh
-else
-ifdef inOS2
-SRCBATCHEXT=.cmd
-else
-SRCBATCHEXT=.bat
-endif
-endif
-ifdef COMSPEC
-ifneq ($(findstring $(OS_SOURCE),$(OSNeedsComspecToRunBatch)),)
-RUNBATCH=$(COMSPEC) /C
-endif
-endif
-ifdef inUnix
-PATHSEP=/
-else
-PATHSEP:=$(subst /,\,/)
-ifdef inCygWin
-PATHSEP=/
-endif
-endif
-ifdef PWD
-BASEDIR:=$(subst \,/,$(shell $(PWD)))
-ifdef inCygWin
-ifneq ($(findstring /cygdrive/,$(BASEDIR)),)
-BASENODIR:=$(patsubst /cygdrive%,%,$(BASEDIR))
-BASEDRIVE:=$(firstword $(subst /, ,$(BASENODIR)))
-BASEDIR:=$(subst /cygdrive/$(BASEDRIVE)/,$(BASEDRIVE):/,$(BASEDIR))
-endif
-endif
-else
-BASEDIR=.
-endif
-ifdef inOS2
-ifndef ECHO
-ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-ECHO=echo
-else
-ECHO:=$(firstword $(ECHO))
-endif
-else
-ECHO:=$(firstword $(ECHO))
-endif
-endif
-export ECHO
-endif
-override DEFAULT_FPCDIR=../../..
-ifndef FPC
-ifdef PP
-FPC=$(PP)
-endif
-endif
-ifndef FPC
-FPCPROG:=$(strip $(wildcard $(addsuffix /fpc$(SRCEXEEXT),$(SEARCHPATH))))
-ifneq ($(FPCPROG),)
-FPCPROG:=$(firstword $(FPCPROG))
-ifneq ($(CPU_TARGET),)
-FPC:=$(shell $(FPCPROG) -P$(CPU_TARGET) -PB)
-else
-FPC:=$(shell $(FPCPROG) -PB)
-endif
-ifneq ($(findstring Error,$(FPC)),)
-override FPC=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH)))))
-endif
-else
-override FPC=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH)))))
-endif
-endif
-override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
-override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT)
-FOUNDFPC:=$(strip $(wildcard $(FPC)))
-ifeq ($(FOUNDFPC),)
-FOUNDFPC=$(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH))))
-ifeq ($(FOUNDFPC),)
-$(error Compiler $(FPC) not found)
-endif
-endif
-ifndef FPC_COMPILERINFO
-FPC_COMPILERINFO:=$(shell $(FPC) -iVSPTPSOTO)
-endif
-ifndef FPC_VERSION
-FPC_VERSION:=$(word 1,$(FPC_COMPILERINFO))
-endif
-export FPC FPC_VERSION FPC_COMPILERINFO
-unexport CHECKDEPEND ALLDEPENDENCIES
-ifndef CPU_TARGET
-ifdef CPU_TARGET_DEFAULT
-CPU_TARGET=$(CPU_TARGET_DEFAULT)
-endif
-endif
-ifndef OS_TARGET
-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
-ifndef CPU_SOURCE
-CPU_SOURCE:=$(word 2,$(FPC_COMPILERINFO))
-endif
-ifndef CPU_TARGET
-CPU_TARGET:=$(word 3,$(FPC_COMPILERINFO))
-endif
-ifndef OS_SOURCE
-OS_SOURCE:=$(word 4,$(FPC_COMPILERINFO))
-endif
-ifndef OS_TARGET
-OS_TARGET:=$(word 5,$(FPC_COMPILERINFO))
-endif
-FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
-FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
-ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),)
-TARGETSUFFIX=$(OS_TARGET)
-SOURCESUFFIX=$(OS_SOURCE)
-else
-TARGETSUFFIX=$(FULL_TARGET)
-SOURCESUFFIX=$(FULL_SOURCE)
-endif
-ifneq ($(FULL_TARGET),$(FULL_SOURCE))
-CROSSCOMPILE=1
-endif
-ifeq ($(findstring makefile,$(MAKECMDGOALS)),)
-ifeq ($(findstring $(FULL_TARGET),$(MAKEFILETARGETS)),)
-$(error The Makefile doesn't support target $(FULL_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 TARGETSUFFIX SOURCESUFFIX CROSSCOMPILE
-ifdef FPCDIR
-override FPCDIR:=$(subst \,/,$(FPCDIR))
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR=wrong
-endif
-else
-override FPCDIR=wrong
-endif
-ifdef DEFAULT_FPCDIR
-ifeq ($(FPCDIR),wrong)
-override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR=wrong
-endif
-endif
-endif
-ifeq ($(FPCDIR),wrong)
-ifdef inUnix
-override FPCDIR=/usr/local/lib/fpc/$(FPC_VERSION)
-ifeq ($(wildcard $(FPCDIR)/units),)
-override FPCDIR=/usr/lib/fpc/$(FPC_VERSION)
-endif
-else
-override FPCDIR:=$(subst /$(FPC),,$(firstword $(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH))))))
-override FPCDIR:=$(FPCDIR)/..
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR:=$(FPCDIR)/..
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR:=$(BASEDIR)
-ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
-override FPCDIR=c:/pp
-endif
-endif
-endif
-endif
-endif
-ifndef CROSSBINDIR
-CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX))
-endif
-ifndef BINUTILSPREFIX
-ifndef CROSSBINDIR
-ifdef CROSSCOMPILE
-BINUTILSPREFIX=$(CPU_TARGET)-$(OS_TARGET)-
-endif
-endif
-endif
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(TARGETSUFFIX))
-ifeq ($(UNITSDIR),)
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-endif
-PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages $(FPCDIR)/packages/base $(FPCDIR)/packages/extra)
-override PACKAGE_NAME=modplug
-override PACKAGE_VERSION=2.0.0
-ifeq ($(FULL_TARGET),i386-linux)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),i386-go32v2)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),i386-win32)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),i386-os2)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),i386-freebsd)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),i386-beos)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),i386-netbsd)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),i386-solaris)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),i386-qnx)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),i386-netware)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),i386-openbsd)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),i386-wdosx)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),i386-darwin)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),i386-emx)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),i386-watcom)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),i386-netwlibc)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),i386-wince)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),i386-embedded)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),i386-symbian)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),m68k-linux)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),m68k-freebsd)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),m68k-netbsd)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),m68k-amiga)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),m68k-atari)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),m68k-openbsd)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),m68k-palmos)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),m68k-embedded)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),powerpc-linux)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),powerpc-netbsd)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),powerpc-amiga)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),powerpc-macos)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),powerpc-darwin)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),powerpc-morphos)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),powerpc-embedded)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),sparc-linux)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),sparc-netbsd)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),sparc-solaris)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),sparc-embedded)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),x86_64-linux)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),x86_64-freebsd)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),x86_64-darwin)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),x86_64-win64)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),x86_64-embedded)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),arm-linux)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),arm-palmos)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),arm-wince)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),arm-gba)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),arm-nds)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),arm-embedded)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),arm-symbian)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),powerpc64-linux)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),powerpc64-darwin)
-override TARGET_UNITS+=modplug
-endif
-ifeq ($(FULL_TARGET),powerpc64-embedded)
-override TARGET_UNITS+=modplug
-endif
-override INSTALL_FPCPACKAGE=y
-ifdef REQUIRE_UNITSDIR
-override UNITSDIR+=$(REQUIRE_UNITSDIR)
-endif
-ifdef REQUIRE_PACKAGESDIR
-override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
-endif
-ifdef ZIPINSTALL
-ifneq ($(findstring $(OS_TARGET),$(UNIXs)),)
-UNIXHier=1
-endif
-else
-ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),)
-UNIXHier=1
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef PREFIX
-INSTALL_PREFIX=$(PREFIX)
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef UNIXHier
-INSTALL_PREFIX=/usr/local
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BASEDIR:=/pp
-else
-INSTALL_BASEDIR:=/$(PACKAGE_NAME)
-endif
-endif
-endif
-export INSTALL_PREFIX
-ifdef INSTALL_FPCSUBDIR
-export INSTALL_FPCSUBDIR
-endif
-ifndef DIST_DESTDIR
-DIST_DESTDIR:=$(BASEDIR)
-endif
-export DIST_DESTDIR
-ifndef COMPILER_UNITTARGETDIR
-ifdef PACKAGEDIR_MAIN
-COMPILER_UNITTARGETDIR=$(PACKAGEDIR_MAIN)/units/$(TARGETSUFFIX)
-else
-COMPILER_UNITTARGETDIR=units/$(TARGETSUFFIX)
-endif
-endif
-ifndef COMPILER_TARGETDIR
-COMPILER_TARGETDIR=.
-endif
-ifndef INSTALL_BASEDIR
-ifdef UNIXHier
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
-else
-INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/$(PACKAGE_NAME)
-endif
-else
-INSTALL_BASEDIR:=$(INSTALL_PREFIX)
-endif
-endif
-ifndef INSTALL_BINDIR
-ifdef UNIXHier
-INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
-else
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
-ifdef INSTALL_FPCPACKAGE
-ifdef CROSSCOMPILE
-ifdef CROSSINSTALL
-INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(SOURCESUFFIX)
-else
-INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX)
-endif
-else
-INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX)
-endif
-endif
-endif
-endif
-ifndef INSTALL_UNITDIR
-INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(TARGETSUFFIX)
-ifdef INSTALL_FPCPACKAGE
-ifdef PACKAGE_NAME
-INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
-endif
-endif
-endif
-ifndef INSTALL_LIBDIR
-ifdef UNIXHier
-INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
-else
-INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
-endif
-endif
-ifndef INSTALL_SOURCEDIR
-ifdef UNIXHier
-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)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-endif
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-else
-ifdef INSTALL_FPCPACKAGE
-ifdef INSTALL_FPCSUBDIR
-INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
-endif
-else
-INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source
-endif
-endif
-endif
-ifndef INSTALL_DOCDIR
-ifdef UNIXHier
-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
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc/$(PACKAGE_NAME)
-else
-INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc
-endif
-endif
-endif
-ifndef INSTALL_EXAMPLEDIR
-ifdef UNIXHier
-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)
-else
-INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples
-endif
-endif
-endif
-ifndef INSTALL_DATADIR
-INSTALL_DATADIR=$(INSTALL_BASEDIR)
-endif
-ifndef INSTALL_SHAREDDIR
-INSTALL_SHAREDDIR=$(INSTALL_PREFIX)/lib
-endif
-ifdef CROSSCOMPILE
-ifndef CROSSBINDIR
-CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(SOURCESUFFIX))
-ifeq ($(CROSSBINDIR),)
-CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(TARGETSUFFIX)/bin/$(FULL_SOURCE))
-endif
-endif
-else
-CROSSBINDIR=
-endif
-BATCHEXT=.bat
-LOADEREXT=.as
-EXEEXT=.exe
-PPLEXT=.ppl
-PPUEXT=.ppu
-OEXT=.o
-ASMEXT=.s
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.so
-SHAREDLIBPREFIX=libfp
-STATICLIBPREFIX=libp
-IMPORTLIBPREFIX=libimp
-RSTEXT=.rst
-ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
-ifeq ($(OS_TARGET),go32v1)
-STATICLIBPREFIX=
-SHORTSUFFIX=v1
-endif
-ifeq ($(OS_TARGET),go32v2)
-STATICLIBPREFIX=
-SHORTSUFFIX=dos
-endif
-ifeq ($(OS_TARGET),watcom)
-STATICLIBPREFIX=
-OEXT=.obj
-ASMEXT=.asm
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=wat
-endif
-ifeq ($(OS_TARGET),linux)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=lnx
-endif
-ifeq ($(OS_TARGET),freebsd)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=fbs
-endif
-ifeq ($(OS_TARGET),netbsd)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=nbs
-endif
-ifeq ($(OS_TARGET),openbsd)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=obs
-endif
-ifeq ($(OS_TARGET),win32)
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=w32
-endif
-ifeq ($(OS_TARGET),os2)
-BATCHEXT=.cmd
-AOUTEXT=.out
-STATICLIBPREFIX=
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=os2
-ECHO=echo
-endif
-ifeq ($(OS_TARGET),emx)
-BATCHEXT=.cmd
-AOUTEXT=.out
-STATICLIBPREFIX=
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=emx
-ECHO=echo
-endif
-ifeq ($(OS_TARGET),amiga)
-EXEEXT=
-SHAREDLIBEXT=.library
-SHORTSUFFIX=amg
-endif
-ifeq ($(OS_TARGET),morphos)
-EXEEXT=
-SHAREDLIBEXT=.library
-SHORTSUFFIX=mos
-endif
-ifeq ($(OS_TARGET),atari)
-EXEEXT=.ttp
-SHORTSUFFIX=ata
-endif
-ifeq ($(OS_TARGET),beos)
-BATCHEXT=.sh
-EXEEXT=
-SHORTSUFFIX=be
-endif
-ifeq ($(OS_TARGET),solaris)
-BATCHEXT=.sh
-EXEEXT=
-SHORTSUFFIX=sun
-endif
-ifeq ($(OS_TARGET),qnx)
-BATCHEXT=.sh
-EXEEXT=
-SHORTSUFFIX=qnx
-endif
-ifeq ($(OS_TARGET),netware)
-EXEEXT=.nlm
-STATICLIBPREFIX=
-SHORTSUFFIX=nw
-endif
-ifeq ($(OS_TARGET),netwlibc)
-EXEEXT=.nlm
-STATICLIBPREFIX=
-SHORTSUFFIX=nwl
-endif
-ifeq ($(OS_TARGET),macos)
-BATCHEXT=
-EXEEXT=
-DEBUGSYMEXT=.xcoff
-SHORTSUFFIX=mac
-endif
-ifeq ($(OS_TARGET),darwin)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=dwn
-endif
-ifeq ($(OS_TARGET),gba)
-EXEEXT=.gba
-SHAREDLIBEXT=.so
-SHORTSUFFIX=gba
-endif
-ifeq ($(OS_TARGET),symbian)
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=symbian
-endif
-else
-ifeq ($(OS_TARGET),go32v1)
-PPUEXT=.pp1
-OEXT=.o1
-ASMEXT=.s1
-SMARTEXT=.sl1
-STATICLIBEXT=.a1
-SHAREDLIBEXT=.so1
-STATICLIBPREFIX=
-SHORTSUFFIX=v1
-endif
-ifeq ($(OS_TARGET),go32v2)
-STATICLIBPREFIX=
-SHORTSUFFIX=dos
-endif
-ifeq ($(OS_TARGET),watcom)
-STATICLIBPREFIX=
-SHORTSUFFIX=wat
-endif
-ifeq ($(OS_TARGET),linux)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=lnx
-endif
-ifeq ($(OS_TARGET),freebsd)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=fbs
-endif
-ifeq ($(OS_TARGET),netbsd)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=nbs
-endif
-ifeq ($(OS_TARGET),openbsd)
-BATCHEXT=.sh
-EXEEXT=
-HASSHAREDLIB=1
-SHORTSUFFIX=obs
-endif
-ifeq ($(OS_TARGET),win32)
-PPUEXT=.ppw
-OEXT=.ow
-ASMEXT=.sw
-SMARTEXT=.slw
-STATICLIBEXT=.aw
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=w32
-endif
-ifeq ($(OS_TARGET),os2)
-BATCHEXT=.cmd
-PPUEXT=.ppo
-ASMEXT=.so2
-OEXT=.oo2
-AOUTEXT=.out
-SMARTEXT=.sl2
-STATICLIBPREFIX=
-STATICLIBEXT=.ao2
-SHAREDLIBEXT=.dll
-SHORTSUFFIX=os2
-ECHO=echo
-endif
-ifeq ($(OS_TARGET),amiga)
-EXEEXT=
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.library
-SHORTSUFFIX=amg
-endif
-ifeq ($(OS_TARGET),atari)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=.ttp
-SHORTSUFFIX=ata
-endif
-ifeq ($(OS_TARGET),beos)
-BATCHEXT=.sh
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-SHORTSUFFIX=be
-endif
-ifeq ($(OS_TARGET),solaris)
-BATCHEXT=.sh
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-SHORTSUFFIX=sun
-endif
-ifeq ($(OS_TARGET),qnx)
-BATCHEXT=.sh
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-SHORTSUFFIX=qnx
-endif
-ifeq ($(OS_TARGET),netware)
-STATICLIBPREFIX=
-PPUEXT=.ppu
-OEXT=.o
-ASMEXT=.s
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.nlm
-EXEEXT=.nlm
-SHORTSUFFIX=nw
-endif
-ifeq ($(OS_TARGET),netwlibc)
-STATICLIBPREFIX=
-PPUEXT=.ppu
-OEXT=.o
-ASMEXT=.s
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.nlm
-EXEEXT=.nlm
-SHORTSUFFIX=nwl
-endif
-ifeq ($(OS_TARGET),macos)
-BATCHEXT=
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-DEBUGSYMEXT=.xcoff
-SHORTSUFFIX=mac
-endif
-endif
-ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),)
-FPCMADE=fpcmade.$(SHORTSUFFIX)
-ZIPSUFFIX=$(SHORTSUFFIX)
-ZIPCROSSPREFIX=
-ZIPSOURCESUFFIX=src
-ZIPEXAMPLESUFFIX=exm
-else
-FPCMADE=fpcmade.$(TARGETSUFFIX)
-ZIPSOURCESUFFIX=.source
-ZIPEXAMPLESUFFIX=.examples
-ifdef CROSSCOMPILE
-ZIPSUFFIX=.$(SOURCESUFFIX)
-ZIPCROSSPREFIX=$(TARGETSUFFIX)-
-else
-ZIPSUFFIX=.$(TARGETSUFFIX)
-ZIPCROSSPREFIX=
-endif
-endif
-ifndef ECHO
-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
-else
-ECHO:=$(firstword $(ECHO))
-endif
-endif
-export ECHO
-ifndef DATE
-DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(DATE),)
-DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(DATE),)
-DATE= __missing_command_DATE
-else
-DATE:=$(firstword $(DATE))
-endif
-else
-DATE:=$(firstword $(DATE))
-endif
-endif
-export DATE
-ifndef GINSTALL
-GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(GINSTALL),)
-GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(GINSTALL),)
-GINSTALL= __missing_command_GINSTALL
-else
-GINSTALL:=$(firstword $(GINSTALL))
-endif
-else
-GINSTALL:=$(firstword $(GINSTALL))
-endif
-endif
-export GINSTALL
-ifndef CPPROG
-CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(CPPROG),)
-CPPROG= __missing_command_CPPROG
-else
-CPPROG:=$(firstword $(CPPROG))
-endif
-endif
-export CPPROG
-ifndef RMPROG
-RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(RMPROG),)
-RMPROG= __missing_command_RMPROG
-else
-RMPROG:=$(firstword $(RMPROG))
-endif
-endif
-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 MKDIRPROG
-MKDIRPROG:=$(strip $(wildcard $(addsuffix /gmkdir$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(MKDIRPROG),)
-MKDIRPROG:=$(strip $(wildcard $(addsuffix /mkdir$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(MKDIRPROG),)
-MKDIRPROG= __missing_command_MKDIRPROG
-else
-MKDIRPROG:=$(firstword $(MKDIRPROG))
-endif
-else
-MKDIRPROG:=$(firstword $(MKDIRPROG))
-endif
-endif
-export MKDIRPROG
-ifndef ECHOREDIR
-ifndef inUnix
-ECHOREDIR=echo
-else
-ECHOREDIR=$(ECHO)
-endif
-endif
-ifndef COPY
-COPY:=$(CPPROG) -fp
-endif
-ifndef COPYTREE
-COPYTREE:=$(CPPROG) -Rfp
-endif
-ifndef MKDIRTREE
-MKDIRTREE:=$(MKDIRPROG) -p
-endif
-ifndef MOVE
-MOVE:=$(MVPROG) -f
-endif
-ifndef DEL
-DEL:=$(RMPROG) -f
-endif
-ifndef DELTREE
-DELTREE:=$(RMPROG) -rf
-endif
-ifndef INSTALL
-ifdef inUnix
-INSTALL:=$(GINSTALL) -c -m 644
-else
-INSTALL:=$(COPY)
-endif
-endif
-ifndef INSTALLEXE
-ifdef inUnix
-INSTALLEXE:=$(GINSTALL) -c -m 755
-else
-INSTALLEXE:=$(COPY)
-endif
-endif
-ifndef MKDIR
-MKDIR:=$(GINSTALL) -m 755 -d
-endif
-export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
-ifndef PPUMOVE
-PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(PPUMOVE),)
-PPUMOVE= __missing_command_PPUMOVE
-else
-PPUMOVE:=$(firstword $(PPUMOVE))
-endif
-endif
-export PPUMOVE
-ifndef FPCMAKE
-FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(FPCMAKE),)
-FPCMAKE= __missing_command_FPCMAKE
-else
-FPCMAKE:=$(firstword $(FPCMAKE))
-endif
-endif
-export FPCMAKE
-ifndef ZIPPROG
-ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ZIPPROG),)
-ZIPPROG= __missing_command_ZIPPROG
-else
-ZIPPROG:=$(firstword $(ZIPPROG))
-endif
-endif
-export ZIPPROG
-ifndef TARPROG
-TARPROG:=$(strip $(wildcard $(addsuffix /gtar$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(TARPROG),)
-TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(TARPROG),)
-TARPROG= __missing_command_TARPROG
-else
-TARPROG:=$(firstword $(TARPROG))
-endif
-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)),)
-ifeq ($(OS_TARGET),win32)
-ifeq ($(CROSSBINDIR),)
-ASNAME=asw
-LDNAME=ldw
-ARNAME=arw
-endif
-endif
-endif
-ifndef ASPROG
-ifdef CROSSBINDIR
-ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT)
-else
-ASPROG=$(ASNAME)
-endif
-endif
-ifndef LDPROG
-ifdef CROSSBINDIR
-LDPROG=$(CROSSBINDIR)/$(LDNAME)$(SRCEXEEXT)
-else
-LDPROG=$(LDNAME)
-endif
-endif
-ifndef RCPROG
-ifdef CROSSBINDIR
-RCPROG=$(CROSSBINDIR)/$(RCNAME)$(SRCEXEEXT)
-else
-RCPROG=$(RCNAME)
-endif
-endif
-ifndef ARPROG
-ifdef CROSSBINDIR
-ARPROG=$(CROSSBINDIR)/$(ARNAME)$(SRCEXEEXT)
-else
-ARPROG=$(ARNAME)
-endif
-endif
-AS=$(ASPROG)
-LD=$(LDPROG)
-RC=$(RCPROG)
-AR=$(ARPROG)
-PPAS=ppas$(SRCBATCHEXT)
-ifdef inUnix
-LDCONFIG=ldconfig
-else
-LDCONFIG=
-endif
-ifdef DATE
-DATESTR:=$(shell $(DATE) +%Y%m%d)
-else
-DATESTR=
-endif
-ifndef UPXPROG
-ifeq ($(OS_TARGET),go32v2)
-UPXPROG:=1
-endif
-ifeq ($(OS_TARGET),win32)
-UPXPROG:=1
-endif
-ifdef UPXPROG
-UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(UPXPROG),)
-UPXPROG=
-else
-UPXPROG:=$(firstword $(UPXPROG))
-endif
-else
-UPXPROG=
-endif
-endif
-export UPXPROG
-ZIPOPT=-9
-ZIPEXT=.zip
-ifeq ($(USETAR),bz2)
-TAROPT=vj
-TAREXT=.tar.bz2
-else
-TAROPT=vz
-TAREXT=.tar.gz
-endif
-override REQUIRE_PACKAGES=rtl 
-ifeq ($(FULL_TARGET),i386-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-go32v2)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-win32)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-os2)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-freebsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-beos)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-netbsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-solaris)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-qnx)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-netware)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-openbsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-wdosx)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-darwin)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-emx)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-watcom)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-netwlibc)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-wince)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),i386-symbian)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),m68k-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),m68k-freebsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),m68k-netbsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),m68k-amiga)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),m68k-atari)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),m68k-openbsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),m68k-palmos)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),m68k-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc-netbsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc-amiga)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc-macos)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc-darwin)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc-morphos)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),sparc-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),sparc-netbsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),sparc-solaris)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),sparc-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),x86_64-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),x86_64-freebsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),x86_64-darwin)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),x86_64-win64)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),x86_64-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),arm-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),arm-palmos)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),arm-wince)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),arm-gba)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),arm-nds)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),arm-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),arm-symbian)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc64-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc64-darwin)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),powerpc64-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
-ifneq ($(PACKAGEDIR_RTL),)
-ifneq ($(wildcard $(PACKAGEDIR_RTL)/units/$(TARGETSUFFIX)),)
-UNITDIR_RTL=$(PACKAGEDIR_RTL)/units/$(TARGETSUFFIX)
-else
-UNITDIR_RTL=$(PACKAGEDIR_RTL)
-endif
-ifdef CHECKDEPEND
-$(PACKAGEDIR_RTL)/$(FPCMADE):
-	$(MAKE) -C $(PACKAGEDIR_RTL) $(FPCMADE)
-override ALLDEPENDENCIES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
-endif
-else
-PACKAGEDIR_RTL=
-UNITDIR_RTL:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /rtl/Package.fpc,$(UNITSDIR)))))
-ifneq ($(UNITDIR_RTL),)
-UNITDIR_RTL:=$(firstword $(UNITDIR_RTL))
-else
-UNITDIR_RTL=
-endif
-endif
-ifdef UNITDIR_RTL
-override COMPILER_UNITDIR+=$(UNITDIR_RTL)
-endif
-endif
-ifndef NOCPUDEF
-override FPCOPTDEF=$(CPU_TARGET)
-endif
-ifneq ($(OS_TARGET),$(OS_SOURCE))
-override FPCOPT+=-T$(OS_TARGET)
-endif
-ifneq ($(CPU_TARGET),$(CPU_SOURCE))
-override FPCOPT+=-P$(CPU_TARGET)
-endif
-ifeq ($(OS_SOURCE),openbsd)
-override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
-endif
-ifndef CROSSBOOTSTRAP
-ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-XP$(BINUTILSPREFIX)
-endif
-ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-Xr$(RLINKPATH)
-endif
-endif
-ifdef UNITDIR
-override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
-endif
-ifdef LIBDIR
-override FPCOPT+=$(addprefix -Fl,$(LIBDIR))
-endif
-ifdef OBJDIR
-override FPCOPT+=$(addprefix -Fo,$(OBJDIR))
-endif
-ifdef INCDIR
-override FPCOPT+=$(addprefix -Fi,$(INCDIR))
-endif
-ifdef LINKSMART
-override FPCOPT+=-XX
-endif
-ifdef CREATESMART
-override FPCOPT+=-CX
-endif
-ifdef DEBUG
-override FPCOPT+=-gl
-override FPCOPTDEF+=DEBUG
-endif
-ifdef RELEASE
-ifneq ($(findstring 2.0.,$(FPC_VERSION)),)
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-endif
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1r
-endif
-else
-FPCCPUOPT:=-O2
-endif
-override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n
-override FPCOPTDEF+=RELEASE
-endif
-ifdef STRIP
-override FPCOPT+=-Xs
-endif
-ifdef OPTIMIZE
-override FPCOPT+=-O2
-endif
-ifdef VERBOSE
-override FPCOPT+=-vwni
-endif
-ifdef COMPILER_OPTIONS
-override FPCOPT+=$(COMPILER_OPTIONS)
-endif
-ifdef COMPILER_UNITDIR
-override FPCOPT+=$(addprefix -Fu,$(COMPILER_UNITDIR))
-endif
-ifdef COMPILER_LIBRARYDIR
-override FPCOPT+=$(addprefix -Fl,$(COMPILER_LIBRARYDIR))
-endif
-ifdef COMPILER_OBJECTDIR
-override FPCOPT+=$(addprefix -Fo,$(COMPILER_OBJECTDIR))
-endif
-ifdef COMPILER_INCLUDEDIR
-override FPCOPT+=$(addprefix -Fi,$(COMPILER_INCLUDEDIR))
-endif
-ifdef CROSSBINDIR
-override FPCOPT+=-FD$(CROSSBINDIR)
-endif
-ifdef COMPILER_TARGETDIR
-override FPCOPT+=-FE$(COMPILER_TARGETDIR)
-ifeq ($(COMPILER_TARGETDIR),.)
-override TARGETDIRPREFIX=
-else
-override TARGETDIRPREFIX=$(COMPILER_TARGETDIR)/
-endif
-endif
-ifdef COMPILER_UNITTARGETDIR
-override FPCOPT+=-FU$(COMPILER_UNITTARGETDIR)
-ifeq ($(COMPILER_UNITTARGETDIR),.)
-override UNITTARGETDIRPREFIX=
-else
-override UNITTARGETDIRPREFIX=$(COMPILER_UNITTARGETDIR)/
-endif
-else
-ifdef COMPILER_TARGETDIR
-override COMPILER_UNITTARGETDIR=$(COMPILER_TARGETDIR)
-override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX)
-endif
-endif
-ifdef CREATESHARED
-override FPCOPT+=-Cg
-ifeq ($(CPU_TARGET),i386)
-override FPCOPT+=-Aas
-endif
-endif
-ifeq ($(findstring 2.0.,$(FPC_VERSION)),)
-ifeq ($(OS_TARGET),linux)
-ifeq ($(CPU_TARGET),x86_64)
-override FPCOPT+=-Cg
-endif
-endif
-endif
-ifdef LINKSHARED
-endif
-ifdef OPT
-override FPCOPT+=$(OPT)
-endif
-ifdef FPCOPTDEF
-override FPCOPT+=$(addprefix -d,$(FPCOPTDEF))
-endif
-ifdef CFGFILE
-override FPCOPT+=@$(CFGFILE)
-endif
-ifdef USEENV
-override FPCEXTCMD:=$(FPCOPT)
-override FPCOPT:=!FPCEXTCMD
-export FPCEXTCMD
-endif
-override AFULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
-override AFULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
-ifneq ($(AFULL_TARGET),$(AFULL_SOURCE))
-override ACROSSCOMPILE=1
-endif
-ifdef ACROSSCOMPILE
-override FPCOPT+=$(CROSSOPT)
-endif
-override COMPILER:=$(FPC) $(FPCOPT)
-ifeq (,$(findstring -s ,$(COMPILER)))
-EXECPPAS=
-else
-ifeq ($(FULL_SOURCE),$(FULL_TARGET))
-ifdef RUNBATCH
-EXECPPAS:=@$(RUNBATCH) $(PPAS)
-else
-EXECPPAS:=@$(PPAS)
-endif
-endif
-endif
-.PHONY: fpc_units
-ifneq ($(TARGET_UNITS),)
-override ALLTARGET+=fpc_units
-override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
-endif
-fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES)
-ifdef TARGET_RSTS
-override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
-override CLEANRSTFILES+=$(RSTFILES)
-endif
-.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared
-$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET)
-	@$(ECHOREDIR) Compiled > $(FPCMADE)
-fpc_all: $(FPCMADE)
-fpc_smart:
-	$(MAKE) all LINKSMART=1 CREATESMART=1
-fpc_debug:
-	$(MAKE) all DEBUG=1
-fpc_release:
-	$(MAKE) all RELEASE=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res
-$(COMPILER_UNITTARGETDIR):
-	$(MKDIRTREE) $(COMPILER_UNITTARGETDIR)
-$(COMPILER_TARGETDIR):
-	$(MKDIRTREE) $(COMPILER_TARGETDIR)
-%$(PPUEXT): %.pp
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(PPUEXT): %.pas
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.pp
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.pas
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.lpr
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.dpr
-	$(COMPILER) $<
-	$(EXECPPAS)
-%.res: %.rc
-	windres -i $< -o $@
-vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.inc $(COMPILER_INCLUDEDIR)
-vpath %$(OEXT) $(COMPILER_UNITTARGETDIR)
-vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
-.PHONY: fpc_shared
-override INSTALLTARGET+=fpc_shared_install
-ifndef SHARED_LIBVERSION
-SHARED_LIBVERSION=$(FPC_VERSION)
-endif
-ifndef SHARED_LIBNAME
-SHARED_LIBNAME=$(PACKAGE_NAME)
-endif
-ifndef SHARED_FULLNAME
-SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT)
-endif
-ifndef SHARED_LIBUNITS
-SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS)
-override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS))
-endif
-fpc_shared:
-ifdef HASSHAREDLIB
-	$(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1
-ifneq ($(SHARED_BUILD),n)
-	$(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR)
-endif
-else
-	@$(ECHO) Shared Libraries not supported
-endif
-fpc_shared_install:
-ifneq ($(SHARED_BUILD),n)
-ifneq ($(SHARED_LIBUNITS),)
-ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),)
-	$(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR)
-endif
-endif
-endif
-.PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
-ifdef INSTALL_UNITS
-override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS))
-endif
-ifdef INSTALL_BUILDUNIT
-override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPPUFILES))
-endif
-ifdef INSTALLPPUFILES
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
-ifneq ($(UNITTARGETDIRPREFIX),)
-override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES)))
-override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES))))
-endif
-override INSTALL_CREATEPACKAGEFPC=1
-endif
-ifdef INSTALLEXEFILES
-ifneq ($(TARGETDIRPREFIX),)
-override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(notdir $(INSTALLEXEFILES)))
-endif
-endif
-fpc_install: all $(INSTALLTARGET)
-ifdef INSTALLEXEFILES
-	$(MKDIR) $(INSTALL_BINDIR)
-ifdef UPXPROG
-	-$(UPXPROG) $(INSTALLEXEFILES)
-endif
-	$(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR)
-endif
-ifdef INSTALL_CREATEPACKAGEFPC
-ifdef FPCMAKE
-ifdef PACKAGE_VERSION
-ifneq ($(wildcard Makefile.fpc),)
-	$(FPCMAKE) -p -T$(CPU_TARGET)-$(OS_TARGET) Makefile.fpc
-	$(MKDIR) $(INSTALL_UNITDIR)
-	$(INSTALL) Package.fpc $(INSTALL_UNITDIR)
-endif
-endif
-endif
-endif
-ifdef INSTALLPPUFILES
-	$(MKDIR) $(INSTALL_UNITDIR)
-	$(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR)
-ifneq ($(INSTALLPPULINKFILES),)
-	$(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR)
-endif
-ifneq ($(wildcard $(LIB_FULLNAME)),)
-	$(MKDIR) $(INSTALL_LIBDIR)
-	$(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR)
-ifdef inUnix
-	ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)
-endif
-endif
-endif
-ifdef INSTALL_FILES
-	$(MKDIR) $(INSTALL_DATADIR)
-	$(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR)
-endif
-fpc_sourceinstall: distclean
-	$(MKDIR) $(INSTALL_SOURCEDIR)
-	$(COPYTREE) $(BASEDIR)/* $(INSTALL_SOURCEDIR)
-fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
-ifdef HASEXAMPLES
-	$(MKDIR) $(INSTALL_EXAMPLEDIR)
-endif
-ifdef EXAMPLESOURCEFILES
-	$(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
-endif
-ifdef TARGET_EXAMPLEDIRS
-	$(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
-endif
-.PHONY: fpc_distinstall
-fpc_distinstall: install exampleinstall
-.PHONY: fpc_zipinstall fpc_zipsourceinstall fpc_zipexampleinstall
-ifndef PACKDIR
-ifndef inUnix
-PACKDIR=$(BASEDIR)/../fpc-pack
-else
-PACKDIR=/tmp/fpc-pack
-endif
-endif
-ifndef ZIPNAME
-ifdef DIST_ZIPNAME
-ZIPNAME=$(DIST_ZIPNAME)
-else
-ZIPNAME=$(PACKAGE_NAME)
-endif
-endif
-ifndef FULLZIPNAME
-FULLZIPNAME=$(ZIPCROSSPREFIX)$(ZIPPREFIX)$(ZIPNAME)$(ZIPSUFFIX)
-endif
-ifndef ZIPTARGET
-ifdef DIST_ZIPTARGET
-ZIPTARGET=DIST_ZIPTARGET
-else
-ZIPTARGET=install
-endif
-endif
-ifndef USEZIP
-ifdef inUnix
-USETAR=1
-endif
-endif
-ifndef inUnix
-USEZIPWRAPPER=1
-endif
-ifdef USEZIPWRAPPER
-ZIPPATHSEP=$(PATHSEP)
-ZIPWRAPPER=$(subst /,$(PATHSEP),$(DIST_DESTDIR)/fpczip$(SRCBATCHEXT))
-else
-ZIPPATHSEP=/
-endif
-ZIPCMD_CDPACK:=cd $(subst /,$(ZIPPATHSEP),$(PACKDIR))
-ZIPCMD_CDBASE:=cd $(subst /,$(ZIPPATHSEP),$(BASEDIR))
-ifdef USETAR
-ZIPDESTFILE:=$(DIST_DESTDIR)/$(FULLZIPNAME)$(TAREXT)
-ZIPCMD_ZIP:=$(TARPROG) cf$(TAROPT) $(ZIPDESTFILE) *
-else
-ZIPDESTFILE:=$(DIST_DESTDIR)/$(FULLZIPNAME)$(ZIPEXT)
-ZIPCMD_ZIP:=$(subst /,$(ZIPPATHSEP),$(ZIPPROG)) -Dr $(ZIPOPT) $(ZIPDESTFILE) *
-endif
-fpc_zipinstall:
-	$(MAKE) $(ZIPTARGET) INSTALL_PREFIX=$(PACKDIR) ZIPINSTALL=1
-	$(MKDIR) $(DIST_DESTDIR)
-	$(DEL) $(ZIPDESTFILE)
-ifdef USEZIPWRAPPER
-ifneq ($(ECHOREDIR),echo)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDPACK))" > $(ZIPWRAPPER)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_ZIP))" >> $(ZIPWRAPPER)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDBASE))" >> $(ZIPWRAPPER)
-else
-	echo $(ZIPCMD_CDPACK) > $(ZIPWRAPPER)
-	echo $(ZIPCMD_ZIP) >> $(ZIPWRAPPER)
-	echo $(ZIPCMD_CDBASE) >> $(ZIPWRAPPER)
-endif
-ifdef inUnix
-	/bin/sh $(ZIPWRAPPER)
-else
-ifdef RUNBATCH
-	$(RUNBATCH) (ZIPWRAPPER)
-else
-	$(ZIPWRAPPER)
-endif
-endif
-	$(DEL) $(ZIPWRAPPER)
-else
-	$(ZIPCMD_CDPACK) ; $(ZIPCMD_ZIP) ; $(ZIPCMD_CDBASE)
-endif
-	$(DELTREE) $(PACKDIR)
-fpc_zipsourceinstall:
-	$(MAKE) fpc_zipinstall ZIPTARGET=sourceinstall ZIPSUFFIX=$(ZIPSOURCESUFFIX)
-fpc_zipexampleinstall:
-ifdef HASEXAMPLES
-	$(MAKE) fpc_zipinstall ZIPTARGET=exampleinstall ZIPSUFFIX=$(ZIPEXAMPLESUFFIX)
-endif
-fpc_zipdistinstall:
-	$(MAKE) fpc_zipinstall ZIPTARGET=distinstall
-.PHONY: fpc_clean fpc_cleanall fpc_distclean
-ifdef EXEFILES
-override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
-endif
-ifdef CLEAN_UNITS
-override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
-endif
-ifdef CLEANPPUFILES
-override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(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
-fpc_clean: $(CLEANTARGET)
-ifdef CLEANEXEFILES
-	-$(DEL) $(CLEANEXEFILES)
-endif
-ifdef CLEANPPUFILES
-	-$(DEL) $(CLEANPPUFILES)
-endif
-ifneq ($(CLEANPPULINKFILES),)
-	-$(DEL) $(CLEANPPULINKFILES)
-endif
-ifdef CLEANRSTFILES
-	-$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
-endif
-ifdef CLEAN_FILES
-	-$(DEL) $(CLEAN_FILES)
-endif
-ifdef LIB_NAME
-	-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
-endif
-	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-	-$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)
-fpc_cleanall: $(CLEANTARGET)
-ifdef CLEANEXEFILES
-	-$(DEL) $(CLEANEXEFILES)
-endif
-ifdef COMPILER_UNITTARGETDIR
-ifdef CLEANPPUFILES
-	-$(DEL) $(CLEANPPUFILES)
-endif
-ifneq ($(CLEANPPULINKFILES),)
-	-$(DEL) $(CLEANPPULINKFILES)
-endif
-ifdef CLEANRSTFILES
-	-$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
-endif
-endif
-	-$(DELTREE) units
-	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
-ifneq ($(PPUEXT),.ppu)
-	-$(DEL) *.o *.ppu *.a
-endif
-	-$(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
-fpc_distclean: cleanall
-.PHONY: fpc_baseinfo
-override INFORULES+=fpc_baseinfo
-fpc_baseinfo:
-	@$(ECHO)
-	@$(ECHO)  == Package info ==
-	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
-	@$(ECHO)  Package Version.. $(PACKAGE_VERSION)
-	@$(ECHO)
-	@$(ECHO)  == Configuration info ==
-	@$(ECHO)
-	@$(ECHO)  FPC.......... $(FPC)
-	@$(ECHO)  FPC Version.. $(FPC_VERSION)
-	@$(ECHO)  Source CPU... $(CPU_SOURCE)
-	@$(ECHO)  Target CPU... $(CPU_TARGET)
-	@$(ECHO)  Source OS.... $(OS_SOURCE)
-	@$(ECHO)  Target OS.... $(OS_TARGET)
-	@$(ECHO)  Full Source.. $(FULL_SOURCE)
-	@$(ECHO)  Full Target.. $(FULL_TARGET)
-	@$(ECHO)  SourceSuffix. $(SOURCESUFFIX)
-	@$(ECHO)  TargetSuffix. $(TARGETSUFFIX)
-	@$(ECHO)
-	@$(ECHO)  == Directory info ==
-	@$(ECHO)
-	@$(ECHO)  Required pkgs... $(REQUIRE_PACKAGES)
-	@$(ECHO)
-	@$(ECHO)  Basedir......... $(BASEDIR)
-	@$(ECHO)  FPCDir.......... $(FPCDIR)
-	@$(ECHO)  CrossBinDir..... $(CROSSBINDIR)
-	@$(ECHO)  UnitsDir........ $(UNITSDIR)
-	@$(ECHO)  PackagesDir..... $(PACKAGESDIR)
-	@$(ECHO)
-	@$(ECHO)  GCC library..... $(GCCLIBDIR)
-	@$(ECHO)  Other library... $(OTHERLIBDIR)
-	@$(ECHO)
-	@$(ECHO)  == Tools info ==
-	@$(ECHO)
-	@$(ECHO)  As........ $(AS)
-	@$(ECHO)  Ld........ $(LD)
-	@$(ECHO)  Ar........ $(AR)
-	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)
-	@$(ECHO)  Mv........ $(MVPROG)
-	@$(ECHO)  Cp........ $(CPPROG)
-	@$(ECHO)  Rm........ $(RMPROG)
-	@$(ECHO)  GInstall.. $(GINSTALL)
-	@$(ECHO)  Echo...... $(ECHO)
-	@$(ECHO)  Shell..... $(SHELL)
-	@$(ECHO)  Date...... $(DATE)
-	@$(ECHO)  FPCMake... $(FPCMAKE)
-	@$(ECHO)  PPUMove... $(PPUMOVE)
-	@$(ECHO)  Upx....... $(UPXPROG)
-	@$(ECHO)  Zip....... $(ZIPPROG)
-	@$(ECHO)
-	@$(ECHO)  == Object info ==
-	@$(ECHO)
-	@$(ECHO)  Target Loaders........ $(TARGET_LOADERS)
-	@$(ECHO)  Target Units.......... $(TARGET_UNITS)
-	@$(ECHO)  Target Implicit Units. $(TARGET_IMPLICITUNITS)
-	@$(ECHO)  Target Programs....... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs........... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples....... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.... $(TARGET_EXAMPLEDIRS)
-	@$(ECHO)
-	@$(ECHO)  Clean Units......... $(CLEAN_UNITS)
-	@$(ECHO)  Clean Files......... $(CLEAN_FILES)
-	@$(ECHO)
-	@$(ECHO)  Install Units....... $(INSTALL_UNITS)
-	@$(ECHO)  Install Files....... $(INSTALL_FILES)
-	@$(ECHO)
-	@$(ECHO)  == Install info ==
-	@$(ECHO)
-	@$(ECHO)  DateStr.............. $(DATESTR)
-	@$(ECHO)  ZipName.............. $(ZIPNAME)
-	@$(ECHO)  ZipPrefix............ $(ZIPPREFIX)
-	@$(ECHO)  ZipCrossPrefix....... $(ZIPCROSSPREFIX)
-	@$(ECHO)  ZipSuffix............ $(ZIPSUFFIX)
-	@$(ECHO)  FullZipName.......... $(FULLZIPNAME)
-	@$(ECHO)  Install FPC Package.. $(INSTALL_FPCPACKAGE)
-	@$(ECHO)
-	@$(ECHO)  Install base dir..... $(INSTALL_BASEDIR)
-	@$(ECHO)  Install binary dir... $(INSTALL_BINDIR)
-	@$(ECHO)  Install library dir.. $(INSTALL_LIBDIR)
-	@$(ECHO)  Install units dir.... $(INSTALL_UNITDIR)
-	@$(ECHO)  Install source dir... $(INSTALL_SOURCEDIR)
-	@$(ECHO)  Install doc dir...... $(INSTALL_DOCDIR)
-	@$(ECHO)  Install example dir.. $(INSTALL_EXAMPLEDIR)
-	@$(ECHO)  Install data dir..... $(INSTALL_DATADIR)
-	@$(ECHO)
-	@$(ECHO)  Dist destination dir. $(DIST_DESTDIR)
-	@$(ECHO)  Dist zip name........ $(DIST_ZIPNAME)
-	@$(ECHO)
-.PHONY: fpc_info
-fpc_info: $(INFORULES)
-.PHONY: fpc_makefile fpc_makefiles fpc_makefile_sub1 fpc_makefile_sub2 \
-	fpc_makefile_dirs
-fpc_makefile:
-	$(FPCMAKE) -w -T$(OS_TARGET) Makefile.fpc
-fpc_makefile_sub1:
-ifdef TARGET_DIRS
-	$(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
-endif
-ifdef TARGET_EXAMPLEDIRS
-	$(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_EXAMPLEDIRS))
-endif
-fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS))
-fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2
-fpc_makefiles: fpc_makefile fpc_makefile_dirs
-all: fpc_all
-debug: fpc_debug
-smart: fpc_smart
-release: fpc_release
-units: fpc_units
-examples:
-shared: fpc_shared
-install: fpc_install
-sourceinstall: fpc_sourceinstall
-exampleinstall: fpc_exampleinstall
-distinstall: fpc_distinstall
-zipinstall: fpc_zipinstall
-zipsourceinstall: fpc_zipsourceinstall
-zipexampleinstall: fpc_zipexampleinstall
-zipdistinstall: fpc_zipdistinstall
-clean: fpc_clean
-distclean: fpc_distclean
-cleanall: fpc_cleanall
-info: fpc_info
-makefiles: fpc_makefiles
-.PHONY: all debug smart release units examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
-ifneq ($(wildcard fpcmake.loc),)
-include fpcmake.loc
-endif
-.NOTPARALLEL:

+ 0 - 21
packages/extra/modplug/Makefile.fpc

@@ -1,21 +0,0 @@
-#
-#   Makefile.fpc for libmodplug bindings
-#
-
-[package]
-name=modplug
-version=2.0.0
-
-[target]
-units=modplug
-
-[require]
-
-[install]
-fpcpackage=y
-
-[default]
-fpcdir=../../..
-
-[rules]
-.NOTPARALLEL:

+ 0 - 130
packages/extra/modplug/modplug.pas

@@ -1,130 +0,0 @@
-{
-  Translation of the libmodplug headers for FreePascal
-  Copyright (C) 2006 by Ivo Steinmann
-}
-
-(*
- * This source code is public domain.
- *
- * Authors: Kenton Varda <[email protected]> (C interface wrapper)
- *)
-
-unit modplug;
-
-{$mode objfpc}
-{$MINENUMSIZE 4}
-
-interface
-
-uses
-  ctypes;
-
-{$IFDEF WINDOWS}
-  {$DEFINE DYNLINK}
-{$ENDIF}
-
-//{$DEFINE DYNLINK}
-
-{$IFDEF DYNLINK}
-const
-{$IF Defined(WINDOWS)}
-  modpluglib = 'libmodplug.dll';
-{$ELSEIF Defined(UNIX)}
-  modpluglib = 'libmodplug.so';
-{$ELSE}
-  {$MESSAGE ERROR 'DYNLINK not supported'}
-{$IFEND}
-{$ELSE}
-  //{$LINKLIB stdc++}
-  {$LINKLIB modplug}
-{$ENDIF}
-
-
-type
-  PModPlugFile = ^ModPlugFile;
-  ModPlugFile = record
-  end;
-
-(* Load a mod file.  [data] should point to a block of memory containing the complete
- * file, and [size] should be the size of that block.
- * Return the loaded mod file on success, or NULL on failure. *)
-function ModPlug_Load(data: pointer; size: cint): PModPlugFile; cdecl; external {$IFDEF DYNLINK}modpluglib{$ENDIF};
-
-(* Unload a mod file. *)
-procedure ModPlug_Unload(_file: PModPlugFile); cdecl; external {$IFDEF DYNLINK}modpluglib{$ENDIF};
-
-(* Read sample data into the buffer.  Returns the number of bytes read.  If the end
- * of the mod has been reached, zero is returned. *)
-function ModPlug_Read(_file: PModPlugFile; buffer: pointer; size: cint): cint; cdecl; external {$IFDEF DYNLINK}modpluglib{$ENDIF};
-
-(* Get the name of the mod.  The returned buffer is stored within the ModPlugFile
- * structure and will remain valid until you unload the file. *)
-function ModPlug_GetName(_file: PModPlugFile): pcchar; cdecl; external {$IFDEF DYNLINK}modpluglib{$ENDIF};
-
-(* Get the length of the mod, in milliseconds.  Note that this result is not always
- * accurate, especially in the case of mods with loops. *)
-function ModPlug_GetLength(_file: PModPlugFile): cint; cdecl; external {$IFDEF DYNLINK}modpluglib{$ENDIF};
-
-(* Seek to a particular position in the song.  Note that seeking and MODs don't mix very
- * well.  Some mods will be missing instruments for a short time after a seek, as ModPlug
- * does not scan the sequence backwards to find out which instruments were supposed to be
- * playing at that time.  (Doing so would be difficult and not very reliable.)  Also,
- * note that seeking is not very exact in some mods -- especially those for which
- * ModPlug_GetLength() does not report the full length. *)
-procedure ModPlug_Seek(_file: PModPlugFile; millisecond: cint); cdecl; external {$IFDEF DYNLINK}modpluglib{$ENDIF};
-
-
-const
-// _ModPlug_Flags
-  MODPLUG_ENABLE_OVERSAMPLING     = 1 shl 0;  (* Enable oversampling (highly recommended) *)
-  MODPLUG_ENABLE_NOISE_REDUCTION  = 1 shl 1;  (* Enable noise reduction *)
-  MODPLUG_ENABLE_REVERB           = 1 shl 2;  (* Enable reverb *)
-  MODPLUG_ENABLE_MEGABASS         = 1 shl 3;  (* Enable megabass *)
-  MODPLUG_ENABLE_SURROUND         = 1 shl 4;  (* Enable surround sound. *)
-
-// _ModPlug_ResamplingMode
-  MODPLUG_RESAMPLE_NEAREST = 0;  (* No interpolation (very fast, extremely bad sound quality) *)
-  MODPLUG_RESAMPLE_LINEAR  = 1;  (* Linear interpolation (fast, good quality) *)
-  MODPLUG_RESAMPLE_SPLINE  = 2;  (* Cubic spline interpolation (high quality) *)
-  MODPLUG_RESAMPLE_FIR     = 3;  (* 8-tap fir filter (extremely high quality) *)
-
-type
-  PModPlug_Settings = ^ModPlug_Settings;
-  ModPlug_Settings = record
-    mFlags          : cint;  (* One or more of the MODPLUG_ENABLE_* flags above, bitwise-OR'ed *)
-
-    (* Note that ModPlug always decodes sound at 44100kHz, 32 bit, stereo and then
-     * down-mixes to the settings you choose. *)
-    mChannels       : cint;  (* Number of channels - 1 for mono or 2 for stereo *)
-    mBits           : cint;  (* Bits per sample - 8, 16, or 32 *)
-    mFrequency      : cint;  (* Sampling rate - 11025, 22050, or 44100 *)
-    mResamplingMode : cint;  (* One of MODPLUG_RESAMPLE_*, above *)
-
-    mReverbDepth    : cint;  (* Reverb level 0(quiet)-100(loud)      *)
-    mReverbDelay    : cint;  (* Reverb delay in ms, usually 40-200ms *)
-    mBassAmount     : cint;  (* XBass level 0(quiet)-100(loud)       *)
-    mBassRange      : cint;  (* XBass cutoff in Hz 10-100            *)
-    mSurroundDepth  : cint;  (* Surround level 0(quiet)-100(heavy)   *)
-    mSurroundDelay  : cint;  (* Surround delay in ms, usually 5-40ms *)
-    mLoopCount      : cint;  (* Number of times to loop.  Zero prevents looping. -1 loops forever. *)
-  end;
-
-(* Get and set the mod decoder settings.  All options, except for channels, bits-per-sample,
- * sampling rate, and loop count, will take effect immediately.  Those options which don't
- * take effect immediately will take effect the next time you load a mod. *)
-procedure ModPlug_GetSettings(settings: PModPlug_Settings); cdecl; external {$IFDEF DYNLINK}modpluglib{$ENDIF};
-procedure ModPlug_SetSettings(const settings: PModPlug_Settings); cdecl; external {$IFDEF DYNLINK}modpluglib{$ENDIF};
-
-implementation
-
-function cppNew(s: cint): pointer; cdecl; public; alias : '_Znaj'; alias : '_Znwj';
-begin
-  GetMem(Result, s);
-end;
-
-procedure cppDelete(p: pointer); cdecl; public; alias : '_ZdlPv'; alias : '_ZdaPv';
-begin
-  FreeMem(p);
-end;
-
-end.