summaryrefslogtreecommitdiff
path: root/packages/fcl-base
diff options
context:
space:
mode:
Diffstat (limited to 'packages/fcl-base')
-rw-r--r--packages/fcl-base/Makefile322
-rw-r--r--packages/fcl-base/Makefile.fpc10
-rw-r--r--packages/fcl-base/examples/Makefile (renamed from packages/fcl-base/tests/Makefile)713
-rw-r--r--packages/fcl-base/examples/Makefile.fpc (renamed from packages/fcl-base/tests/Makefile.fpc)0
-rw-r--r--packages/fcl-base/examples/README (renamed from packages/fcl-base/tests/README)0
-rw-r--r--packages/fcl-base/examples/asiotest.pp (renamed from packages/fcl-base/tests/asiotest.pp)0
-rw-r--r--packages/fcl-base/examples/b64.pp (renamed from packages/fcl-base/tests/b64.pp)0
-rw-r--r--packages/fcl-base/examples/b64dec.pp (renamed from packages/fcl-base/tests/b64dec.pp)0
-rw-r--r--packages/fcl-base/examples/b64enc.pp (renamed from packages/fcl-base/tests/b64enc.pp)0
-rw-r--r--packages/fcl-base/examples/b64test.pp (renamed from packages/fcl-base/tests/b64test.pp)0
-rw-r--r--packages/fcl-base/examples/b64test2.pp (renamed from packages/fcl-base/tests/b64test2.pp)0
-rw-r--r--packages/fcl-base/examples/base64decodingtestcase.pas (renamed from packages/fcl-base/tests/base64decodingtestcase.pas)0
-rw-r--r--packages/fcl-base/examples/cachetest.pp (renamed from packages/fcl-base/tests/cachetest.pp)0
-rw-r--r--packages/fcl-base/examples/cfgtest.pp (renamed from packages/fcl-base/tests/cfgtest.pp)0
-rw-r--r--packages/fcl-base/examples/daemon.pp (renamed from packages/fcl-base/tests/daemon.pp)0
-rw-r--r--packages/fcl-base/examples/daemon.txt (renamed from packages/fcl-base/tests/daemon.txt)0
-rw-r--r--packages/fcl-base/examples/dbugsrv.pp (renamed from packages/fcl-base/tests/dbugsrv.pp)0
-rw-r--r--packages/fcl-base/examples/debugtest.pp (renamed from packages/fcl-base/tests/debugtest.pp)0
-rw-r--r--packages/fcl-base/examples/doecho.pp (renamed from packages/fcl-base/tests/doecho.pp)0
-rw-r--r--packages/fcl-base/examples/dparser.pp (renamed from packages/fcl-base/tests/dparser.pp)0
-rw-r--r--packages/fcl-base/examples/dsockcli.pp (renamed from packages/fcl-base/tests/dsockcli.pp)0
-rw-r--r--packages/fcl-base/examples/dsocksvr.pp (renamed from packages/fcl-base/tests/dsocksvr.pp)0
-rw-r--r--packages/fcl-base/examples/fpdoc.dtd (renamed from packages/fcl-base/tests/fpdoc.dtd)0
-rw-r--r--packages/fcl-base/examples/fstream.pp (renamed from packages/fcl-base/tests/fstream.pp)0
-rw-r--r--packages/fcl-base/examples/htdump.pp (renamed from packages/fcl-base/tests/htdump.pp)0
-rw-r--r--packages/fcl-base/examples/intl/Makefile (renamed from packages/fcl-base/tests/intl/Makefile)0
-rw-r--r--packages/fcl-base/examples/intl/README (renamed from packages/fcl-base/tests/intl/README)0
-rw-r--r--packages/fcl-base/examples/intl/restest.de.mo (renamed from packages/fcl-base/tests/intl/restest.de.mo)bin172 -> 172 bytes
-rw-r--r--packages/fcl-base/examples/intl/restest.de.po (renamed from packages/fcl-base/tests/intl/restest.de.po)0
-rw-r--r--packages/fcl-base/examples/intl/restest.fr.mo (renamed from packages/fcl-base/tests/intl/restest.fr.mo)bin178 -> 178 bytes
-rw-r--r--packages/fcl-base/examples/intl/restest.fr.po (renamed from packages/fcl-base/tests/intl/restest.fr.po)0
-rw-r--r--packages/fcl-base/examples/intl/restest.nl.mo (renamed from packages/fcl-base/tests/intl/restest.nl.mo)bin135 -> 135 bytes
-rw-r--r--packages/fcl-base/examples/intl/restest.nl.po (renamed from packages/fcl-base/tests/intl/restest.nl.po)0
-rw-r--r--packages/fcl-base/examples/intl/restest.pb.mo (renamed from packages/fcl-base/tests/intl/restest.pb.mo)bin177 -> 177 bytes
-rw-r--r--packages/fcl-base/examples/intl/restest.pb.po (renamed from packages/fcl-base/tests/intl/restest.pb.po)0
-rw-r--r--packages/fcl-base/examples/intl/restest.ru.mo (renamed from packages/fcl-base/tests/intl/restest.ru.mo)bin467 -> 467 bytes
-rw-r--r--packages/fcl-base/examples/intl/restest.ru.po (renamed from packages/fcl-base/tests/intl/restest.ru.po)0
-rw-r--r--packages/fcl-base/examples/intl/resttest.po (renamed from packages/fcl-base/tests/intl/resttest.po)0
-rw-r--r--packages/fcl-base/examples/ipcclient.pp (renamed from packages/fcl-base/tests/ipcclient.pp)0
-rw-r--r--packages/fcl-base/examples/ipcserver.pp (renamed from packages/fcl-base/tests/ipcserver.pp)0
-rw-r--r--packages/fcl-base/examples/isockcli.pp (renamed from packages/fcl-base/tests/isockcli.pp)0
-rw-r--r--packages/fcl-base/examples/isocksvr.pp (renamed from packages/fcl-base/tests/isocksvr.pp)0
-rw-r--r--packages/fcl-base/examples/istream.pp (renamed from packages/fcl-base/tests/istream.pp)0
-rw-r--r--packages/fcl-base/examples/kword.xml (renamed from packages/fcl-base/tests/kword.xml)0
-rw-r--r--packages/fcl-base/examples/list.pp (renamed from packages/fcl-base/tests/list.pp)0
-rw-r--r--packages/fcl-base/examples/mstream.pp (renamed from packages/fcl-base/tests/mstream.pp)0
-rw-r--r--packages/fcl-base/examples/overview.rtf (renamed from packages/fcl-base/tests/overview.rtf)bin2300 -> 2300 bytes
-rw-r--r--packages/fcl-base/examples/parser.dat (renamed from packages/fcl-base/tests/parser.dat)0
-rw-r--r--packages/fcl-base/examples/poolmm1.pp (renamed from packages/fcl-base/tests/poolmm1.pp)0
-rw-r--r--packages/fcl-base/examples/poolmm2.pp (renamed from packages/fcl-base/tests/poolmm2.pp)0
-rw-r--r--packages/fcl-base/examples/restest.pp (renamed from packages/fcl-base/tests/restest.pp)0
-rw-r--r--packages/fcl-base/examples/showver.pp (renamed from packages/fcl-base/tests/showver.pp)0
-rw-r--r--packages/fcl-base/examples/showver.rc (renamed from packages/fcl-base/tests/showver.rc)0
-rw-r--r--packages/fcl-base/examples/showver.res (renamed from packages/fcl-base/tests/showver.res)bin793 -> 793 bytes
-rw-r--r--packages/fcl-base/examples/simple.xml (renamed from packages/fcl-base/tests/simple.xml)0
-rw-r--r--packages/fcl-base/examples/sockcli.pp (renamed from packages/fcl-base/tests/sockcli.pp)0
-rw-r--r--packages/fcl-base/examples/socksvr.pp (renamed from packages/fcl-base/tests/socksvr.pp)0
-rw-r--r--packages/fcl-base/examples/sstream.pp (renamed from packages/fcl-base/tests/sstream.pp)0
-rw-r--r--packages/fcl-base/examples/stringl.pp (renamed from packages/fcl-base/tests/stringl.pp)0
-rw-r--r--packages/fcl-base/examples/tarmakercons.pas (renamed from packages/fcl-base/tests/tarmakercons.pas)0
-rw-r--r--packages/fcl-base/examples/tarmakerconsgzip.pas (renamed from packages/fcl-base/tests/tarmakerconsgzip.pas)0
-rw-r--r--packages/fcl-base/examples/testapp.pp (renamed from packages/fcl-base/tests/testapp.pp)0
-rw-r--r--packages/fcl-base/examples/testbf.pp (renamed from packages/fcl-base/tests/testbf.pp)0
-rw-r--r--packages/fcl-base/examples/testbs.pp (renamed from packages/fcl-base/tests/testbs.pp)0
-rw-r--r--packages/fcl-base/examples/testcgi.html (renamed from packages/fcl-base/tests/testcgi.html)0
-rw-r--r--packages/fcl-base/examples/testcgi.pp (renamed from packages/fcl-base/tests/testcgi.pp)0
-rw-r--r--packages/fcl-base/examples/testcont.pp (renamed from packages/fcl-base/tests/testcont.pp)0
-rw-r--r--packages/fcl-base/examples/testez.pp (renamed from packages/fcl-base/tests/testez.pp)0
-rw-r--r--packages/fcl-base/examples/testhres.pp (renamed from packages/fcl-base/tests/testhres.pp)0
-rw-r--r--packages/fcl-base/examples/testnres.pp (renamed from packages/fcl-base/tests/testnres.pp)0
-rw-r--r--packages/fcl-base/examples/testol.pp (renamed from packages/fcl-base/tests/testol.pp)0
-rw-r--r--packages/fcl-base/examples/testproc.pp (renamed from packages/fcl-base/tests/testproc.pp)0
-rw-r--r--packages/fcl-base/examples/testreg.pp (renamed from packages/fcl-base/tests/testreg.pp)0
-rw-r--r--packages/fcl-base/examples/testrhre.pp (renamed from packages/fcl-base/tests/testrhre.pp)0
-rw-r--r--packages/fcl-base/examples/testrnre.pp (renamed from packages/fcl-base/tests/testrnre.pp)0
-rw-r--r--packages/fcl-base/examples/testrsre.pp (renamed from packages/fcl-base/tests/testrsre.pp)0
-rw-r--r--packages/fcl-base/examples/testrtf.pp (renamed from packages/fcl-base/tests/testrtf.pp)0
-rw-r--r--packages/fcl-base/examples/testser.pp (renamed from packages/fcl-base/tests/testser.pp)0
-rw-r--r--packages/fcl-base/examples/testsres.pp (renamed from packages/fcl-base/tests/testsres.pp)0
-rw-r--r--packages/fcl-base/examples/testtimer.pp (renamed from packages/fcl-base/tests/testtimer.pp)0
-rw-r--r--packages/fcl-base/examples/testunzip.pp (renamed from packages/fcl-base/tests/testunzip.pp)0
-rw-r--r--packages/fcl-base/examples/testur.pp (renamed from packages/fcl-base/tests/testur.pp)0
-rw-r--r--packages/fcl-base/examples/testweb.pp (renamed from packages/fcl-base/tests/testweb.pp)0
-rw-r--r--packages/fcl-base/examples/testz.pp (renamed from packages/fcl-base/tests/testz.pp)0
-rw-r--r--packages/fcl-base/examples/testz2.pp (renamed from packages/fcl-base/tests/testz2.pp)0
-rw-r--r--packages/fcl-base/examples/testzip.pp (renamed from packages/fcl-base/tests/testzip.pp)0
-rw-r--r--packages/fcl-base/examples/threads.pp (renamed from packages/fcl-base/tests/threads.pp)0
-rw-r--r--packages/fcl-base/examples/tidea.pp (renamed from packages/fcl-base/tests/tidea.pp)0
-rw-r--r--packages/fcl-base/examples/tstelcmd.pp (renamed from packages/fcl-base/tests/tstelcmd.pp)0
-rw-r--r--packages/fcl-base/examples/tstelgtk.pp (renamed from packages/fcl-base/tests/tstelgtk.pp)0
-rw-r--r--packages/fcl-base/examples/txmlreg.pp (renamed from packages/fcl-base/tests/txmlreg.pp)0
-rw-r--r--packages/fcl-base/examples/xmldump.pp (renamed from packages/fcl-base/tests/xmldump.pp)0
-rw-r--r--packages/fcl-base/fpmake.pp107
-rw-r--r--packages/fcl-base/src/avl_tree.pp (renamed from packages/fcl-base/src/inc/avl_tree.pp)0
-rw-r--r--packages/fcl-base/src/base64.pp (renamed from packages/fcl-base/src/inc/base64.pp)0
-rw-r--r--packages/fcl-base/src/blowfish.pp (renamed from packages/fcl-base/src/inc/blowfish.pp)0
-rw-r--r--packages/fcl-base/src/bufstream.pp (renamed from packages/fcl-base/src/inc/bufstream.pp)0
-rw-r--r--packages/fcl-base/src/cachecls.pp (renamed from packages/fcl-base/src/inc/cachecls.pp)2
-rw-r--r--packages/fcl-base/src/contnrs.pp (renamed from packages/fcl-base/src/inc/contnrs.pp)0
-rw-r--r--packages/fcl-base/src/custapp.pp (renamed from packages/fcl-base/src/inc/custapp.pp)0
-rw-r--r--packages/fcl-base/src/daemonapp.pp (renamed from packages/fcl-base/src/inc/daemonapp.pp)0
-rw-r--r--packages/fcl-base/src/eventlog.pp (renamed from packages/fcl-base/src/inc/eventlog.pp)0
-rw-r--r--packages/fcl-base/src/felog.inc (renamed from packages/fcl-base/src/inc/felog.inc)0
-rw-r--r--packages/fcl-base/src/fpmake.inc90
-rw-r--r--packages/fcl-base/src/fpmake.pp49
-rw-r--r--packages/fcl-base/src/fptimer.pp (renamed from packages/fcl-base/src/inc/fptimer.pp)0
-rw-r--r--packages/fcl-base/src/gettext.pp (renamed from packages/fcl-base/src/inc/gettext.pp)13
-rw-r--r--packages/fcl-base/src/idea.pp (renamed from packages/fcl-base/src/inc/idea.pp)0
-rw-r--r--packages/fcl-base/src/inc/cgiapp.pp915
-rw-r--r--packages/fcl-base/src/inc/ezcgi.pp400
-rw-r--r--packages/fcl-base/src/inicol.pp (renamed from packages/fcl-base/src/inc/inicol.pp)0
-rw-r--r--packages/fcl-base/src/inifiles.pp (renamed from packages/fcl-base/src/inc/inifiles.pp)0
-rw-r--r--packages/fcl-base/src/iostream.pp (renamed from packages/fcl-base/src/inc/iostream.pp)0
-rw-r--r--packages/fcl-base/src/libtar.pp (renamed from packages/fcl-base/src/inc/libtar.pas)0
-rw-r--r--packages/fcl-base/src/maskutils.pp (renamed from packages/fcl-base/src/inc/maskutils.pp)0
-rw-r--r--packages/fcl-base/src/pooledmm.pp (renamed from packages/fcl-base/src/inc/pooledmm.pp)0
-rw-r--r--packages/fcl-base/src/rtfdata.inc (renamed from packages/fcl-base/src/inc/rtfdata.inc)0
-rw-r--r--packages/fcl-base/src/rtfpars.pp (renamed from packages/fcl-base/src/inc/rtfpars.pp)0
-rw-r--r--packages/fcl-base/src/rttiutils.pp (renamed from packages/fcl-base/src/inc/rttiutils.pp)0
-rw-r--r--packages/fcl-base/src/streamcoll.pp (renamed from packages/fcl-base/src/inc/streamcoll.pp)0
-rw-r--r--packages/fcl-base/src/streamex.pp (renamed from packages/fcl-base/src/inc/streamex.pp)0
-rw-r--r--packages/fcl-base/src/streamio.pp (renamed from packages/fcl-base/src/inc/streamio.pp)4
-rw-r--r--packages/fcl-base/src/syncobjs.pp (renamed from packages/fcl-base/src/inc/syncobjs.pp)0
-rw-r--r--packages/fcl-base/src/uriparser.pp425
-rw-r--r--packages/fcl-base/src/wformat.pp (renamed from packages/fcl-base/src/inc/wformat.pp)0
-rw-r--r--packages/fcl-base/src/whtml.pp (renamed from packages/fcl-base/src/inc/whtml.pp)0
-rw-r--r--packages/fcl-base/src/win/httpapp.pp194
-rw-r--r--packages/fcl-base/src/wtex.pp (renamed from packages/fcl-base/src/inc/wtex.pp)0
128 files changed, 1122 insertions, 2122 deletions
diff --git a/packages/fcl-base/Makefile b/packages/fcl-base/Makefile
index 445cba4df8..0aaba0599a 100644
--- a/packages/fcl-base/Makefile
+++ b/packages/fcl-base/Makefile
@@ -1,5 +1,5 @@
#
-# Don't edit, this file is generated by FPCMake Version 2.0.0 [2008/01/15]
+# Don't edit, this file is generated by FPCMake Version 2.0.0 [2008/01/22]
#
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
@@ -243,163 +243,163 @@ PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages $(FPCDIR)/packages/base $(F
override PACKAGE_NAME=fcl-base
override PACKAGE_VERSION=2.0.0
ifeq ($(FULL_TARGET),i386-linux)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
endif
ifeq ($(FULL_TARGET),i386-go32v2)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
endif
ifeq ($(FULL_TARGET),i386-win32)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils fileinfo syncobjs daemonapp ServiceManager fptimer
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils fileinfo syncobjs daemonapp ServiceManager fptimer
endif
ifeq ($(FULL_TARGET),i386-os2)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
endif
ifeq ($(FULL_TARGET),i386-freebsd)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
endif
ifeq ($(FULL_TARGET),i386-beos)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs
endif
ifeq ($(FULL_TARGET),i386-netbsd)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils daemonapp fptimer
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils daemonapp fptimer
endif
ifeq ($(FULL_TARGET),i386-solaris)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
endif
ifeq ($(FULL_TARGET),i386-qnx)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
endif
ifeq ($(FULL_TARGET),i386-netware)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs
endif
ifeq ($(FULL_TARGET),i386-openbsd)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils daemonapp fptimer
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils daemonapp fptimer
endif
ifeq ($(FULL_TARGET),i386-wdosx)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
endif
ifeq ($(FULL_TARGET),i386-darwin)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
endif
ifeq ($(FULL_TARGET),i386-emx)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
endif
ifeq ($(FULL_TARGET),i386-watcom)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
endif
ifeq ($(FULL_TARGET),i386-netwlibc)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs
endif
ifeq ($(FULL_TARGET),i386-wince)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils fileinfo syncobjs fptimer
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils fileinfo syncobjs fptimer
endif
ifeq ($(FULL_TARGET),i386-embedded)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
endif
ifeq ($(FULL_TARGET),i386-symbian)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
endif
ifeq ($(FULL_TARGET),m68k-linux)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
endif
ifeq ($(FULL_TARGET),m68k-freebsd)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
endif
ifeq ($(FULL_TARGET),m68k-netbsd)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils daemonapp fptimer
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils daemonapp fptimer
endif
ifeq ($(FULL_TARGET),m68k-amiga)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
endif
ifeq ($(FULL_TARGET),m68k-atari)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
endif
ifeq ($(FULL_TARGET),m68k-openbsd)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils daemonapp fptimer
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils daemonapp fptimer
endif
ifeq ($(FULL_TARGET),m68k-palmos)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
endif
ifeq ($(FULL_TARGET),m68k-embedded)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
endif
ifeq ($(FULL_TARGET),powerpc-linux)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
endif
ifeq ($(FULL_TARGET),powerpc-netbsd)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils daemonapp fptimer
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils daemonapp fptimer
endif
ifeq ($(FULL_TARGET),powerpc-amiga)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
endif
ifeq ($(FULL_TARGET),powerpc-macos)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
endif
ifeq ($(FULL_TARGET),powerpc-morphos)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
endif
ifeq ($(FULL_TARGET),powerpc-embedded)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
endif
ifeq ($(FULL_TARGET),sparc-linux)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
endif
ifeq ($(FULL_TARGET),sparc-netbsd)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils daemonapp fptimer
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils daemonapp fptimer
endif
ifeq ($(FULL_TARGET),sparc-solaris)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
endif
ifeq ($(FULL_TARGET),sparc-embedded)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
endif
ifeq ($(FULL_TARGET),x86_64-linux)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
endif
ifeq ($(FULL_TARGET),x86_64-freebsd)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
endif
ifeq ($(FULL_TARGET),x86_64-darwin)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
endif
ifeq ($(FULL_TARGET),x86_64-win64)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils fileinfo syncobjs daemonapp ServiceManager fptimer
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils fileinfo syncobjs daemonapp ServiceManager fptimer
endif
ifeq ($(FULL_TARGET),x86_64-embedded)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
endif
ifeq ($(FULL_TARGET),arm-linux)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
endif
ifeq ($(FULL_TARGET),arm-palmos)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
endif
ifeq ($(FULL_TARGET),arm-wince)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils fileinfo syncobjs fptimer
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils fileinfo syncobjs fptimer
endif
ifeq ($(FULL_TARGET),arm-gba)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
endif
ifeq ($(FULL_TARGET),arm-nds)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
endif
ifeq ($(FULL_TARGET),arm-embedded)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
endif
ifeq ($(FULL_TARGET),arm-symbian)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
endif
ifeq ($(FULL_TARGET),powerpc64-linux)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
endif
ifeq ($(FULL_TARGET),powerpc64-darwin)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils syncobjs daemonapp fptimer
endif
ifeq ($(FULL_TARGET),powerpc64-embedded)
-override TARGET_UNITS+=contnrs inifiles ezcgi rtfpars idea base64 gettext iostream cachecls avl_tree eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
+override TARGET_UNITS+=contnrs inifiles rtfpars idea base64 gettext iostream cachecls avl_tree uriparser eventlog custapp wformat whtml wtex rttiutils bufstream streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
endif
ifeq ($(FULL_TARGET),i386-linux)
override TARGET_RSTS+=cachecls custapp cgiapp eventlog registry streamcoll inicol
@@ -727,322 +727,322 @@ ifeq ($(FULL_TARGET),powerpc64-embedded)
override COMPILER_OPTIONS+=-S2h
endif
ifeq ($(FULL_TARGET),i386-linux)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/unix
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/unix
endif
ifeq ($(FULL_TARGET),i386-go32v2)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),i386-win32)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/win
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/win
endif
ifeq ($(FULL_TARGET),i386-os2)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),i386-freebsd)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/unix
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/unix
endif
ifeq ($(FULL_TARGET),i386-beos)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/unix
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/unix
endif
ifeq ($(FULL_TARGET),i386-netbsd)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/unix
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/unix
endif
ifeq ($(FULL_TARGET),i386-solaris)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/unix
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/unix
endif
ifeq ($(FULL_TARGET),i386-qnx)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/unix
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/unix
endif
ifeq ($(FULL_TARGET),i386-netware)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),i386-openbsd)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/unix
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/unix
endif
ifeq ($(FULL_TARGET),i386-wdosx)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),i386-darwin)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/unix
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/unix
endif
ifeq ($(FULL_TARGET),i386-emx)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/os2
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/os2
endif
ifeq ($(FULL_TARGET),i386-watcom)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),i386-netwlibc)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),i386-wince)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/win
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/win
endif
ifeq ($(FULL_TARGET),i386-embedded)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),i386-symbian)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),m68k-linux)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/unix
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/unix
endif
ifeq ($(FULL_TARGET),m68k-freebsd)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/unix
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/unix
endif
ifeq ($(FULL_TARGET),m68k-netbsd)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/unix
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/unix
endif
ifeq ($(FULL_TARGET),m68k-amiga)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),m68k-atari)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),m68k-openbsd)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/unix
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/unix
endif
ifeq ($(FULL_TARGET),m68k-palmos)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),m68k-embedded)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),powerpc-linux)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/unix
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/unix
endif
ifeq ($(FULL_TARGET),powerpc-netbsd)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/unix
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/unix
endif
ifeq ($(FULL_TARGET),powerpc-amiga)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),powerpc-macos)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/unix
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/unix
endif
ifeq ($(FULL_TARGET),powerpc-morphos)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),powerpc-embedded)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),sparc-linux)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/unix
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/unix
endif
ifeq ($(FULL_TARGET),sparc-netbsd)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/unix
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/unix
endif
ifeq ($(FULL_TARGET),sparc-solaris)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/unix
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/unix
endif
ifeq ($(FULL_TARGET),sparc-embedded)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),x86_64-linux)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/unix
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/unix
endif
ifeq ($(FULL_TARGET),x86_64-freebsd)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/unix
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/unix
endif
ifeq ($(FULL_TARGET),x86_64-darwin)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/unix
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/unix
endif
ifeq ($(FULL_TARGET),x86_64-win64)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/win
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/win
endif
ifeq ($(FULL_TARGET),x86_64-embedded)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),arm-linux)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/unix
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/unix
endif
ifeq ($(FULL_TARGET),arm-palmos)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),arm-wince)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/win
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/win
endif
ifeq ($(FULL_TARGET),arm-gba)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),arm-nds)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),arm-embedded)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),arm-symbian)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),powerpc64-linux)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/unix
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/unix
endif
ifeq ($(FULL_TARGET),powerpc64-darwin)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc src/unix
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src src/unix
endif
ifeq ($(FULL_TARGET),powerpc64-embedded)
-override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_INCLUDEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),i386-linux)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),i386-go32v2)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),i386-win32)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),i386-os2)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),i386-freebsd)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),i386-beos)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),i386-netbsd)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),i386-solaris)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),i386-qnx)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),i386-netware)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),i386-openbsd)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),i386-wdosx)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),i386-darwin)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),i386-emx)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),i386-watcom)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),i386-netwlibc)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),i386-wince)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),i386-embedded)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),i386-symbian)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),m68k-linux)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),m68k-freebsd)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),m68k-netbsd)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),m68k-amiga)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),m68k-atari)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),m68k-openbsd)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),m68k-palmos)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),m68k-embedded)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),powerpc-linux)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),powerpc-netbsd)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),powerpc-amiga)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),powerpc-macos)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),powerpc-morphos)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),powerpc-embedded)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),sparc-linux)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),sparc-netbsd)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),sparc-solaris)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),sparc-embedded)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),x86_64-linux)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),x86_64-freebsd)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),x86_64-darwin)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),x86_64-win64)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),x86_64-embedded)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),arm-linux)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),arm-palmos)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),arm-wince)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),arm-gba)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),arm-nds)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),arm-embedded)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),arm-symbian)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),powerpc64-linux)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),powerpc64-darwin)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifeq ($(FULL_TARGET),powerpc64-embedded)
-override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src/inc
+override COMPILER_SOURCEDIR+=src/$(OS_TARGET) src
endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -2187,7 +2187,7 @@ endif
endif
endif
.PHONY: fpc_units
-ifneq ($(TARGET_UNITS),)
+ifneq ($(TARGET_UNITS)$(TARGET_IMPLICITUNITS),)
override ALLTARGET+=fpc_units
override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
diff --git a/packages/fcl-base/Makefile.fpc b/packages/fcl-base/Makefile.fpc
index d71edf1571..54c7c7b98e 100644
--- a/packages/fcl-base/Makefile.fpc
+++ b/packages/fcl-base/Makefile.fpc
@@ -11,9 +11,9 @@ packages_win32=winunits-base winunits-jedi
packages_win64=winunits-base winunits-jedi
[target]
-units=contnrs inifiles ezcgi rtfpars idea base64 gettext \
- iostream cachecls avl_tree \
- eventlog custapp cgiapp wformat whtml wtex rttiutils bufstream \
+units=contnrs inifiles rtfpars idea base64 gettext \
+ iostream cachecls avl_tree uriparser \
+ eventlog custapp wformat whtml wtex rttiutils bufstream \
streamex blowfish streamio inicol pooledmm libtar streamcoll maskutils
units_beos=syncobjs
units_freebsd=syncobjs daemonapp fptimer
@@ -32,7 +32,7 @@ rsts=cachecls custapp cgiapp eventlog registry streamcoll inicol
[compiler]
options=-S2h
-includedir=src/$(OS_TARGET) src/inc
+includedir=src/$(OS_TARGET) src
includedir_linux=src/unix
includedir_freebsd=src/unix
includedir_darwin=src/unix
@@ -45,7 +45,7 @@ includedir_emx=src/os2
includedir_win32=src/win
includedir_win64=src/win
includedir_wince=src/win
-sourcedir=src/$(OS_TARGET) src/inc
+sourcedir=src/$(OS_TARGET) src
[install]
fpcpackage=y
diff --git a/packages/fcl-base/tests/Makefile b/packages/fcl-base/examples/Makefile
index ff52a657fc..122a6eb9b8 100644
--- a/packages/fcl-base/tests/Makefile
+++ b/packages/fcl-base/examples/Makefile
@@ -1,11 +1,12 @@
#
-# Don't edit, this file is generated by FPCMake Version 2.0.0 [2007/10/21]
+# 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-win64 x86_64-embedded arm-linux arm-palmos arm-wince arm-gba arm-nds arm-embedded arm-symbian powerpc64-linux powerpc64-darwin powerpc64-embedded
+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)))
@@ -56,6 +57,11 @@ else
SRCBATCHEXT=.bat
endif
endif
+ifdef COMSPEC
+ifneq ($(findstring $(OS_SOURCE),$(OSNeedsComspecToRunBatch)),)
+RUNBATCH=$(COMSPEC) /C
+endif
+endif
ifdef inUnix
PATHSEP=/
else
@@ -102,7 +108,11 @@ 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
@@ -350,6 +360,9 @@ endif
ifeq ($(FULL_TARGET),x86_64-freebsd)
override TARGET_PROGRAMS+=stringl dparser fstream mstream list threads testrtf cfgtest xmldump htdump testez tidea b64test b64test2 b64enc b64dec restest testz testz2 istream doecho testol testcont txmlreg testreg tstelcmd testapp testcgi testbs testbf cachetest poolmm1 poolmm2 tarmakercons tarmakerconsgzip sockcli isockcli dsockcli socksvr isocksvr dsocksvr testhres testnres testsres testrhre testrnre testrsre testur ipcserver ipcclient debugtest dbugsrv asiotest testtimer
endif
+ifeq ($(FULL_TARGET),x86_64-darwin)
+override TARGET_PROGRAMS+=stringl dparser fstream mstream list threads testrtf cfgtest xmldump htdump testez tidea b64test b64test2 b64enc b64dec restest testz testz2 istream doecho testol testcont txmlreg testreg tstelcmd testapp testcgi testbs testbf cachetest poolmm1 poolmm2 tarmakercons tarmakerconsgzip sockcli isockcli dsockcli socksvr isocksvr dsocksvr testhres testnres testsres testrhre testrnre testrsre testur ipcserver ipcclient debugtest dbugsrv asiotest testtimer
+endif
ifeq ($(FULL_TARGET),x86_64-win64)
override TARGET_PROGRAMS+=stringl dparser fstream mstream list threads testrtf cfgtest xmldump htdump testez tidea b64test b64test2 b64enc b64dec restest testz testz2 istream doecho testol testcont txmlreg testreg tstelcmd testapp testcgi testbs testbf cachetest poolmm1 poolmm2 tarmakercons tarmakerconsgzip
endif
@@ -1168,20 +1181,20 @@ endif
override REQUIRE_PACKAGES=rtl fcl-base fcl-db fcl-fpcunit fcl-image fcl-net fcl-passrc fcl-registry fcl-web fcl-xml
ifeq ($(FULL_TARGET),i386-linux)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
-REQUIRE_PACKAGES_LIBASYNC=1
-REQUIRE_PACKAGES_PTHREADS=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
REQUIRE_PACKAGES_IBASE=1
REQUIRE_PACKAGES_POSTGRES=1
@@ -1192,35 +1205,39 @@ REQUIRE_PACKAGES_SQLITE=1
endif
ifeq ($(FULL_TARGET),i386-go32v2)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifeq ($(FULL_TARGET),i386-win32)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_WINUNITS=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
REQUIRE_PACKAGES_IBASE=1
REQUIRE_PACKAGES_POSTGRES=1
@@ -1231,36 +1248,38 @@ REQUIRE_PACKAGES_SQLITE=1
endif
ifeq ($(FULL_TARGET),i386-os2)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifeq ($(FULL_TARGET),i386-freebsd)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
-REQUIRE_PACKAGES_LIBASYNC=1
-REQUIRE_PACKAGES_PTHREADS=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
REQUIRE_PACKAGES_IBASE=1
REQUIRE_PACKAGES_POSTGRES=1
@@ -1271,37 +1290,38 @@ REQUIRE_PACKAGES_SQLITE=1
endif
ifeq ($(FULL_TARGET),i386-beos)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
-REQUIRE_PACKAGES_LIBASYNC=1
-REQUIRE_PACKAGES_PTHREADS=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifeq ($(FULL_TARGET),i386-netbsd)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
-REQUIRE_PACKAGES_LIBASYNC=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
REQUIRE_PACKAGES_IBASE=1
REQUIRE_PACKAGES_POSTGRES=1
@@ -1312,70 +1332,75 @@ REQUIRE_PACKAGES_SQLITE=1
endif
ifeq ($(FULL_TARGET),i386-solaris)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
-REQUIRE_PACKAGES_LIBASYNC=1
-REQUIRE_PACKAGES_PTHREADS=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
REQUIRE_PACKAGES_SQLITE=1
endif
ifeq ($(FULL_TARGET),i386-qnx)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifeq ($(FULL_TARGET),i386-netware)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifeq ($(FULL_TARGET),i386-openbsd)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
-REQUIRE_PACKAGES_LIBASYNC=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
REQUIRE_PACKAGES_IBASE=1
REQUIRE_PACKAGES_POSTGRES=1
@@ -1386,36 +1411,38 @@ REQUIRE_PACKAGES_SQLITE=1
endif
ifeq ($(FULL_TARGET),i386-wdosx)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifeq ($(FULL_TARGET),i386-darwin)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
-REQUIRE_PACKAGES_LIBASYNC=1
-REQUIRE_PACKAGES_PTHREADS=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
REQUIRE_PACKAGES_IBASE=1
REQUIRE_PACKAGES_POSTGRES=1
@@ -1426,66 +1453,74 @@ REQUIRE_PACKAGES_SQLITE=1
endif
ifeq ($(FULL_TARGET),i386-emx)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifeq ($(FULL_TARGET),i386-watcom)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifeq ($(FULL_TARGET),i386-netwlibc)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifeq ($(FULL_TARGET),i386-wince)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
REQUIRE_PACKAGES_IBASE=1
REQUIRE_PACKAGES_POSTGRES=1
@@ -1493,52 +1528,56 @@ REQUIRE_PACKAGES_SQLITE=1
endif
ifeq ($(FULL_TARGET),i386-embedded)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifeq ($(FULL_TARGET),i386-symbian)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifeq ($(FULL_TARGET),m68k-linux)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
-REQUIRE_PACKAGES_LIBASYNC=1
-REQUIRE_PACKAGES_PTHREADS=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
REQUIRE_PACKAGES_IBASE=1
REQUIRE_PACKAGES_POSTGRES=1
@@ -1549,20 +1588,20 @@ REQUIRE_PACKAGES_SQLITE=1
endif
ifeq ($(FULL_TARGET),m68k-freebsd)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
-REQUIRE_PACKAGES_LIBASYNC=1
-REQUIRE_PACKAGES_PTHREADS=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
REQUIRE_PACKAGES_IBASE=1
REQUIRE_PACKAGES_POSTGRES=1
@@ -1573,19 +1612,20 @@ REQUIRE_PACKAGES_SQLITE=1
endif
ifeq ($(FULL_TARGET),m68k-netbsd)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
-REQUIRE_PACKAGES_LIBASYNC=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
REQUIRE_PACKAGES_IBASE=1
REQUIRE_PACKAGES_POSTGRES=1
@@ -1596,51 +1636,56 @@ REQUIRE_PACKAGES_SQLITE=1
endif
ifeq ($(FULL_TARGET),m68k-amiga)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifeq ($(FULL_TARGET),m68k-atari)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifeq ($(FULL_TARGET),m68k-openbsd)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
-REQUIRE_PACKAGES_LIBASYNC=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
REQUIRE_PACKAGES_IBASE=1
REQUIRE_PACKAGES_POSTGRES=1
@@ -1651,52 +1696,56 @@ REQUIRE_PACKAGES_SQLITE=1
endif
ifeq ($(FULL_TARGET),m68k-palmos)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifeq ($(FULL_TARGET),m68k-embedded)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifeq ($(FULL_TARGET),powerpc-linux)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
-REQUIRE_PACKAGES_LIBASYNC=1
-REQUIRE_PACKAGES_PTHREADS=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
REQUIRE_PACKAGES_IBASE=1
REQUIRE_PACKAGES_POSTGRES=1
@@ -1707,19 +1756,20 @@ REQUIRE_PACKAGES_SQLITE=1
endif
ifeq ($(FULL_TARGET),powerpc-netbsd)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
-REQUIRE_PACKAGES_LIBASYNC=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
REQUIRE_PACKAGES_IBASE=1
REQUIRE_PACKAGES_POSTGRES=1
@@ -1730,52 +1780,56 @@ REQUIRE_PACKAGES_SQLITE=1
endif
ifeq ($(FULL_TARGET),powerpc-amiga)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifeq ($(FULL_TARGET),powerpc-macos)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
-REQUIRE_PACKAGES_LIBASYNC=1
-REQUIRE_PACKAGES_PTHREADS=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
REQUIRE_PACKAGES_IBASE=1
REQUIRE_PACKAGES_POSTGRES=1
@@ -1786,52 +1840,56 @@ REQUIRE_PACKAGES_SQLITE=1
endif
ifeq ($(FULL_TARGET),powerpc-morphos)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifeq ($(FULL_TARGET),powerpc-embedded)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifeq ($(FULL_TARGET),sparc-linux)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
-REQUIRE_PACKAGES_LIBASYNC=1
-REQUIRE_PACKAGES_PTHREADS=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
REQUIRE_PACKAGES_IBASE=1
REQUIRE_PACKAGES_POSTGRES=1
@@ -1842,19 +1900,20 @@ REQUIRE_PACKAGES_SQLITE=1
endif
ifeq ($(FULL_TARGET),sparc-netbsd)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
-REQUIRE_PACKAGES_LIBASYNC=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
REQUIRE_PACKAGES_IBASE=1
REQUIRE_PACKAGES_POSTGRES=1
@@ -1865,55 +1924,57 @@ REQUIRE_PACKAGES_SQLITE=1
endif
ifeq ($(FULL_TARGET),sparc-solaris)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
-REQUIRE_PACKAGES_LIBASYNC=1
-REQUIRE_PACKAGES_PTHREADS=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
REQUIRE_PACKAGES_SQLITE=1
endif
ifeq ($(FULL_TARGET),sparc-embedded)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifeq ($(FULL_TARGET),x86_64-linux)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
-REQUIRE_PACKAGES_LIBASYNC=1
-REQUIRE_PACKAGES_PTHREADS=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
REQUIRE_PACKAGES_IBASE=1
REQUIRE_PACKAGES_POSTGRES=1
@@ -1924,20 +1985,44 @@ REQUIRE_PACKAGES_SQLITE=1
endif
ifeq ($(FULL_TARGET),x86_64-freebsd)
REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_FCL-BASE=1
+REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
+REQUIRE_PACKAGES_FCL-XML=1
+REQUIRE_PACKAGES_FCL-FPCUNIT=1
+REQUIRE_PACKAGES_PASJPEG=1
REQUIRE_PACKAGES_HASH=1
REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
-REQUIRE_PACKAGES_LIBASYNC=1
-REQUIRE_PACKAGES_PTHREADS=1
+REQUIRE_PACKAGES_FCL-IMAGE=1
+REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
+REQUIRE_PACKAGES_FCL-NET=1
+REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_FCL-WEB=1
+REQUIRE_PACKAGES_IBASE=1
+REQUIRE_PACKAGES_POSTGRES=1
+REQUIRE_PACKAGES_MYSQL=1
+REQUIRE_PACKAGES_ODBC=1
+REQUIRE_PACKAGES_ORACLE=1
+REQUIRE_PACKAGES_SQLITE=1
+endif
+ifeq ($(FULL_TARGET),x86_64-darwin)
+REQUIRE_PACKAGES_RTL=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
REQUIRE_PACKAGES_IBASE=1
REQUIRE_PACKAGES_POSTGRES=1
@@ -1948,19 +2033,21 @@ REQUIRE_PACKAGES_SQLITE=1
endif
ifeq ($(FULL_TARGET),x86_64-win64)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_WINUNITS=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
REQUIRE_PACKAGES_IBASE=1
REQUIRE_PACKAGES_ODBC=1
@@ -1969,36 +2056,38 @@ REQUIRE_PACKAGES_SQLITE=1
endif
ifeq ($(FULL_TARGET),x86_64-embedded)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifeq ($(FULL_TARGET),arm-linux)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
-REQUIRE_PACKAGES_LIBASYNC=1
-REQUIRE_PACKAGES_PTHREADS=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
REQUIRE_PACKAGES_IBASE=1
REQUIRE_PACKAGES_POSTGRES=1
@@ -2009,34 +2098,38 @@ REQUIRE_PACKAGES_SQLITE=1
endif
ifeq ($(FULL_TARGET),arm-palmos)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifeq ($(FULL_TARGET),arm-wince)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
REQUIRE_PACKAGES_IBASE=1
REQUIRE_PACKAGES_POSTGRES=1
@@ -2044,84 +2137,92 @@ REQUIRE_PACKAGES_SQLITE=1
endif
ifeq ($(FULL_TARGET),arm-gba)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifeq ($(FULL_TARGET),arm-nds)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifeq ($(FULL_TARGET),arm-embedded)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifeq ($(FULL_TARGET),arm-symbian)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifeq ($(FULL_TARGET),powerpc64-linux)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
-REQUIRE_PACKAGES_LIBASYNC=1
-REQUIRE_PACKAGES_PTHREADS=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
REQUIRE_PACKAGES_IBASE=1
REQUIRE_PACKAGES_POSTGRES=1
@@ -2132,20 +2233,20 @@ REQUIRE_PACKAGES_SQLITE=1
endif
ifeq ($(FULL_TARGET),powerpc64-darwin)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_NETDB=1
-REQUIRE_PACKAGES_LIBASYNC=1
-REQUIRE_PACKAGES_PTHREADS=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
+REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
REQUIRE_PACKAGES_IBASE=1
REQUIRE_PACKAGES_POSTGRES=1
@@ -2156,18 +2257,20 @@ REQUIRE_PACKAGES_SQLITE=1
endif
ifeq ($(FULL_TARGET),powerpc64-embedded)
REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_HASH=1
-REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-BASE=1
REQUIRE_PACKAGES_FCL-DB=1
REQUIRE_PACKAGES_NETDB=1
REQUIRE_PACKAGES_FCL-XML=1
REQUIRE_PACKAGES_FCL-FPCUNIT=1
REQUIRE_PACKAGES_PASJPEG=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-IMAGE=1
REQUIRE_PACKAGES_FCL-PASSRC=1
+REQUIRE_PACKAGES_FCL-ASYNC=1
REQUIRE_PACKAGES_FCL-NET=1
REQUIRE_PACKAGES_FCL-REGISTRY=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
REQUIRE_PACKAGES_FCL-WEB=1
endif
ifdef REQUIRE_PACKAGES_RTL
@@ -2196,136 +2299,6 @@ 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
-ifdef REQUIRE_PACKAGES_PASZLIB
-PACKAGEDIR_PASZLIB:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Makefile.fpc,$(PACKAGESDIR))))))
-ifneq ($(PACKAGEDIR_PASZLIB),)
-ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)),)
-UNITDIR_PASZLIB=$(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)
-else
-UNITDIR_PASZLIB=$(PACKAGEDIR_PASZLIB)
-endif
-ifdef CHECKDEPEND
-$(PACKAGEDIR_PASZLIB)/$(FPCMADE):
- $(MAKE) -C $(PACKAGEDIR_PASZLIB) $(FPCMADE)
-override ALLDEPENDENCIES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE)
-endif
-else
-PACKAGEDIR_PASZLIB=
-UNITDIR_PASZLIB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Package.fpc,$(UNITSDIR)))))
-ifneq ($(UNITDIR_PASZLIB),)
-UNITDIR_PASZLIB:=$(firstword $(UNITDIR_PASZLIB))
-else
-UNITDIR_PASZLIB=
-endif
-endif
-ifdef UNITDIR_PASZLIB
-override COMPILER_UNITDIR+=$(UNITDIR_PASZLIB)
-endif
-endif
-ifdef REQUIRE_PACKAGES_NETDB
-PACKAGEDIR_NETDB:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /netdb/Makefile.fpc,$(PACKAGESDIR))))))
-ifneq ($(PACKAGEDIR_NETDB),)
-ifneq ($(wildcard $(PACKAGEDIR_NETDB)/units/$(TARGETSUFFIX)),)
-UNITDIR_NETDB=$(PACKAGEDIR_NETDB)/units/$(TARGETSUFFIX)
-else
-UNITDIR_NETDB=$(PACKAGEDIR_NETDB)
-endif
-ifdef CHECKDEPEND
-$(PACKAGEDIR_NETDB)/$(FPCMADE):
- $(MAKE) -C $(PACKAGEDIR_NETDB) $(FPCMADE)
-override ALLDEPENDENCIES+=$(PACKAGEDIR_NETDB)/$(FPCMADE)
-endif
-else
-PACKAGEDIR_NETDB=
-UNITDIR_NETDB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /netdb/Package.fpc,$(UNITSDIR)))))
-ifneq ($(UNITDIR_NETDB),)
-UNITDIR_NETDB:=$(firstword $(UNITDIR_NETDB))
-else
-UNITDIR_NETDB=
-endif
-endif
-ifdef UNITDIR_NETDB
-override COMPILER_UNITDIR+=$(UNITDIR_NETDB)
-endif
-endif
-ifdef REQUIRE_PACKAGES_LIBASYNC
-PACKAGEDIR_LIBASYNC:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /libasync/Makefile.fpc,$(PACKAGESDIR))))))
-ifneq ($(PACKAGEDIR_LIBASYNC),)
-ifneq ($(wildcard $(PACKAGEDIR_LIBASYNC)/units/$(TARGETSUFFIX)),)
-UNITDIR_LIBASYNC=$(PACKAGEDIR_LIBASYNC)/units/$(TARGETSUFFIX)
-else
-UNITDIR_LIBASYNC=$(PACKAGEDIR_LIBASYNC)
-endif
-ifdef CHECKDEPEND
-$(PACKAGEDIR_LIBASYNC)/$(FPCMADE):
- $(MAKE) -C $(PACKAGEDIR_LIBASYNC) $(FPCMADE)
-override ALLDEPENDENCIES+=$(PACKAGEDIR_LIBASYNC)/$(FPCMADE)
-endif
-else
-PACKAGEDIR_LIBASYNC=
-UNITDIR_LIBASYNC:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /libasync/Package.fpc,$(UNITSDIR)))))
-ifneq ($(UNITDIR_LIBASYNC),)
-UNITDIR_LIBASYNC:=$(firstword $(UNITDIR_LIBASYNC))
-else
-UNITDIR_LIBASYNC=
-endif
-endif
-ifdef UNITDIR_LIBASYNC
-override COMPILER_UNITDIR+=$(UNITDIR_LIBASYNC)
-endif
-endif
-ifdef REQUIRE_PACKAGES_PTHREADS
-PACKAGEDIR_PTHREADS:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /pthreads/Makefile.fpc,$(PACKAGESDIR))))))
-ifneq ($(PACKAGEDIR_PTHREADS),)
-ifneq ($(wildcard $(PACKAGEDIR_PTHREADS)/units/$(TARGETSUFFIX)),)
-UNITDIR_PTHREADS=$(PACKAGEDIR_PTHREADS)/units/$(TARGETSUFFIX)
-else
-UNITDIR_PTHREADS=$(PACKAGEDIR_PTHREADS)
-endif
-ifdef CHECKDEPEND
-$(PACKAGEDIR_PTHREADS)/$(FPCMADE):
- $(MAKE) -C $(PACKAGEDIR_PTHREADS) $(FPCMADE)
-override ALLDEPENDENCIES+=$(PACKAGEDIR_PTHREADS)/$(FPCMADE)
-endif
-else
-PACKAGEDIR_PTHREADS=
-UNITDIR_PTHREADS:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /pthreads/Package.fpc,$(UNITSDIR)))))
-ifneq ($(UNITDIR_PTHREADS),)
-UNITDIR_PTHREADS:=$(firstword $(UNITDIR_PTHREADS))
-else
-UNITDIR_PTHREADS=
-endif
-endif
-ifdef UNITDIR_PTHREADS
-override COMPILER_UNITDIR+=$(UNITDIR_PTHREADS)
-endif
-endif
ifdef REQUIRE_PACKAGES_FCL-BASE
PACKAGEDIR_FCL-BASE:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl-base/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_FCL-BASE),)
@@ -2378,6 +2351,32 @@ ifdef UNITDIR_FCL-DB
override COMPILER_UNITDIR+=$(UNITDIR_FCL-DB)
endif
endif
+ifdef REQUIRE_PACKAGES_NETDB
+PACKAGEDIR_NETDB:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /netdb/Makefile.fpc,$(PACKAGESDIR))))))
+ifneq ($(PACKAGEDIR_NETDB),)
+ifneq ($(wildcard $(PACKAGEDIR_NETDB)/units/$(TARGETSUFFIX)),)
+UNITDIR_NETDB=$(PACKAGEDIR_NETDB)/units/$(TARGETSUFFIX)
+else
+UNITDIR_NETDB=$(PACKAGEDIR_NETDB)
+endif
+ifdef CHECKDEPEND
+$(PACKAGEDIR_NETDB)/$(FPCMADE):
+ $(MAKE) -C $(PACKAGEDIR_NETDB) $(FPCMADE)
+override ALLDEPENDENCIES+=$(PACKAGEDIR_NETDB)/$(FPCMADE)
+endif
+else
+PACKAGEDIR_NETDB=
+UNITDIR_NETDB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /netdb/Package.fpc,$(UNITSDIR)))))
+ifneq ($(UNITDIR_NETDB),)
+UNITDIR_NETDB:=$(firstword $(UNITDIR_NETDB))
+else
+UNITDIR_NETDB=
+endif
+endif
+ifdef UNITDIR_NETDB
+override COMPILER_UNITDIR+=$(UNITDIR_NETDB)
+endif
+endif
ifdef REQUIRE_PACKAGES_FCL-XML
PACKAGEDIR_FCL-XML:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl-xml/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_FCL-XML),)
@@ -2456,6 +2455,58 @@ ifdef UNITDIR_PASJPEG
override COMPILER_UNITDIR+=$(UNITDIR_PASJPEG)
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
+ifdef REQUIRE_PACKAGES_PASZLIB
+PACKAGEDIR_PASZLIB:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Makefile.fpc,$(PACKAGESDIR))))))
+ifneq ($(PACKAGEDIR_PASZLIB),)
+ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)),)
+UNITDIR_PASZLIB=$(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)
+else
+UNITDIR_PASZLIB=$(PACKAGEDIR_PASZLIB)
+endif
+ifdef CHECKDEPEND
+$(PACKAGEDIR_PASZLIB)/$(FPCMADE):
+ $(MAKE) -C $(PACKAGEDIR_PASZLIB) $(FPCMADE)
+override ALLDEPENDENCIES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE)
+endif
+else
+PACKAGEDIR_PASZLIB=
+UNITDIR_PASZLIB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Package.fpc,$(UNITSDIR)))))
+ifneq ($(UNITDIR_PASZLIB),)
+UNITDIR_PASZLIB:=$(firstword $(UNITDIR_PASZLIB))
+else
+UNITDIR_PASZLIB=
+endif
+endif
+ifdef UNITDIR_PASZLIB
+override COMPILER_UNITDIR+=$(UNITDIR_PASZLIB)
+endif
+endif
ifdef REQUIRE_PACKAGES_FCL-IMAGE
PACKAGEDIR_FCL-IMAGE:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl-image/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_FCL-IMAGE),)
@@ -2508,6 +2559,32 @@ ifdef UNITDIR_FCL-PASSRC
override COMPILER_UNITDIR+=$(UNITDIR_FCL-PASSRC)
endif
endif
+ifdef REQUIRE_PACKAGES_FCL-ASYNC
+PACKAGEDIR_FCL-ASYNC:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl-async/Makefile.fpc,$(PACKAGESDIR))))))
+ifneq ($(PACKAGEDIR_FCL-ASYNC),)
+ifneq ($(wildcard $(PACKAGEDIR_FCL-ASYNC)/units/$(TARGETSUFFIX)),)
+UNITDIR_FCL-ASYNC=$(PACKAGEDIR_FCL-ASYNC)/units/$(TARGETSUFFIX)
+else
+UNITDIR_FCL-ASYNC=$(PACKAGEDIR_FCL-ASYNC)
+endif
+ifdef CHECKDEPEND
+$(PACKAGEDIR_FCL-ASYNC)/$(FPCMADE):
+ $(MAKE) -C $(PACKAGEDIR_FCL-ASYNC) $(FPCMADE)
+override ALLDEPENDENCIES+=$(PACKAGEDIR_FCL-ASYNC)/$(FPCMADE)
+endif
+else
+PACKAGEDIR_FCL-ASYNC=
+UNITDIR_FCL-ASYNC:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fcl-async/Package.fpc,$(UNITSDIR)))))
+ifneq ($(UNITDIR_FCL-ASYNC),)
+UNITDIR_FCL-ASYNC:=$(firstword $(UNITDIR_FCL-ASYNC))
+else
+UNITDIR_FCL-ASYNC=
+endif
+endif
+ifdef UNITDIR_FCL-ASYNC
+override COMPILER_UNITDIR+=$(UNITDIR_FCL-ASYNC)
+endif
+endif
ifdef REQUIRE_PACKAGES_FCL-NET
PACKAGEDIR_FCL-NET:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl-net/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_FCL-NET),)
@@ -2560,6 +2637,32 @@ ifdef UNITDIR_FCL-REGISTRY
override COMPILER_UNITDIR+=$(UNITDIR_FCL-REGISTRY)
endif
endif
+ifdef REQUIRE_PACKAGES_FCL-PROCESS
+PACKAGEDIR_FCL-PROCESS:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Makefile.fpc,$(PACKAGESDIR))))))
+ifneq ($(PACKAGEDIR_FCL-PROCESS),)
+ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX)),)
+UNITDIR_FCL-PROCESS=$(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX)
+else
+UNITDIR_FCL-PROCESS=$(PACKAGEDIR_FCL-PROCESS)
+endif
+ifdef CHECKDEPEND
+$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE):
+ $(MAKE) -C $(PACKAGEDIR_FCL-PROCESS) $(FPCMADE)
+override ALLDEPENDENCIES+=$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE)
+endif
+else
+PACKAGEDIR_FCL-PROCESS=
+UNITDIR_FCL-PROCESS:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Package.fpc,$(UNITSDIR)))))
+ifneq ($(UNITDIR_FCL-PROCESS),)
+UNITDIR_FCL-PROCESS:=$(firstword $(UNITDIR_FCL-PROCESS))
+else
+UNITDIR_FCL-PROCESS=
+endif
+endif
+ifdef UNITDIR_FCL-PROCESS
+override COMPILER_UNITDIR+=$(UNITDIR_FCL-PROCESS)
+endif
+endif
ifdef REQUIRE_PACKAGES_FCL-WEB
PACKAGEDIR_FCL-WEB:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl-web/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_FCL-WEB),)
@@ -2782,7 +2885,7 @@ override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
endif
ifndef CROSSBOOTSTRAP
ifneq ($(BINUTILSPREFIX),)
-override FPCOPT+=-XP$(BINUTILSPREFIX)
+override FPCOPT+=-XP$(BINUTILSPREFIX)
endif
ifneq ($(BINUTILSPREFIX),)
override FPCOPT+=-Xr$(RLINKPATH)
@@ -2920,9 +3023,13 @@ ifeq (,$(findstring -s ,$(COMPILER)))
EXECPPAS=
else
ifeq ($(FULL_SOURCE),$(FULL_TARGET))
+ifdef RUNBATCH
+EXECPPAS:=@$(RUNBATCH) $(PPAS)
+else
EXECPPAS:=@$(PPAS)
endif
endif
+endif
.PHONY: fpc_exes
ifndef CROSSINSTALL
ifneq ($(TARGET_PROGRAMS),)
diff --git a/packages/fcl-base/tests/Makefile.fpc b/packages/fcl-base/examples/Makefile.fpc
index 6c7d9c3862..6c7d9c3862 100644
--- a/packages/fcl-base/tests/Makefile.fpc
+++ b/packages/fcl-base/examples/Makefile.fpc
diff --git a/packages/fcl-base/tests/README b/packages/fcl-base/examples/README
index b90db1da32..b90db1da32 100644
--- a/packages/fcl-base/tests/README
+++ b/packages/fcl-base/examples/README
diff --git a/packages/fcl-base/tests/asiotest.pp b/packages/fcl-base/examples/asiotest.pp
index 73f0bc572c..73f0bc572c 100644
--- a/packages/fcl-base/tests/asiotest.pp
+++ b/packages/fcl-base/examples/asiotest.pp
diff --git a/packages/fcl-base/tests/b64.pp b/packages/fcl-base/examples/b64.pp
index c4483a4fdf..c4483a4fdf 100644
--- a/packages/fcl-base/tests/b64.pp
+++ b/packages/fcl-base/examples/b64.pp
diff --git a/packages/fcl-base/tests/b64dec.pp b/packages/fcl-base/examples/b64dec.pp
index c7aa144e49..c7aa144e49 100644
--- a/packages/fcl-base/tests/b64dec.pp
+++ b/packages/fcl-base/examples/b64dec.pp
diff --git a/packages/fcl-base/tests/b64enc.pp b/packages/fcl-base/examples/b64enc.pp
index 5769f94fe4..5769f94fe4 100644
--- a/packages/fcl-base/tests/b64enc.pp
+++ b/packages/fcl-base/examples/b64enc.pp
diff --git a/packages/fcl-base/tests/b64test.pp b/packages/fcl-base/examples/b64test.pp
index df301ba0bd..df301ba0bd 100644
--- a/packages/fcl-base/tests/b64test.pp
+++ b/packages/fcl-base/examples/b64test.pp
diff --git a/packages/fcl-base/tests/b64test2.pp b/packages/fcl-base/examples/b64test2.pp
index 85c9a40ab4..85c9a40ab4 100644
--- a/packages/fcl-base/tests/b64test2.pp
+++ b/packages/fcl-base/examples/b64test2.pp
diff --git a/packages/fcl-base/tests/base64decodingtestcase.pas b/packages/fcl-base/examples/base64decodingtestcase.pas
index 8e9fdeb9ea..8e9fdeb9ea 100644
--- a/packages/fcl-base/tests/base64decodingtestcase.pas
+++ b/packages/fcl-base/examples/base64decodingtestcase.pas
diff --git a/packages/fcl-base/tests/cachetest.pp b/packages/fcl-base/examples/cachetest.pp
index b4ac2e82fe..b4ac2e82fe 100644
--- a/packages/fcl-base/tests/cachetest.pp
+++ b/packages/fcl-base/examples/cachetest.pp
diff --git a/packages/fcl-base/tests/cfgtest.pp b/packages/fcl-base/examples/cfgtest.pp
index a7c488a8d0..a7c488a8d0 100644
--- a/packages/fcl-base/tests/cfgtest.pp
+++ b/packages/fcl-base/examples/cfgtest.pp
diff --git a/packages/fcl-base/tests/daemon.pp b/packages/fcl-base/examples/daemon.pp
index 5c7a0f2099..5c7a0f2099 100644
--- a/packages/fcl-base/tests/daemon.pp
+++ b/packages/fcl-base/examples/daemon.pp
diff --git a/packages/fcl-base/tests/daemon.txt b/packages/fcl-base/examples/daemon.txt
index 01e9607588..01e9607588 100644
--- a/packages/fcl-base/tests/daemon.txt
+++ b/packages/fcl-base/examples/daemon.txt
diff --git a/packages/fcl-base/tests/dbugsrv.pp b/packages/fcl-base/examples/dbugsrv.pp
index c54042595b..c54042595b 100644
--- a/packages/fcl-base/tests/dbugsrv.pp
+++ b/packages/fcl-base/examples/dbugsrv.pp
diff --git a/packages/fcl-base/tests/debugtest.pp b/packages/fcl-base/examples/debugtest.pp
index b6877b6c37..b6877b6c37 100644
--- a/packages/fcl-base/tests/debugtest.pp
+++ b/packages/fcl-base/examples/debugtest.pp
diff --git a/packages/fcl-base/tests/doecho.pp b/packages/fcl-base/examples/doecho.pp
index 07753ab368..07753ab368 100644
--- a/packages/fcl-base/tests/doecho.pp
+++ b/packages/fcl-base/examples/doecho.pp
diff --git a/packages/fcl-base/tests/dparser.pp b/packages/fcl-base/examples/dparser.pp
index 4b9e2129ec..4b9e2129ec 100644
--- a/packages/fcl-base/tests/dparser.pp
+++ b/packages/fcl-base/examples/dparser.pp
diff --git a/packages/fcl-base/tests/dsockcli.pp b/packages/fcl-base/examples/dsockcli.pp
index 923903f19a..923903f19a 100644
--- a/packages/fcl-base/tests/dsockcli.pp
+++ b/packages/fcl-base/examples/dsockcli.pp
diff --git a/packages/fcl-base/tests/dsocksvr.pp b/packages/fcl-base/examples/dsocksvr.pp
index a0339708fe..a0339708fe 100644
--- a/packages/fcl-base/tests/dsocksvr.pp
+++ b/packages/fcl-base/examples/dsocksvr.pp
diff --git a/packages/fcl-base/tests/fpdoc.dtd b/packages/fcl-base/examples/fpdoc.dtd
index cf385b93a2..cf385b93a2 100644
--- a/packages/fcl-base/tests/fpdoc.dtd
+++ b/packages/fcl-base/examples/fpdoc.dtd
diff --git a/packages/fcl-base/tests/fstream.pp b/packages/fcl-base/examples/fstream.pp
index 7f160eb6c9..7f160eb6c9 100644
--- a/packages/fcl-base/tests/fstream.pp
+++ b/packages/fcl-base/examples/fstream.pp
diff --git a/packages/fcl-base/tests/htdump.pp b/packages/fcl-base/examples/htdump.pp
index 2dfe90b02d..2dfe90b02d 100644
--- a/packages/fcl-base/tests/htdump.pp
+++ b/packages/fcl-base/examples/htdump.pp
diff --git a/packages/fcl-base/tests/intl/Makefile b/packages/fcl-base/examples/intl/Makefile
index c2c38fb3e4..c2c38fb3e4 100644
--- a/packages/fcl-base/tests/intl/Makefile
+++ b/packages/fcl-base/examples/intl/Makefile
diff --git a/packages/fcl-base/tests/intl/README b/packages/fcl-base/examples/intl/README
index b3105fe5d6..b3105fe5d6 100644
--- a/packages/fcl-base/tests/intl/README
+++ b/packages/fcl-base/examples/intl/README
diff --git a/packages/fcl-base/tests/intl/restest.de.mo b/packages/fcl-base/examples/intl/restest.de.mo
index afd2bc5625..afd2bc5625 100644
--- a/packages/fcl-base/tests/intl/restest.de.mo
+++ b/packages/fcl-base/examples/intl/restest.de.mo
Binary files differ
diff --git a/packages/fcl-base/tests/intl/restest.de.po b/packages/fcl-base/examples/intl/restest.de.po
index e24b1887d5..e24b1887d5 100644
--- a/packages/fcl-base/tests/intl/restest.de.po
+++ b/packages/fcl-base/examples/intl/restest.de.po
diff --git a/packages/fcl-base/tests/intl/restest.fr.mo b/packages/fcl-base/examples/intl/restest.fr.mo
index ec6066025f..ec6066025f 100644
--- a/packages/fcl-base/tests/intl/restest.fr.mo
+++ b/packages/fcl-base/examples/intl/restest.fr.mo
Binary files differ
diff --git a/packages/fcl-base/tests/intl/restest.fr.po b/packages/fcl-base/examples/intl/restest.fr.po
index a20df805f0..a20df805f0 100644
--- a/packages/fcl-base/tests/intl/restest.fr.po
+++ b/packages/fcl-base/examples/intl/restest.fr.po
diff --git a/packages/fcl-base/tests/intl/restest.nl.mo b/packages/fcl-base/examples/intl/restest.nl.mo
index 36ac4a2dbc..36ac4a2dbc 100644
--- a/packages/fcl-base/tests/intl/restest.nl.mo
+++ b/packages/fcl-base/examples/intl/restest.nl.mo
Binary files differ
diff --git a/packages/fcl-base/tests/intl/restest.nl.po b/packages/fcl-base/examples/intl/restest.nl.po
index 1f56f5bcd5..1f56f5bcd5 100644
--- a/packages/fcl-base/tests/intl/restest.nl.po
+++ b/packages/fcl-base/examples/intl/restest.nl.po
diff --git a/packages/fcl-base/tests/intl/restest.pb.mo b/packages/fcl-base/examples/intl/restest.pb.mo
index 076502fd76..076502fd76 100644
--- a/packages/fcl-base/tests/intl/restest.pb.mo
+++ b/packages/fcl-base/examples/intl/restest.pb.mo
Binary files differ
diff --git a/packages/fcl-base/tests/intl/restest.pb.po b/packages/fcl-base/examples/intl/restest.pb.po
index 059f3d21a0..059f3d21a0 100644
--- a/packages/fcl-base/tests/intl/restest.pb.po
+++ b/packages/fcl-base/examples/intl/restest.pb.po
diff --git a/packages/fcl-base/tests/intl/restest.ru.mo b/packages/fcl-base/examples/intl/restest.ru.mo
index 4e61e7f9eb..4e61e7f9eb 100644
--- a/packages/fcl-base/tests/intl/restest.ru.mo
+++ b/packages/fcl-base/examples/intl/restest.ru.mo
Binary files differ
diff --git a/packages/fcl-base/tests/intl/restest.ru.po b/packages/fcl-base/examples/intl/restest.ru.po
index ba4600d36f..ba4600d36f 100644
--- a/packages/fcl-base/tests/intl/restest.ru.po
+++ b/packages/fcl-base/examples/intl/restest.ru.po
diff --git a/packages/fcl-base/tests/intl/resttest.po b/packages/fcl-base/examples/intl/resttest.po
index 8d1a320461..8d1a320461 100644
--- a/packages/fcl-base/tests/intl/resttest.po
+++ b/packages/fcl-base/examples/intl/resttest.po
diff --git a/packages/fcl-base/tests/ipcclient.pp b/packages/fcl-base/examples/ipcclient.pp
index 4e00a37c58..4e00a37c58 100644
--- a/packages/fcl-base/tests/ipcclient.pp
+++ b/packages/fcl-base/examples/ipcclient.pp
diff --git a/packages/fcl-base/tests/ipcserver.pp b/packages/fcl-base/examples/ipcserver.pp
index 924cb88c9c..924cb88c9c 100644
--- a/packages/fcl-base/tests/ipcserver.pp
+++ b/packages/fcl-base/examples/ipcserver.pp
diff --git a/packages/fcl-base/tests/isockcli.pp b/packages/fcl-base/examples/isockcli.pp
index 2bfdf2e9aa..2bfdf2e9aa 100644
--- a/packages/fcl-base/tests/isockcli.pp
+++ b/packages/fcl-base/examples/isockcli.pp
diff --git a/packages/fcl-base/tests/isocksvr.pp b/packages/fcl-base/examples/isocksvr.pp
index 8d0ddcee39..8d0ddcee39 100644
--- a/packages/fcl-base/tests/isocksvr.pp
+++ b/packages/fcl-base/examples/isocksvr.pp
diff --git a/packages/fcl-base/tests/istream.pp b/packages/fcl-base/examples/istream.pp
index e04ab99113..e04ab99113 100644
--- a/packages/fcl-base/tests/istream.pp
+++ b/packages/fcl-base/examples/istream.pp
diff --git a/packages/fcl-base/tests/kword.xml b/packages/fcl-base/examples/kword.xml
index e21be93981..e21be93981 100644
--- a/packages/fcl-base/tests/kword.xml
+++ b/packages/fcl-base/examples/kword.xml
diff --git a/packages/fcl-base/tests/list.pp b/packages/fcl-base/examples/list.pp
index 3c3372ff93..3c3372ff93 100644
--- a/packages/fcl-base/tests/list.pp
+++ b/packages/fcl-base/examples/list.pp
diff --git a/packages/fcl-base/tests/mstream.pp b/packages/fcl-base/examples/mstream.pp
index 37d6df7c0d..37d6df7c0d 100644
--- a/packages/fcl-base/tests/mstream.pp
+++ b/packages/fcl-base/examples/mstream.pp
diff --git a/packages/fcl-base/tests/overview.rtf b/packages/fcl-base/examples/overview.rtf
index 846fc61a9b..846fc61a9b 100644
--- a/packages/fcl-base/tests/overview.rtf
+++ b/packages/fcl-base/examples/overview.rtf
Binary files differ
diff --git a/packages/fcl-base/tests/parser.dat b/packages/fcl-base/examples/parser.dat
index d3a792955d..d3a792955d 100644
--- a/packages/fcl-base/tests/parser.dat
+++ b/packages/fcl-base/examples/parser.dat
diff --git a/packages/fcl-base/tests/poolmm1.pp b/packages/fcl-base/examples/poolmm1.pp
index 11dfd4fe8b..11dfd4fe8b 100644
--- a/packages/fcl-base/tests/poolmm1.pp
+++ b/packages/fcl-base/examples/poolmm1.pp
diff --git a/packages/fcl-base/tests/poolmm2.pp b/packages/fcl-base/examples/poolmm2.pp
index 79193c3e27..79193c3e27 100644
--- a/packages/fcl-base/tests/poolmm2.pp
+++ b/packages/fcl-base/examples/poolmm2.pp
diff --git a/packages/fcl-base/tests/restest.pp b/packages/fcl-base/examples/restest.pp
index 4702f927a1..4702f927a1 100644
--- a/packages/fcl-base/tests/restest.pp
+++ b/packages/fcl-base/examples/restest.pp
diff --git a/packages/fcl-base/tests/showver.pp b/packages/fcl-base/examples/showver.pp
index b818e53472..b818e53472 100644
--- a/packages/fcl-base/tests/showver.pp
+++ b/packages/fcl-base/examples/showver.pp
diff --git a/packages/fcl-base/tests/showver.rc b/packages/fcl-base/examples/showver.rc
index cfa30612e6..cfa30612e6 100644
--- a/packages/fcl-base/tests/showver.rc
+++ b/packages/fcl-base/examples/showver.rc
diff --git a/packages/fcl-base/tests/showver.res b/packages/fcl-base/examples/showver.res
index 59ebb6f098..59ebb6f098 100644
--- a/packages/fcl-base/tests/showver.res
+++ b/packages/fcl-base/examples/showver.res
Binary files differ
diff --git a/packages/fcl-base/tests/simple.xml b/packages/fcl-base/examples/simple.xml
index 7bc896127c..7bc896127c 100644
--- a/packages/fcl-base/tests/simple.xml
+++ b/packages/fcl-base/examples/simple.xml
diff --git a/packages/fcl-base/tests/sockcli.pp b/packages/fcl-base/examples/sockcli.pp
index 85d36d0cd8..85d36d0cd8 100644
--- a/packages/fcl-base/tests/sockcli.pp
+++ b/packages/fcl-base/examples/sockcli.pp
diff --git a/packages/fcl-base/tests/socksvr.pp b/packages/fcl-base/examples/socksvr.pp
index 5c8aee8953..5c8aee8953 100644
--- a/packages/fcl-base/tests/socksvr.pp
+++ b/packages/fcl-base/examples/socksvr.pp
diff --git a/packages/fcl-base/tests/sstream.pp b/packages/fcl-base/examples/sstream.pp
index aff6fc04de..aff6fc04de 100644
--- a/packages/fcl-base/tests/sstream.pp
+++ b/packages/fcl-base/examples/sstream.pp
diff --git a/packages/fcl-base/tests/stringl.pp b/packages/fcl-base/examples/stringl.pp
index 7f66770d41..7f66770d41 100644
--- a/packages/fcl-base/tests/stringl.pp
+++ b/packages/fcl-base/examples/stringl.pp
diff --git a/packages/fcl-base/tests/tarmakercons.pas b/packages/fcl-base/examples/tarmakercons.pas
index 1d25ee9048..1d25ee9048 100644
--- a/packages/fcl-base/tests/tarmakercons.pas
+++ b/packages/fcl-base/examples/tarmakercons.pas
diff --git a/packages/fcl-base/tests/tarmakerconsgzip.pas b/packages/fcl-base/examples/tarmakerconsgzip.pas
index c5a049d098..c5a049d098 100644
--- a/packages/fcl-base/tests/tarmakerconsgzip.pas
+++ b/packages/fcl-base/examples/tarmakerconsgzip.pas
diff --git a/packages/fcl-base/tests/testapp.pp b/packages/fcl-base/examples/testapp.pp
index b61b834327..b61b834327 100644
--- a/packages/fcl-base/tests/testapp.pp
+++ b/packages/fcl-base/examples/testapp.pp
diff --git a/packages/fcl-base/tests/testbf.pp b/packages/fcl-base/examples/testbf.pp
index 2f99ae1ea2..2f99ae1ea2 100644
--- a/packages/fcl-base/tests/testbf.pp
+++ b/packages/fcl-base/examples/testbf.pp
diff --git a/packages/fcl-base/tests/testbs.pp b/packages/fcl-base/examples/testbs.pp
index 85dec2ae72..85dec2ae72 100644
--- a/packages/fcl-base/tests/testbs.pp
+++ b/packages/fcl-base/examples/testbs.pp
diff --git a/packages/fcl-base/tests/testcgi.html b/packages/fcl-base/examples/testcgi.html
index f940264793..f940264793 100644
--- a/packages/fcl-base/tests/testcgi.html
+++ b/packages/fcl-base/examples/testcgi.html
diff --git a/packages/fcl-base/tests/testcgi.pp b/packages/fcl-base/examples/testcgi.pp
index 24a1e35f87..24a1e35f87 100644
--- a/packages/fcl-base/tests/testcgi.pp
+++ b/packages/fcl-base/examples/testcgi.pp
diff --git a/packages/fcl-base/tests/testcont.pp b/packages/fcl-base/examples/testcont.pp
index c30528b622..c30528b622 100644
--- a/packages/fcl-base/tests/testcont.pp
+++ b/packages/fcl-base/examples/testcont.pp
diff --git a/packages/fcl-base/tests/testez.pp b/packages/fcl-base/examples/testez.pp
index 4c901ba659..4c901ba659 100644
--- a/packages/fcl-base/tests/testez.pp
+++ b/packages/fcl-base/examples/testez.pp
diff --git a/packages/fcl-base/tests/testhres.pp b/packages/fcl-base/examples/testhres.pp
index 9bb0bcd9b4..9bb0bcd9b4 100644
--- a/packages/fcl-base/tests/testhres.pp
+++ b/packages/fcl-base/examples/testhres.pp
diff --git a/packages/fcl-base/tests/testnres.pp b/packages/fcl-base/examples/testnres.pp
index fe7af7463b..fe7af7463b 100644
--- a/packages/fcl-base/tests/testnres.pp
+++ b/packages/fcl-base/examples/testnres.pp
diff --git a/packages/fcl-base/tests/testol.pp b/packages/fcl-base/examples/testol.pp
index 3d1424be0d..3d1424be0d 100644
--- a/packages/fcl-base/tests/testol.pp
+++ b/packages/fcl-base/examples/testol.pp
diff --git a/packages/fcl-base/tests/testproc.pp b/packages/fcl-base/examples/testproc.pp
index a65a535398..a65a535398 100644
--- a/packages/fcl-base/tests/testproc.pp
+++ b/packages/fcl-base/examples/testproc.pp
diff --git a/packages/fcl-base/tests/testreg.pp b/packages/fcl-base/examples/testreg.pp
index c35028befa..c35028befa 100644
--- a/packages/fcl-base/tests/testreg.pp
+++ b/packages/fcl-base/examples/testreg.pp
diff --git a/packages/fcl-base/tests/testrhre.pp b/packages/fcl-base/examples/testrhre.pp
index 572ddacf80..572ddacf80 100644
--- a/packages/fcl-base/tests/testrhre.pp
+++ b/packages/fcl-base/examples/testrhre.pp
diff --git a/packages/fcl-base/tests/testrnre.pp b/packages/fcl-base/examples/testrnre.pp
index 68fd3aad03..68fd3aad03 100644
--- a/packages/fcl-base/tests/testrnre.pp
+++ b/packages/fcl-base/examples/testrnre.pp
diff --git a/packages/fcl-base/tests/testrsre.pp b/packages/fcl-base/examples/testrsre.pp
index 931b5feb7f..931b5feb7f 100644
--- a/packages/fcl-base/tests/testrsre.pp
+++ b/packages/fcl-base/examples/testrsre.pp
diff --git a/packages/fcl-base/tests/testrtf.pp b/packages/fcl-base/examples/testrtf.pp
index 52e499e8ed..52e499e8ed 100644
--- a/packages/fcl-base/tests/testrtf.pp
+++ b/packages/fcl-base/examples/testrtf.pp
diff --git a/packages/fcl-base/tests/testser.pp b/packages/fcl-base/examples/testser.pp
index f1d9436940..f1d9436940 100644
--- a/packages/fcl-base/tests/testser.pp
+++ b/packages/fcl-base/examples/testser.pp
diff --git a/packages/fcl-base/tests/testsres.pp b/packages/fcl-base/examples/testsres.pp
index 16c100e9bb..16c100e9bb 100644
--- a/packages/fcl-base/tests/testsres.pp
+++ b/packages/fcl-base/examples/testsres.pp
diff --git a/packages/fcl-base/tests/testtimer.pp b/packages/fcl-base/examples/testtimer.pp
index 47c0955a0b..47c0955a0b 100644
--- a/packages/fcl-base/tests/testtimer.pp
+++ b/packages/fcl-base/examples/testtimer.pp
diff --git a/packages/fcl-base/tests/testunzip.pp b/packages/fcl-base/examples/testunzip.pp
index 4e3d113700..4e3d113700 100644
--- a/packages/fcl-base/tests/testunzip.pp
+++ b/packages/fcl-base/examples/testunzip.pp
diff --git a/packages/fcl-base/tests/testur.pp b/packages/fcl-base/examples/testur.pp
index e92f82f9ec..e92f82f9ec 100644
--- a/packages/fcl-base/tests/testur.pp
+++ b/packages/fcl-base/examples/testur.pp
diff --git a/packages/fcl-base/tests/testweb.pp b/packages/fcl-base/examples/testweb.pp
index 0767bf6168..0767bf6168 100644
--- a/packages/fcl-base/tests/testweb.pp
+++ b/packages/fcl-base/examples/testweb.pp
diff --git a/packages/fcl-base/tests/testz.pp b/packages/fcl-base/examples/testz.pp
index cd6509dc4d..cd6509dc4d 100644
--- a/packages/fcl-base/tests/testz.pp
+++ b/packages/fcl-base/examples/testz.pp
diff --git a/packages/fcl-base/tests/testz2.pp b/packages/fcl-base/examples/testz2.pp
index 1892d26810..1892d26810 100644
--- a/packages/fcl-base/tests/testz2.pp
+++ b/packages/fcl-base/examples/testz2.pp
diff --git a/packages/fcl-base/tests/testzip.pp b/packages/fcl-base/examples/testzip.pp
index a028a106bc..a028a106bc 100644
--- a/packages/fcl-base/tests/testzip.pp
+++ b/packages/fcl-base/examples/testzip.pp
diff --git a/packages/fcl-base/tests/threads.pp b/packages/fcl-base/examples/threads.pp
index 9e7ab45a0a..9e7ab45a0a 100644
--- a/packages/fcl-base/tests/threads.pp
+++ b/packages/fcl-base/examples/threads.pp
diff --git a/packages/fcl-base/tests/tidea.pp b/packages/fcl-base/examples/tidea.pp
index a5bdc13587..a5bdc13587 100644
--- a/packages/fcl-base/tests/tidea.pp
+++ b/packages/fcl-base/examples/tidea.pp
diff --git a/packages/fcl-base/tests/tstelcmd.pp b/packages/fcl-base/examples/tstelcmd.pp
index b84f30b76c..b84f30b76c 100644
--- a/packages/fcl-base/tests/tstelcmd.pp
+++ b/packages/fcl-base/examples/tstelcmd.pp
diff --git a/packages/fcl-base/tests/tstelgtk.pp b/packages/fcl-base/examples/tstelgtk.pp
index 46b0aef1f6..46b0aef1f6 100644
--- a/packages/fcl-base/tests/tstelgtk.pp
+++ b/packages/fcl-base/examples/tstelgtk.pp
diff --git a/packages/fcl-base/tests/txmlreg.pp b/packages/fcl-base/examples/txmlreg.pp
index 854e297dd4..854e297dd4 100644
--- a/packages/fcl-base/tests/txmlreg.pp
+++ b/packages/fcl-base/examples/txmlreg.pp
diff --git a/packages/fcl-base/tests/xmldump.pp b/packages/fcl-base/examples/xmldump.pp
index eb09ac37a0..eb09ac37a0 100644
--- a/packages/fcl-base/tests/xmldump.pp
+++ b/packages/fcl-base/examples/xmldump.pp
diff --git a/packages/fcl-base/fpmake.pp b/packages/fcl-base/fpmake.pp
new file mode 100644
index 0000000000..a46af8296a
--- /dev/null
+++ b/packages/fcl-base/fpmake.pp
@@ -0,0 +1,107 @@
+{$ifndef ALLPACKAGES}
+{$mode objfpc}{$H+}
+program fpmake;
+
+uses fpmkunit;
+
+Var
+ T : TTarget;
+ P : TPackage;
+begin
+ With Installer do
+ begin
+{$endif ALLPACKAGES}
+
+ P:=AddPackage('fcl-base');
+{$ifdef ALLPACKAGES}
+ P.Directory:='fcl-base';
+{$endif ALLPACKAGES}
+ P.Version:='2.2.1';
+
+ P.Dependencies.Add('winunits-jedi',[Win32,Win64]);
+
+ P.SourcePath.Add('src');
+ P.SourcePath.Add('src/unix',AllUnixOSes);
+ P.SourcePath.Add('src/win',AllWindowsOSes);
+ P.SourcePath.Add('src/$(OS)',AllOSes-AllWindowsOSes-AllUnixOSes);
+ P.IncludePath.Add('src');
+ P.IncludePath.Add('src/unix',AllUnixOSes);
+ P.IncludePath.Add('src/win',AllWindowsOSes);
+ P.IncludePath.Add('src/$(OS)',AllOSes-AllWindowsOSes-AllUnixOSes);
+
+ T:=P.Targets.AddUnit('avl_tree.pp');
+ T:=P.Targets.AddUnit('base64.pp');
+ T:=P.Targets.AddUnit('blowfish.pp');
+ T:=P.Targets.AddUnit('bufstream.pp');
+ T:=P.Targets.AddUnit('cachecls.pp');
+ T.ResourceStrings:=true;
+ T:=P.Targets.AddUnit('contnrs.pp');
+ T:=P.Targets.AddUnit('custapp.pp');
+ T.ResourceStrings:=true;
+ T:=P.Targets.AddUnit('daemonapp.pp',AllWindowsOSes+AllUnixOSes);
+ with T.Dependencies do
+ begin
+ AddInclude('daemonapp.inc');
+ AddUnit('custapp');
+ AddUnit('eventlog');
+ end;
+ T:=P.Targets.AddUnit('eventlog.pp');
+ T.ResourceStrings:=true;
+ with T.Dependencies do
+ begin
+ AddInclude('eventlog.inc');
+ end;
+ T:=P.Targets.AddUnit('fptimer.pp',AllWindowsOSes+AllUnixOSes);
+ T:=P.Targets.AddUnit('gettext.pp');
+ T:=P.Targets.AddUnit('idea.pp');
+ T:=P.Targets.AddUnit('inicol.pp');
+ T.ResourceStrings:=true;
+ with T.Dependencies do
+ begin
+ AddUnit('inifiles');
+ end;
+ T:=P.Targets.AddUnit('inifiles.pp');
+ with T.Dependencies do
+ begin
+ AddUnit('contnrs');
+ end;
+ T:=P.Targets.AddUnit('iostream.pp');
+ T:=P.Targets.AddUnit('libtar.pp');
+ T:=P.Targets.AddUnit('maskutils.pp');
+ T:=P.Targets.AddUnit('pooledmm.pp');
+ T:=P.Targets.AddUnit('rtfpars.pp');
+ with T.Dependencies do
+ begin
+ AddInclude('rtfdata.inc');
+ end;
+ T:=P.Targets.AddUnit('rttiutils.pp');
+ T:=P.Targets.AddUnit('streamcoll.pp');
+ T.ResourceStrings:=true;
+ T:=P.Targets.AddUnit('streamex.pp');
+ T:=P.Targets.AddUnit('streamio.pp');
+ T:=P.Targets.AddUnit('syncobjs.pp',AllOSes-[GO32v2,OS2,EMX]);
+ T:=P.Targets.AddUnit('uriparser.pp');
+ T:=P.Targets.AddUnit('wformat.pp');
+ T:=P.Targets.AddUnit('whtml.pp');
+ with T.Dependencies do
+ begin
+ AddUnit('wformat');
+ end;
+ T:=P.Targets.AddUnit('wtex.pp');
+ with T.Dependencies do
+ begin
+ AddUnit('wformat');
+ end;
+
+ // Windows units
+ T:=P.Targets.AddUnit('ServiceManager.pas',[Win32,Win64]);
+ T:=P.Targets.AddUnit('fileinfo',AllWindowsOSes);
+
+ // Additional sources
+ P.Sources.AddSrcFiles('src/win/fclel.*');
+
+{$ifndef ALLPACKAGES}
+ Run;
+ end;
+end.
+{$endif ALLPACKAGES}
diff --git a/packages/fcl-base/src/inc/avl_tree.pp b/packages/fcl-base/src/avl_tree.pp
index c7e694f797..c7e694f797 100644
--- a/packages/fcl-base/src/inc/avl_tree.pp
+++ b/packages/fcl-base/src/avl_tree.pp
diff --git a/packages/fcl-base/src/inc/base64.pp b/packages/fcl-base/src/base64.pp
index afe524632d..afe524632d 100644
--- a/packages/fcl-base/src/inc/base64.pp
+++ b/packages/fcl-base/src/base64.pp
diff --git a/packages/fcl-base/src/inc/blowfish.pp b/packages/fcl-base/src/blowfish.pp
index d0809b08a1..d0809b08a1 100644
--- a/packages/fcl-base/src/inc/blowfish.pp
+++ b/packages/fcl-base/src/blowfish.pp
diff --git a/packages/fcl-base/src/inc/bufstream.pp b/packages/fcl-base/src/bufstream.pp
index 64070a232d..64070a232d 100644
--- a/packages/fcl-base/src/inc/bufstream.pp
+++ b/packages/fcl-base/src/bufstream.pp
diff --git a/packages/fcl-base/src/inc/cachecls.pp b/packages/fcl-base/src/cachecls.pp
index 6f1f184ab2..95ac4ae4aa 100644
--- a/packages/fcl-base/src/inc/cachecls.pp
+++ b/packages/fcl-base/src/cachecls.pp
@@ -11,6 +11,8 @@
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
}
+{$mode objfpc}
+{$H+}
unit CacheCls;
diff --git a/packages/fcl-base/src/inc/contnrs.pp b/packages/fcl-base/src/contnrs.pp
index 09d0b8591b..09d0b8591b 100644
--- a/packages/fcl-base/src/inc/contnrs.pp
+++ b/packages/fcl-base/src/contnrs.pp
diff --git a/packages/fcl-base/src/inc/custapp.pp b/packages/fcl-base/src/custapp.pp
index 6206a3b877..6206a3b877 100644
--- a/packages/fcl-base/src/inc/custapp.pp
+++ b/packages/fcl-base/src/custapp.pp
diff --git a/packages/fcl-base/src/inc/daemonapp.pp b/packages/fcl-base/src/daemonapp.pp
index df68d63fd0..df68d63fd0 100644
--- a/packages/fcl-base/src/inc/daemonapp.pp
+++ b/packages/fcl-base/src/daemonapp.pp
diff --git a/packages/fcl-base/src/inc/eventlog.pp b/packages/fcl-base/src/eventlog.pp
index f66f2c4ce9..f66f2c4ce9 100644
--- a/packages/fcl-base/src/inc/eventlog.pp
+++ b/packages/fcl-base/src/eventlog.pp
diff --git a/packages/fcl-base/src/inc/felog.inc b/packages/fcl-base/src/felog.inc
index f147ff9ec1..f147ff9ec1 100644
--- a/packages/fcl-base/src/inc/felog.inc
+++ b/packages/fcl-base/src/felog.inc
diff --git a/packages/fcl-base/src/fpmake.inc b/packages/fcl-base/src/fpmake.inc
deleted file mode 100644
index 2281d7241b..0000000000
--- a/packages/fcl-base/src/fpmake.inc
+++ /dev/null
@@ -1,90 +0,0 @@
-{ Make general directory and all subdirectories }
-{ FULLFCL will be defined if included from main FCL directory, }
-{ which should always be the case for this file }
-
-Targets.ResetDefaults;
-Targets.DefaultDir:='inc';
-T:=Targets.AddUnit('contnrs');
-T:=Targets.AddUnit('inifiles');
-T:=Targets.AddUnit('ezcgi');
-T:=Targets.AddUnit('pipes');
-T:=Targets.AddUnit('rtfpars');
-T:=Targets.AddUnit('idea');
-T:=Targets.AddUnit('base64');
-T:=Targets.AddUnit('gettext');
-T:=Targets.AddUnit('iostream');
-T:=Targets.AddUnit('zstream');
-T:=Targets.AddUnit('cachecls');
-T.ResourceStrings:=True;
-T:=Targets.AddUnit('avl_tree');
-T:=Targets.AddUnit('xmlreg');
-T:=Targets.AddUnit('registry');
-T.ResourceStrings:=True;
-T:=Targets.AddUnit('eventlog');
-T.ResourceStrings:=True;
-T:=Targets.AddUnit('custapp');
-T.ResourceStrings:=True;
-T:=Targets.AddUnit('cgiapp');
-T.ResourceStrings:=True;
-T:=Targets.AddUnit('wformat');
-T:=Targets.AddUnit('whtml');
-T:=Targets.AddUnit('wtex');
-T:=Targets.AddUnit('rttiutils');
-T:=Targets.AddUnit('bufstream');
-T.ResourceStrings:=True;
-T:=Targets.AddUnit('streamex');
-T:=Targets.AddUnit('process');
-T.OS:=[freebsd,darwin,solaris,netbsd,openbsd,linux,win32];
-T:=Targets.AddUnit('ssockets');
-T.OS:=[freebsd,darwin,solaris,netbsd,openbsd,linux,win32,os2,emx,netware,netwlibc];
-T.ResourceStrings:=True;
-T:=Targets.AddUnit('resolve');
-T.OS:=[freebsd,darwin,solaris,netbsd,openbsd,linux,win32,os2,emx,netware,netwlibc];
-T.ResourceStrings:=True;
-T:=Targets.AddUnit('fpasync');
-T.OS:=[freebsd,darwin,solaris,netbsd,openbsd,linux];
-T:=Targets.AddUnit('syncobjs');
-T.OS:=[freebsd,darwin,solaris,linux,win32,netwlibc];
-T.Directory:=OSToString(Defaults.OS);
-T:=Targets.AddUnit('win32/fileinfo');
-T.OS:=[win32];
-
-{ Clean files. }
-CleanFiles.add('adler.o');
-CleanFiles.add('adler.ppu');
-CleanFiles.add('gzcrc.o');
-CleanFiles.add('gzcrc.ppu');
-CleanFiles.add('gzio.o');
-CleanFiles.add('gzio.ppu');
-CleanFiles.add('infblock.o');
-CleanFiles.add('infblock.ppu');
-CleanFiles.add('infcodes.o');
-CleanFiles.add('infcodes.ppu');
-CleanFiles.add('inffast.o');
-CleanFiles.add('inffast.ppu');
-CleanFiles.add('inftrees.o');
-CleanFiles.add('inftrees.ppu');
-CleanFiles.add('infutil.o');
-CleanFiles.add('infutil.ppu');
-CleanFiles.add('minigzip.o');
-CleanFiles.add('minigzip.ppu');
-CleanFiles.add('paszlib.o');
-CleanFiles.add('paszlib.ppu');
-CleanFiles.add('trees.o');
-CleanFiles.add('trees.ppu');
-CleanFiles.add('zbase.o');
-CleanFiles.add('zbase.ppu');
-CleanFiles.add('zcompres.o');
-CleanFiles.add('zcompres.ppu');
-CleanFiles.add('zdeflate.o');
-CleanFiles.add('zdeflate.ppu');
-CleanFiles.add('zinflate.o');
-CleanFiles.add('zinflate.ppu');
-CleanFiles.add('zuncompr.o');
-CleanFiles.add('zuncompr.ppu');
-CleanFiles.add('zutil.o');
-CleanFiles.add('zutil.ppu');
-CleanFiles.add('pthreads.o');
-CleanFiles.add('pthreads.ppu');
-CleanFiles.add('streamio.o');
-CleanFiles.add('streamio.ppu');
diff --git a/packages/fcl-base/src/fpmake.pp b/packages/fcl-base/src/fpmake.pp
deleted file mode 100644
index 78161137dc..0000000000
--- a/packages/fcl-base/src/fpmake.pp
+++ /dev/null
@@ -1,49 +0,0 @@
-{$mode objfpc}
-{$H+}
-{ Define FullFCL, this way we know it's a complete FCL build}
-{$DEFINE FULLFCL}
-program fpmake;
-
-uses fpmkunit;
-
-Var
- T : TTarget;
-
-begin
- With Installer do
- begin
- { general definitions }
- {$i fclmake.inc}
-
- { Basic targets. }
- {$i inc/fpmake.inc}
-
- { XML directory }
- {$i xml/fpmake.inc}
-
- { Image directory }
- {$i image/fpmake.inc}
-
- { db directory }
- {$i db/fpmake.inc}
-
- { Shedit directory }
- {$i shedit/fpmake.inc}
-
- { Passrc directory }
- {$i passrc/fpmake.inc}
-
- { Net directory }
- {$i net/fpmake.inc}
-
- { fpcunit directory }
- {$i fpcunit/fpmake.inc}
-
- Targets.ResetDefaults;
-
- { All done.}
- EndPackage;
- Run;
- end;
-end.
-
diff --git a/packages/fcl-base/src/inc/fptimer.pp b/packages/fcl-base/src/fptimer.pp
index 176bbc7816..176bbc7816 100644
--- a/packages/fcl-base/src/inc/fptimer.pp
+++ b/packages/fcl-base/src/fptimer.pp
diff --git a/packages/fcl-base/src/inc/gettext.pp b/packages/fcl-base/src/gettext.pp
index 893b2e48f7..216df55693 100644
--- a/packages/fcl-base/src/inc/gettext.pp
+++ b/packages/fcl-base/src/gettext.pp
@@ -79,7 +79,10 @@ type
implementation
-uses {$ifdef win32} windows, {$endif}dos;
+{$ifdef Windows}
+uses
+ windows;
+{$endif}
constructor TMOFile.Create(AStream: TStream);
@@ -228,7 +231,7 @@ begin
end;
-{$ifdef win32}
+{$ifdef windows}
procedure GetLanguageIDs(var Lang, FallbackLang: string);
var
Buffer: array[1..4] of char;
@@ -256,13 +259,13 @@ end;
procedure GetLanguageIDs(var Lang, FallbackLang: string);
begin
- lang := GetEnv('LC_ALL');
+ lang := GetEnvironmentVariable('LC_ALL');
if Length(lang) = 0 then
begin
- lang := GetEnv('LC_MESSAGES');
+ lang := GetEnvironmentVariable('LC_MESSAGES');
if Length(lang) = 0 then
begin
- lang := GetEnv('LANG');
+ lang := GetEnvironmentVariable('LANG');
if Length(lang) = 0 then
exit; // no language defined via environment variables
end;
diff --git a/packages/fcl-base/src/inc/idea.pp b/packages/fcl-base/src/idea.pp
index e7adf03407..e7adf03407 100644
--- a/packages/fcl-base/src/inc/idea.pp
+++ b/packages/fcl-base/src/idea.pp
diff --git a/packages/fcl-base/src/inc/cgiapp.pp b/packages/fcl-base/src/inc/cgiapp.pp
deleted file mode 100644
index a548923a0a..0000000000
--- a/packages/fcl-base/src/inc/cgiapp.pp
+++ /dev/null
@@ -1,915 +0,0 @@
-{
- This file is part of the Free Pascal run time library.
- Copyright (c) 1999-2000 by the Free Pascal development team
-
- TCGIApplication class.
-
- See the file COPYING.FPC, included in this distribution,
- for details about the copyright.
-
- 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.
-
- **********************************************************************}
-
-{$mode objfpc}
-{$H+}
-
-unit cgiapp;
-
-Interface
-
-uses
- CustApp,Classes,SysUtils;
-
-Const
- CGIVarCount = 23;
-
-Type
- TCGIVarArray = Array[1..CGIVarCount] of String;
-
-Const
- CgiVarNames : TCGIVarArray =
- ('AUTH_TYPE',
- 'CONTENT_LENGTH',
- 'CONTENT_TYPE',
- 'GATEWAY_INTERFACE',
- 'PATH_INFO',
- 'PATH_TRANSLATED',
- 'QUERY_STRING', 'REMOTE_ADDR',
- 'REMOTE_HOST',
- 'REMOTE_IDENT',
- 'REMOTE_USER',
- 'REQUEST_METHOD',
- 'SCRIPT_NAME',
- 'SERVER_NAME',
- 'SERVER_PORT',
- 'SERVER_PROTOCOL',
- 'SERVER_SOFTWARE',
- 'HTTP_ACCEPT',
- 'HTTP_ACCEPT_CHARSET',
- 'HTTP_ACCEPT_ENCODING',
- 'HTTP_IF_MODIFIED_SINCE',
- 'HTTP_REFERER',
- 'HTTP_USER_AGENT');
-
-Type
-
- TCgiApplication = Class(TCustomApplication)
- Private
- FResponse : TStream;
- FEmail : String;
- FAdministrator : String;
- FContentTypeEmitted : Boolean;
- FCGIVars : TCGIVarArray;
- FRequestVars,
- FFormFiles : TStrings;
- Function GetCGIVar (Index : Integer) : String;
- Procedure InitCGIVars;
- Procedure InitRequestVars;
- Procedure InitPostVars;
- Procedure InitGetVars;
- Procedure SetContentLength (Value : Integer);
- Procedure SetCGIVar(Index : Integer; Value : String);
- Function GetContentLength : Integer;
- Function GetServerPort : Word;
- Function GetEmail : String;
- Function GetAdministrator : String;
- Procedure ProcessQueryString(Const FQueryString : String);
- Function GetRequestVariable(Const VarName : String) : String;
- Function GetRequestVariableCount : Integer;
- Procedure ProcessURLEncoded(M : TMemoryStream);
- Procedure ProcessMultiPart(M : TMemoryStream; Const Boundary : String);
- Public
- Constructor Create(AOwner : TComponent); override;
- Destructor Destroy; override;
- Procedure AddResponse(Const S : String);
- Procedure AddResponse(Const Fmt : String; Args : Array of const);
- Procedure AddResponseLn(Const S : String);
- Procedure AddResponseLn(Const Fmt : String; Args : Array of const);
- Procedure Initialize; override;
- Procedure GetCGIVarList(List : TStrings);
- Procedure GetRequestVarList(List : TStrings);
- Procedure GetRequestVarList(List : TStrings; NamesOnly : Boolean);
- Procedure ShowException(E: Exception);override;
- Procedure DeleteFormFiles;
- Function EmitContentType : Boolean;
- Function GetTempCGIFileName : String;
- Function VariableIsUploadedFile(Const VarName : String) : boolean;
- Function UploadedFileName(Const VarName : String) : String;
- Property AuthType : String Index 1 Read GetCGIVar;
- Property ContentLength : Integer Read GetContentLength Write SetContentLength; // Index 2
- Property ContentType : String Index 3 Read GetCGIVar Write SetCGIVar;
- Property GatewayInterface : String Index 4 Read GetCGIVar;
- Property PathInfo : String index 5 read GetCGIvar;
- Property PathTranslated : String Index 6 read getCGIVar;
- Property QueryString : String Index 7 read getcgivar;
- Property RemoteAddress : String Index 8 read GetCGIVar;
- Property RemoteHost : String Index 9 read GetCGIVar;
- Property RemoteIdent : String Index 10 read GetCGIVar;
- Property RemoteUser : String Index 11 read GetCGIVar;
- Property RequestMethod : String Index 12 read GetCGIVar;
- Property ScriptName : String Index 13 read GetCGIVar;
- Property ServerName : String Index 14 read GetCGIVar;
- Property ServerPort : Word Read GetServerPort; // Index 15
- Property ServerProtocol : String Index 16 read GetCGIVar;
- Property ServerSoftware : String Index 17 read GetCGIVar;
- Property HTTPAccept : String Index 18 read GetCGIVar;
- Property HTTPAcceptCharset : String Index 19 read GetCGIVar;
- Property HTTPAcceptEncoding : String Index 20 read GetCGIVar;
- Property HTTPIfModifiedSince : String Index 21 read GetCGIVar; // Maybe change to TDateTime ??
- Property HTTPReferer : String Index 22 read GetCGIVar;
- Property HTTPUserAgent : String Index 23 read GetCGIVar;
- Property Email : String Read GetEmail Write FEmail;
- Property Administrator : String Read GetAdministrator Write FAdministrator;
- Property RequestVariables[VarName : String] : String Read GetRequestVariable;
- Property RequestVariableCount : Integer Read GetRequestVariableCount;
- Property Response : TStream Read FResponse;
- end;
-
-ResourceString
- SWebMaster = 'webmaster';
- SCGIError = 'CGI Error';
- SAppEncounteredError = 'The application encountered the following error:';
- SError = 'Error: ';
- SNotify = 'Notify: ';
- SErrNoContentLength = 'No content length passed from server!';
- SErrUnsupportedContentType = 'Unsupported content type: "%s"';
- SErrNoRequestMethod = 'No REQUEST_METHOD passed from server.';
- SErrInvalidRequestMethod = 'Invalid REQUEST_METHOD passed from server.';
-
-Implementation
-
-uses
- iostream;
-
-Type
- TFormFile = Class(TObject)
- Private
- FFileName : String;
- Public
- Constructor Create(Const AFileName : String);
- Property FileName : String Read FFileName Write FFileName;
- end;
-
-Constructor TFormFile.Create(Const AFileName : String);
-
-begin
- FFileName:=AFileName;
-end;
-
-{$ifdef cgidebug}
-Var
- flog : Text;
-
-Procedure Log(Msg : String);
-
-begin
- Writeln(flog,Msg);
-end;
-
-Procedure Log(Msg : String;Args : Array of const);
-
-begin
- Writeln(flog,Format(Msg,Args));
-end;
-
-Procedure InitLog;
-
-begin
- Assign(flog,'/tmp/cgi.log');
- Rewrite(flog);
- Log('---- Start of log session ---- ');
-end;
-
-Procedure DoneLog;
-
-begin
- Close(Flog);
-end;
-{$endif}
-
-Constructor TCgiApplication.Create(AOwner : TComponent);
-
-begin
- Inherited Create(AOwner);
- FRequestVars:=TStringList.Create;
- FFormFiles:=TStringList.Create;
-end;
-
-Destructor TCgiApplication.Destroy;
-
-Var
- i : Integer;
-
-begin
- DeleteFormFiles;
- FFormFiles.Free;
- FRequestVars.Free;
- Inherited;
-end;
-
-Function TCgiApplication.GetCGIVar (Index : Integer) : String;
-
-begin
- Result:=FCGIVars[Index];
-end;
-
-Procedure TCgiApplication.InitCGIVars;
-
-Var
- I : Integer;
- L : TStrings;
-
-begin
- L:=TStringList.Create;
- Try
- GetEnvironmentList(L);
- For I:=1 to CGIVarCount do
- FCGIVars[i]:=L.Values[CGIVarNames[i]];
- Finally
- L.Free;
- end;
-end;
-
-Function TCgiApplication.GetTempCGIFileName : String;
-
-begin
- Result:=GetTempFileName('/tmp/','CGI')
-end;
-
-Procedure TCgiApplication.DeleteFormFiles;
-
-Var
- I,P : Integer;
- FN : String;
- FF : TFormFile;
-begin
- For I:=0 to FFormFiles.Count-1 do
- begin
- FF:=TFormFile(FFormFiles.Objects[i]);
- If Assigned(FF) then
- begin
- If FileExists(FF.FileName) then
- DeleteFile(FF.FileName);
- FF.Free;
- end;
- end;
-end;
-
-Procedure TCgiApplication.Initialize;
-
-begin
- StopOnException:=True;
- Inherited;
- InitCGIVars;
- InitRequestVars;
- FResponse:=TIOStream.Create(iosOutput);
-end;
-
-Procedure TCgiApplication.GetCGIVarList(List : TStrings);
-
-Var
- I : Integer;
-
-begin
- List.Clear;
- For I:=1 to cgiVarCount do
- List.Add(CGIVarNames[i]+'='+FCGIVars[i]);
-end;
-
-Procedure TCgiApplication.GetRequestVarList(List : TStrings);
-
-begin
- GetRequestVarList(List,False);
-end;
-
-Procedure TCgiApplication.GetRequestVarList(List : TStrings; NamesOnly : Boolean);
-
-Var
- I,J : Integer;
- S : String;
-
-begin
- List.BeginUpdate;
- Try
- List.Clear;
- // Copy one by one, there may be CR/LF in the variables, causing 'Text' to go wrong.
- If Assigned(FRequestVars) then
- For I:=0 to FRequestVars.Count-1 do
- begin
- S:=FRequestVars[i];
- If NamesOnly then
- begin
- J:=Pos('=',S);
- If (J>0) then
- S:=Copy(S,1,J-1);
- end;
- List.Add(S);
- end;
- finally
- List.EndUpdate;
- end;
-end;
-
-
-Function TCgiApplication.GetContentLength : Integer;
-
-begin
- Result:=StrToIntDef(GetCGIVar(2),-1);
-end;
-
-Procedure TCgiApplication.SetContentLength (Value : Integer);
-
-begin
- SetCGIVar(2,IntToStr(Value));
-end;
-
-Procedure TCgiApplication.SetCGIVar(Index : Integer; Value : String);
-
-begin
- If Index in [1..cgiVarCount] then
- FCGIVars[Index]:=Value;
-end;
-
-
-Function TCgiApplication.GetServerPort : Word;
-begin
- Result:=StrToIntDef(GetCGIVar(15),0);
-end;
-
-Function TCgiApplication.EmitContentType : Boolean;
-
-Var
- S: String;
-
-begin
- Result:=Not FContentTypeEmitted;
- If result then
- begin
- S:=ContentType;
- If (S='') then
- S:='text/html';
- AddResponseLn('Content-Type: '+ContentType);
- AddResponseLn('');
- FContentTypeEmitted:=True;
- end;
-end;
-
-Procedure TCgiApplication.ShowException(E: Exception);
-
-Var
- TheEmail : String;
- FrameCount: integer;
- Frames: PPointer;
- FrameNumber:Integer;
-
-begin
- If not FContentTypeEmitted then
- begin
- ContentType:='text/html';
- EmitContentType;
- end;
- If (ContentType='text/html') then
- begin
- AddResponseLN('<html><head><title>'+Title+': '+SCGIError+'</title></head>');
- AddResponseLN('<body>');
- AddResponseLN('<center><hr><h1>'+Title+': ERROR</h1><hr></center><br><br>');
- AddResponseLN(SAppEncounteredError+'<br>');
- AddResponseLN('<ul>');
- AddResponseLN('<li>'+SError+' <b>'+E.Message+'</b>');
- AddResponseLn('<li> Stack trace:<br>');
- AddResponseLn(BackTraceStrFunc(ExceptAddr)+'<br>');
- FrameCount:=ExceptFrameCount;
- Frames:=ExceptFrames;
- for FrameNumber := 0 to FrameCount-1 do
- AddResponseLn(BackTraceStrFunc(Frames[FrameNumber])+'<br>');
- AddResponseLn('</ul><hr>');
- TheEmail:=Email;
- If (TheEmail<>'') then
- AddResponseLN('<h5><p><i>'+SNotify+Administrator+': <a href="mailto:'+TheEmail+'">'+TheEmail+'</a></i></p></h5>');
- AddResponseLN('</body></html>');
- end;
-end;
-
-Function TCgiApplication.GetEmail : String;
-
-Var
- H : String;
-
-begin
- If (FEmail='') then
- begin
- H:=ServerName;
- If (H<>'') then
- Result:=Administrator+'@'+H
- else
- Result:='';
- end
- else
- Result:=Email;
-end;
-
-Function TCgiApplication.GetAdministrator : String;
-
-begin
- If (FADministrator<>'') then
- Result:=FAdministrator
- else
- Result:=SWebMaster;
-end;
-
-Procedure TCgiApplication.InitRequestVars;
-
-var
- R : String;
-
-begin
- R:=RequestMethod;
- if (R='') then
- Raise Exception.Create(SErrNoRequestMethod);
- if CompareText(R,'POST')=0 then
- InitPostVars
- else if CompareText(R,'GET')=0 then
- InitGetVars
- else
- Raise Exception.CreateFmt(SErrInvalidRequestMethod,[R]);
-end;
-
-Procedure TCgiApplication.ProcessURLEncoded(M : TMemoryStream);
-
-
-var
- FQueryString : String;
-
-begin
- SetLength(FQueryString,M.Size); // Skip added Null.
- M.Read(FQueryString[1],M.Size);
- ProcessQueryString(FQueryString);
-end;
-
-Type
- TFormItem = Class(TObject)
- DisPosition : String;
- Name : String;
- isFile : Boolean;
- FileName : String;
- ContentType : String;
- DLen : Integer;
- Data : String;
- Procedure Process;
- end;
-
-Procedure TFormItem.Process;
-
- Function GetLine(Var S : String) : String;
-
- Var
- P : Integer;
-
- begin
- P:=Pos(#13#10,S);
- If (P<>0) then
- begin
- Result:=Copy(S,1,P-1);
- Delete(S,1,P+1);
- end;
- end;
-
- Function GetWord(Var S : String) : String;
-
- Var
- I,len : Integer;
- Quoted : Boolean;
- C : Char;
-
- begin
- len:=length(S);
- quoted:=false;
- Result:='';
- for i:=1 to len do
- Begin
- c:=S[i];
- if (c='"') then
- Quoted:=Not Quoted
- else
- begin
- if not (c in [' ','=',';',':']) or Quoted then
- Result:=Result+C;
- if (c in [';',':','=']) and (not quoted) then
- begin
- Delete(S,1,I);
- Exit;
- end;
- end;
- end;
- S:='';
- end;
-
-Var
- Line : String;
- Words : TStringList;
- i,len : integer;
- c : char;
- S : string;
- quoted : boolean;
-
-begin
- Line:=GetLine(Data);
- While (Line<>'') do
- begin
- S:=GetWord(Line);
- While (S<>'') do
- begin
- If CompareText(S,'Content-Disposition')=0 then
- Disposition:=GetWord(Line)
- else if CompareText(S,'name')=0 Then
- Name:=GetWord(Line)
- else if CompareText(S,'filename')=0 then
- begin
- FileName:=GetWord(Line);
- isFile:=True;
- end
- else if CompareText(S,'Content-Type')=0 then
- ContentType:=GetWord(Line);
- S:=GetWord(Line);
- end;
- Line:=GetLine(Data);
- end;
- // Now Data contains the rest of the data, plus a CR/LF. Strip the CR/LF
- Len:=Length(Data);
- If (len>2) then
- Data:=Copy(Data,1,Len-2);
-end;
-
-Function MakeString(PStart,PEnd : Pchar) : String;
-
-begin
- SetLength(Result,PEnd-PStart);
- If Length(Result)>0 then
- Move(PStart^,Result[1],Length(Result));
-end;
-
-procedure FormSplit(var Cnt : String; boundary: String; List : TList);
-
-// Splits the form into items
-var
- Sep : string;
- Clen,slen, p:longint;
- FI : TFormItem;
-
-begin
- Sep:='--'+boundary+#13+#10;
- Slen:=length(Sep);
- CLen:=Pos('--'+Boundary+'--',Cnt);
- // Cut last marker
- Cnt:=Copy(Cnt,1,Clen-1);
- // Cut first marker
- Delete(Cnt,1,Slen);
- Clen:=Length(Cnt);
- While Clen>0 do
- begin
- Fi:=TFormItem.Create;
- List.Add(Fi);
- P:=pos(Sep,Cnt);
- If (P=0) then
- P:=CLen+1;
- FI.Data:=Copy(Cnt,1,P-1);
- delete(Cnt,1,P+SLen-1);
- CLen:=Length(Cnt);
- end;
-end;
-
-function GetNextLine(Var Data: String):string;
-
-Var
- p : Integer;
-
-begin
- P:=Pos(#13#10,Data);
- If (P<>0) then
- begin
- Result:=Copy(Data,1,P-1);
- Delete(Data,1,P+1);
- end;
-end;
-
-Procedure TCgiApplication.ProcessMultiPart(M : TMemoryStream; Const Boundary : String);
-
-Var
- L : TList;
- B : String;
- I,Index : Integer;
- S,FF,key, Value : String;
- FI : TFormItem;
- F : TStream;
-
-begin
- i:=Pos('=',Boundary);
- B:=Copy(Boundary,I+1,Length(Boundary)-I);
- I:=Length(B);
- If (I>0) and (B[1]='"') then
- B:=Copy(B,2,I-2);
- L:=TList.Create;
- Try
- SetLength(S,M.Size);
- If Length(S)>0 then
- Move(M.Memory^,S[1],M.Size);
- FormSplit(S,B,L);
- For I:=L.Count-1 downto 0 do
- begin
- FI:=TFormItem(L[i]);
- FI.Process;
- If (FI.Name='') then
- Raise Exception.CreateFmt('Invalid multipart encoding: %s',[FI.Data]);
- Key:=FI.Name;
- If Not FI.IsFile Then
- begin
- Value:=FI.Data
- end
- else
- begin
- Value:=FI.FileName;
- FF:=GetTempCGIFileName;
- FFormFiles.AddObject(Key,TFormFile.Create(FF));
- F:=TFileStream.Create(FF,fmCreate);
- Try
- if Length(FI.Data)>0 then
- F.Write(FI.Data[1],Length(FI.Data));
- finally
- F.Free;
- end;
- FI.Free;
- L[i]:=Nil;
- end;
- FRequestVars.Add(Key+'='+Value)
- end;
- Finally
- For I:=0 to L.Count-1 do
- TObject(L[i]).Free;
- L.Free;
- end;
-end;
-
-Type
- TCapacityStream = Class(TMemoryStream)
- Public
- Property Capacity;
- end;
-
-Procedure TCgiApplication.InitPostVars;
-
-Var
- M : TCapacityStream;
- I : TIOStream;
- Cl : Integer;
- B : Byte;
-
-begin
- CL:=ContentLength;
- M:=TCapacityStream.Create;
- Try
- I:=TIOStream.Create(iosInput);
- Try
- if (CL<>0) then
- begin
- M.Capacity:=(Cl);
- M.CopyFrom(I,Cl);
- end
- else
- begin
- While (I.Read(B,1)>0) do
- M.Write(B,1)
- end;
- Finally
- I.Free;
- end;
- if Pos(ContentType,'MULTIPART/FORM-DATA')=0 then
- ProcessMultiPart(M,ContentType)
- else if CompareText(ContentType,'APPLICATION/X-WWW-FORM-URLENCODED')=0 then
- ProcessUrlEncoded(M)
- else
- Raise Exception.CreateFmt(SErrUnsupportedContentType,[ContentType]);
- finally
- M.Free;
- end;
-end;
-
-Procedure TCgiApplication.InitGetVars;
-
-Var
- FQueryString : String;
-
-begin
- FQueryString:=QueryString;
- If (FQueryString<>'') then
- ProcessQueryString(FQueryString);
-end;
-
-const
- hexTable = '0123456789ABCDEF';
-
-Procedure TCgiApplication.ProcessQueryString(Const FQueryString : String);
-
-
-var
- queryItem : String;
- delimiter : Char;
- aString : String;
- aSepStr : String;
- aPos : Integer;
- aLenStr : Integer;
- aLenSep : Integer;
-
- function hexConverter(h1, h2 : Char) : Char;
-
- var
- B : Byte;
-
- begin
- B:=(Pos(upcase(h1),hexTable)-1)*16;
- B:=B+Pos(upcase(h2),hexTable)-1;
- Result:=chr(B);
- end;
-
- procedure Convert_ESC_Chars;
-
- var
- index : Integer;
-
- begin
- Index:=Length(QueryItem);
- While (Index>0) do
- begin
- If QueryItem[Index]='+' then
- QueryItem[Index]:=' '
- else If (QueryItem[Index]='%') and (Index<Length(QueryItem)-1) then
- begin
- QueryItem[Index]:=hexConverter(QueryItem[Index+1],QueryItem[index+2]);
- System.Delete(QueryItem,Index+1,2);
- end;
- dec(Index);
- end;
- end;
-
- procedure InitToken(aStr, aSep : String);
-
- begin
- aString := aStr;
- aSepStr := aSep;
- aPos := 1;
- aLenStr := Length(aString);
- aLenSep := Length(aSepStr);
- end;
-
- function NextToken(var aToken : String; var aSepChar : Char) : Boolean;
-
- var
- i : Integer;
- j : Integer;
- BoT : Integer;
- EoT : Integer;
- isSep : Boolean;
-
- begin
- BoT:=aPos;
- EoT:=aPos;
- for i:=aPos to aLenStr do
- begin
- IsSep := false;
- for j := 1 to aLenSep do
- begin
- if aString[i] = aSepStr[j] then
- begin
- IsSep := true;
- Break;
- end;
- end;
- if IsSep then
- begin
- EoT := i;
- aPos := i + 1;
- aSepChar := aString[i];
- Break;
- end
- else
- begin
- if i = aLenStr then
- begin
- EoT := i;
- aPos := i;
- Break;
- end;
- end;
- end;
- if aPos < aLenStr then
- begin
- aToken := Copy(aString, BoT, EoT - BoT);
- Result := true;
- end
- else
- begin
- if aPos = aLenStr then
- begin
- aToken := Copy(aString, BoT, EoT - BoT + 1);
- Result := true;
- aPos := aPos + 1;
- end
- else
- begin
- Result := false;
- end;
- end;
- end;
-
-
-begin
- InitToken(FQueryString, '&');
- while NextToken(QueryItem, delimiter) do
- begin
- if (QueryItem<>'') then
- begin
- Convert_ESC_Chars;
- FRequestVars.Add(QueryItem);
- end;
- end;
-end;
-
-Function TCGIApplication.GetRequestVariable(Const VarName : String) : String;
-
-begin
- If Assigned(FRequestVars) then
- Result:=FRequestVars.Values[VarName];
-end;
-
-Function TCGIApplication.GetRequestVariableCount : Integer;
-
-begin
- If Assigned(FRequestVars) then
- Result:=FRequestVars.Count
- else
- Result:=0;
-end;
-
-Procedure TCGIApplication.AddResponse(Const S : String);
-
-Var
- L : Integer;
-
-begin
- L:=Length(S);
- If L>0 then
- FResponse.Write(S[1],L);
-end;
-
-Procedure TCGIApplication.AddResponse(Const Fmt : String; Args : Array of const);
-
-begin
- AddResponse(Format(Fmt,Args));
-end;
-
-Procedure TCGIApplication.AddResponseLN(Const S : String);
-
-
-begin
- AddResponse(S+LineEnding);
-end;
-
-Procedure TCGIApplication.AddResponseLN(Const Fmt : String; Args : Array of const);
-
-begin
- AddResponseLN(Format(Fmt,Args));
-end;
-
-Function TCGIApplication.VariableIsUploadedFile(Const VarName : String) : boolean;
-
-begin
- Result:=FFormFiles.IndexOf(VarName)<>-1;
-end;
-
-Function TCGIApplication.UploadedFileName(Const VarName : String) : String;
-
-Var
- FF : TFormFile;
- i : Integer;
-
-begin
- Result:='';
- I:=FFormFiles.IndexOf(VarName);
- If (I<>-1) then
- begin
- FF:=TFormFile(FFormFiles.Objects[i]);
- If Assigned(FF) then
- Result:=FF.FileName;
- end;
-end;
-
-{$ifdef cgidebug}
-Initialization
- initLog;
-
-Finalization
- DoneLog;
-{$endif}
-end.
diff --git a/packages/fcl-base/src/inc/ezcgi.pp b/packages/fcl-base/src/inc/ezcgi.pp
deleted file mode 100644
index 08c2f21fb6..0000000000
--- a/packages/fcl-base/src/inc/ezcgi.pp
+++ /dev/null
@@ -1,400 +0,0 @@
-{
- This file is part of the Free Component Library (FCL)
- Copyright (c) 1999-2000 by Michael Van Canneyt and Florian Klaempfl
-
- See the file COPYING.FPC, included in this distribution,
- for details about the copyright.
-
- 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.
-
- **********************************************************************}
-unit ezcgi;
-
-{$mode delphi}
-{$H+ }
-
-interface
-
-uses classes, strings, sysutils;
-
-const
- hexTable = '0123456789ABCDEF';
-
-type
- ECGIException = class(Exception);
-
- TEZcgi = class(TObject)
- private
- { Private declarations }
- FVariables : TStringList;
- FName : String;
- FEmail : String;
- FQueryString : String;
-
- { Token variables }
- aString : String;
- aSepStr : String;
- aPos : Integer;
- aLenStr : Integer;
- aLenSep : Integer;
-
- procedure InitToken(aStr, aSep : String);
- function NextToken(var aToken : String; var aSepChar : Char) : Boolean;
-
- procedure GetQueryItems;
- procedure ProcessRequest;
- procedure LoadEnvVariables;
- function GetVal(Index : String) : String;
- function GetName(Index : Integer) : String;
- function GetVariable(Index : Integer) : String;
- function GetVarCount : Integer;
- procedure ReadPostQuery;
- procedure ReadGetQuery;
- protected
- { Protected declarations }
-
- procedure OutputError(errorMessage : String);
- public
- { Public declarations }
- constructor Create;
- destructor Destroy; override;
- procedure Run;
- procedure WriteContent(ctype : String);
- procedure PutLine(sOut : String);
- function GetValue(Index : String; defaultValue : String) : String;
-
- procedure DoPost; virtual;
- procedure DoGet; virtual;
-
- property Values[Index : String] : String read GetVal;
- property Names[Index : Integer] : String read GetName;
- property Variables[Index : Integer] : String read GetVariable;
- property VariableCount : Integer read GetVarCount;
-
- property Name : String read FName write FName;
- property Email : String read FEmail write FEmail;
- end;
-
-implementation
-
-{ *********** Public Methods *************** }
-
-constructor TEZcgi.Create;
-begin
- FName := 'No name available';
- FEmail := 'Email address unavailable';
-
- FVariables := TStringList.Create;
-
- LoadEnvVariables;
-
-end;
-
-destructor TEZcgi.Destroy;
-begin
- FVariables.Free;
-end;
-
-procedure TEZcgi.Run;
-begin
- ProcessRequest;
-end;
-
-procedure TEZcgi.DoPost;
-begin
- // Must be overriden by child class
-end;
-
-procedure TEZcgi.DoGet;
-begin
- // Must be overriden by child class
-end;
-
-procedure TEZcgi.WriteContent(ctype : String);
-begin
- writeln('Content-Type: ',ctype);
- writeln;
-end;
-
-procedure TEZcgi.PutLine(sOut : String);
-begin
- writeln(sOut);
-end;
-
-function TEZcgi.GetValue(Index, defaultValue : String) : String;
-begin
- result := GetVal(Index);
- if result = '' then
- result := defaultValue;
-end;
-
-
-{ *********** Private Methods *************** }
-
-procedure TEZcgi.LoadEnvVariables;
-
- procedure GetEData(variable : String);
- var
- tempStr : String;
- begin
- // This is a system dependent call !!
- tempStr := GetEnvironmentVariable(variable);
- if tempStr <> '' then
- FVariables.Add(variable + '=' + tempStr);
- end;
-
-begin
-
- { Standard CGI Environment Variables }
- GetEData('AUTH_TYPE');
- GetEData('CONTENT_LENGTH');
- GetEData('CONTENT_TYPE');
- GetEData('GATEWAY_INTERFACE');
- GetEData('PATH_INFO');
- GetEData('PATH_TRANSLATED');
- GetEData('QUERY_STRING');
- GetEData('REMOTE_ADDR');
- GetEData('REMOTE_HOST');
- GetEData('REMOTE_IDENT');
- GetEData('REMOTE_USER');
- GetEData('REQUEST_METHOD');
- GetEData('SCRIPT_NAME');
- GetEData('SERVER_NAME');
- GetEData('SERVER_PORT');
- GetEData('SERVER_PROTOCOL');
- GetEData('SERVER_SOFTWARE');
-
-
- { Standard HTTP Environment Variables }
- GetEData('HTTP_ACCEPT');
- GetEData('HTTP_ACCEPT_CHARSET');
- GetEData('HTTP_ACCEPT_ENCODING');
- GetEData('HTTP_IF_MODIFIED_SINCE');
- GetEData('HTTP_REFERER');
- GetEData('HTTP_USER_AGENT');
-end;
-
-procedure TEZcgi.ProcessRequest;
-var
- request : String;
-begin
-
- request := GetVal('REQUEST_METHOD');
-
- if request = '' then
- OutputError('No REQUEST_METHOD passed from server!')
- else if request = 'POST' then
- begin
- ReadPostQuery;
- DoPost;
- end
- else if request = 'GET' then
- begin
- ReadGetQuery;
- DoGet;
- end
- else
- OutputError('Invalid REQUEST_METHOD passed from server!');
-end;
-
-function TEZcgi.GetVal(Index : String) : String;
-begin
- result := FVariables.Values[Index];
-end;
-
-function TEZcgi.GetName(Index : Integer) : String;
-begin
- result := FVariables.Names[Index];
-end;
-
-function TEZcgi.GetVariable(Index : Integer) : String;
-begin
- result := FVariables[Index];
-end;
-
-function TEZcgi.GetVarCount : Integer;
-begin
- result := FVariables.Count;
-end;
-
-procedure TEZcgi.ReadPostQuery;
-var
- index : Integer;
- ch : Char;
- temp : String;
- code : Word;
- contentLength : Integer;
- theType : String;
-
-begin
-
- temp := GetVal('CONTENT_LENGTH');
- if Length(temp) > 0 then
- begin
- Val(temp, contentLength, code);
- if code <> 0 then
- contentLength := 0;
- end;
-
- if contentLength = 0 then
- OutputError('No content length passed from server!');
-
- theType := UpperCase(GetVal('CONTENT_TYPE'));
-
- if theType <> 'APPLICATION/X-WWW-FORM-URLENCODED' then
- OutputError('No content type passed from server!');
-
- FQueryString := '';
-
- for index := 0 to contentLength-1 do
- begin
- Read(ch);
- FQueryString := FQueryString + ch;
- end;
-
- GetQueryItems;
-end;
-
-procedure TEZcgi.ReadGetQuery;
-begin
- FQueryString := GetVal('QUERY_STRING');
-
- if FQueryString = '' then
- OutputError('No QUERY_STRING passed from server!');
-
- GetQueryItems;
-end;
-
-procedure TEZcgi.GetQueryItems;
-var
- queryItem : String;
- delimiter : Char;
-
- function hexConverter(h1, h2 : Char) : Char;
- var
- thex : byte;
- begin
- tHex := (Pos(upcase(h1), hexTable) - 1) * 16;
- tHex := tHex + Pos(upcase(h2), hexTable) - 1;
-
- result := chr(thex);
- end;
-
- procedure Convert_ESC_Chars;
- var
- index : Integer;
- begin
- repeat
- index := Pos('+', queryItem);
- if index > 0 then
- queryItem[index] := Chr(32);
- until index = 0;
- repeat
- index := Pos('%', queryItem);
- if index > 0 then
- begin
- queryItem[index] := hexConverter(queryItem[index + 1], queryItem[index + 2]);
- system.Delete(queryItem, index + 1, 2);
- end;
- until index = 0;
- end;
-
-begin
- InitToken(FQueryString, '&');
-
- while NextToken(queryItem, delimiter) do
- begin
- if queryItem <> '' then
- begin
- Convert_ESC_Chars;
- FVariables.Add(queryItem);
- end;
- end;
-end;
-
-procedure TEZcgi.OutputError(errorMessage : String);
-begin
- WriteContent('text/html');
- writeln('<html><head><title>CGI ERROR</title></head>');
- writeln('<body>');
- writeln('<center><hr><h1>CGI ERROR</h1><hr></center><br><br>');
- writeln('This CGI application encountered the following error: <br>');
- writeln('<ul><br>');
- writeln('<li> error: ',errorMessage,'<br><hr>');
- writeln('<h5><p><i>Notify ',FName,' <a href="mailto:',FEmail,'">',FEmail,'</a></i></p></h5>');
- writeln('</body></html>');
-
- Raise ECGIException.Create(errorMessage);
-end;
-
-procedure TEZcgi.InitToken(aStr, aSep : String);
-begin
- aString := aStr;
- aSepStr := aSep;
- aPos := 1;
- aLenStr := Length(aString);
- aLenSep := Length(aSepStr);
-end;
-
-function TEZcgi.NextToken(var aToken : String; var aSepChar : Char) : Boolean;
-var
- i : Integer;
- j : Integer;
- BoT : Integer;
- EoT : Integer;
- isSep : Boolean;
-
-begin
- BoT := aPos;
- EoT := aPos;
- for i := aPos to aLenStr do
- begin
- IsSep := false;
- for j := 1 to aLenSep do
- begin
- if aString[i] = aSepStr[j] then
- begin
- IsSep := true;
- Break;
- end;
- end;
- if IsSep then
- begin
- EoT := i;
- aPos := i + 1;
- aSepChar := aString[i];
- Break;
- end
- else
- begin
- if i = aLenStr then
- begin
- EoT := i;
- aPos := i;
- Break;
- end;
- end;
- end;
- if aPos < aLenStr then
- begin
- aToken := Copy(aString, BoT, EoT - BoT);
- Result := true;
- end
- else
- begin
- if aPos = aLenStr then
- begin
- aToken := Copy(aString, BoT, EoT - BoT + 1);
- Result := true;
- aPos := aPos + 1;
- end
- else
- begin
- Result := false;
- end;
- end;
-end;
-
-end.
diff --git a/packages/fcl-base/src/inc/inicol.pp b/packages/fcl-base/src/inicol.pp
index e064f811c4..e064f811c4 100644
--- a/packages/fcl-base/src/inc/inicol.pp
+++ b/packages/fcl-base/src/inicol.pp
diff --git a/packages/fcl-base/src/inc/inifiles.pp b/packages/fcl-base/src/inifiles.pp
index 70640b4e8b..70640b4e8b 100644
--- a/packages/fcl-base/src/inc/inifiles.pp
+++ b/packages/fcl-base/src/inifiles.pp
diff --git a/packages/fcl-base/src/inc/iostream.pp b/packages/fcl-base/src/iostream.pp
index 3a2fd75b8b..3a2fd75b8b 100644
--- a/packages/fcl-base/src/inc/iostream.pp
+++ b/packages/fcl-base/src/iostream.pp
diff --git a/packages/fcl-base/src/inc/libtar.pas b/packages/fcl-base/src/libtar.pp
index 68f6f2f743..68f6f2f743 100644
--- a/packages/fcl-base/src/inc/libtar.pas
+++ b/packages/fcl-base/src/libtar.pp
diff --git a/packages/fcl-base/src/inc/maskutils.pp b/packages/fcl-base/src/maskutils.pp
index 207949631a..207949631a 100644
--- a/packages/fcl-base/src/inc/maskutils.pp
+++ b/packages/fcl-base/src/maskutils.pp
diff --git a/packages/fcl-base/src/inc/pooledmm.pp b/packages/fcl-base/src/pooledmm.pp
index 66fcb6cc5e..66fcb6cc5e 100644
--- a/packages/fcl-base/src/inc/pooledmm.pp
+++ b/packages/fcl-base/src/pooledmm.pp
diff --git a/packages/fcl-base/src/inc/rtfdata.inc b/packages/fcl-base/src/rtfdata.inc
index cd827be5dc..cd827be5dc 100644
--- a/packages/fcl-base/src/inc/rtfdata.inc
+++ b/packages/fcl-base/src/rtfdata.inc
diff --git a/packages/fcl-base/src/inc/rtfpars.pp b/packages/fcl-base/src/rtfpars.pp
index 37cada4634..37cada4634 100644
--- a/packages/fcl-base/src/inc/rtfpars.pp
+++ b/packages/fcl-base/src/rtfpars.pp
diff --git a/packages/fcl-base/src/inc/rttiutils.pp b/packages/fcl-base/src/rttiutils.pp
index 7a7cf14512..7a7cf14512 100644
--- a/packages/fcl-base/src/inc/rttiutils.pp
+++ b/packages/fcl-base/src/rttiutils.pp
diff --git a/packages/fcl-base/src/inc/streamcoll.pp b/packages/fcl-base/src/streamcoll.pp
index 4dd2c29450..4dd2c29450 100644
--- a/packages/fcl-base/src/inc/streamcoll.pp
+++ b/packages/fcl-base/src/streamcoll.pp
diff --git a/packages/fcl-base/src/inc/streamex.pp b/packages/fcl-base/src/streamex.pp
index 9c7922cfee..9c7922cfee 100644
--- a/packages/fcl-base/src/inc/streamex.pp
+++ b/packages/fcl-base/src/streamex.pp
diff --git a/packages/fcl-base/src/inc/streamio.pp b/packages/fcl-base/src/streamio.pp
index 71e8f56354..7cbad77684 100644
--- a/packages/fcl-base/src/inc/streamio.pp
+++ b/packages/fcl-base/src/streamio.pp
@@ -12,6 +12,10 @@
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
**********************************************************************}
+
+{$mode objfpc}
+{$H+}
+
unit StreamIO;
interface
diff --git a/packages/fcl-base/src/inc/syncobjs.pp b/packages/fcl-base/src/syncobjs.pp
index 6bca77b364..6bca77b364 100644
--- a/packages/fcl-base/src/inc/syncobjs.pp
+++ b/packages/fcl-base/src/syncobjs.pp
diff --git a/packages/fcl-base/src/uriparser.pp b/packages/fcl-base/src/uriparser.pp
new file mode 100644
index 0000000000..1b51afbbc4
--- /dev/null
+++ b/packages/fcl-base/src/uriparser.pp
@@ -0,0 +1,425 @@
+{
+ This file is part of the Free Pascal run time library.
+ Copyright (c) 2003 by the Free Pascal development team
+ Original author: Sebastian Guenther
+
+ Unit to parse complete URI in its parts or to reassemble an URI
+
+ See the file COPYING.FPC, included in this distribution,
+ for details about the copyright.
+
+ 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.
+
+ **********************************************************************}
+{$IFDEF FPC}
+{$MODE objfpc}
+{$H+}
+{$ENDIF}
+
+unit URIParser;
+
+interface
+
+type
+ TURI = record
+ Protocol: String;
+ Username: String;
+ Password: String;
+ Host: String;
+ Port: Word;
+ Path: String;
+ Document: String;
+ Params: String;
+ Bookmark: String;
+ HasAuthority: Boolean;
+ end;
+
+function EncodeURI(const URI: TURI): String;
+function ParseURI(const URI: String): TURI; overload;
+function ParseURI(const URI, DefaultProtocol: String; DefaultPort: Word): TURI; overload;
+
+function ResolveRelativeURI(const BaseUri, RelUri: WideString;
+ out ResultUri: WideString): Boolean; overload;
+
+function ResolveRelativeURI(const BaseUri, RelUri: UTF8String;
+ out ResultUri: UTF8String): Boolean; overload;
+
+function URIToFilename(const URI: string; out Filename: string): Boolean;
+function FilenameToURI(const Filename: string): string;
+
+function IsAbsoluteURI(const UriReference: string): Boolean;
+
+implementation
+
+uses SysUtils;
+
+const
+ GenDelims = [':', '/', '?', '#', '[', ']', '@'];
+ SubDelims = ['!', '$', '&', '''', '(', ')', '*', '+', ',', ';', '='];
+ ALPHA = ['A'..'Z', 'a'..'z'];
+ DIGIT = ['0'..'9'];
+ Unreserved = ALPHA + DIGIT + ['-', '.', '_', '~'];
+ ValidPathChars = Unreserved + SubDelims + ['@', ':', '/'];
+
+function Escape(const s: String; const Allowed: TSysCharSet): String;
+var
+ i: Integer;
+begin
+ SetLength(Result, 0);
+ for i := 1 to Length(s) do
+ if not (s[i] in Allowed) then
+ Result := Result + '%' + IntToHex(ord(s[i]), 2)
+ else
+ Result := Result + s[i];
+end;
+
+function EncodeURI(const URI: TURI): String;
+// ! if no scheme then first colon in path should be escaped
+begin
+ SetLength(Result, 0);
+ if Length(URI.Protocol) > 0 then
+ Result := LowerCase(URI.Protocol) + ':';
+ if URI.HasAuthority then
+ begin
+ Result := Result + '//';
+ if Length(URI.Username) > 0 then
+ begin
+ Result := Result + URI.Username;
+ if Length(URI.Password) > 0 then
+ Result := Result + ':' + URI.Password;
+ Result := Result + '@';
+ end;
+ Result := Result + URI.Host;
+ end;
+ if URI.Port <> 0 then
+ Result := Result + ':' + IntToStr(URI.Port);
+ Result := Result + Escape(URI.Path, ValidPathChars);
+ if Length(URI.Document) > 0 then
+ begin
+ if (Length(URI.Path) > 0) and ((Length(Result) = 0) or (Result[Length(Result)] <> '/')) then
+ Result := Result + '/';
+ Result := Result + Escape(URI.Document, ValidPathChars);
+ end;
+ if Length(URI.Params) > 0 then
+ Result := Result + '?' + Escape(URI.Params, ValidPathChars);
+ if Length(URI.Bookmark) > 0 then
+ Result := Result + '#' + Escape(URI.Bookmark, ValidPathChars);
+end;
+
+function ParseURI(const URI: String): TURI;
+begin
+ Result := ParseURI(URI, '', 0);
+end;
+
+function HexValue(c: Char): Integer;
+begin
+ case c of
+ '0'..'9': Result := ord(c) - ord('0');
+ 'A'..'F': Result := ord(c) - (ord('A') - 10);
+ 'a'..'f': Result := ord(c) - (ord('a') - 10);
+ else
+ Result := 0;
+ end;
+end;
+
+function Unescape(const s: String): String;
+var
+ i, RealLength: Integer;
+begin
+ SetLength(Result, Length(s));
+ i := 1;
+ RealLength := 0;
+ while i <= Length(s) do
+ begin
+ Inc(RealLength);
+ if s[i] = '%' then
+ begin
+ Result[RealLength] := Chr(HexValue(s[i + 1]) shl 4 or HexValue(s[i + 2]));
+ Inc(i, 3);
+ end else
+ begin
+ Result[RealLength] := s[i];
+ Inc(i);
+ end;
+ end;
+ SetLength(Result, RealLength);
+end;
+
+function ParseURI(const URI, DefaultProtocol: String; DefaultPort: Word): TURI;
+var
+ s, Authority: String;
+ i: Integer;
+begin
+ Result.Protocol := LowerCase(DefaultProtocol);
+ Result.Port := DefaultPort;
+
+ s := URI;
+
+ // Extract scheme
+
+ for i := 1 to Length(s) do
+ if s[i] = ':' then
+ begin
+ Result.Protocol := Copy(s, 1, i - 1);
+ s := Copy(s, i + 1, MaxInt);
+ break;
+ end
+ else
+ if not (((i=1) and (s[i] in ALPHA)) or (s[i] in ALPHA + DIGIT + ['+', '-', '.'])) then
+ break;
+
+ // Extract the bookmark
+
+ i := LastDelimiter('#', s);
+ if i > 0 then
+ begin
+ Result.Bookmark := Unescape(Copy(s, i + 1, MaxInt));
+ s := Copy(s, 1, i - 1);
+ end;
+
+ // Extract the params
+
+ i := LastDelimiter('?', s);
+ if i > 0 then
+ begin
+ Result.Params := Unescape(Copy(s, i + 1, MaxInt));
+ s := Copy(s, 1, i - 1);
+ end;
+
+ // extract authority
+
+ if (Length(s) > 1) and (s[1] = '/') and (s[2] = '/') then
+ begin
+ i := 3;
+ while (i <= Length(s)) and (s[i] <> '/') do
+ Inc(i);
+ Authority := Copy(s, 3, i-3);
+ s := Copy(s, i, MaxInt);
+ Result.HasAuthority := True; // even if Authority is empty
+ end
+ else
+ begin
+ Result.HasAuthority := False;
+ Authority := '';
+ end;
+
+ // now s is 'hier-part' per RFC3986
+ // Extract the document name (nasty...)
+
+ for i := Length(s) downto 1 do
+ if s[i] = '/' then
+ begin
+ Result.Document := Unescape(Copy(s, i + 1, Length(s)));
+ if (Result.Document <> '.') and (Result.Document <> '..') then
+ s := Copy(s, 1, i)
+ else
+ Result.Document := '';
+ break;
+ end else if s[i] = ':' then
+ break
+ else if i = 1 then
+ begin
+ Result.Document := Unescape(s);
+ if (Result.Document <> '.') and (Result.Document <> '..') then
+ s := ''
+ else
+ Result.Document := '';
+ // break - not needed, last iteration
+ end;
+
+ // Everything left is a path
+
+ Result.Path := Unescape(s);
+
+ // Extract the port number
+
+ i := LastDelimiter(':@', Authority);
+ if (i > 0) and (Authority[i] = ':') then
+ begin
+ Result.Port := StrToInt(Copy(Authority, i + 1, MaxInt));
+ Authority := Copy(Authority, 1, i - 1);
+ end;
+
+ // Extract the hostname
+
+ i := Pos('@', Authority);
+ if i > 0 then
+ begin
+ Result.Host := Copy(Authority, i+1, MaxInt);
+ Delete(Authority, i, MaxInt);
+
+ // Extract username and password
+ if Length(Authority) > 0 then
+ begin
+ i := Pos(':', Authority);
+ if i = 0 then
+ Result.Username := Authority
+ else
+ begin
+ Result.Username := Copy(Authority, 1, i - 1);
+ Result.Password := Copy(Authority, i + 1, MaxInt);
+ end;
+ end;
+ end
+ else
+ Result.Host := Authority;
+end;
+
+procedure RemoveDotSegments(var s: string);
+var
+ Cur, Prev: Integer;
+begin
+ Prev := Pos('/', s);
+ while (Prev > 0) and (Prev < Length(s)) do
+ begin
+ Cur := Prev+1;
+ while (Cur <= Length(s)) and (s[Cur] <> '/') do
+ Inc(Cur);
+ if (Cur - Prev = 2) and (s[Prev+1] = '.') then
+ Delete(s, Prev+1, 2)
+ else if (Cur - Prev = 3) and (s[Prev+1] = '.') and (s[Prev+2] = '.') then
+ begin
+ while (Prev > 1) and (s[Prev-1] <> '/') do
+ Dec(Prev);
+ if Prev > 1 then
+ Dec(Prev);
+ Delete(s, Prev+1, Cur-Prev);
+ end
+ else
+ Prev := Cur;
+ end;
+end;
+
+// TODO: this probably must NOT percent-encode the result...
+function ResolveRelativeURI(const BaseUri, RelUri: UTF8String;
+ out ResultUri: UTF8String): Boolean;
+var
+ Base, Rel: TUri;
+begin
+ Base := ParseUri(BaseUri);
+ Rel := ParseUri(RelUri);
+
+ Result := (Base.Protocol <> '') or (Rel.Protocol <> '');
+ if not Result then
+ Exit;
+ with Rel do
+ begin
+ if (Path = '') and (Document = '') then
+ begin
+ if (Protocol = '') and (Host = '') then
+ begin
+ if Params <> '' then
+ Base.Params := Params;
+ Base.Bookmark := Bookmark;
+ ResultUri := EncodeUri(Base);
+ Exit;
+ end;
+ end;
+ if (Protocol <> '') then // RelURI is absolute - return it...
+ begin
+ ResultUri := RelUri;
+ Exit;
+ end;
+ // Inherit protocol
+ Protocol := Base.Protocol;
+ if (Host = '') then // TODO: or "not HasAuthority"?
+ begin
+ // Inherit Authority (host, port, username, password)
+ Host := Base.Host;
+ Port := Base.Port;
+ Username := Base.Username;
+ Password := Base.Password;
+ HasAuthority := Base.HasAuthority;
+ if (Path = '') or (Path[1] <> '/') then // path is empty or relative
+ Path := Base.Path + Path;
+ RemoveDotSegments(Path);
+ end;
+ end; // with
+ ResultUri := EncodeUri(Rel);
+end;
+
+function ResolveRelativeURI(const BaseUri, RelUri: WideString;
+ out ResultUri: WideString): Boolean;
+var
+ rslt: UTF8String;
+begin
+ Result := ResolveRelativeURI(UTF8Encode(BaseUri), UTF8Encode(RelUri), rslt);
+ if Result then
+ ResultURI := UTF8Decode(rslt);
+end;
+
+function URIToFilename(const URI: string; out Filename: string): Boolean;
+var
+ U: TURI;
+ I: Integer;
+begin
+ Result := False;
+ U := ParseURI(URI);
+ if SameText(U.Protocol, 'file') then
+ begin
+ if (Length(U.Path) > 2) and (U.Path[1] = '/') and (U.Path[3] = ':') then
+ Filename := Copy(U.Path, 2, MaxInt)
+ else
+ Filename := U.Path;
+ Filename := Filename + U.Document;
+ Result := True;
+ end
+ else
+ if U.Protocol = '' then // fire and pray?
+ begin
+ Filename := U.Path + U.Document;
+ Result := True;
+ end;
+ if PathDelim <> '/' then
+ begin
+ I := Pos('/', Filename);
+ while I > 0 do
+ begin
+ Filename[I] := PathDelim;
+ I := Pos('/', Filename);
+ end;
+ end;
+end;
+
+function FilenameToURI(const Filename: string): string;
+var
+ I: Integer;
+begin
+ // TODO: seems implemented, but not tested well
+ Result := 'file://';
+ if (Length(Filename) > 2) and (Filename[1] <> PathDelim) and (Filename[2] = ':') then
+ Result := Result + '/';
+ Result := Result + Filename;
+ if PathDelim <> '/' then
+ begin
+ I := Pos(PathDelim, Result);
+ while I <> 0 do
+ begin
+ Result[I] := '/';
+ I := Pos(PathDelim, Result);
+ end;
+ end;
+end;
+
+
+function IsAbsoluteURI(const UriReference: string): Boolean;
+var
+ I: Integer;
+begin
+ Result := True;
+ for I := 1 to Length(UriReference) do
+ begin
+ if UriReference[I] = ':' then
+ Exit
+ else
+ if not (((I=1) and (UriReference[I] in ALPHA)) or
+ (UriReference[i] in ALPHA + DIGIT + ['+', '-', '.'])) then
+ Break;
+ end;
+ Result := False;
+end;
+
+
+end.
diff --git a/packages/fcl-base/src/inc/wformat.pp b/packages/fcl-base/src/wformat.pp
index 973fa74116..973fa74116 100644
--- a/packages/fcl-base/src/inc/wformat.pp
+++ b/packages/fcl-base/src/wformat.pp
diff --git a/packages/fcl-base/src/inc/whtml.pp b/packages/fcl-base/src/whtml.pp
index 5a8677fb1d..5a8677fb1d 100644
--- a/packages/fcl-base/src/inc/whtml.pp
+++ b/packages/fcl-base/src/whtml.pp
diff --git a/packages/fcl-base/src/win/httpapp.pp b/packages/fcl-base/src/win/httpapp.pp
deleted file mode 100644
index 7869136f40..0000000000
--- a/packages/fcl-base/src/win/httpapp.pp
+++ /dev/null
@@ -1,194 +0,0 @@
-{
- This file is part of the Free Component Library (FCL)
- Copyright (c) 1998 by Florian Klaempfl
- member of the Free Pascal development team
-
- See the file COPYING.FPC, included in this distribution,
- for details about the copyright.
-
- 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.
-
- **********************************************************************}
-
-unit httpapp;
-
- interface
-
- uses
- sysutils,classes,syncobjs;
-
- const
- DateFormat = 'ddd, dd mmm yyyy hh:mm:ss';
-
- MAX_STRINGS = 12;
- MAX_INTEGERS = 1;
- MAX_DATETIMES = 3;
-
- type
- TCharSet = set of Char;
- TMethodType = (mtAny,mtGet,mtPut,mtPost,mtHead);
-
- TWebApp = class(TComponent)
- protected
- function ActivateWebModule : TDataModule;
- procedure DeactivateWebModule(DataModule : TDataModule);
- procedure DoHandleException(E : Exception);dynamic;
- function HandleRequest(Request : TWebRequest;Response : TWebResponse) : Boolean;
- public
- constructor Create(AOwner : TComponent);override;
- procedure CreateForm(InstanceClass: TComponentClass;var Reference);virtual;
- destructor Destroy;override;
- procedure Initialize;virtual;
- procedure Run;virtual;
- end;
-
- function DosPathToUnixPath(const Path : string) : string;
- function UnixPathToDosPath(const Path : string) : string;
-
- function HTTPDecode(const str : String) : string;
- function HTTPEncode(const str : String) : string;
-
- function ParseDate(const DateStr : string) : TDateTime;
- procedure ExtractHTTPFields(Separators,WhiteSpace : TCharSet;
- Content : PChar;Strings : TStrings);
- procedure ExtractHeaderFields(Separators,WhiteSpace : TCharSet;
- Content: PChar;Strings : TStrings;Decode : Boolean);
-
- function StatusString(StatusCode : Integer) : string;
-
- const
- Application : TWebApp = nil;
-
- implementation
-
- function TWebApp.ActivateWebModule : TDataModule;
-
- begin
- end;
-
- procedure TWebApp.DeactivateWebModule(DataModule : TDataModule);
-
- begin
- end;
-
- procedure TWebApp.DoHandleException(E : Exception);
-
- begin
- end;
-
- function TWebApp.HandleRequest(Request : TWebRequest;Response : TWebResponse) : Boolean;
-
- begin
- end;
-
- constructor TWebApp.Create(AOwner : TComponent);
-
- begin
- end;
-
- procedure TWebApp.CreateForm(InstanceClass: TComponentClass;var Reference);
-
- begin
- end;
-
- destructor TWebApp.Destroy;
-
- begin
- end;
-
- procedure TWebApp.Initialize;
-
- begin
- end;
-
- procedure TWebApp.Run;
-
- begin
- end;
-
- function DosPathToUnixPath(const Path : string) : string;
-
- var
- i : integer;
-
- begin
- Result:=Path;
- for i:=1 to Length(Result) do
- if Result[i]='\' then
- Result[i]:='/';
- end;
-
- function UnixPathToDosPath(const Path : string) : string;
-
- var
- i : integer;
-
- begin
- Result:=Path;
- for i:=1 to Length(Result) do
- if Result[i]='/' then
- Result[i]:='\';
- end;
-
- function HTTPDecode(const str : String) : string;
-
- begin
- end;
-
- function HTTPEncode(const str : String) : string;
-
- const
- noconvert = ['A'..'Z','a'..'z','*','@','.',
- '.','_','-','0'..'9','$','!','''','(',')'];
-
- const
- hex2str : array[0..15] of char = '0123456789ABCDEF';
-
- var
- i : integer;
- c : char;
- s : shortstring;
-
- begin
- // allocate some space for the result
- SetLength(Result,Length(str));
- for i:=1 to length(str) do
- begin
- c:=str[i];
- if c in noconvert then
- Result:=Result+c;
- else if c=' ' then
- Result:=Result+'+'
- else
- Result:=Result+'%'+
- hex2str[ord(c) shr 4]+
- hex2str[ord(c) and $f];
- end;
- end;
-
- function ParseDate(const DateStr : string) : TDateTime;
-
- begin
- end;
-
- procedure ExtractHTTPFields(Separators,WhiteSpace : TCharSet;
- Content : PChar;Strings : TStrings);
-
- begin
- ExtractHeaderFields(Separators,WhiteSpace,Content,Strings,True);
- end;
-
- procedure ExtractHeaderFields(Separators,WhiteSpace : TCharSet;
- Content: PChar;Strings : TStrings;Decode : Boolean);
-
- begin
- end;
-
- function StatusString(StatusCode : Integer) : string;
-
- begin
- end;
-
-end.
diff --git a/packages/fcl-base/src/inc/wtex.pp b/packages/fcl-base/src/wtex.pp
index bc0c7af1aa..bc0c7af1aa 100644
--- a/packages/fcl-base/src/inc/wtex.pp
+++ b/packages/fcl-base/src/wtex.pp