Browse Source

* Switched packages to fpmake building

git-svn-id: trunk@18123 -
joost 14 years ago
parent
commit
f9b27806e4

+ 10 - 0
.gitattributes

@@ -1636,6 +1636,7 @@ packages/fastcgi/fpmake.pp svneol=native#text/plain
 packages/fastcgi/src/fastcgi.pp svneol=native#text/plain
 packages/fcl-async/Makefile svneol=native#text/plain
 packages/fcl-async/Makefile.fpc svneol=native#text/plain
+packages/fcl-async/Makefile.fpc.fpcmake svneol=native#text/plain
 packages/fcl-async/fpmake.pp svneol=native#text/plain
 packages/fcl-async/src/fpasync.pp svneol=native#text/plain
 packages/fcl-async/src/libasync.inc svneol=native#text/plain
@@ -1643,6 +1644,7 @@ packages/fcl-async/src/libasynch.inc svneol=native#text/plain
 packages/fcl-async/src/unix/libasync.pp svneol=native#text/plain
 packages/fcl-base/Makefile svneol=native#text/plain
 packages/fcl-base/Makefile.fpc svneol=native#text/plain
+packages/fcl-base/Makefile.fpc.fpcmake svneol=native#text/plain
 packages/fcl-base/examples/Makefile svneol=native#text/plain
 packages/fcl-base/examples/Makefile.fpc svneol=native#text/plain
 packages/fcl-base/examples/README.txt svneol=native#text/plain
@@ -2000,6 +2002,7 @@ packages/fcl-db/tests/toolsunit.pas svneol=native#text/plain
 packages/fcl-db/tests/xmlxsdexporttestcase1.pas svneol=native#text/plain
 packages/fcl-extra/Makefile svneol=native#text/plain
 packages/fcl-extra/Makefile.fpc svneol=native#text/plain
+packages/fcl-extra/Makefile.fpc.fpcmake svneol=native#text/plain
 packages/fcl-extra/examples/Makefile svneol=native#text/plain
 packages/fcl-extra/examples/Makefile.fpc svneol=native#text/plain
 packages/fcl-extra/examples/daemon.pp svneol=native#text/plain
@@ -2056,6 +2059,7 @@ packages/fcl-fpcunit/src/xmlreporter.pas svneol=native#text/plain
 packages/fcl-fpcunit/src/xmltestreport.pp svneol=native#text/plain
 packages/fcl-image/Makefile svneol=native#text/plain
 packages/fcl-image/Makefile.fpc svneol=native#text/plain
+packages/fcl-image/Makefile.fpc.fpcmake svneol=native#text/plain
 packages/fcl-image/examples/Makefile svneol=native#text/plain
 packages/fcl-image/examples/Makefile.fpc svneol=native#text/plain
 packages/fcl-image/examples/drawing.pp svneol=native#text/plain
@@ -2117,6 +2121,7 @@ packages/fcl-image/src/targacmn.pp svneol=native#text/plain
 packages/fcl-image/src/xwdfile.pp svneol=native#text/plain
 packages/fcl-js/Makefile svneol=native#text/plain
 packages/fcl-js/Makefile.fpc svneol=native#text/plain
+packages/fcl-js/Makefile.fpc.fpcmake svneol=native#text/plain
 packages/fcl-js/README.TXT svneol=native#text/plain
 packages/fcl-js/fpmake.pp svneol=native#text/plain
 packages/fcl-js/src/jsbase.pp svneol=native#text/plain
@@ -2132,6 +2137,7 @@ packages/fcl-js/tests/testjs.manifest svneol=native#text/plain
 packages/fcl-js/tests/testjs.rc svneol=native#text/plain
 packages/fcl-json/Makefile svneol=native#text/plain
 packages/fcl-json/Makefile.fpc svneol=native#text/plain
+packages/fcl-json/Makefile.fpc.fpcmake svneol=native#text/plain
 packages/fcl-json/examples/confdemo.lpi svneol=native#text/plain
 packages/fcl-json/examples/confdemo.pp svneol=native#text/plain
 packages/fcl-json/examples/demoformat.pp svneol=native#text/plain
@@ -2157,6 +2163,7 @@ packages/fcl-json/tests/testjsonparser.pp svneol=native#text/plain
 packages/fcl-json/tests/testjsonrtti.pp svneol=native#text/plain
 packages/fcl-net/Makefile svneol=native#text/plain
 packages/fcl-net/Makefile.fpc svneol=native#text/plain
+packages/fcl-net/Makefile.fpc.fpcmake svneol=native#text/plain
 packages/fcl-net/README.txt svneol=native#text/plain
 packages/fcl-net/examples/Makefile svneol=native#text/plain
 packages/fcl-net/examples/Makefile.fpc svneol=native#text/plain
@@ -2188,6 +2195,7 @@ packages/fcl-net/src/unix/resolve.inc svneol=native#text/plain
 packages/fcl-net/src/win/resolve.inc svneol=native#text/plain
 packages/fcl-passrc/Makefile svneol=native#text/plain
 packages/fcl-passrc/Makefile.fpc svneol=native#text/plain
+packages/fcl-passrc/Makefile.fpc.fpcmake svneol=native#text/plain
 packages/fcl-passrc/examples/test_parser.pp svneol=native#text/plain
 packages/fcl-passrc/examples/testunit1.pp svneol=native#text/plain
 packages/fcl-passrc/fpmake.pp svneol=native#text/plain
@@ -2221,6 +2229,7 @@ packages/fcl-process/src/wince/process.inc svneol=native#text/plain
 packages/fcl-process/src/wince/simpleipc.inc svneol=native#text/plain
 packages/fcl-registry/Makefile svneol=native#text/plain
 packages/fcl-registry/Makefile.fpc svneol=native#text/plain
+packages/fcl-registry/Makefile.fpc.fpcmake svneol=native#text/plain
 packages/fcl-registry/fpmake.pp svneol=native#text/plain
 packages/fcl-registry/src/regdef.inc svneol=native#text/plain
 packages/fcl-registry/src/regini.inc svneol=native#text/plain
@@ -2234,6 +2243,7 @@ packages/fcl-registry/tests/regtestframework.pp -text
 packages/fcl-registry/tests/testbasics.pp svneol=native#text/plain
 packages/fcl-res/Makefile svneol=native#text/plain
 packages/fcl-res/Makefile.fpc svneol=native#text/plain
+packages/fcl-res/Makefile.fpc.fpcmake svneol=native#text/plain
 packages/fcl-res/fpmake.pp svneol=native#text/plain
 packages/fcl-res/src/acceleratorsresource.pp svneol=native#text/plain
 packages/fcl-res/src/bitmapresource.pp svneol=native#text/plain

+ 60 - 45
packages/Makefile

@@ -9638,43 +9638,43 @@ fpmkunit_bootstrap:
 ifdef CROSSCOMPILE
 	$(MAKE) -C fpmkunit bootstrap
 endif
-fpmkunit_all: fpmkunit_bootstrap fcl-base_all fcl-process_all paszlib_all
-fpmkunit_debug: fpmkunit_bootstrap fcl-base_debug fcl-process_debug paszlib_debug
-fpmkunit_smart: fpmkunit_bootstrap fcl-base_smart fcl-process_smart paszlib_smart
-fpmkunit_release: fpmkunit_bootstrap fcl-base_release fcl-process_release paszlib_release
-fpmkunit_shared: fpmkunit_bootstrap fcl-base_shared fcl-process_shared paszlib_shared
+fpmkunit_all: fpmkunit_bootstrap fcl-process_all paszlib_all
+fpmkunit_debug: fpmkunit_bootstrap fcl-process_debug paszlib_debug
+fpmkunit_smart: fpmkunit_bootstrap fcl-process_smart paszlib_smart
+fpmkunit_release: fpmkunit_bootstrap fcl-process_release paszlib_release
+fpmkunit_shared: fpmkunit_bootstrap fcl-process_shared paszlib_shared
 ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
-fcl-base_all: univint_all paszlib_all
-fcl-base_debug: univint_debug paszlib_debug
-fcl-base_smart: univint_smart paszlib_smart
-fcl-base_release: univint_release paszlib_release
-fcl-base_shared: univint_shared paszlib_shared
+fcl-base_all: fpmkunit_all univint_all paszlib_all
+fcl-base_debug: fpmkunit_debug univint_debug paszlib_debug
+fcl-base_smart: fpmkunit_smart univint_smart paszlib_smart
+fcl-base_release: fpmkunit_release univint_release paszlib_release
+fcl-base_shared: fpmkunit_shared univint_shared paszlib_shared
 else
-fcl-base_all: paszlib_all
-fcl-base_debug: paszlib_debug
-fcl-base_smart: paszlib_smart
-fcl-base_release: paszlib_release
-fcl-base_shared: paszlib_shared
+fcl-base_all: fpmkunit_all paszlib_all
+fcl-base_debug: fpmkunit_debug paszlib_debug
+fcl-base_smart: fpmkunit_smart paszlib_smart
+fcl-base_release: fpmkunit_release paszlib_release
+fcl-base_shared: fpmkunit_shared paszlib_shared
 endif
 ifneq ($(findstring $(OS_TARGET),win32 win64),)
-fcl-extra_all: fcl-base winunits-base_all winunits-jedi_all
-fcl-extra_debug: fcl-base_debug winunits-base_debug winunits-jedi_debug
-fcl-extra_smart: fcl-base_smart winunits-base_smart winunits-jedi_smart
-fcl-extra_release: fcl-base_release winunits-base_release winunits-jedi_release
-fcl-extra_shared: fcl-base_shared winunits-base_shared winunits-jedi_shared
+fcl-extra_all: fpmkunit_all fcl-base winunits-base_all winunits-jedi_all
+fcl-extra_debug: fpmkunit_debug fcl-base_debug winunits-base_debug winunits-jedi_debug
+fcl-extra_smart: fpmkunit_smart fcl-base_smart winunits-base_smart winunits-jedi_smart
+fcl-extra_release: fpmkunit_release fcl-base_release winunits-base_release winunits-jedi_release
+fcl-extra_shared: fpmkunit_shared fcl-base_shared winunits-base_shared winunits-jedi_shared
 else
 ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
-fcl-extra_all: univint_all fcl-base_all
-fcl-extra_debug: univint_debug fcl-base_debug
-fcl-extra_smart: univint_smart fcl-base_smart
-fcl-extra_release: univint_release fcl-base_release
-fcl-extra_shared: univint_shared fcl-base_shared
+fcl-extra_all: fpmkunit_all univint_all fcl-base_all
+fcl-extra_debug: fpmkunit_debug univint_debug fcl-base_debug
+fcl-extra_smart: fpmkunit_smart univint_smart fcl-base_smart
+fcl-extra_release: fpmkunit_release univint_release fcl-base_release
+fcl-extra_shared: fpmkunit_shared univint_shared fcl-base_shared
 else
-fcl-extra_all: fcl-base_all
-fcl-extra_debug: fcl-base_debug
-fcl-extra_smart: fcl-base_smart
-fcl-extra_release: fcl-base_release
-fcl-extra_shared: fcl-base_shared
+fcl-extra_all: fpmkunit_all fcl-base_all
+fcl-extra_debug: fpmkunit_debug fcl-base_debug
+fcl-extra_smart: fpmkunit_smart fcl-base_smart
+fcl-extra_release: fpmkunit_release fcl-base_release
+fcl-extra_shared: fpmkunit_shared fcl-base_shared
 endif
 endif
 ifneq ($(findstring $(FULL_TARGET),i386-darwin powerpc-darwin x86_64-darwin powerpc64-darwin),)
@@ -9727,34 +9727,49 @@ fcl-fpcunit_debug: fcl-xml_debug paszlib_debug
 fcl-fpcunit_smart: fcl-xml_smart paszlib_smart
 fcl-fpcunit_release: fcl-xml_release paszlib_release
 fcl-fpcunit_shared: fcl-xml_shared paszlib_shared
-fcl-registry_all: fcl-xml_all
-fcl-registry_debug: fcl-xml_debug
-fcl-registry_smart: fcl-xml_smart
-fcl-registry_release: fcl-xml_release
-fcl-registry_shared: fcl-xml_shared
+fcl-registry_all: fpmkunit_all fcl-xml_all
+fcl-registry_debug: fpmkunit_debug fcl-xml_debug
+fcl-registry_smart: fpmkunit_smart fcl-xml_smart
+fcl-registry_release: fpmkunit_release fcl-xml_release
+fcl-registry_shared: fpmkunit_shared fcl-xml_shared
 ifeq ($(findstring $(OS_TARGET),linux darwin iphonesim freebsd openbsd netbsd solaris),)
-fcl-net_all: fcl-passrc_all fcl-xml_all
-fcl-net_debug: fcl-passrc_debug fcl-xml_debug
-fcl-net_smart: fcl-passrc_smart fcl-xml_smart
-fcl-net_release: fcl-passrc_release fcl-xml_release
-fcl-net_shared: fcl-passrc_shared fcl-xml_shared
+fcl-net_all: fpmkunit_all fcl-passrc_all fcl-xml_all
+fcl-net_debug: fpmkunit_debug fcl-passrc_debug fcl-xml_debug
+fcl-net_smart: fpmkunit_smart fcl-passrc_smart fcl-xml_smart
+fcl-net_release: fpmkunit_release fcl-passrc_release fcl-xml_release
+fcl-net_shared: fpmkunit_shared fcl-passrc_shared fcl-xml_shared
 else
-fcl-net_all: fcl-passrc_all fcl-xml_all fcl-async_all
-fcl-net_debug: fcl-passrc_debug fcl-xml_debug fcl-async_debug
-fcl-net_smart: fcl-passrc_smart fcl-xml_smart fcl-async_smart
-fcl-net_release: fcl-passrc_release fcl-xml_release fcl-async_release
-fcl-net_shared: fcl-passrc_shared fcl-xml_shared fcl-async_shared
+fcl-net_all: fpmkunit_all fcl-passrc_all fcl-xml_all fcl-async_all
+fcl-net_debug: fpmkunit_debug fcl-passrc_debug fcl-xml_debug fcl-async_debug
+fcl-net_smart: fpmkunit_smart fcl-passrc_smart fcl-xml_smart fcl-async_smart
+fcl-net_release: fpmkunit_release fcl-passrc_release fcl-xml_release fcl-async_release
+fcl-net_shared: fpmkunit_shared fcl-passrc_shared fcl-xml_shared fcl-async_shared
 endif
 fcl-web_all: fpmkunit_all fcl-db_all fcl-xml_all fcl-process_all httpd22_all fastcgi_all fcl-net_all fcl-json_all
 fcl-web_debug: fpmkunit_debug fcl-db_debug fcl-xml_debug fcl-process_debug httpd22_debug fastcgi_debug fcl-net_debug fcl-json_debug
 fcl-web_smart: fpmkunit_smart fcl-db_smart fcl-xml_smart fcl-process_smart httpd22_smart fastcgi_smart fcl-net_smart fcl-json_smart
 fcl-web_release: fpmkunit_release fcl-db_release fcl-xml_release fcl-process_release httpd22_release fastcgi_release fcl-net_release fcl-json_release
 fcl-web_shared: fpmkunit_shared fcl-db_shared fcl-xml_shared fcl-process_shared httpd22_shared fastcgi_shared fcl-net_shared fcl-json_shared
+fcl-passrc_all: fpmkunit_all
+fcl-passrc_debug: fpmkunit_debug
+fcl-passrc_smart: fpmkunit_smart
+fcl-passrc_release: fpmkunit_release
+fcl-passrc_shared: fpmkunit_shared
 fastcgi_all: fpmkunit_all
 fastcgi_debug: fpmkunit_debug
 fastcgi_smart: fpmkunit_smart
 fastcgi_release: fpmkunit_release
 fastcgi_shared: fpmkunit_shared
+fcl-res_all: fpmkunit_all
+fcl-res_debug: fpmkunit_debug
+fcl-res_smart: fpmkunit_smart
+fcl-res_release: fpmkunit_release
+fcl-res_shared: fpmkunit_shared
+fcl-async_all: fpmkunit_all
+fcl-async_debug: fpmkunit_debug
+fcl-async_smart: fpmkunit_smart
+fcl-async_release: fpmkunit_release
+fcl-async_shared: fpmkunit_shared
 ifneq ($(findstring $(OS_TARGET),linux freebsd openbsd netbsd win32 beos haiku),)
 fcl-db_all: fcl-xml_all mysql_all ibase_all oracle_all odbc_all postgres_all sqlite_all pxlib_all
 fcl-db_debug: fcl-xml_debug mysql_debug ibase_debug oracle_debug odbc_debug postgres_debug sqlite_debug pxlib_debug

+ 63 - 45
packages/Makefile.fpc

@@ -78,45 +78,45 @@ fpmkunit_bootstrap:
 ifdef CROSSCOMPILE
 	$(MAKE) -C fpmkunit bootstrap
 endif
-fpmkunit_all: fpmkunit_bootstrap fcl-base_all fcl-process_all paszlib_all
-fpmkunit_debug: fpmkunit_bootstrap fcl-base_debug fcl-process_debug paszlib_debug
-fpmkunit_smart: fpmkunit_bootstrap fcl-base_smart fcl-process_smart paszlib_smart
-fpmkunit_release: fpmkunit_bootstrap fcl-base_release fcl-process_release paszlib_release
-fpmkunit_shared: fpmkunit_bootstrap fcl-base_shared fcl-process_shared paszlib_shared
+fpmkunit_all: fpmkunit_bootstrap fcl-process_all paszlib_all
+fpmkunit_debug: fpmkunit_bootstrap fcl-process_debug paszlib_debug
+fpmkunit_smart: fpmkunit_bootstrap fcl-process_smart paszlib_smart
+fpmkunit_release: fpmkunit_bootstrap fcl-process_release paszlib_release
+fpmkunit_shared: fpmkunit_bootstrap fcl-process_shared paszlib_shared
 
 ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
-fcl-base_all: univint_all paszlib_all
-fcl-base_debug: univint_debug paszlib_debug
-fcl-base_smart: univint_smart paszlib_smart
-fcl-base_release: univint_release paszlib_release
-fcl-base_shared: univint_shared paszlib_shared
+fcl-base_all: fpmkunit_all univint_all paszlib_all
+fcl-base_debug: fpmkunit_debug univint_debug paszlib_debug
+fcl-base_smart: fpmkunit_smart univint_smart paszlib_smart
+fcl-base_release: fpmkunit_release univint_release paszlib_release
+fcl-base_shared: fpmkunit_shared univint_shared paszlib_shared
 else
-fcl-base_all: paszlib_all
-fcl-base_debug: paszlib_debug
-fcl-base_smart: paszlib_smart
-fcl-base_release: paszlib_release
-fcl-base_shared: paszlib_shared
+fcl-base_all: fpmkunit_all paszlib_all
+fcl-base_debug: fpmkunit_debug paszlib_debug
+fcl-base_smart: fpmkunit_smart paszlib_smart
+fcl-base_release: fpmkunit_release paszlib_release
+fcl-base_shared: fpmkunit_shared paszlib_shared
 endif
 
 ifneq ($(findstring $(OS_TARGET),win32 win64),)
-fcl-extra_all: fcl-base winunits-base_all winunits-jedi_all
-fcl-extra_debug: fcl-base_debug winunits-base_debug winunits-jedi_debug
-fcl-extra_smart: fcl-base_smart winunits-base_smart winunits-jedi_smart
-fcl-extra_release: fcl-base_release winunits-base_release winunits-jedi_release
-fcl-extra_shared: fcl-base_shared winunits-base_shared winunits-jedi_shared
+fcl-extra_all: fpmkunit_all fcl-base winunits-base_all winunits-jedi_all
+fcl-extra_debug: fpmkunit_debug fcl-base_debug winunits-base_debug winunits-jedi_debug
+fcl-extra_smart: fpmkunit_smart fcl-base_smart winunits-base_smart winunits-jedi_smart
+fcl-extra_release: fpmkunit_release fcl-base_release winunits-base_release winunits-jedi_release
+fcl-extra_shared: fpmkunit_shared fcl-base_shared winunits-base_shared winunits-jedi_shared
 else
 ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
-fcl-extra_all: univint_all fcl-base_all
-fcl-extra_debug: univint_debug fcl-base_debug
-fcl-extra_smart: univint_smart fcl-base_smart
-fcl-extra_release: univint_release fcl-base_release
-fcl-extra_shared: univint_shared fcl-base_shared
+fcl-extra_all: fpmkunit_all univint_all fcl-base_all
+fcl-extra_debug: fpmkunit_debug univint_debug fcl-base_debug
+fcl-extra_smart: fpmkunit_smart univint_smart fcl-base_smart
+fcl-extra_release: fpmkunit_release univint_release fcl-base_release
+fcl-extra_shared: fpmkunit_shared univint_shared fcl-base_shared
 else
-fcl-extra_all: fcl-base_all
-fcl-extra_debug: fcl-base_debug
-fcl-extra_smart: fcl-base_smart
-fcl-extra_release: fcl-base_release
-fcl-extra_shared: fcl-base_shared
+fcl-extra_all: fpmkunit_all fcl-base_all
+fcl-extra_debug: fpmkunit_debug fcl-base_debug
+fcl-extra_smart: fpmkunit_smart fcl-base_smart
+fcl-extra_release: fpmkunit_release fcl-base_release
+fcl-extra_shared: fpmkunit_shared fcl-base_shared
 endif
 endif
 
@@ -178,24 +178,24 @@ fcl-fpcunit_smart: fcl-xml_smart paszlib_smart
 fcl-fpcunit_release: fcl-xml_release paszlib_release
 fcl-fpcunit_shared: fcl-xml_shared paszlib_shared
 
-fcl-registry_all: fcl-xml_all
-fcl-registry_debug: fcl-xml_debug
-fcl-registry_smart: fcl-xml_smart
-fcl-registry_release: fcl-xml_release
-fcl-registry_shared: fcl-xml_shared
+fcl-registry_all: fpmkunit_all fcl-xml_all
+fcl-registry_debug: fpmkunit_debug fcl-xml_debug
+fcl-registry_smart: fpmkunit_smart fcl-xml_smart
+fcl-registry_release: fpmkunit_release fcl-xml_release
+fcl-registry_shared: fpmkunit_shared fcl-xml_shared
 
 ifeq ($(findstring $(OS_TARGET),linux darwin iphonesim freebsd openbsd netbsd solaris),)
-fcl-net_all: fcl-passrc_all fcl-xml_all
-fcl-net_debug: fcl-passrc_debug fcl-xml_debug
-fcl-net_smart: fcl-passrc_smart fcl-xml_smart
-fcl-net_release: fcl-passrc_release fcl-xml_release
-fcl-net_shared: fcl-passrc_shared fcl-xml_shared
+fcl-net_all: fpmkunit_all fcl-passrc_all fcl-xml_all
+fcl-net_debug: fpmkunit_debug fcl-passrc_debug fcl-xml_debug
+fcl-net_smart: fpmkunit_smart fcl-passrc_smart fcl-xml_smart
+fcl-net_release: fpmkunit_release fcl-passrc_release fcl-xml_release
+fcl-net_shared: fpmkunit_shared fcl-passrc_shared fcl-xml_shared
 else
-fcl-net_all: fcl-passrc_all fcl-xml_all fcl-async_all
-fcl-net_debug: fcl-passrc_debug fcl-xml_debug fcl-async_debug
-fcl-net_smart: fcl-passrc_smart fcl-xml_smart fcl-async_smart
-fcl-net_release: fcl-passrc_release fcl-xml_release fcl-async_release
-fcl-net_shared: fcl-passrc_shared fcl-xml_shared fcl-async_shared
+fcl-net_all: fpmkunit_all fcl-passrc_all fcl-xml_all fcl-async_all
+fcl-net_debug: fpmkunit_debug fcl-passrc_debug fcl-xml_debug fcl-async_debug
+fcl-net_smart: fpmkunit_smart fcl-passrc_smart fcl-xml_smart fcl-async_smart
+fcl-net_release: fpmkunit_release fcl-passrc_release fcl-xml_release fcl-async_release
+fcl-net_shared: fpmkunit_shared fcl-passrc_shared fcl-xml_shared fcl-async_shared
 endif
 
 fcl-web_all: fpmkunit_all fcl-db_all fcl-xml_all fcl-process_all httpd22_all fastcgi_all fcl-net_all fcl-json_all
@@ -204,12 +204,30 @@ fcl-web_smart: fpmkunit_smart fcl-db_smart fcl-xml_smart fcl-process_smart httpd
 fcl-web_release: fpmkunit_release fcl-db_release fcl-xml_release fcl-process_release httpd22_release fastcgi_release fcl-net_release fcl-json_release
 fcl-web_shared: fpmkunit_shared fcl-db_shared fcl-xml_shared fcl-process_shared httpd22_shared fastcgi_shared fcl-net_shared fcl-json_shared
 
+fcl-passrc_all: fpmkunit_all
+fcl-passrc_debug: fpmkunit_debug
+fcl-passrc_smart: fpmkunit_smart
+fcl-passrc_release: fpmkunit_release
+fcl-passrc_shared: fpmkunit_shared
+
 fastcgi_all: fpmkunit_all
 fastcgi_debug: fpmkunit_debug
 fastcgi_smart: fpmkunit_smart
 fastcgi_release: fpmkunit_release
 fastcgi_shared: fpmkunit_shared
 
+fcl-res_all: fpmkunit_all
+fcl-res_debug: fpmkunit_debug
+fcl-res_smart: fpmkunit_smart
+fcl-res_release: fpmkunit_release
+fcl-res_shared: fpmkunit_shared
+
+fcl-async_all: fpmkunit_all
+fcl-async_debug: fpmkunit_debug
+fcl-async_smart: fpmkunit_smart
+fcl-async_release: fpmkunit_release
+fcl-async_shared: fpmkunit_shared
+
 ifneq ($(findstring $(OS_TARGET),linux freebsd openbsd netbsd win32 beos haiku),)
 fcl-db_all: fcl-xml_all mysql_all ibase_all oracle_all odbc_all postgres_all sqlite_all pxlib_all
 fcl-db_debug: fcl-xml_debug mysql_debug ibase_debug oracle_debug odbc_debug postgres_debug sqlite_debug pxlib_debug

File diff suppressed because it is too large
+ 260 - 567
packages/fcl-async/Makefile


+ 59 - 26
packages/fcl-async/Makefile.fpc

@@ -1,41 +1,74 @@
 #
-#   Makefile.fpc for libasync
+#   Makefile.fpc for running fpmake
 #
 
 [package]
 name=fcl-async
 version=2.7.1
 
-[target]
-units=libasync fpasync
+[require]
+packages=rtl fpmkunit
 
 [install]
 fpcpackage=y
 
-[compiler]
-sourcedir=src
-sourcedir_linux=src/unix
-sourcedir_beos=src/unix
-sourcedir_haiku=src/unix
-sourcedir_freebsd=src/unix
-sourcedir_darwin=src/unix
-sourcedir_iphonesim=src/unix
-sourcedir_solaris=src/unix
-sourcedir_netbsd=src/unix
-sourcedir_openbsd=src/unix
-includedir=src
-includedir_linux=src/unix
-includedir_beos=src/unix
-includedir_haiku=src/unix
-includedir_freebsd=src/unix
-includedir_darwin=src/unix
-includedir_iphonesim=src/unix
-includedir_solaris=src/unix
-includedir_netbsd=src/unix
-includedir_openbsd=src/unix
-
 [default]
 fpcdir=../..
 
+[prerules]
+FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT))
+ifdef OS_TARGET
+FPC_TARGETOPT+=--os=$(OS_TARGET)
+endif
+ifdef CPU_TARGET
+FPC_TARGETOPT+=--cpu=$(CPU_TARGET)
+endif
+LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT)
+
 [rules]
-.NOTPARALLEL:
+fpmake: fpmake.pp
+	$(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR))
+all:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+smart:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -XX -o -CX
+release:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -dRELEASE
+debug:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -dDEBUG
+# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will
+# most often fail because the dependencies are cleared.
+# In case of a clean, simply do nothing
+ifeq ($(FPMAKE_BIN_CLEAN),)
+clean:	
+else
+clean:	
+	$(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+endif
+# In case of a distclean, perform an 'old'-style distclean. This to avoid problems
+# when the package is compiled using fpcmake prior to running this clean using fpmake
+ifeq ($(FPMAKE_BIN_CLEAN),)
+distclean:	$(addsuffix _distclean,$(TARGET_DIRS)) fpc_distclean
+else
+distclean:	
+ifdef inUnix
+        { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi;  }
+else
+        $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+endif
+	-$(DEL) $(LOCALFPMAKE)
+endif
+install:	fpmake
+ifdef UNIXHier
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX)
+else
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR)
+endif
+# distinstall also installs the example-sources
+distinstall:	fpmake
+ifdef UNIXHier
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) -ie
+else
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) -ie
+endif
+

+ 41 - 0
packages/fcl-async/Makefile.fpc.fpcmake

@@ -0,0 +1,41 @@
+#
+#   Makefile.fpc for libasync
+#
+
+[package]
+name=fcl-async
+version=2.7.1
+
+[target]
+units=libasync fpasync
+
+[install]
+fpcpackage=y
+
+[compiler]
+sourcedir=src
+sourcedir_linux=src/unix
+sourcedir_beos=src/unix
+sourcedir_haiku=src/unix
+sourcedir_freebsd=src/unix
+sourcedir_darwin=src/unix
+sourcedir_iphonesim=src/unix
+sourcedir_solaris=src/unix
+sourcedir_netbsd=src/unix
+sourcedir_openbsd=src/unix
+includedir=src
+includedir_linux=src/unix
+includedir_beos=src/unix
+includedir_haiku=src/unix
+includedir_freebsd=src/unix
+includedir_darwin=src/unix
+includedir_iphonesim=src/unix
+includedir_solaris=src/unix
+includedir_netbsd=src/unix
+includedir_openbsd=src/unix
+
+[default]
+fpcdir=../..
+
+[rules]
+.NOTPARALLEL:

File diff suppressed because it is too large
+ 261 - 964
packages/fcl-base/Makefile


+ 58 - 57
packages/fcl-base/Makefile.fpc

@@ -1,5 +1,5 @@
 #
-#   Makefile.fpc for Free Component Library
+#   Makefile.fpc for running fpmake
 #
 
 [package]
@@ -7,67 +7,68 @@ name=fcl-base
 version=2.7.1
 
 [require]
-packages_darwin=univint
-packages_iphonesim=univint
-
-[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 fpexprpars ascii85 fptemplate fpmimetypes
-units_beos=syncobjs
-units_haiku=syncobjs
-units_freebsd=syncobjs fptimer
-units_darwin=syncobjs fptimer
-units_iphonesim=syncobjs fptimer
-units_solaris=syncobjs fptimer
-units_netbsd=  fptimer
-units_openbsd= fptimer
-units_linux=syncobjs   fptimer
-units_win32=fileinfo syncobjs  fptimer
-units_win64=fileinfo syncobjs  fptimer
-units_wince=fileinfo syncobjs fptimer
-# syncobjs requires GetLastOSError function
-units_netware=syncobjs
-units_netwlibc=syncobjs
-rsts=cachecls custapp cgiapp eventlog registry streamcoll inicol
-
-[compiler]
-options=-S2h
-includedir=src/$(OS_TARGET) src 
-includedir_linux=src/unix
-includedir_freebsd=src/unix
-includedir_darwin=src/unix
-includedir_iphonesim=src/unix
-includedir_netbsd=src/unix
-includedir_openbsd=src/unix
-includedir_solaris=src/unix
-includedir_qnx=src/unix
-includedir_beos=src/unix
-includedir_haiku=src/unix
-includedir_emx=src/os2 src/dummy
-includedir_go32v2=src/go32v2 src/dummy
-includedir_win32=src/win
-includedir_win64=src/win
-includedir_wince=src/dummy
-sourcedir=src/$(OS_TARGET) src
-
-[prerules]
-ifeq ($(OS_TARGET),win32)
-INSTALL_DATADIR=${INSTALL_UNITDIR}
-endif
-ifeq ($(OS_TARGET),win64)
-INSTALL_DATADIR=${INSTALL_UNITDIR}
-endif
+packages=rtl fpmkunit
 
 [install]
 fpcpackage=y
-files_win32=src/win/fclel.res
-files_win64=src/win/fclel.res
 
 [default]
 fpcdir=../..
 
+[prerules]
+FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT))
+ifdef OS_TARGET
+FPC_TARGETOPT+=--os=$(OS_TARGET)
+endif
+ifdef CPU_TARGET
+FPC_TARGETOPT+=--cpu=$(CPU_TARGET)
+endif
+LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT)
+
 [rules]
-.NOTPARALLEL:
+fpmake: fpmake.pp
+	$(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR))
+all:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+smart:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -XX -o -CX
+release:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -dRELEASE
+debug:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -dDEBUG
+# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will
+# most often fail because the dependencies are cleared.
+# In case of a clean, simply do nothing
+ifeq ($(FPMAKE_BIN_CLEAN),)
+clean:	
+else
+clean:	
+	$(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+endif
+# In case of a distclean, perform an 'old'-style distclean. This to avoid problems
+# when the package is compiled using fpcmake prior to running this clean using fpmake
+ifeq ($(FPMAKE_BIN_CLEAN),)
+distclean:	$(addsuffix _distclean,$(TARGET_DIRS)) fpc_distclean
+else
+distclean:	
+ifdef inUnix
+        { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi;  }
+else
+        $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+endif
+	-$(DEL) $(LOCALFPMAKE)
+endif
+install:	fpmake
+ifdef UNIXHier
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX)
+else
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR)
+endif
+# distinstall also installs the example-sources
+distinstall:	fpmake
+ifdef UNIXHier
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) -ie
+else
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) -ie
+endif
+

+ 73 - 0
packages/fcl-base/Makefile.fpc.fpcmake

@@ -0,0 +1,73 @@
+#
+#   Makefile.fpc for Free Component Library
+#
+
+[package]
+name=fcl-base
+version=2.7.1
+
+[require]
+packages_darwin=univint
+packages_iphonesim=univint
+
+[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 fpexprpars ascii85 fptemplate fpmimetypes
+units_beos=syncobjs
+units_haiku=syncobjs
+units_freebsd=syncobjs fptimer
+units_darwin=syncobjs fptimer
+units_iphonesim=syncobjs fptimer
+units_solaris=syncobjs fptimer
+units_netbsd=  fptimer
+units_openbsd= fptimer
+units_linux=syncobjs   fptimer
+units_win32=fileinfo syncobjs  fptimer
+units_win64=fileinfo syncobjs  fptimer
+units_wince=fileinfo syncobjs fptimer
+# syncobjs requires GetLastOSError function
+units_netware=syncobjs
+units_netwlibc=syncobjs
+rsts=cachecls custapp cgiapp eventlog registry streamcoll inicol
+
+[compiler]
+options=-S2h
+includedir=src/$(OS_TARGET) src 
+includedir_linux=src/unix
+includedir_freebsd=src/unix
+includedir_darwin=src/unix
+includedir_iphonesim=src/unix
+includedir_netbsd=src/unix
+includedir_openbsd=src/unix
+includedir_solaris=src/unix
+includedir_qnx=src/unix
+includedir_beos=src/unix
+includedir_haiku=src/unix
+includedir_emx=src/os2 src/dummy
+includedir_go32v2=src/go32v2 src/dummy
+includedir_win32=src/win
+includedir_win64=src/win
+includedir_wince=src/dummy
+sourcedir=src/$(OS_TARGET) src
+
+[prerules]
+ifeq ($(OS_TARGET),win32)
+INSTALL_DATADIR=${INSTALL_UNITDIR}
+endif
+ifeq ($(OS_TARGET),win64)
+INSTALL_DATADIR=${INSTALL_UNITDIR}
+endif
+
+[install]
+fpcpackage=y
+files_win32=src/win/fclel.res
+files_win64=src/win/fclel.res
+
+[default]
+fpcdir=../..
+
+[rules]
+.NOTPARALLEL:

File diff suppressed because it is too large
+ 261 - 921
packages/fcl-extra/Makefile


+ 58 - 39
packages/fcl-extra/Makefile.fpc

@@ -1,5 +1,5 @@
 #
-#   Makefile.fpc for Free Component Library
+#   Makefile.fpc for running fpmake
 #
 
 [package]
@@ -7,43 +7,7 @@ name=fcl-extra
 version=2.7.1
 
 [require]
-packages=fcl-base
-packages_win32=winunits-base winunits-jedi  
-packages_win64=winunits-base winunits-jedi   
-packages_darwin=univint  
-packages_iphonesim=univint  
-
-[target]
- 
-units_freebsd=daemonapp
-units_darwin=daemonapp 
-units_iphonesim=daemonapp 
-units_solaris= daemonapp 
-units_netbsd=daemonapp 
-units_openbsd=daemonapp
-units_linux=daemonapp  
-units_win32= daemonapp ServiceManager 
-units_win64=daemonapp ServiceManager 
-rsts=daemonapp servicemanager
- 
-[compiler]
-options=-S2h
-includedir=src/$(OS_TARGET) src src/dummy
-includedir_linux=src/unix
-includedir_freebsd=src/unix
-includedir_darwin=src/unix
-includedir_iphonesim=src/unix
-includedir_netbsd=src/unix
-includedir_openbsd=src/unix
-includedir_solaris=src/unix
-includedir_qnx=src/unix
-includedir_beos=src/unix
-includedir_haiku=src/unix
-includedir_emx=src/os2
-includedir_win32=src/win
-includedir_win64=src/win
-includedir_wince=src/win
-sourcedir=src/$(OS_TARGET) src
+packages=rtl fpmkunit
 
 [install]
 fpcpackage=y
@@ -51,5 +15,60 @@ fpcpackage=y
 [default]
 fpcdir=../..
 
+[prerules]
+FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT))
+ifdef OS_TARGET
+FPC_TARGETOPT+=--os=$(OS_TARGET)
+endif
+ifdef CPU_TARGET
+FPC_TARGETOPT+=--cpu=$(CPU_TARGET)
+endif
+LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT)
+
 [rules]
-.NOTPARALLEL:
+fpmake: fpmake.pp
+	$(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR))
+all:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+smart:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -XX -o -CX
+release:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -dRELEASE
+debug:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -dDEBUG
+# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will
+# most often fail because the dependencies are cleared.
+# In case of a clean, simply do nothing
+ifeq ($(FPMAKE_BIN_CLEAN),)
+clean:	
+else
+clean:	
+	$(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+endif
+# In case of a distclean, perform an 'old'-style distclean. This to avoid problems
+# when the package is compiled using fpcmake prior to running this clean using fpmake
+ifeq ($(FPMAKE_BIN_CLEAN),)
+distclean:	$(addsuffix _distclean,$(TARGET_DIRS)) fpc_distclean
+else
+distclean:	
+ifdef inUnix
+        { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi;  }
+else
+        $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+endif
+	-$(DEL) $(LOCALFPMAKE)
+endif
+install:	fpmake
+ifdef UNIXHier
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX)
+else
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR)
+endif
+# distinstall also installs the example-sources
+distinstall:	fpmake
+ifdef UNIXHier
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) -ie
+else
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) -ie
+endif
+

+ 55 - 0
packages/fcl-extra/Makefile.fpc.fpcmake

@@ -0,0 +1,55 @@
+#
+#   Makefile.fpc for Free Component Library
+#
+
+[package]
+name=fcl-extra
+version=2.7.1
+
+[require]
+packages=fcl-base
+packages_win32=winunits-base winunits-jedi  
+packages_win64=winunits-base winunits-jedi   
+packages_darwin=univint  
+packages_iphonesim=univint  
+
+[target]
+ 
+units_freebsd=daemonapp
+units_darwin=daemonapp 
+units_iphonesim=daemonapp 
+units_solaris= daemonapp 
+units_netbsd=daemonapp 
+units_openbsd=daemonapp
+units_linux=daemonapp  
+units_win32= daemonapp ServiceManager 
+units_win64=daemonapp ServiceManager 
+rsts=daemonapp servicemanager
+ 
+[compiler]
+options=-S2h
+includedir=src/$(OS_TARGET) src src/dummy
+includedir_linux=src/unix
+includedir_freebsd=src/unix
+includedir_darwin=src/unix
+includedir_iphonesim=src/unix
+includedir_netbsd=src/unix
+includedir_openbsd=src/unix
+includedir_solaris=src/unix
+includedir_qnx=src/unix
+includedir_beos=src/unix
+includedir_haiku=src/unix
+includedir_emx=src/os2
+includedir_win32=src/win
+includedir_win64=src/win
+includedir_wince=src/win
+sourcedir=src/$(OS_TARGET) src
+
+[install]
+fpcpackage=y
+
+[default]
+fpcdir=../..
+
+[rules]
+.NOTPARALLEL:

File diff suppressed because it is too large
+ 135 - 1078
packages/fcl-image/Makefile


+ 58 - 26
packages/fcl-image/Makefile.fpc

@@ -1,36 +1,13 @@
 #
-#   Makefile.fpc for FCL image units
+#   Makefile.fpc for running fpmake
 #
 
 [package]
 name=fcl-image
 version=2.7.1
 
-[target]
-units=fpimgcmn fpimage pngcomn fpreadpng fpwritepng fpreadxpm fpwritexpm \
-      clipping fpcanvas pixtools fppixlcanv fpimgcanv pscanvas fpwritebmp \
-      fpreadbmp bmpcomn fpreadpnm fpwritepnm fpreadjpeg fpwritejpeg \
-      pcxcomn fpreadpcx fpwritepcx fptiffcmn fpreadtiff fpwritetiff \
-      targacmn fpreadtga fpwritetga ellipses fpcolhash fpditherer fpquantizer \ 
-      extinterpolation fpreadgif fpreadpsd xwdfile fpreadxwd
-units_win32=freetypeh freetype ftfont
-units_win64=freetypeh freetype ftfont
-units_beos=freetypeh freetype ftfont
-units_haiku=freetypeh freetype ftfont
-units_linux=freetypeh freetype ftfont
-units_freebsd=freetypeh freetype ftfont
-units_darwin=freetypeh freetype ftfont
-units_iphonesim=freetypeh freetype ftfont
-units_solaris=freetypeh freetype ftfont
-rsts=pscanvas
-exampledirs=examples
-
 [require]
-packages=pasjpeg paszlib fcl-base
-
-[compiler]
-options=-S2h
-sourcedir=src
+packages=rtl fpmkunit
 
 [install]
 fpcpackage=y
@@ -38,5 +15,60 @@ fpcpackage=y
 [default]
 fpcdir=../..
 
+[prerules]
+FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT))
+ifdef OS_TARGET
+FPC_TARGETOPT+=--os=$(OS_TARGET)
+endif
+ifdef CPU_TARGET
+FPC_TARGETOPT+=--cpu=$(CPU_TARGET)
+endif
+LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT)
+
 [rules]
-.NOTPARALLEL:
+fpmake: fpmake.pp
+	$(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR))
+all:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+smart:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -XX -o -CX
+release:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -dRELEASE
+debug:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -dDEBUG
+# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will
+# most often fail because the dependencies are cleared.
+# In case of a clean, simply do nothing
+ifeq ($(FPMAKE_BIN_CLEAN),)
+clean:	
+else
+clean:	
+	$(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+endif
+# In case of a distclean, perform an 'old'-style distclean. This to avoid problems
+# when the package is compiled using fpcmake prior to running this clean using fpmake
+ifeq ($(FPMAKE_BIN_CLEAN),)
+distclean:	$(addsuffix _distclean,$(TARGET_DIRS)) fpc_distclean
+else
+distclean:	
+ifdef inUnix
+        { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi;  }
+else
+        $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+endif
+	-$(DEL) $(LOCALFPMAKE)
+endif
+install:	fpmake
+ifdef UNIXHier
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX)
+else
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR)
+endif
+# distinstall also installs the example-sources
+distinstall:	fpmake
+ifdef UNIXHier
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) -ie
+else
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) -ie
+endif
+

+ 42 - 0
packages/fcl-image/Makefile.fpc.fpcmake

@@ -0,0 +1,42 @@
+#
+#   Makefile.fpc for FCL image units
+#
+
+[package]
+name=fcl-image
+version=2.7.1
+
+[target]
+units=fpimgcmn fpimage pngcomn fpreadpng fpwritepng fpreadxpm fpwritexpm \
+      clipping fpcanvas pixtools fppixlcanv fpimgcanv pscanvas fpwritebmp \
+      fpreadbmp bmpcomn fpreadpnm fpwritepnm fpreadjpeg fpwritejpeg \
+      pcxcomn fpreadpcx fpwritepcx fptiffcmn fpreadtiff fpwritetiff \
+      targacmn fpreadtga fpwritetga ellipses fpcolhash fpditherer fpquantizer \ 
+      extinterpolation fpreadgif fpreadpsd xwdfile fpreadxwd
+units_win32=freetypeh freetype ftfont
+units_win64=freetypeh freetype ftfont
+units_beos=freetypeh freetype ftfont
+units_haiku=freetypeh freetype ftfont
+units_linux=freetypeh freetype ftfont
+units_freebsd=freetypeh freetype ftfont
+units_darwin=freetypeh freetype ftfont
+units_iphonesim=freetypeh freetype ftfont
+units_solaris=freetypeh freetype ftfont
+rsts=pscanvas
+exampledirs=examples
+
+[require]
+packages=pasjpeg paszlib fcl-base
+
+[compiler]
+options=-S2h
+sourcedir=src
+
+[install]
+fpcpackage=y
+
+[default]
+fpcdir=../..
+
+[rules]
+.NOTPARALLEL:

File diff suppressed because it is too large
+ 260 - 569
packages/fcl-js/Makefile


+ 58 - 10
packages/fcl-js/Makefile.fpc

@@ -1,13 +1,13 @@
 #
-#   Makefile.fpc for Javascript Parser
+#   Makefile.fpc for running fpmake
 #
 
 [package]
 name=fcl-js
 version=2.7.1
 
-[target]
-units=jsbase jstree jsscanner jsparser
+[require]
+packages=rtl fpmkunit
 
 [install]
 fpcpackage=y
@@ -15,12 +15,60 @@ fpcpackage=y
 [default]
 fpcdir=../..
 
-[compiler]
-includedir=src
-sourcedir=src
-
-[shared]
-build=n
+[prerules]
+FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT))
+ifdef OS_TARGET
+FPC_TARGETOPT+=--os=$(OS_TARGET)
+endif
+ifdef CPU_TARGET
+FPC_TARGETOPT+=--cpu=$(CPU_TARGET)
+endif
+LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT)
 
 [rules]
-.NOTPARALLEL:
+fpmake: fpmake.pp
+	$(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR))
+all:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+smart:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -XX -o -CX
+release:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -dRELEASE
+debug:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -dDEBUG
+# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will
+# most often fail because the dependencies are cleared.
+# In case of a clean, simply do nothing
+ifeq ($(FPMAKE_BIN_CLEAN),)
+clean:	
+else
+clean:	
+	$(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+endif
+# In case of a distclean, perform an 'old'-style distclean. This to avoid problems
+# when the package is compiled using fpcmake prior to running this clean using fpmake
+ifeq ($(FPMAKE_BIN_CLEAN),)
+distclean:	$(addsuffix _distclean,$(TARGET_DIRS)) fpc_distclean
+else
+distclean:	
+ifdef inUnix
+        { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi;  }
+else
+        $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+endif
+	-$(DEL) $(LOCALFPMAKE)
+endif
+install:	fpmake
+ifdef UNIXHier
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX)
+else
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR)
+endif
+# distinstall also installs the example-sources
+distinstall:	fpmake
+ifdef UNIXHier
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) -ie
+else
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) -ie
+endif
+

+ 26 - 0
packages/fcl-js/Makefile.fpc.fpcmake

@@ -0,0 +1,26 @@
+#
+#   Makefile.fpc for Javascript Parser
+#
+
+[package]
+name=fcl-js
+version=2.7.1
+
+[target]
+units=jsbase jstree jsscanner jsparser
+
+[install]
+fpcpackage=y
+
+[default]
+fpcdir=../..
+
+[compiler]
+includedir=src
+sourcedir=src
+
+[shared]
+build=n
+
+[rules]
+.NOTPARALLEL:

File diff suppressed because it is too large
+ 261 - 826
packages/fcl-json/Makefile


+ 57 - 16
packages/fcl-json/Makefile.fpc

@@ -1,21 +1,13 @@
 #
-#   Makefile.fpc for XML for FCL
+#   Makefile.fpc for running fpmake
 #
 
 [package]
 name=fcl-json
 version=2.7.1
 
-[target]
-units=fpjson jsonscanner jsonparser jsonconf fpjsonrtti
-rsts=fpjson jsonscanner jsonparser jsonconf fpjsonrtti
-
 [require]
-packages=fcl-base
-
-[compiler]
-options=-S2h
-sourcedir=src
+packages=rtl fpmkunit
 
 [install]
 fpcpackage=y
@@ -23,11 +15,60 @@ fpcpackage=y
 [default]
 fpcdir=../..
 
-[rules]
-.NOTPARALLEL:
+[prerules]
+FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT))
+ifdef OS_TARGET
+FPC_TARGETOPT+=--os=$(OS_TARGET)
+endif
+ifdef CPU_TARGET
+FPC_TARGETOPT+=--cpu=$(CPU_TARGET)
+endif
+LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT)
 
-jsonparser$(PPUEXT): jsonparser.pp fpjson$(PPUEXT) jsonscanner$(PPUEXT)
-
-jsonconf$(PPUEXT): jsonparser$(PPUEXT) fpjson$(PPUEXT)
+[rules]
+fpmake: fpmake.pp
+	$(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR))
+all:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+smart:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -XX -o -CX
+release:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -dRELEASE
+debug:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -dDEBUG
+# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will
+# most often fail because the dependencies are cleared.
+# In case of a clean, simply do nothing
+ifeq ($(FPMAKE_BIN_CLEAN),)
+clean:	
+else
+clean:	
+	$(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+endif
+# In case of a distclean, perform an 'old'-style distclean. This to avoid problems
+# when the package is compiled using fpcmake prior to running this clean using fpmake
+ifeq ($(FPMAKE_BIN_CLEAN),)
+distclean:	$(addsuffix _distclean,$(TARGET_DIRS)) fpc_distclean
+else
+distclean:	
+ifdef inUnix
+        { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi;  }
+else
+        $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+endif
+	-$(DEL) $(LOCALFPMAKE)
+endif
+install:	fpmake
+ifdef UNIXHier
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX)
+else
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR)
+endif
+# distinstall also installs the example-sources
+distinstall:	fpmake
+ifdef UNIXHier
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) -ie
+else
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) -ie
+endif
 
-fpjsonrtti$(PPUEXT): jsonparser$(PPUEXT) fpjson$(PPUEXT)

+ 33 - 0
packages/fcl-json/Makefile.fpc.fpcmake

@@ -0,0 +1,33 @@
+#
+#   Makefile.fpc for XML for FCL
+#
+
+[package]
+name=fcl-json
+version=2.7.1
+
+[target]
+units=fpjson jsonscanner jsonparser jsonconf fpjsonrtti
+rsts=fpjson jsonscanner jsonparser jsonconf fpjsonrtti
+
+[require]
+packages=fcl-base
+
+[compiler]
+options=-S2h
+sourcedir=src
+
+[install]
+fpcpackage=y
+
+[default]
+fpcdir=../..
+
+[rules]
+.NOTPARALLEL:
+
+jsonparser$(PPUEXT): jsonparser.pp fpjson$(PPUEXT) jsonscanner$(PPUEXT)
+
+jsonconf$(PPUEXT): jsonparser$(PPUEXT) fpjson$(PPUEXT)
+
+fpjsonrtti$(PPUEXT): jsonparser$(PPUEXT) fpjson$(PPUEXT)

File diff suppressed because it is too large
+ 260 - 984
packages/fcl-net/Makefile


+ 58 - 39
packages/fcl-net/Makefile.fpc

@@ -1,49 +1,13 @@
 #
-#   Makefile.fpc for FCL net units
+#   Makefile.fpc for running fpmake
 #
 
 [package]
 name=fcl-net
 version=2.7.1
 
-[target]
-units_linux=netdb resolve ssockets fpsock cnetdb
-units_freebsd=netdb resolve ssockets fpsock cnetdb
-units_netbsd=netdb resolve ssockets fpsock 
-units_openbsd=netdb resolve ssockets fpsock
-units_darwin=netdb resolve ssockets 
-units_iphonesim=netdb resolve ssockets 
-units_solaris=netdb resolve ssockets 
-units_qnx=netdb resolve ssockets 
-units_beos=netdb resolve ssockets 
-units_haiku=netdb resolve ssockets 
-units_emx=resolve ssockets 
-units_os2=resolve ssockets 
-units_win32=resolve ssockets 
-units_win64=resolve ssockets 
-units_wince=resolve ssockets 
-
 [require]
-packages=fcl-base fcl-xml fcl-passrc fcl-async
-
-[compiler]
-options=-S2h
-includedir=src/$(OS_TARGET)
-includedir_linux=src/unix
-includedir_freebsd=src/unix
-includedir_darwin=src/unix
-includedir_iphonesim=src/unix
-includedir_netbsd=src/unix
-includedir_openbsd=src/unix
-includedir_solaris=src/unix
-includedir_qnx=src/unix
-includedir_beos=src/unix
-includedir_haiku=src/unix
-includedir_emx=src/os2
-includedir_win32=src/win
-includedir_win64=src/win
-includedir_wince=src/win
-sourcedir=src/$(OS_TARGET) src
+packages=rtl fpmkunit
 
 [install]
 fpcpackage=y
@@ -51,5 +15,60 @@ fpcpackage=y
 [default]
 fpcdir=../..
 
+[prerules]
+FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT))
+ifdef OS_TARGET
+FPC_TARGETOPT+=--os=$(OS_TARGET)
+endif
+ifdef CPU_TARGET
+FPC_TARGETOPT+=--cpu=$(CPU_TARGET)
+endif
+LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT)
+
 [rules]
-.NOTPARALLEL:
+fpmake: fpmake.pp
+	$(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR))
+all:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+smart:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -XX -o -CX
+release:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -dRELEASE
+debug:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -dDEBUG
+# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will
+# most often fail because the dependencies are cleared.
+# In case of a clean, simply do nothing
+ifeq ($(FPMAKE_BIN_CLEAN),)
+clean:	
+else
+clean:	
+	$(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+endif
+# In case of a distclean, perform an 'old'-style distclean. This to avoid problems
+# when the package is compiled using fpcmake prior to running this clean using fpmake
+ifeq ($(FPMAKE_BIN_CLEAN),)
+distclean:	$(addsuffix _distclean,$(TARGET_DIRS)) fpc_distclean
+else
+distclean:	
+ifdef inUnix
+        { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi;  }
+else
+        $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+endif
+	-$(DEL) $(LOCALFPMAKE)
+endif
+install:	fpmake
+ifdef UNIXHier
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX)
+else
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR)
+endif
+# distinstall also installs the example-sources
+distinstall:	fpmake
+ifdef UNIXHier
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) -ie
+else
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) -ie
+endif
+

+ 55 - 0
packages/fcl-net/Makefile.fpc.fpcmake

@@ -0,0 +1,55 @@
+#
+#   Makefile.fpc for FCL net units
+#
+
+[package]
+name=fcl-net
+version=2.7.1
+
+[target]
+units_linux=netdb resolve ssockets fpsock cnetdb
+units_freebsd=netdb resolve ssockets fpsock cnetdb
+units_netbsd=netdb resolve ssockets fpsock 
+units_openbsd=netdb resolve ssockets fpsock
+units_darwin=netdb resolve ssockets 
+units_iphonesim=netdb resolve ssockets 
+units_solaris=netdb resolve ssockets 
+units_qnx=netdb resolve ssockets 
+units_beos=netdb resolve ssockets 
+units_haiku=netdb resolve ssockets 
+units_emx=resolve ssockets 
+units_os2=resolve ssockets 
+units_win32=resolve ssockets 
+units_win64=resolve ssockets 
+units_wince=resolve ssockets 
+
+[require]
+packages=fcl-base fcl-xml fcl-passrc fcl-async
+
+[compiler]
+options=-S2h
+includedir=src/$(OS_TARGET)
+includedir_linux=src/unix
+includedir_freebsd=src/unix
+includedir_darwin=src/unix
+includedir_iphonesim=src/unix
+includedir_netbsd=src/unix
+includedir_openbsd=src/unix
+includedir_solaris=src/unix
+includedir_qnx=src/unix
+includedir_beos=src/unix
+includedir_haiku=src/unix
+includedir_emx=src/os2
+includedir_win32=src/win
+includedir_win64=src/win
+includedir_wince=src/win
+sourcedir=src/$(OS_TARGET) src
+
+[install]
+fpcpackage=y
+
+[default]
+fpcdir=../..
+
+[rules]
+.NOTPARALLEL:

File diff suppressed because it is too large
+ 261 - 757
packages/fcl-passrc/Makefile


+ 59 - 9
packages/fcl-passrc/Makefile.fpc

@@ -1,18 +1,13 @@
 #
-#   Makefile.fpc for FCL Pascal source file parsing and writing units
+#   Makefile.fpc for running fpmake
 #
 
 [package]
 name=fcl-passrc
 version=2.7.1
 
-[target]
-units=pastree pscanner pparser paswrite
-rsts=pscanner pparser pastree
-
-[compiler]
-options=-S2h
-sourcedir=src
+[require]
+packages=rtl fpmkunit
 
 [install]
 fpcpackage=y
@@ -20,5 +15,60 @@ fpcpackage=y
 [default]
 fpcdir=../..
 
+[prerules]
+FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT))
+ifdef OS_TARGET
+FPC_TARGETOPT+=--os=$(OS_TARGET)
+endif
+ifdef CPU_TARGET
+FPC_TARGETOPT+=--cpu=$(CPU_TARGET)
+endif
+LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT)
+
 [rules]
-.NOTPARALLEL:
+fpmake: fpmake.pp
+	$(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR))
+all:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+smart:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -XX -o -CX
+release:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -dRELEASE
+debug:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -dDEBUG
+# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will
+# most often fail because the dependencies are cleared.
+# In case of a clean, simply do nothing
+ifeq ($(FPMAKE_BIN_CLEAN),)
+clean:	
+else
+clean:	
+	$(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+endif
+# In case of a distclean, perform an 'old'-style distclean. This to avoid problems
+# when the package is compiled using fpcmake prior to running this clean using fpmake
+ifeq ($(FPMAKE_BIN_CLEAN),)
+distclean:	$(addsuffix _distclean,$(TARGET_DIRS)) fpc_distclean
+else
+distclean:	
+ifdef inUnix
+        { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi;  }
+else
+        $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+endif
+	-$(DEL) $(LOCALFPMAKE)
+endif
+install:	fpmake
+ifdef UNIXHier
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX)
+else
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR)
+endif
+# distinstall also installs the example-sources
+distinstall:	fpmake
+ifdef UNIXHier
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) -ie
+else
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) -ie
+endif
+

+ 24 - 0
packages/fcl-passrc/Makefile.fpc.fpcmake

@@ -0,0 +1,24 @@
+#
+#   Makefile.fpc for FCL Pascal source file parsing and writing units
+#
+
+[package]
+name=fcl-passrc
+version=2.7.1
+
+[target]
+units=pastree pscanner pparser paswrite
+rsts=pscanner pparser pastree
+
+[compiler]
+options=-S2h
+sourcedir=src
+
+[install]
+fpcpackage=y
+
+[default]
+fpcdir=../..
+
+[rules]
+.NOTPARALLEL:

File diff suppressed because it is too large
+ 260 - 750
packages/fcl-registry/Makefile


+ 58 - 10
packages/fcl-registry/Makefile.fpc

@@ -1,20 +1,13 @@
 #
-#   Makefile.fpc for Registry for FCL
+#   Makefile.fpc for running fpmake
 #
 
 [package]
 name=fcl-registry
 version=2.7.1
 
-[target]
-units=xmlreg registry
-
 [require]
-packages=fcl-xml
-
-[compiler]
-options=-S2h
-sourcedir=src
+packages=rtl fpmkunit
 
 [install]
 fpcpackage=y
@@ -22,5 +15,60 @@ fpcpackage=y
 [default]
 fpcdir=../..
 
+[prerules]
+FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT))
+ifdef OS_TARGET
+FPC_TARGETOPT+=--os=$(OS_TARGET)
+endif
+ifdef CPU_TARGET
+FPC_TARGETOPT+=--cpu=$(CPU_TARGET)
+endif
+LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT)
+
 [rules]
-.NOTPARALLEL:
+fpmake: fpmake.pp
+	$(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR))
+all:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+smart:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -XX -o -CX
+release:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -dRELEASE
+debug:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -dDEBUG
+# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will
+# most often fail because the dependencies are cleared.
+# In case of a clean, simply do nothing
+ifeq ($(FPMAKE_BIN_CLEAN),)
+clean:	
+else
+clean:	
+	$(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+endif
+# In case of a distclean, perform an 'old'-style distclean. This to avoid problems
+# when the package is compiled using fpcmake prior to running this clean using fpmake
+ifeq ($(FPMAKE_BIN_CLEAN),)
+distclean:	$(addsuffix _distclean,$(TARGET_DIRS)) fpc_distclean
+else
+distclean:	
+ifdef inUnix
+        { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi;  }
+else
+        $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+endif
+	-$(DEL) $(LOCALFPMAKE)
+endif
+install:	fpmake
+ifdef UNIXHier
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX)
+else
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR)
+endif
+# distinstall also installs the example-sources
+distinstall:	fpmake
+ifdef UNIXHier
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) -ie
+else
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) -ie
+endif
+

+ 26 - 0
packages/fcl-registry/Makefile.fpc.fpcmake

@@ -0,0 +1,26 @@
+#
+#   Makefile.fpc for Registry for FCL
+#
+
+[package]
+name=fcl-registry
+version=2.7.1
+
+[target]
+units=xmlreg registry
+
+[require]
+packages=fcl-xml
+
+[compiler]
+options=-S2h
+sourcedir=src
+
+[install]
+fpcpackage=y
+
+[default]
+fpcdir=../..
+
+[rules]
+.NOTPARALLEL:

File diff suppressed because it is too large
+ 261 - 757
packages/fcl-res/Makefile


+ 59 - 16
packages/fcl-res/Makefile.fpc

@@ -1,25 +1,13 @@
 #
-#   Makefile.fpc for FCL Pascal source file parsing and writing units
+#   Makefile.fpc for running fpmake
 #
 
 [package]
 name=fcl-res
 version=2.7.1
 
-[target]
-units=acceleratorsresource bitmapresource coffconsts coffreader cofftypes \
-      coffwriter dfmreader elfconsts elfreader elftypes elfwriter externalreader \
-      externaltypes externalwriter fpcrestypes groupcursorresource groupiconresource \
-      groupresource icocurtypes machoconsts machoreader machotypes machowriter \
-      resdatastream resfactory resmerger resource resourcetree resreader reswriter \
-      stringtableresource strtable tlbreader versionconsts versionresource versiontypes \
-      winpeimagereader
-rsts=versiontypes stringtableresource resource resfactory
-
-
-[compiler]
-options=-S2h
-sourcedir=src
+[require]
+packages=rtl fpmkunit
 
 [install]
 fpcpackage=y
@@ -27,5 +15,60 @@ fpcpackage=y
 [default]
 fpcdir=../..
 
+[prerules]
+FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT))
+ifdef OS_TARGET
+FPC_TARGETOPT+=--os=$(OS_TARGET)
+endif
+ifdef CPU_TARGET
+FPC_TARGETOPT+=--cpu=$(CPU_TARGET)
+endif
+LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT)
+
 [rules]
-.NOTPARALLEL:
+fpmake: fpmake.pp
+	$(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR))
+all:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+smart:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -XX -o -CX
+release:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -dRELEASE
+debug:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o -dDEBUG
+# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will
+# most often fail because the dependencies are cleared.
+# In case of a clean, simply do nothing
+ifeq ($(FPMAKE_BIN_CLEAN),)
+clean:	
+else
+clean:	
+	$(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+endif
+# In case of a distclean, perform an 'old'-style distclean. This to avoid problems
+# when the package is compiled using fpcmake prior to running this clean using fpmake
+ifeq ($(FPMAKE_BIN_CLEAN),)
+distclean:	$(addsuffix _distclean,$(TARGET_DIRS)) fpc_distclean
+else
+distclean:	
+ifdef inUnix
+        { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi;  }
+else
+        $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+endif
+	-$(DEL) $(LOCALFPMAKE)
+endif
+install:	fpmake
+ifdef UNIXHier
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX)
+else
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR)
+endif
+# distinstall also installs the example-sources
+distinstall:	fpmake
+ifdef UNIXHier
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) -ie
+else
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) -ie
+endif
+

+ 31 - 0
packages/fcl-res/Makefile.fpc.fpcmake

@@ -0,0 +1,31 @@
+#
+#   Makefile.fpc for FCL Pascal source file parsing and writing units
+#
+
+[package]
+name=fcl-res
+version=2.7.1
+
+[target]
+units=acceleratorsresource bitmapresource coffconsts coffreader cofftypes \
+      coffwriter dfmreader elfconsts elfreader elftypes elfwriter externalreader \
+      externaltypes externalwriter fpcrestypes groupcursorresource groupiconresource \
+      groupresource icocurtypes machoconsts machoreader machotypes machowriter \
+      resdatastream resfactory resmerger resource resourcetree resreader reswriter \
+      stringtableresource strtable tlbreader versionconsts versionresource versiontypes \
+      winpeimagereader
+rsts=versiontypes stringtableresource resource resfactory
+
+
+[compiler]
+options=-S2h
+sourcedir=src
+
+[install]
+fpcpackage=y
+
+[default]
+fpcdir=../..
+
+[rules]
+.NOTPARALLEL:

Some files were not shown because too many files changed in this diff