Browse Source

* move fcl sources to separate packages

git-svn-id: trunk@6655 -
peter 18 years ago
parent
commit
5b8dd4c004
100 changed files with 789 additions and 10231 deletions
  1. 522 547
      .gitattributes
  2. 266 287
      .gitignore
  3. 0 504
      fcl/COPYING
  4. 0 25
      fcl/COPYING.FPC
  5. 0 30
      fcl/dbtests/dbtestframework.pas
  6. 0 2340
      fcl/shedit/Makefile
  7. 0 22
      fcl/shedit/Makefile.fpc
  8. 0 130
      fcl/shedit/README
  9. 0 18
      fcl/shedit/classes.txt
  10. 0 407
      fcl/shedit/doc_text.pp
  11. 0 258
      fcl/shedit/drawing.inc
  12. 0 9
      fcl/shedit/fpmake.inc
  13. 0 2996
      fcl/shedit/gtk/Makefile
  14. 0 20
      fcl/shedit/gtk/Makefile.fpc
  15. 0 109
      fcl/shedit/gtk/gtkdemo.pp
  16. 0 586
      fcl/shedit/gtk/gtkshedit.pp
  17. 0 490
      fcl/shedit/keys.inc
  18. 0 322
      fcl/shedit/sh_pas.pp
  19. 0 240
      fcl/shedit/sh_xml.pp
  20. 0 553
      fcl/shedit/shedit.pp
  21. 0 135
      fcl/shedit/undo.inc
  22. 0 36
      fcl/template/classes.pp
  23. 0 0
      fcl/template/footer
  24. 0 13
      fcl/template/header
  25. 0 21
      fcl/template/template.pp
  26. 0 94
      fcl/template/thread.inc
  27. 0 8
      fcl/tests/simple.xml
  28. 0 20
      fcl/xml/fpmake.pp
  29. 0 0
      packages/fcl-base/Makefile
  30. 1 11
      packages/fcl-base/Makefile.fpc
  31. 0 0
      packages/fcl-base/fpmake.pp
  32. 0 0
      packages/fcl-base/src/amiga/classes.pp
  33. 0 0
      packages/fcl-base/src/amiga/eventlog.inc
  34. 0 0
      packages/fcl-base/src/amiga/pipes.inc
  35. 0 0
      packages/fcl-base/src/amiga/thread.inc
  36. 0 0
      packages/fcl-base/src/beos/classes.pp
  37. 0 0
      packages/fcl-base/src/beos/eventlog.inc
  38. 0 0
      packages/fcl-base/src/beos/pipes.inc
  39. 0 0
      packages/fcl-base/src/beos/thread.inc
  40. 0 0
      packages/fcl-base/src/go32v2/custapp.inc
  41. 0 0
      packages/fcl-base/src/go32v2/eventlog.inc
  42. 0 0
      packages/fcl-base/src/go32v2/pipes.inc
  43. 0 0
      packages/fcl-base/src/inc/DUnitCompatibleInterface.inc
  44. 0 0
      packages/fcl-base/src/inc/avl_tree.pp
  45. 0 0
      packages/fcl-base/src/inc/base64.pp
  46. 0 0
      packages/fcl-base/src/inc/blowfish.pp
  47. 0 0
      packages/fcl-base/src/inc/bufstream.pp
  48. 0 0
      packages/fcl-base/src/inc/cachecls.pp
  49. 0 0
      packages/fcl-base/src/inc/cgiapp.pp
  50. 0 0
      packages/fcl-base/src/inc/contnrs.pp
  51. 0 0
      packages/fcl-base/src/inc/custapp.pp
  52. 0 0
      packages/fcl-base/src/inc/daemonapp.pp
  53. 0 0
      packages/fcl-base/src/inc/dbugintf.pp
  54. 0 0
      packages/fcl-base/src/inc/dbugmsg.pp
  55. 0 0
      packages/fcl-base/src/inc/eventlog.pp
  56. 0 0
      packages/fcl-base/src/inc/ezcgi.pp
  57. 0 0
      packages/fcl-base/src/inc/felog.inc
  58. 0 0
      packages/fcl-base/src/inc/fpasync.pp
  59. 0 0
      packages/fcl-base/src/inc/fpcunit.pp
  60. 0 0
      packages/fcl-base/src/inc/fpmake.inc
  61. 0 0
      packages/fcl-base/src/inc/fpmake.pp
  62. 0 0
      packages/fcl-base/src/inc/gettext.pp
  63. 0 0
      packages/fcl-base/src/inc/htmldefs.pp
  64. 0 0
      packages/fcl-base/src/inc/idea.pp
  65. 0 0
      packages/fcl-base/src/inc/inicol.pp
  66. 0 0
      packages/fcl-base/src/inc/inifiles.pp
  67. 0 0
      packages/fcl-base/src/inc/iostream.pp
  68. 0 0
      packages/fcl-base/src/inc/libtar.pas
  69. 0 0
      packages/fcl-base/src/inc/pipes.pp
  70. 0 0
      packages/fcl-base/src/inc/pooledmm.pp
  71. 0 0
      packages/fcl-base/src/inc/process.pp
  72. 0 0
      packages/fcl-base/src/inc/process.txt
  73. 0 0
      packages/fcl-base/src/inc/regdef.inc
  74. 0 0
      packages/fcl-base/src/inc/regini.inc
  75. 0 0
      packages/fcl-base/src/inc/registry.pp
  76. 0 0
      packages/fcl-base/src/inc/resolve.pp
  77. 0 0
      packages/fcl-base/src/inc/rtfdata.inc
  78. 0 0
      packages/fcl-base/src/inc/rtfpars.pp
  79. 0 0
      packages/fcl-base/src/inc/rttiutils.pp
  80. 0 0
      packages/fcl-base/src/inc/simpleipc.pp
  81. 0 0
      packages/fcl-base/src/inc/ssockets.pp
  82. 0 0
      packages/fcl-base/src/inc/streamcoll.pp
  83. 0 0
      packages/fcl-base/src/inc/streamex.pp
  84. 0 0
      packages/fcl-base/src/inc/streamio.pp
  85. 0 0
      packages/fcl-base/src/inc/syncobjs.pp
  86. 0 0
      packages/fcl-base/src/inc/testutils.pp
  87. 0 0
      packages/fcl-base/src/inc/wformat.pp
  88. 0 0
      packages/fcl-base/src/inc/whtml.pp
  89. 0 0
      packages/fcl-base/src/inc/wtex.pp
  90. 0 0
      packages/fcl-base/src/inc/xmlreg.pp
  91. 0 0
      packages/fcl-base/src/inc/xregreg.inc
  92. 0 0
      packages/fcl-base/src/inc/zipper.pp
  93. 0 0
      packages/fcl-base/src/inc/zstream.pp
  94. 0 0
      packages/fcl-base/src/morphos/eventlog.inc
  95. 0 0
      packages/fcl-base/src/morphos/pipes.inc
  96. 0 0
      packages/fcl-base/src/netware/custapp.inc
  97. 0 0
      packages/fcl-base/src/netware/eventlog.inc
  98. 0 0
      packages/fcl-base/src/netware/pipes.inc
  99. 0 0
      packages/fcl-base/src/netware/resolve.inc
  100. 0 0
      packages/fcl-base/src/netwlibc/custapp.inc

+ 522 - 547
.gitattributes

@@ -590,553 +590,6 @@ compiler/x86_64/x8664nop.inc svneol=native#text/plain
 compiler/x86_64/x8664op.inc svneol=native#text/plain
 compiler/x86_64/x8664op.inc svneol=native#text/plain
 compiler/x86_64/x8664pro.inc svneol=native#text/plain
 compiler/x86_64/x8664pro.inc svneol=native#text/plain
 compiler/x86_64/x8664tab.inc svneol=native#text/plain
 compiler/x86_64/x8664tab.inc svneol=native#text/plain
-fcl/COPYING -text
-fcl/COPYING.FPC -text
-fcl/Makefile svneol=native#text/plain
-fcl/Makefile.fpc svneol=native#text/plain
-fcl/amiga/classes.pp svneol=native#text/plain
-fcl/amiga/eventlog.inc svneol=native#text/plain
-fcl/amiga/pipes.inc svneol=native#text/plain
-fcl/amiga/thread.inc svneol=native#text/plain
-fcl/beos/classes.pp svneol=native#text/plain
-fcl/beos/eventlog.inc svneol=native#text/plain
-fcl/beos/pipes.inc svneol=native#text/plain
-fcl/beos/thread.inc svneol=native#text/plain
-fcl/db/Dataset.txt svneol=native#text/plain
-fcl/db/Makefile svneol=native#text/plain
-fcl/db/Makefile.fpc svneol=native#text/plain
-fcl/db/README -text
-fcl/db/bufdataset.pas svneol=native#text/plain
-fcl/db/bufdataset_parser.pp svneol=native#text/plain
-fcl/db/database.inc svneol=native#text/plain
-fcl/db/dataset.inc svneol=native#text/plain
-fcl/db/datasource.inc svneol=native#text/plain
-fcl/db/db.pas svneol=native#text/plain
-fcl/db/dbase/Makefile svneol=native#text/plain
-fcl/db/dbase/Makefile.fpc svneol=native#text/plain
-fcl/db/dbase/dbf.pas svneol=native#text/plain
-fcl/db/dbase/dbf_avl.pas svneol=native#text/plain
-fcl/db/dbase/dbf_collate.pas svneol=native#text/plain
-fcl/db/dbase/dbf_common.inc svneol=native#text/plain
-fcl/db/dbase/dbf_common.pas svneol=native#text/plain
-fcl/db/dbase/dbf_cursor.pas svneol=native#text/plain
-fcl/db/dbase/dbf_dbffile.pas svneol=native#text/plain
-fcl/db/dbase/dbf_fields.pas svneol=native#text/plain
-fcl/db/dbase/dbf_idxcur.pas svneol=native#text/plain
-fcl/db/dbase/dbf_idxfile.pas svneol=native#text/plain
-fcl/db/dbase/dbf_lang.pas svneol=native#text/plain
-fcl/db/dbase/dbf_memo.pas svneol=native#text/plain
-fcl/db/dbase/dbf_parser.pas svneol=native#text/plain
-fcl/db/dbase/dbf_pgcfile.pas svneol=native#text/plain
-fcl/db/dbase/dbf_pgfile.pas svneol=native#text/plain
-fcl/db/dbase/dbf_prscore.pas svneol=native#text/plain
-fcl/db/dbase/dbf_prsdef.pas svneol=native#text/plain
-fcl/db/dbase/dbf_prssupp.pas svneol=native#text/plain
-fcl/db/dbase/dbf_reg.pas svneol=native#text/plain
-fcl/db/dbase/dbf_str.inc svneol=native#text/plain
-fcl/db/dbase/dbf_str.pas svneol=native#text/plain
-fcl/db/dbase/dbf_str_es.pas svneol=native#text/plain
-fcl/db/dbase/dbf_str_fr.pas svneol=native#text/plain
-fcl/db/dbase/dbf_str_ita.pas svneol=native#text/plain
-fcl/db/dbase/dbf_str_nl.pas svneol=native#text/plain
-fcl/db/dbase/dbf_str_pl.pas svneol=native#text/plain
-fcl/db/dbase/dbf_str_pt.pas svneol=native#text/plain
-fcl/db/dbase/dbf_str_ru.pas svneol=native#text/plain
-fcl/db/dbase/dbf_struct.inc svneol=native#text/plain
-fcl/db/dbase/dbf_wtil.pas svneol=native#text/plain
-fcl/db/dbase/fpmake.inc svneol=native#text/plain
-fcl/db/dbase/fpmake.pp svneol=native#text/plain
-fcl/db/dbase/getstrfromint.inc svneol=native#text/plain
-fcl/db/dbase/history.txt svneol=native#text/plain
-fcl/db/dbase/package.txt svneol=native#text/plain
-fcl/db/dbase/readme.txt svneol=native#text/plain
-fcl/db/dbase/tdbf_l.pas svneol=native#text/plain
-fcl/db/dbase/testdbf.pp svneol=native#text/plain
-fcl/db/dbconst.pas svneol=native#text/plain
-fcl/db/dbwhtml.pp svneol=native#text/plain
-fcl/db/dsparams.inc svneol=native#text/plain
-fcl/db/fields.inc svneol=native#text/plain
-fcl/db/fpmake.inc svneol=native#text/plain
-fcl/db/fpmake.pp svneol=native#text/plain
-fcl/db/memds/Makefile svneol=native#text/plain
-fcl/db/memds/Makefile.fpc svneol=native#text/plain
-fcl/db/memds/README -text
-fcl/db/memds/fpmake.inc svneol=native#text/plain
-fcl/db/memds/fpmake.pp svneol=native#text/plain
-fcl/db/memds/memds.pp svneol=native#text/plain
-fcl/db/memds/testcp.pp svneol=native#text/plain
-fcl/db/memds/testld.pp svneol=native#text/plain
-fcl/db/memds/testopen.pp svneol=native#text/plain
-fcl/db/memds/testpop.pp svneol=native#text/plain
-fcl/db/sdf/Makefile svneol=native#text/plain
-fcl/db/sdf/Makefile.fpc svneol=native#text/plain
-fcl/db/sdf/fpc.ssx -text
-fcl/db/sdf/fpc.ssy -text
-fcl/db/sdf/fpmake.inc svneol=native#text/plain
-fcl/db/sdf/fpmake.pp svneol=native#text/plain
-fcl/db/sdf/sdfdata.pp svneol=native#text/plain
-fcl/db/sdf/testfix.pp svneol=native#text/plain
-fcl/db/sdf/testsdf.pp svneol=native#text/plain
-fcl/db/sqldb/Makefile svneol=native#text/plain
-fcl/db/sqldb/Makefile.fpc svneol=native#text/plain
-fcl/db/sqldb/examples/alisttables.pp svneol=native#text/plain
-fcl/db/sqldb/examples/bcreatetable.pp svneol=native#text/plain
-fcl/db/sqldb/examples/cfilltable.pp svneol=native#text/plain
-fcl/db/sqldb/examples/database.ini svneol=native#text/plain
-fcl/db/sqldb/examples/dshowtable.pp svneol=native#text/plain
-fcl/db/sqldb/examples/efilltableparams.pp svneol=native#text/plain
-fcl/db/sqldb/examples/fedittable.pp svneol=native#text/plain
-fcl/db/sqldb/examples/gfiltertable.pp svneol=native#text/plain
-fcl/db/sqldb/examples/sqldbexampleunit.pp svneol=native#text/plain
-fcl/db/sqldb/fpmake.inc svneol=native#text/plain
-fcl/db/sqldb/fpmake.pp svneol=native#text/plain
-fcl/db/sqldb/interbase/Makefile svneol=native#text/plain
-fcl/db/sqldb/interbase/Makefile.fpc svneol=native#text/plain
-fcl/db/sqldb/interbase/fpmake.inc svneol=native#text/plain
-fcl/db/sqldb/interbase/fpmake.pp svneol=native#text/plain
-fcl/db/sqldb/interbase/ibconnection.pp svneol=native#text/plain
-fcl/db/sqldb/mysql/Makefile svneol=native#text/plain
-fcl/db/sqldb/mysql/Makefile.fpc svneol=native#text/plain
-fcl/db/sqldb/mysql/fpmake.inc svneol=native#text/plain
-fcl/db/sqldb/mysql/fpmake.pp svneol=native#text/plain
-fcl/db/sqldb/mysql/mysql40conn.pas svneol=native#text/plain
-fcl/db/sqldb/mysql/mysql41conn.pas svneol=native#text/plain
-fcl/db/sqldb/mysql/mysql4conn.pas svneol=native#text/plain
-fcl/db/sqldb/mysql/mysql50conn.pas svneol=native#text/plain
-fcl/db/sqldb/mysql/mysqlconn.inc svneol=native#text/plain
-fcl/db/sqldb/odbc/Makefile svneol=native#text/plain
-fcl/db/sqldb/odbc/Makefile.fpc svneol=native#text/plain
-fcl/db/sqldb/odbc/odbcconn.pas svneol=native#text/plain
-fcl/db/sqldb/oracle/Makefile -text
-fcl/db/sqldb/oracle/Makefile.fpc -text
-fcl/db/sqldb/oracle/oracleconnection.pp -text
-fcl/db/sqldb/postgres/Makefile svneol=native#text/plain
-fcl/db/sqldb/postgres/Makefile.fpc svneol=native#text/plain
-fcl/db/sqldb/postgres/fpmake.inc svneol=native#text/plain
-fcl/db/sqldb/postgres/fpmake.pp svneol=native#text/plain
-fcl/db/sqldb/postgres/pqconnection.pp svneol=native#text/plain
-fcl/db/sqldb/sqldb.pp svneol=native#text/plain
-fcl/db/sqldb/testsqldb.pp svneol=native#text/plain
-fcl/db/sqlite/Makefile svneol=native#text/plain
-fcl/db/sqlite/Makefile.fpc svneol=native#text/plain
-fcl/db/sqlite/browseds.pas svneol=native#text/plain
-fcl/db/sqlite/concurrencyds.pas svneol=native#text/plain
-fcl/db/sqlite/createds.pas svneol=native#text/plain
-fcl/db/sqlite/customsqliteds.pas svneol=native#text/plain
-fcl/db/sqlite/fillds.pas svneol=native#text/plain
-fcl/db/sqlite/fpmake.inc svneol=native#text/plain
-fcl/db/sqlite/fpmake.pp svneol=native#text/plain
-fcl/db/sqlite/sqlite3ds.pas svneol=native#text/plain
-fcl/db/sqlite/sqliteds.pas svneol=native#text/plain
-fcl/db/sqlite/testds.pas svneol=native#text/plain
-fcl/db/unmaintained/Makefile -text
-fcl/db/unmaintained/Makefile.fpc -text
-fcl/db/unmaintained/README -text
-fcl/db/unmaintained/ddg/Makefile svneol=native#text/plain
-fcl/db/unmaintained/ddg/Makefile.fpc svneol=native#text/plain
-fcl/db/unmaintained/ddg/createds.pp svneol=native#text/plain
-fcl/db/unmaintained/ddg/ddg_ds.pp svneol=native#text/plain
-fcl/db/unmaintained/ddg/ddg_rec.pp svneol=native#text/plain
-fcl/db/unmaintained/ddg/fpmake.pp svneol=native#text/plain
-fcl/db/unmaintained/ddg/testds.pp svneol=native#text/plain
-fcl/db/unmaintained/ddg/tested.pp svneol=native#text/plain
-fcl/db/unmaintained/interbase/BUGS.known -text
-fcl/db/unmaintained/interbase/Makefile svneol=native#text/plain
-fcl/db/unmaintained/interbase/Makefile.fpc svneol=native#text/plain
-fcl/db/unmaintained/interbase/README -text
-fcl/db/unmaintained/interbase/fpmake.inc svneol=native#text/plain
-fcl/db/unmaintained/interbase/fpmake.pp svneol=native#text/plain
-fcl/db/unmaintained/interbase/interbase.pp svneol=native#text/plain
-fcl/db/unmaintained/interbase/mkdb -text
-fcl/db/unmaintained/interbase/testib.pp svneol=native#text/plain
-fcl/db/unmaintained/mysql/Makefile svneol=native#text/plain
-fcl/db/unmaintained/mysql/Makefile.fpc svneol=native#text/plain
-fcl/db/unmaintained/mysql/fpmake.inc svneol=native#text/plain
-fcl/db/unmaintained/mysql/fpmake.pp svneol=native#text/plain
-fcl/db/unmaintained/mysql/mtest.pp svneol=native#text/plain
-fcl/db/unmaintained/mysql/mysqldb3.pp svneol=native#text/plain
-fcl/db/unmaintained/mysql/mysqldb4.pp svneol=native#text/plain
-fcl/db/unmaintained/odbc/Makefile svneol=native#text/plain
-fcl/db/unmaintained/odbc/Makefile.fpc svneol=native#text/plain
-fcl/db/unmaintained/odbc/README -text
-fcl/db/unmaintained/odbc/fpmake.pp svneol=native#text/plain
-fcl/db/unmaintained/odbc/fpodbc.pp svneol=native#text/plain
-fcl/db/unmaintained/odbc/testbcon.pp svneol=native#text/plain
-fcl/db/unmaintained/odbc/testcon.pp svneol=native#text/plain
-fcl/db/unmaintained/odbc/testdrcon.pp svneol=native#text/plain
-fcl/db/unmaintained/odbc/testenv.pp svneol=native#text/plain
-fcl/db/unmaintained/odbc/testfl.pp svneol=native#text/plain
-fcl/db/unmaintained/odbc/testodbc.mdb -text
-fcl/db/unmaintained/odbc/testpa.pp svneol=native#text/plain
-fcl/db/unmaintained/odbc/testpk.pp svneol=native#text/plain
-fcl/db/unmaintained/odbc/testpr.pp svneol=native#text/plain
-fcl/db/unmaintained/odbc/testsql.pp svneol=native#text/plain
-fcl/db/unmaintained/odbc/testst.pp svneol=native#text/plain
-fcl/db/unmaintained/odbc/testtl.pp svneol=native#text/plain
-fcl/db/unmaintained/sqlite/Makefile -text
-fcl/db/unmaintained/sqlite/Makefile.fpc -text
-fcl/db/unmaintained/sqlite/sqlitedataset.pas svneol=native#text/plain
-fcl/dbtests/Makefile -text
-fcl/dbtests/Makefile.fpc -text
-fcl/dbtests/README.txt svneol=native#text/plain
-fcl/dbtests/database.ini -text
-fcl/dbtests/dbftoolsunit.pas -text
-fcl/dbtests/dbtestframework.pas -text
-fcl/dbtests/memdstoolsunit.pas svneol=native#text/plain
-fcl/dbtests/sqldbtoolsunit.pas -text
-fcl/dbtests/testbasics.pas svneol=native#text/plain
-fcl/dbtests/testdbbasics.pas -text
-fcl/dbtests/testsqlfieldtypes.pas -text
-fcl/dbtests/toolsunit.pas -text
-fcl/fpcunit/Makefile svneol=native#text/plain
-fcl/fpcunit/Makefile.fpc svneol=native#text/plain
-fcl/fpcunit/README.txt svneol=native#text/plain
-fcl/fpcunit/demo/consolerunner/suiteconfig.pp svneol=native#text/plain
-fcl/fpcunit/demo/consolerunner/testrunner.pp svneol=native#text/plain
-fcl/fpcunit/example_output/results.pdf -text
-fcl/fpcunit/example_output/results.txt svneol=native#text/plain
-fcl/fpcunit/example_xsl/fpcunit.css svneol=native#text/plain
-fcl/fpcunit/example_xsl/fpcunit.xsl svneol=native#text/plain
-fcl/fpcunit/example_xsl/readme.txt svneol=native#text/plain
-fcl/fpcunit/exampletests/Makefile svneol=native#text/plain
-fcl/fpcunit/exampletests/Makefile.fpc svneol=native#text/plain
-fcl/fpcunit/exampletests/fpcunittests.pp svneol=native#text/plain
-fcl/fpcunit/exampletests/money.pp svneol=native#text/plain
-fcl/fpcunit/exampletests/moneytest.pp svneol=native#text/plain
-fcl/fpcunit/exampletests/testmockobject.pp svneol=native#text/plain
-fcl/fpcunit/fpcunitreport.pp svneol=native#text/plain
-fcl/fpcunit/fpmake.inc svneol=native#text/plain
-fcl/fpcunit/fpmake.pp svneol=native#text/plain
-fcl/fpcunit/latextestreport.pp svneol=native#text/plain
-fcl/fpcunit/plaintestreport.pp svneol=native#text/plain
-fcl/fpcunit/testdecorator.pp svneol=native#text/plain
-fcl/fpcunit/testregistry.pp svneol=native#text/plain
-fcl/fpcunit/testreport.pp svneol=native#text/plain
-fcl/fpcunit/tests/Makefile svneol=native#text/plain
-fcl/fpcunit/tests/Makefile.fpc svneol=native#text/plain
-fcl/fpcunit/tests/asserttest.pp svneol=native#text/plain
-fcl/fpcunit/tests/frameworktest.pp svneol=native#text/plain
-fcl/fpcunit/tests/suitetest.pp svneol=native#text/plain
-fcl/fpcunit/ubmockobject.pp svneol=native#text/plain
-fcl/fpcunit/xmlreporter.pas svneol=native#text/plain
-fcl/fpcunit/xmltestreport.pp svneol=native#text/plain
-fcl/fpmake.pp svneol=native#text/plain
-fcl/go32v2/custapp.inc svneol=native#text/plain
-fcl/go32v2/eventlog.inc svneol=native#text/plain
-fcl/go32v2/pipes.inc svneol=native#text/plain
-fcl/image/Makefile svneol=native#text/plain
-fcl/image/Makefile.fpc svneol=native#text/plain
-fcl/image/bmpcomn.pp svneol=native#text/plain
-fcl/image/clipping.pp svneol=native#text/plain
-fcl/image/drawing.pp svneol=native#text/plain
-fcl/image/ellipses.pp svneol=native#text/plain
-fcl/image/extinterpolation.pp svneol=native#text/plain
-fcl/image/fpbrush.inc svneol=native#text/plain
-fcl/image/fpcanvas.inc svneol=native#text/plain
-fcl/image/fpcanvas.pp svneol=native#text/plain
-fcl/image/fpcdrawh.inc svneol=native#text/plain
-fcl/image/fpcolcnv.inc svneol=native#text/plain
-fcl/image/fpcolhash.pas svneol=native#text/plain
-fcl/image/fpcolors.inc svneol=native#text/plain
-fcl/image/fpditherer.pas svneol=native#text/plain
-fcl/image/fpfont.inc svneol=native#text/plain
-fcl/image/fphandler.inc svneol=native#text/plain
-fcl/image/fphelper.inc svneol=native#text/plain
-fcl/image/fpimage.inc svneol=native#text/plain
-fcl/image/fpimage.pp svneol=native#text/plain
-fcl/image/fpimgcanv.pp svneol=native#text/plain
-fcl/image/fpimgcmn.pp svneol=native#text/plain
-fcl/image/fpinterpolation.inc svneol=native#text/plain
-fcl/image/fpmake.inc svneol=native#text/plain
-fcl/image/fpmake.pp svneol=native#text/plain
-fcl/image/fppalette.inc svneol=native#text/plain
-fcl/image/fppen.inc svneol=native#text/plain
-fcl/image/fppixlcanv.pp svneol=native#text/plain
-fcl/image/fpquantizer.pas svneol=native#text/plain
-fcl/image/fpreadbmp.pp svneol=native#text/plain
-fcl/image/fpreadjpeg.pas svneol=native#text/plain
-fcl/image/fpreadpng.pp svneol=native#text/plain
-fcl/image/fpreadpnm.pp svneol=native#text/plain
-fcl/image/fpreadtga.pp svneol=native#text/plain
-fcl/image/fpreadxpm.pp svneol=native#text/plain
-fcl/image/fpwritebmp.pp svneol=native#text/plain
-fcl/image/fpwritejpeg.pas svneol=native#text/plain
-fcl/image/fpwritepng.pp svneol=native#text/plain
-fcl/image/fpwritepnm.pp svneol=native#text/plain
-fcl/image/fpwritetga.pp svneol=native#text/plain
-fcl/image/fpwritexpm.pp svneol=native#text/plain
-fcl/image/freetype.pp svneol=native#text/plain
-fcl/image/freetypeh.pp svneol=native#text/plain
-fcl/image/ftfont.pp svneol=native#text/plain
-fcl/image/imgconv.pp svneol=native#text/plain
-fcl/image/pixtools.pp svneol=native#text/plain
-fcl/image/pngcomn.pp svneol=native#text/plain
-fcl/image/pscanvas.pp svneol=native#text/plain
-fcl/image/targacmn.pp svneol=native#text/plain
-fcl/inc/DUnitCompatibleInterface.inc svneol=native#text/plain
-fcl/inc/avl_tree.pp svneol=native#text/plain
-fcl/inc/base64.pp svneol=native#text/plain
-fcl/inc/blowfish.pp svneol=native#text/plain
-fcl/inc/bufstream.pp svneol=native#text/plain
-fcl/inc/cachecls.pp svneol=native#text/plain
-fcl/inc/cgiapp.pp svneol=native#text/plain
-fcl/inc/contnrs.pp svneol=native#text/plain
-fcl/inc/custapp.pp svneol=native#text/plain
-fcl/inc/daemonapp.pp svneol=native#text/plain
-fcl/inc/dbugintf.pp svneol=native#text/plain
-fcl/inc/dbugmsg.pp svneol=native#text/plain
-fcl/inc/eventlog.pp svneol=native#text/plain
-fcl/inc/ezcgi.pp svneol=native#text/plain
-fcl/inc/felog.inc svneol=native#text/plain
-fcl/inc/fpasync.pp svneol=native#text/plain
-fcl/inc/fpcunit.pp svneol=native#text/plain
-fcl/inc/fpmake.inc svneol=native#text/plain
-fcl/inc/fpmake.pp svneol=native#text/plain
-fcl/inc/gettext.pp svneol=native#text/plain
-fcl/inc/htmldefs.pp svneol=native#text/plain
-fcl/inc/idea.pp svneol=native#text/plain
-fcl/inc/inicol.pp svneol=native#text/plain
-fcl/inc/inifiles.pp svneol=native#text/plain
-fcl/inc/iostream.pp svneol=native#text/plain
-fcl/inc/libtar.pas svneol=native#text/plain
-fcl/inc/pipes.pp svneol=native#text/plain
-fcl/inc/pooledmm.pp svneol=native#text/plain
-fcl/inc/process.pp svneol=native#text/plain
-fcl/inc/process.txt svneol=native#text/plain
-fcl/inc/regdef.inc svneol=native#text/plain
-fcl/inc/regini.inc svneol=native#text/plain
-fcl/inc/registry.pp svneol=native#text/plain
-fcl/inc/resolve.pp svneol=native#text/plain
-fcl/inc/rtfdata.inc svneol=native#text/plain
-fcl/inc/rtfpars.pp svneol=native#text/plain
-fcl/inc/rttiutils.pp svneol=native#text/plain
-fcl/inc/simpleipc.pp svneol=native#text/plain
-fcl/inc/ssockets.pp svneol=native#text/plain
-fcl/inc/streamcoll.pp svneol=native#text/plain
-fcl/inc/streamex.pp svneol=native#text/plain
-fcl/inc/streamio.pp svneol=native#text/plain
-fcl/inc/syncobjs.pp svneol=native#text/plain
-fcl/inc/testutils.pp svneol=native#text/plain
-fcl/inc/wformat.pp svneol=native#text/plain
-fcl/inc/whtml.pp svneol=native#text/plain
-fcl/inc/wtex.pp svneol=native#text/plain
-fcl/inc/xmlreg.pp svneol=native#text/plain
-fcl/inc/xregreg.inc svneol=native#text/plain
-fcl/inc/zipper.pp svneol=native#text/plain
-fcl/inc/zstream.pp svneol=native#text/plain
-fcl/morphos/eventlog.inc svneol=native#text/plain
-fcl/morphos/pipes.inc svneol=native#text/plain
-fcl/net/Makefile svneol=native#text/plain
-fcl/net/Makefile.fpc svneol=native#text/plain
-fcl/net/fpmake.inc svneol=native#text/plain
-fcl/net/fpmake.pp svneol=native#text/plain
-fcl/net/fpsock.pp svneol=native#text/plain
-fcl/net/httpbase.pp svneol=native#text/plain
-fcl/net/httpclient.pp svneol=native#text/plain
-fcl/net/httpsvlt.pp svneol=native#text/plain
-fcl/net/mkxmlrpc.pp svneol=native#text/plain
-fcl/net/servlets.pp svneol=native#text/plain
-fcl/net/tests/Makefile svneol=native#text/plain
-fcl/net/tests/Makefile.fpc svneol=native#text/plain
-fcl/net/tests/readme.txt svneol=native#text/plain
-fcl/net/tests/rpccli.pp svneol=native#text/plain
-fcl/net/tests/rpcserv.pp svneol=native#text/plain
-fcl/net/tests/svrclass.pp svneol=native#text/plain
-fcl/net/tests/svrclass_xmlrpc.pp svneol=native#text/plain
-fcl/net/xmlrpc.pp svneol=native#text/plain
-fcl/netware/custapp.inc svneol=native#text/plain
-fcl/netware/eventlog.inc svneol=native#text/plain
-fcl/netware/pipes.inc svneol=native#text/plain
-fcl/netware/resolve.inc svneol=native#text/plain
-fcl/netwlibc/custapp.inc svneol=native#text/plain
-fcl/netwlibc/eventlog.inc svneol=native#text/plain
-fcl/netwlibc/pipes.inc svneol=native#text/plain
-fcl/netwlibc/resolve.inc svneol=native#text/plain
-fcl/os2/custapp.inc svneol=native#text/plain
-fcl/os2/eventlog.inc svneol=native#text/plain
-fcl/os2/pipes.inc svneol=native#text/plain
-fcl/os2/resolve.inc svneol=native#text/plain
-fcl/passrc/Makefile svneol=native#text/plain
-fcl/passrc/Makefile.fpc svneol=native#text/plain
-fcl/passrc/fpmake.inc svneol=native#text/plain
-fcl/passrc/fpmake.pp svneol=native#text/plain
-fcl/passrc/pastree.pp svneol=native#text/plain
-fcl/passrc/paswrite.pp svneol=native#text/plain
-fcl/passrc/pparser.pp svneol=native#text/plain
-fcl/passrc/pscanner.pp svneol=native#text/plain
-fcl/passrc/readme.txt svneol=native#text/plain
-fcl/qnx/classes.pp svneol=native#text/plain
-fcl/qnx/eventlog.inc svneol=native#text/plain
-fcl/shedit/Makefile svneol=native#text/plain
-fcl/shedit/Makefile.fpc svneol=native#text/plain
-fcl/shedit/README -text
-fcl/shedit/classes.txt svneol=native#text/plain
-fcl/shedit/doc_text.pp svneol=native#text/plain
-fcl/shedit/drawing.inc svneol=native#text/plain
-fcl/shedit/fpmake.inc svneol=native#text/plain
-fcl/shedit/fpmake.pp svneol=native#text/plain
-fcl/shedit/gtk/Makefile svneol=native#text/plain
-fcl/shedit/gtk/Makefile.fpc svneol=native#text/plain
-fcl/shedit/gtk/gtkdemo.pp svneol=native#text/plain
-fcl/shedit/gtk/gtkshedit.pp svneol=native#text/plain
-fcl/shedit/gtk/simple.xml -text
-fcl/shedit/keys.inc svneol=native#text/plain
-fcl/shedit/sh_pas.pp svneol=native#text/plain
-fcl/shedit/sh_xml.pp svneol=native#text/plain
-fcl/shedit/shedit.pp svneol=native#text/plain
-fcl/shedit/undo.inc svneol=native#text/plain
-fcl/template/classes.pp svneol=native#text/plain
-fcl/template/footer -text
-fcl/template/header -text
-fcl/template/template.pp svneol=native#text/plain
-fcl/template/thread.inc svneol=native#text/plain
-fcl/tests/Makefile svneol=native#text/plain
-fcl/tests/Makefile.fpc svneol=native#text/plain
-fcl/tests/README -text
-fcl/tests/asiotest.pp svneol=native#text/plain
-fcl/tests/b64.pp svneol=native#text/plain
-fcl/tests/b64dec.pp svneol=native#text/plain
-fcl/tests/b64enc.pp svneol=native#text/plain
-fcl/tests/b64test.pp svneol=native#text/plain
-fcl/tests/b64test2.pp svneol=native#text/plain
-fcl/tests/cachetest.pp svneol=native#text/plain
-fcl/tests/cfgtest.pp svneol=native#text/plain
-fcl/tests/daemon.pp svneol=native#text/plain
-fcl/tests/dbugsrv.pp svneol=native#text/plain
-fcl/tests/debugtest.pp svneol=native#text/plain
-fcl/tests/doecho.pp svneol=native#text/plain
-fcl/tests/dparser.pp svneol=native#text/plain
-fcl/tests/dsockcli.pp svneol=native#text/plain
-fcl/tests/dsocksvr.pp svneol=native#text/plain
-fcl/tests/fpdoc.dtd -text
-fcl/tests/fstream.pp svneol=native#text/plain
-fcl/tests/htdump.pp svneol=native#text/plain
-fcl/tests/intl/Makefile svneol=native#text/plain
-fcl/tests/intl/README svneol=native#text/plain
-fcl/tests/intl/restest.de.mo -text
-fcl/tests/intl/restest.de.po svneol=native#text/plain
-fcl/tests/intl/restest.fr.mo -text
-fcl/tests/intl/restest.fr.po svneol=native#text/plain
-fcl/tests/intl/restest.nl.mo -text
-fcl/tests/intl/restest.nl.po svneol=native#text/plain
-fcl/tests/intl/resttest.po svneol=native#text/plain
-fcl/tests/ipcclient.pp svneol=native#text/plain
-fcl/tests/ipcserver.pp svneol=native#text/plain
-fcl/tests/isockcli.pp svneol=native#text/plain
-fcl/tests/isocksvr.pp svneol=native#text/plain
-fcl/tests/istream.pp svneol=native#text/plain
-fcl/tests/kword.xml -text
-fcl/tests/list.pp svneol=native#text/plain
-fcl/tests/mstream.pp svneol=native#text/plain
-fcl/tests/overview.rtf -text svneol=unset#unset
-fcl/tests/parser.dat -text
-fcl/tests/poolmm1.pp svneol=native#text/plain
-fcl/tests/poolmm2.pp svneol=native#text/plain
-fcl/tests/restest.pp svneol=native#text/plain
-fcl/tests/showver.pp svneol=native#text/plain
-fcl/tests/showver.rc -text
-fcl/tests/showver.res -text
-fcl/tests/simple.xml -text
-fcl/tests/sockcli.pp svneol=native#text/plain
-fcl/tests/socksvr.pp svneol=native#text/plain
-fcl/tests/sstream.pp svneol=native#text/plain
-fcl/tests/stringl.pp svneol=native#text/plain
-fcl/tests/tarmakercons.pas svneol=native#text/plain
-fcl/tests/tarmakerconsgzip.pas svneol=native#text/plain
-fcl/tests/testapp.pp svneol=native#text/plain
-fcl/tests/testbf.pp svneol=native#text/plain
-fcl/tests/testbs.pp svneol=native#text/plain
-fcl/tests/testcgi.html -text
-fcl/tests/testcgi.pp svneol=native#text/plain
-fcl/tests/testcont.pp svneol=native#text/plain
-fcl/tests/testez.pp svneol=native#text/plain
-fcl/tests/testhres.pp svneol=native#text/plain
-fcl/tests/testnres.pp svneol=native#text/plain
-fcl/tests/testol.pp svneol=native#text/plain
-fcl/tests/testproc.pp svneol=native#text/plain
-fcl/tests/testreg.pp svneol=native#text/plain
-fcl/tests/testrhre.pp svneol=native#text/plain
-fcl/tests/testrnre.pp svneol=native#text/plain
-fcl/tests/testrsre.pp svneol=native#text/plain
-fcl/tests/testrtf.pp svneol=native#text/plain
-fcl/tests/testser.pp svneol=native#text/plain
-fcl/tests/testsres.pp svneol=native#text/plain
-fcl/tests/testunzip.pp svneol=native#text/plain
-fcl/tests/testur.pp svneol=native#text/plain
-fcl/tests/testweb.pp svneol=native#text/plain
-fcl/tests/testz.pp svneol=native#text/plain
-fcl/tests/testz2.pp svneol=native#text/plain
-fcl/tests/testzip.pp svneol=native#text/plain
-fcl/tests/threads.pp svneol=native#text/plain
-fcl/tests/tidea.pp svneol=native#text/plain
-fcl/tests/tstelcmd.pp svneol=native#text/plain
-fcl/tests/tstelgtk.pp svneol=native#text/plain
-fcl/tests/txmlreg.pp svneol=native#text/plain
-fcl/tests/xmldump.pp svneol=native#text/plain
-fcl/unix/asyncio.inc svneol=native#text/plain
-fcl/unix/asyncioh.inc svneol=native#text/plain
-fcl/unix/daemonapp.inc svneol=native#text/plain
-fcl/unix/eventlog.inc svneol=native#text/plain
-fcl/unix/pipes.inc svneol=native#text/plain
-fcl/unix/process.inc svneol=native#text/plain
-fcl/unix/resolve.inc svneol=native#text/plain
-fcl/unix/simpleipc.inc svneol=native#text/plain
-fcl/web/Makefile svneol=native#text/plain
-fcl/web/Makefile.fpc svneol=native#text/plain
-fcl/web/README svneol=native#text/plain
-fcl/web/custcgi.pp svneol=native#text/plain
-fcl/web/fpcgi.pp svneol=native#text/plain
-fcl/web/fpdatasetform.pp svneol=native#text/plain
-fcl/web/fphtml.pp svneol=native#text/plain
-fcl/web/fphttp.pp svneol=native#text/plain
-fcl/web/fptemplate.pp svneol=native#text/plain
-fcl/web/fpweb.pp svneol=native#text/plain
-fcl/web/htmlelements.pp svneol=native#text/plain
-fcl/web/htmlwriter.pp svneol=native#text/plain
-fcl/web/httpdefs.pp svneol=native#text/plain
-fcl/web/tagsimpl.inc svneol=native#text/plain
-fcl/web/tagsintf.inc svneol=native#text/plain
-fcl/web/websession.pp svneol=native#text/plain
-fcl/web/webutil.pp svneol=native#text/plain
-fcl/web/wtagsimpl.inc svneol=native#text/plain
-fcl/web/wtagsintf.inc svneol=native#text/plain
-fcl/win/ServiceManager.pas -text
-fcl/win/daemonapp.inc svneol=native#text/plain
-fcl/win/eventlog.inc svneol=native#text/plain
-fcl/win/fclel.mc -text
-fcl/win/fclel.rc -text
-fcl/win/fclel.res -text
-fcl/win/fileinfo.pp svneol=native#text/plain
-fcl/win/httpapp.pp svneol=native#text/plain
-fcl/win/pipes.inc svneol=native#text/plain
-fcl/win/process.inc svneol=native#text/plain
-fcl/win/resolve.inc svneol=native#text/plain
-fcl/win/simpleipc.inc svneol=native#text/plain
-fcl/win/winreg.inc svneol=native#text/plain
-fcl/wince/eventlog.inc svneol=native#text/plain
-fcl/wince/fileinfo.pp svneol=native#text/plain
-fcl/wince/pipes.inc svneol=native#text/plain
-fcl/wince/process.inc svneol=native#text/plain
-fcl/wince/resolve.inc svneol=native#text/plain
-fcl/wince/simpleipc.inc svneol=native#text/plain
-fcl/xml/Makefile svneol=native#text/plain
-fcl/xml/Makefile.fpc svneol=native#text/plain
-fcl/xml/README -text
-fcl/xml/dom.pp svneol=native#text/plain
-fcl/xml/dom_html.pp svneol=native#text/plain
-fcl/xml/fpmake.inc svneol=native#text/plain
-fcl/xml/fpmake.pp svneol=native#text/plain
-fcl/xml/htmwrite.pp svneol=native#text/plain
-fcl/xml/names.inc svneol=native#text/plain
-fcl/xml/sax.pp svneol=native#text/plain
-fcl/xml/sax_html.pp svneol=native#text/plain
-fcl/xml/sax_xml.pp svneol=native#text/plain
-fcl/xml/xhtml.pp svneol=native#text/plain
-fcl/xml/xmlcfg.pp svneol=native#text/plain
-fcl/xml/xmlread.pp svneol=native#text/plain
-fcl/xml/xmlstreaming.pp svneol=native#text/plain
-fcl/xml/xmlwrite.pp svneol=native#text/plain
-fcl/xml/xpath.pp svneol=native#text/plain
 fv/Makefile svneol=native#text/plain
 fv/Makefile svneol=native#text/plain
 fv/Makefile.fpc svneol=native#text/plain
 fv/Makefile.fpc svneol=native#text/plain
 fv/app.pas svneol=native#text/plain
 fv/app.pas svneol=native#text/plain
@@ -4278,6 +3731,528 @@ packages/extra/zlib/Makefile.fpc svneol=native#text/plain
 packages/extra/zlib/fpmake.inc svneol=native#text/plain
 packages/extra/zlib/fpmake.inc svneol=native#text/plain
 packages/extra/zlib/fpmake.pp svneol=native#text/plain
 packages/extra/zlib/fpmake.pp svneol=native#text/plain
 packages/extra/zlib/zlib.pp svneol=native#text/plain
 packages/extra/zlib/zlib.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/fpmake.pp svneol=native#text/plain
+packages/fcl-base/src/amiga/classes.pp svneol=native#text/plain
+packages/fcl-base/src/amiga/eventlog.inc svneol=native#text/plain
+packages/fcl-base/src/amiga/pipes.inc svneol=native#text/plain
+packages/fcl-base/src/amiga/thread.inc svneol=native#text/plain
+packages/fcl-base/src/beos/classes.pp svneol=native#text/plain
+packages/fcl-base/src/beos/eventlog.inc svneol=native#text/plain
+packages/fcl-base/src/beos/pipes.inc svneol=native#text/plain
+packages/fcl-base/src/beos/thread.inc svneol=native#text/plain
+packages/fcl-base/src/go32v2/custapp.inc svneol=native#text/plain
+packages/fcl-base/src/go32v2/eventlog.inc svneol=native#text/plain
+packages/fcl-base/src/go32v2/pipes.inc svneol=native#text/plain
+packages/fcl-base/src/inc/DUnitCompatibleInterface.inc svneol=native#text/plain
+packages/fcl-base/src/inc/avl_tree.pp svneol=native#text/plain
+packages/fcl-base/src/inc/base64.pp svneol=native#text/plain
+packages/fcl-base/src/inc/blowfish.pp svneol=native#text/plain
+packages/fcl-base/src/inc/bufstream.pp svneol=native#text/plain
+packages/fcl-base/src/inc/cachecls.pp svneol=native#text/plain
+packages/fcl-base/src/inc/cgiapp.pp svneol=native#text/plain
+packages/fcl-base/src/inc/contnrs.pp svneol=native#text/plain
+packages/fcl-base/src/inc/custapp.pp svneol=native#text/plain
+packages/fcl-base/src/inc/daemonapp.pp svneol=native#text/plain
+packages/fcl-base/src/inc/dbugintf.pp svneol=native#text/plain
+packages/fcl-base/src/inc/dbugmsg.pp svneol=native#text/plain
+packages/fcl-base/src/inc/eventlog.pp svneol=native#text/plain
+packages/fcl-base/src/inc/ezcgi.pp svneol=native#text/plain
+packages/fcl-base/src/inc/felog.inc svneol=native#text/plain
+packages/fcl-base/src/inc/fpasync.pp svneol=native#text/plain
+packages/fcl-base/src/inc/fpcunit.pp svneol=native#text/plain
+packages/fcl-base/src/inc/fpmake.inc svneol=native#text/plain
+packages/fcl-base/src/inc/fpmake.pp svneol=native#text/plain
+packages/fcl-base/src/inc/gettext.pp svneol=native#text/plain
+packages/fcl-base/src/inc/htmldefs.pp svneol=native#text/plain
+packages/fcl-base/src/inc/idea.pp svneol=native#text/plain
+packages/fcl-base/src/inc/inicol.pp svneol=native#text/plain
+packages/fcl-base/src/inc/inifiles.pp svneol=native#text/plain
+packages/fcl-base/src/inc/iostream.pp svneol=native#text/plain
+packages/fcl-base/src/inc/libtar.pas svneol=native#text/plain
+packages/fcl-base/src/inc/pipes.pp svneol=native#text/plain
+packages/fcl-base/src/inc/pooledmm.pp svneol=native#text/plain
+packages/fcl-base/src/inc/process.pp svneol=native#text/plain
+packages/fcl-base/src/inc/process.txt svneol=native#text/plain
+packages/fcl-base/src/inc/regdef.inc svneol=native#text/plain
+packages/fcl-base/src/inc/regini.inc svneol=native#text/plain
+packages/fcl-base/src/inc/registry.pp svneol=native#text/plain
+packages/fcl-base/src/inc/resolve.pp svneol=native#text/plain
+packages/fcl-base/src/inc/rtfdata.inc svneol=native#text/plain
+packages/fcl-base/src/inc/rtfpars.pp svneol=native#text/plain
+packages/fcl-base/src/inc/rttiutils.pp svneol=native#text/plain
+packages/fcl-base/src/inc/simpleipc.pp svneol=native#text/plain
+packages/fcl-base/src/inc/ssockets.pp svneol=native#text/plain
+packages/fcl-base/src/inc/streamcoll.pp svneol=native#text/plain
+packages/fcl-base/src/inc/streamex.pp svneol=native#text/plain
+packages/fcl-base/src/inc/streamio.pp svneol=native#text/plain
+packages/fcl-base/src/inc/syncobjs.pp svneol=native#text/plain
+packages/fcl-base/src/inc/testutils.pp svneol=native#text/plain
+packages/fcl-base/src/inc/wformat.pp svneol=native#text/plain
+packages/fcl-base/src/inc/whtml.pp svneol=native#text/plain
+packages/fcl-base/src/inc/wtex.pp svneol=native#text/plain
+packages/fcl-base/src/inc/xmlreg.pp svneol=native#text/plain
+packages/fcl-base/src/inc/xregreg.inc svneol=native#text/plain
+packages/fcl-base/src/inc/zipper.pp svneol=native#text/plain
+packages/fcl-base/src/inc/zstream.pp svneol=native#text/plain
+packages/fcl-base/src/morphos/eventlog.inc svneol=native#text/plain
+packages/fcl-base/src/morphos/pipes.inc svneol=native#text/plain
+packages/fcl-base/src/netware/custapp.inc svneol=native#text/plain
+packages/fcl-base/src/netware/eventlog.inc svneol=native#text/plain
+packages/fcl-base/src/netware/pipes.inc svneol=native#text/plain
+packages/fcl-base/src/netware/resolve.inc svneol=native#text/plain
+packages/fcl-base/src/netwlibc/custapp.inc svneol=native#text/plain
+packages/fcl-base/src/netwlibc/eventlog.inc svneol=native#text/plain
+packages/fcl-base/src/netwlibc/pipes.inc svneol=native#text/plain
+packages/fcl-base/src/netwlibc/resolve.inc svneol=native#text/plain
+packages/fcl-base/src/os2/custapp.inc svneol=native#text/plain
+packages/fcl-base/src/os2/eventlog.inc svneol=native#text/plain
+packages/fcl-base/src/os2/pipes.inc svneol=native#text/plain
+packages/fcl-base/src/os2/resolve.inc svneol=native#text/plain
+packages/fcl-base/src/qnx/classes.pp svneol=native#text/plain
+packages/fcl-base/src/qnx/eventlog.inc svneol=native#text/plain
+packages/fcl-base/src/unix/asyncio.inc svneol=native#text/plain
+packages/fcl-base/src/unix/asyncioh.inc svneol=native#text/plain
+packages/fcl-base/src/unix/daemonapp.inc svneol=native#text/plain
+packages/fcl-base/src/unix/eventlog.inc svneol=native#text/plain
+packages/fcl-base/src/unix/pipes.inc svneol=native#text/plain
+packages/fcl-base/src/unix/process.inc svneol=native#text/plain
+packages/fcl-base/src/unix/resolve.inc svneol=native#text/plain
+packages/fcl-base/src/unix/simpleipc.inc svneol=native#text/plain
+packages/fcl-base/src/win/ServiceManager.pas -text
+packages/fcl-base/src/win/daemonapp.inc svneol=native#text/plain
+packages/fcl-base/src/win/eventlog.inc svneol=native#text/plain
+packages/fcl-base/src/win/fclel.mc -text
+packages/fcl-base/src/win/fclel.rc -text
+packages/fcl-base/src/win/fclel.res -text
+packages/fcl-base/src/win/fileinfo.pp svneol=native#text/plain
+packages/fcl-base/src/win/httpapp.pp svneol=native#text/plain
+packages/fcl-base/src/win/pipes.inc svneol=native#text/plain
+packages/fcl-base/src/win/process.inc svneol=native#text/plain
+packages/fcl-base/src/win/resolve.inc svneol=native#text/plain
+packages/fcl-base/src/win/simpleipc.inc svneol=native#text/plain
+packages/fcl-base/src/win/winreg.inc svneol=native#text/plain
+packages/fcl-base/src/wince/eventlog.inc svneol=native#text/plain
+packages/fcl-base/src/wince/fileinfo.pp svneol=native#text/plain
+packages/fcl-base/src/wince/pipes.inc svneol=native#text/plain
+packages/fcl-base/src/wince/process.inc svneol=native#text/plain
+packages/fcl-base/src/wince/resolve.inc svneol=native#text/plain
+packages/fcl-base/src/wince/simpleipc.inc svneol=native#text/plain
+packages/fcl-base/tests/Makefile svneol=native#text/plain
+packages/fcl-base/tests/Makefile.fpc svneol=native#text/plain
+packages/fcl-base/tests/README -text
+packages/fcl-base/tests/asiotest.pp svneol=native#text/plain
+packages/fcl-base/tests/b64.pp svneol=native#text/plain
+packages/fcl-base/tests/b64dec.pp svneol=native#text/plain
+packages/fcl-base/tests/b64enc.pp svneol=native#text/plain
+packages/fcl-base/tests/b64test.pp svneol=native#text/plain
+packages/fcl-base/tests/b64test2.pp svneol=native#text/plain
+packages/fcl-base/tests/cachetest.pp svneol=native#text/plain
+packages/fcl-base/tests/cfgtest.pp svneol=native#text/plain
+packages/fcl-base/tests/daemon.pp svneol=native#text/plain
+packages/fcl-base/tests/dbugsrv.pp svneol=native#text/plain
+packages/fcl-base/tests/debugtest.pp svneol=native#text/plain
+packages/fcl-base/tests/doecho.pp svneol=native#text/plain
+packages/fcl-base/tests/dparser.pp svneol=native#text/plain
+packages/fcl-base/tests/dsockcli.pp svneol=native#text/plain
+packages/fcl-base/tests/dsocksvr.pp svneol=native#text/plain
+packages/fcl-base/tests/fpdoc.dtd -text
+packages/fcl-base/tests/fstream.pp svneol=native#text/plain
+packages/fcl-base/tests/htdump.pp svneol=native#text/plain
+packages/fcl-base/tests/intl/Makefile svneol=native#text/plain
+packages/fcl-base/tests/intl/README svneol=native#text/plain
+packages/fcl-base/tests/intl/restest.de.mo -text
+packages/fcl-base/tests/intl/restest.de.po svneol=native#text/plain
+packages/fcl-base/tests/intl/restest.fr.mo -text
+packages/fcl-base/tests/intl/restest.fr.po svneol=native#text/plain
+packages/fcl-base/tests/intl/restest.nl.mo -text
+packages/fcl-base/tests/intl/restest.nl.po svneol=native#text/plain
+packages/fcl-base/tests/intl/resttest.po svneol=native#text/plain
+packages/fcl-base/tests/ipcclient.pp svneol=native#text/plain
+packages/fcl-base/tests/ipcserver.pp svneol=native#text/plain
+packages/fcl-base/tests/isockcli.pp svneol=native#text/plain
+packages/fcl-base/tests/isocksvr.pp svneol=native#text/plain
+packages/fcl-base/tests/istream.pp svneol=native#text/plain
+packages/fcl-base/tests/kword.xml -text
+packages/fcl-base/tests/list.pp svneol=native#text/plain
+packages/fcl-base/tests/mstream.pp svneol=native#text/plain
+packages/fcl-base/tests/overview.rtf -text svneol=unset#unset
+packages/fcl-base/tests/parser.dat -text
+packages/fcl-base/tests/poolmm1.pp svneol=native#text/plain
+packages/fcl-base/tests/poolmm2.pp svneol=native#text/plain
+packages/fcl-base/tests/restest.pp svneol=native#text/plain
+packages/fcl-base/tests/showver.pp svneol=native#text/plain
+packages/fcl-base/tests/showver.rc -text
+packages/fcl-base/tests/showver.res -text
+packages/fcl-base/tests/simple.xml -text
+packages/fcl-base/tests/sockcli.pp svneol=native#text/plain
+packages/fcl-base/tests/socksvr.pp svneol=native#text/plain
+packages/fcl-base/tests/sstream.pp svneol=native#text/plain
+packages/fcl-base/tests/stringl.pp svneol=native#text/plain
+packages/fcl-base/tests/tarmakercons.pas svneol=native#text/plain
+packages/fcl-base/tests/tarmakerconsgzip.pas svneol=native#text/plain
+packages/fcl-base/tests/testapp.pp svneol=native#text/plain
+packages/fcl-base/tests/testbf.pp svneol=native#text/plain
+packages/fcl-base/tests/testbs.pp svneol=native#text/plain
+packages/fcl-base/tests/testcgi.html -text
+packages/fcl-base/tests/testcgi.pp svneol=native#text/plain
+packages/fcl-base/tests/testcont.pp svneol=native#text/plain
+packages/fcl-base/tests/testez.pp svneol=native#text/plain
+packages/fcl-base/tests/testhres.pp svneol=native#text/plain
+packages/fcl-base/tests/testnres.pp svneol=native#text/plain
+packages/fcl-base/tests/testol.pp svneol=native#text/plain
+packages/fcl-base/tests/testproc.pp svneol=native#text/plain
+packages/fcl-base/tests/testreg.pp svneol=native#text/plain
+packages/fcl-base/tests/testrhre.pp svneol=native#text/plain
+packages/fcl-base/tests/testrnre.pp svneol=native#text/plain
+packages/fcl-base/tests/testrsre.pp svneol=native#text/plain
+packages/fcl-base/tests/testrtf.pp svneol=native#text/plain
+packages/fcl-base/tests/testser.pp svneol=native#text/plain
+packages/fcl-base/tests/testsres.pp svneol=native#text/plain
+packages/fcl-base/tests/testunzip.pp svneol=native#text/plain
+packages/fcl-base/tests/testur.pp svneol=native#text/plain
+packages/fcl-base/tests/testweb.pp svneol=native#text/plain
+packages/fcl-base/tests/testz.pp svneol=native#text/plain
+packages/fcl-base/tests/testz2.pp svneol=native#text/plain
+packages/fcl-base/tests/testzip.pp svneol=native#text/plain
+packages/fcl-base/tests/threads.pp svneol=native#text/plain
+packages/fcl-base/tests/tidea.pp svneol=native#text/plain
+packages/fcl-base/tests/tstelcmd.pp svneol=native#text/plain
+packages/fcl-base/tests/tstelgtk.pp svneol=native#text/plain
+packages/fcl-base/tests/txmlreg.pp svneol=native#text/plain
+packages/fcl-base/tests/xmldump.pp svneol=native#text/plain
+packages/fcl-db/src/Dataset.txt svneol=native#text/plain
+packages/fcl-db/src/Makefile svneol=native#text/plain
+packages/fcl-db/src/Makefile.fpc svneol=native#text/plain
+packages/fcl-db/src/README -text
+packages/fcl-db/src/bufdataset.pas svneol=native#text/plain
+packages/fcl-db/src/bufdataset_parser.pp svneol=native#text/plain
+packages/fcl-db/src/database.inc svneol=native#text/plain
+packages/fcl-db/src/dataset.inc svneol=native#text/plain
+packages/fcl-db/src/datasource.inc svneol=native#text/plain
+packages/fcl-db/src/db.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/Makefile svneol=native#text/plain
+packages/fcl-db/src/dbase/Makefile.fpc svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_avl.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_collate.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_common.inc svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_common.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_cursor.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_dbffile.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_fields.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_idxcur.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_idxfile.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_lang.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_memo.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_parser.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_pgcfile.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_pgfile.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_prscore.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_prsdef.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_prssupp.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_reg.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_str.inc svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_str.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_str_es.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_str_fr.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_str_ita.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_str_nl.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_str_pl.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_str_pt.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_str_ru.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_struct.inc svneol=native#text/plain
+packages/fcl-db/src/dbase/dbf_wtil.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/fpmake.inc svneol=native#text/plain
+packages/fcl-db/src/dbase/fpmake.pp svneol=native#text/plain
+packages/fcl-db/src/dbase/getstrfromint.inc svneol=native#text/plain
+packages/fcl-db/src/dbase/history.txt svneol=native#text/plain
+packages/fcl-db/src/dbase/package.txt svneol=native#text/plain
+packages/fcl-db/src/dbase/readme.txt svneol=native#text/plain
+packages/fcl-db/src/dbase/tdbf_l.pas svneol=native#text/plain
+packages/fcl-db/src/dbase/testdbf.pp svneol=native#text/plain
+packages/fcl-db/src/dbconst.pas svneol=native#text/plain
+packages/fcl-db/src/dbwhtml.pp svneol=native#text/plain
+packages/fcl-db/src/dsparams.inc svneol=native#text/plain
+packages/fcl-db/src/fields.inc svneol=native#text/plain
+packages/fcl-db/src/fpmake.inc svneol=native#text/plain
+packages/fcl-db/src/fpmake.pp svneol=native#text/plain
+packages/fcl-db/src/memds/Makefile svneol=native#text/plain
+packages/fcl-db/src/memds/Makefile.fpc svneol=native#text/plain
+packages/fcl-db/src/memds/README -text
+packages/fcl-db/src/memds/fpmake.inc svneol=native#text/plain
+packages/fcl-db/src/memds/fpmake.pp svneol=native#text/plain
+packages/fcl-db/src/memds/memds.pp svneol=native#text/plain
+packages/fcl-db/src/memds/testcp.pp svneol=native#text/plain
+packages/fcl-db/src/memds/testld.pp svneol=native#text/plain
+packages/fcl-db/src/memds/testopen.pp svneol=native#text/plain
+packages/fcl-db/src/memds/testpop.pp svneol=native#text/plain
+packages/fcl-db/src/sdf/Makefile svneol=native#text/plain
+packages/fcl-db/src/sdf/Makefile.fpc svneol=native#text/plain
+packages/fcl-db/src/sdf/fpc.ssx -text
+packages/fcl-db/src/sdf/fpc.ssy -text
+packages/fcl-db/src/sdf/fpmake.inc svneol=native#text/plain
+packages/fcl-db/src/sdf/fpmake.pp svneol=native#text/plain
+packages/fcl-db/src/sdf/sdfdata.pp svneol=native#text/plain
+packages/fcl-db/src/sdf/testfix.pp svneol=native#text/plain
+packages/fcl-db/src/sdf/testsdf.pp svneol=native#text/plain
+packages/fcl-db/src/sqldb/Makefile svneol=native#text/plain
+packages/fcl-db/src/sqldb/Makefile.fpc svneol=native#text/plain
+packages/fcl-db/src/sqldb/examples/alisttables.pp svneol=native#text/plain
+packages/fcl-db/src/sqldb/examples/bcreatetable.pp svneol=native#text/plain
+packages/fcl-db/src/sqldb/examples/cfilltable.pp svneol=native#text/plain
+packages/fcl-db/src/sqldb/examples/database.ini svneol=native#text/plain
+packages/fcl-db/src/sqldb/examples/dshowtable.pp svneol=native#text/plain
+packages/fcl-db/src/sqldb/examples/efilltableparams.pp svneol=native#text/plain
+packages/fcl-db/src/sqldb/examples/fedittable.pp svneol=native#text/plain
+packages/fcl-db/src/sqldb/examples/gfiltertable.pp svneol=native#text/plain
+packages/fcl-db/src/sqldb/examples/sqldbexampleunit.pp svneol=native#text/plain
+packages/fcl-db/src/sqldb/fpmake.inc svneol=native#text/plain
+packages/fcl-db/src/sqldb/fpmake.pp svneol=native#text/plain
+packages/fcl-db/src/sqldb/interbase/Makefile svneol=native#text/plain
+packages/fcl-db/src/sqldb/interbase/Makefile.fpc svneol=native#text/plain
+packages/fcl-db/src/sqldb/interbase/fpmake.inc svneol=native#text/plain
+packages/fcl-db/src/sqldb/interbase/fpmake.pp svneol=native#text/plain
+packages/fcl-db/src/sqldb/interbase/ibconnection.pp svneol=native#text/plain
+packages/fcl-db/src/sqldb/mysql/Makefile svneol=native#text/plain
+packages/fcl-db/src/sqldb/mysql/Makefile.fpc svneol=native#text/plain
+packages/fcl-db/src/sqldb/mysql/fpmake.inc svneol=native#text/plain
+packages/fcl-db/src/sqldb/mysql/fpmake.pp svneol=native#text/plain
+packages/fcl-db/src/sqldb/mysql/mysql40conn.pas svneol=native#text/plain
+packages/fcl-db/src/sqldb/mysql/mysql41conn.pas svneol=native#text/plain
+packages/fcl-db/src/sqldb/mysql/mysql4conn.pas svneol=native#text/plain
+packages/fcl-db/src/sqldb/mysql/mysql50conn.pas svneol=native#text/plain
+packages/fcl-db/src/sqldb/mysql/mysqlconn.inc svneol=native#text/plain
+packages/fcl-db/src/sqldb/odbc/Makefile svneol=native#text/plain
+packages/fcl-db/src/sqldb/odbc/Makefile.fpc svneol=native#text/plain
+packages/fcl-db/src/sqldb/odbc/odbcconn.pas svneol=native#text/plain
+packages/fcl-db/src/sqldb/oracle/Makefile -text
+packages/fcl-db/src/sqldb/oracle/Makefile.fpc -text
+packages/fcl-db/src/sqldb/oracle/oracleconnection.pp -text
+packages/fcl-db/src/sqldb/postgres/Makefile svneol=native#text/plain
+packages/fcl-db/src/sqldb/postgres/Makefile.fpc svneol=native#text/plain
+packages/fcl-db/src/sqldb/postgres/fpmake.inc svneol=native#text/plain
+packages/fcl-db/src/sqldb/postgres/fpmake.pp svneol=native#text/plain
+packages/fcl-db/src/sqldb/postgres/pqconnection.pp svneol=native#text/plain
+packages/fcl-db/src/sqldb/sqldb.pp svneol=native#text/plain
+packages/fcl-db/src/sqldb/testsqldb.pp svneol=native#text/plain
+packages/fcl-db/src/sqlite/Makefile svneol=native#text/plain
+packages/fcl-db/src/sqlite/Makefile.fpc svneol=native#text/plain
+packages/fcl-db/src/sqlite/browseds.pas svneol=native#text/plain
+packages/fcl-db/src/sqlite/concurrencyds.pas svneol=native#text/plain
+packages/fcl-db/src/sqlite/createds.pas svneol=native#text/plain
+packages/fcl-db/src/sqlite/customsqliteds.pas svneol=native#text/plain
+packages/fcl-db/src/sqlite/fillds.pas svneol=native#text/plain
+packages/fcl-db/src/sqlite/fpmake.inc svneol=native#text/plain
+packages/fcl-db/src/sqlite/fpmake.pp svneol=native#text/plain
+packages/fcl-db/src/sqlite/sqlite3ds.pas svneol=native#text/plain
+packages/fcl-db/src/sqlite/sqliteds.pas svneol=native#text/plain
+packages/fcl-db/src/sqlite/testds.pas svneol=native#text/plain
+packages/fcl-db/src/unmaintained/Makefile -text
+packages/fcl-db/src/unmaintained/Makefile.fpc -text
+packages/fcl-db/src/unmaintained/README -text
+packages/fcl-db/src/unmaintained/ddg/Makefile svneol=native#text/plain
+packages/fcl-db/src/unmaintained/ddg/Makefile.fpc svneol=native#text/plain
+packages/fcl-db/src/unmaintained/ddg/createds.pp svneol=native#text/plain
+packages/fcl-db/src/unmaintained/ddg/ddg_ds.pp svneol=native#text/plain
+packages/fcl-db/src/unmaintained/ddg/ddg_rec.pp svneol=native#text/plain
+packages/fcl-db/src/unmaintained/ddg/fpmake.pp svneol=native#text/plain
+packages/fcl-db/src/unmaintained/ddg/testds.pp svneol=native#text/plain
+packages/fcl-db/src/unmaintained/ddg/tested.pp svneol=native#text/plain
+packages/fcl-db/src/unmaintained/interbase/BUGS.known -text
+packages/fcl-db/src/unmaintained/interbase/Makefile svneol=native#text/plain
+packages/fcl-db/src/unmaintained/interbase/Makefile.fpc svneol=native#text/plain
+packages/fcl-db/src/unmaintained/interbase/README -text
+packages/fcl-db/src/unmaintained/interbase/fpmake.inc svneol=native#text/plain
+packages/fcl-db/src/unmaintained/interbase/fpmake.pp svneol=native#text/plain
+packages/fcl-db/src/unmaintained/interbase/interbase.pp svneol=native#text/plain
+packages/fcl-db/src/unmaintained/interbase/mkdb -text
+packages/fcl-db/src/unmaintained/interbase/testib.pp svneol=native#text/plain
+packages/fcl-db/src/unmaintained/mysql/Makefile svneol=native#text/plain
+packages/fcl-db/src/unmaintained/mysql/Makefile.fpc svneol=native#text/plain
+packages/fcl-db/src/unmaintained/mysql/fpmake.inc svneol=native#text/plain
+packages/fcl-db/src/unmaintained/mysql/fpmake.pp svneol=native#text/plain
+packages/fcl-db/src/unmaintained/mysql/mtest.pp svneol=native#text/plain
+packages/fcl-db/src/unmaintained/mysql/mysqldb3.pp svneol=native#text/plain
+packages/fcl-db/src/unmaintained/mysql/mysqldb4.pp svneol=native#text/plain
+packages/fcl-db/src/unmaintained/odbc/Makefile svneol=native#text/plain
+packages/fcl-db/src/unmaintained/odbc/Makefile.fpc svneol=native#text/plain
+packages/fcl-db/src/unmaintained/odbc/README -text
+packages/fcl-db/src/unmaintained/odbc/fpmake.pp svneol=native#text/plain
+packages/fcl-db/src/unmaintained/odbc/fpodbc.pp svneol=native#text/plain
+packages/fcl-db/src/unmaintained/odbc/testbcon.pp svneol=native#text/plain
+packages/fcl-db/src/unmaintained/odbc/testcon.pp svneol=native#text/plain
+packages/fcl-db/src/unmaintained/odbc/testdrcon.pp svneol=native#text/plain
+packages/fcl-db/src/unmaintained/odbc/testenv.pp svneol=native#text/plain
+packages/fcl-db/src/unmaintained/odbc/testfl.pp svneol=native#text/plain
+packages/fcl-db/src/unmaintained/odbc/testodbc.mdb -text
+packages/fcl-db/src/unmaintained/odbc/testpa.pp svneol=native#text/plain
+packages/fcl-db/src/unmaintained/odbc/testpk.pp svneol=native#text/plain
+packages/fcl-db/src/unmaintained/odbc/testpr.pp svneol=native#text/plain
+packages/fcl-db/src/unmaintained/odbc/testsql.pp svneol=native#text/plain
+packages/fcl-db/src/unmaintained/odbc/testst.pp svneol=native#text/plain
+packages/fcl-db/src/unmaintained/odbc/testtl.pp svneol=native#text/plain
+packages/fcl-db/src/unmaintained/sqlite/Makefile -text
+packages/fcl-db/src/unmaintained/sqlite/Makefile.fpc -text
+packages/fcl-db/src/unmaintained/sqlite/sqlitedataset.pas svneol=native#text/plain
+packages/fcl-db/tests/Makefile -text
+packages/fcl-db/tests/Makefile.fpc -text
+packages/fcl-db/tests/README.txt svneol=native#text/plain
+packages/fcl-db/tests/database.ini -text
+packages/fcl-db/tests/dbftoolsunit.pas -text
+packages/fcl-db/tests/dbtestframework.pas -text
+packages/fcl-db/tests/memdstoolsunit.pas svneol=native#text/plain
+packages/fcl-db/tests/sqldbtoolsunit.pas -text
+packages/fcl-db/tests/testbasics.pas svneol=native#text/plain
+packages/fcl-db/tests/testdbbasics.pas -text
+packages/fcl-db/tests/testsqlfieldtypes.pas -text
+packages/fcl-db/tests/toolsunit.pas -text
+packages/fcl-fpcunit/src/Makefile svneol=native#text/plain
+packages/fcl-fpcunit/src/Makefile.fpc svneol=native#text/plain
+packages/fcl-fpcunit/src/README.txt svneol=native#text/plain
+packages/fcl-fpcunit/src/demo/consolerunner/suiteconfig.pp svneol=native#text/plain
+packages/fcl-fpcunit/src/demo/consolerunner/testrunner.pp svneol=native#text/plain
+packages/fcl-fpcunit/src/example_output/results.pdf -text
+packages/fcl-fpcunit/src/example_output/results.txt svneol=native#text/plain
+packages/fcl-fpcunit/src/example_xsl/fpcunit.css svneol=native#text/plain
+packages/fcl-fpcunit/src/example_xsl/fpcunit.xsl svneol=native#text/plain
+packages/fcl-fpcunit/src/example_xsl/readme.txt svneol=native#text/plain
+packages/fcl-fpcunit/src/exampletests/Makefile svneol=native#text/plain
+packages/fcl-fpcunit/src/exampletests/Makefile.fpc svneol=native#text/plain
+packages/fcl-fpcunit/src/exampletests/fpcunittests.pp svneol=native#text/plain
+packages/fcl-fpcunit/src/exampletests/money.pp svneol=native#text/plain
+packages/fcl-fpcunit/src/exampletests/moneytest.pp svneol=native#text/plain
+packages/fcl-fpcunit/src/exampletests/testmockobject.pp svneol=native#text/plain
+packages/fcl-fpcunit/src/fpcunitreport.pp svneol=native#text/plain
+packages/fcl-fpcunit/src/fpmake.inc svneol=native#text/plain
+packages/fcl-fpcunit/src/fpmake.pp svneol=native#text/plain
+packages/fcl-fpcunit/src/latextestreport.pp svneol=native#text/plain
+packages/fcl-fpcunit/src/plaintestreport.pp svneol=native#text/plain
+packages/fcl-fpcunit/src/testdecorator.pp svneol=native#text/plain
+packages/fcl-fpcunit/src/testregistry.pp svneol=native#text/plain
+packages/fcl-fpcunit/src/testreport.pp svneol=native#text/plain
+packages/fcl-fpcunit/src/tests/Makefile svneol=native#text/plain
+packages/fcl-fpcunit/src/tests/Makefile.fpc svneol=native#text/plain
+packages/fcl-fpcunit/src/tests/asserttest.pp svneol=native#text/plain
+packages/fcl-fpcunit/src/tests/frameworktest.pp svneol=native#text/plain
+packages/fcl-fpcunit/src/tests/suitetest.pp svneol=native#text/plain
+packages/fcl-fpcunit/src/ubmockobject.pp svneol=native#text/plain
+packages/fcl-fpcunit/src/xmlreporter.pas svneol=native#text/plain
+packages/fcl-fpcunit/src/xmltestreport.pp svneol=native#text/plain
+packages/fcl-image/src/Makefile svneol=native#text/plain
+packages/fcl-image/src/Makefile.fpc svneol=native#text/plain
+packages/fcl-image/src/bmpcomn.pp svneol=native#text/plain
+packages/fcl-image/src/clipping.pp svneol=native#text/plain
+packages/fcl-image/src/drawing.pp svneol=native#text/plain
+packages/fcl-image/src/ellipses.pp svneol=native#text/plain
+packages/fcl-image/src/extinterpolation.pp svneol=native#text/plain
+packages/fcl-image/src/fpbrush.inc svneol=native#text/plain
+packages/fcl-image/src/fpcanvas.inc svneol=native#text/plain
+packages/fcl-image/src/fpcanvas.pp svneol=native#text/plain
+packages/fcl-image/src/fpcdrawh.inc svneol=native#text/plain
+packages/fcl-image/src/fpcolcnv.inc svneol=native#text/plain
+packages/fcl-image/src/fpcolhash.pas svneol=native#text/plain
+packages/fcl-image/src/fpcolors.inc svneol=native#text/plain
+packages/fcl-image/src/fpditherer.pas svneol=native#text/plain
+packages/fcl-image/src/fpfont.inc svneol=native#text/plain
+packages/fcl-image/src/fphandler.inc svneol=native#text/plain
+packages/fcl-image/src/fphelper.inc svneol=native#text/plain
+packages/fcl-image/src/fpimage.inc svneol=native#text/plain
+packages/fcl-image/src/fpimage.pp svneol=native#text/plain
+packages/fcl-image/src/fpimgcanv.pp svneol=native#text/plain
+packages/fcl-image/src/fpimgcmn.pp svneol=native#text/plain
+packages/fcl-image/src/fpinterpolation.inc svneol=native#text/plain
+packages/fcl-image/src/fpmake.inc svneol=native#text/plain
+packages/fcl-image/src/fpmake.pp svneol=native#text/plain
+packages/fcl-image/src/fppalette.inc svneol=native#text/plain
+packages/fcl-image/src/fppen.inc svneol=native#text/plain
+packages/fcl-image/src/fppixlcanv.pp svneol=native#text/plain
+packages/fcl-image/src/fpquantizer.pas svneol=native#text/plain
+packages/fcl-image/src/fpreadbmp.pp svneol=native#text/plain
+packages/fcl-image/src/fpreadjpeg.pas svneol=native#text/plain
+packages/fcl-image/src/fpreadpng.pp svneol=native#text/plain
+packages/fcl-image/src/fpreadpnm.pp svneol=native#text/plain
+packages/fcl-image/src/fpreadtga.pp svneol=native#text/plain
+packages/fcl-image/src/fpreadxpm.pp svneol=native#text/plain
+packages/fcl-image/src/fpwritebmp.pp svneol=native#text/plain
+packages/fcl-image/src/fpwritejpeg.pas svneol=native#text/plain
+packages/fcl-image/src/fpwritepng.pp svneol=native#text/plain
+packages/fcl-image/src/fpwritepnm.pp svneol=native#text/plain
+packages/fcl-image/src/fpwritetga.pp svneol=native#text/plain
+packages/fcl-image/src/fpwritexpm.pp svneol=native#text/plain
+packages/fcl-image/src/freetype.pp svneol=native#text/plain
+packages/fcl-image/src/freetypeh.pp svneol=native#text/plain
+packages/fcl-image/src/ftfont.pp svneol=native#text/plain
+packages/fcl-image/src/imgconv.pp svneol=native#text/plain
+packages/fcl-image/src/pixtools.pp svneol=native#text/plain
+packages/fcl-image/src/pngcomn.pp svneol=native#text/plain
+packages/fcl-image/src/pscanvas.pp svneol=native#text/plain
+packages/fcl-image/src/targacmn.pp svneol=native#text/plain
+packages/fcl-net/src/Makefile svneol=native#text/plain
+packages/fcl-net/src/Makefile.fpc svneol=native#text/plain
+packages/fcl-net/src/fpmake.inc svneol=native#text/plain
+packages/fcl-net/src/fpmake.pp svneol=native#text/plain
+packages/fcl-net/src/fpsock.pp svneol=native#text/plain
+packages/fcl-net/src/httpbase.pp svneol=native#text/plain
+packages/fcl-net/src/httpclient.pp svneol=native#text/plain
+packages/fcl-net/src/httpsvlt.pp svneol=native#text/plain
+packages/fcl-net/src/mkxmlrpc.pp svneol=native#text/plain
+packages/fcl-net/src/servlets.pp svneol=native#text/plain
+packages/fcl-net/src/tests/Makefile svneol=native#text/plain
+packages/fcl-net/src/tests/Makefile.fpc svneol=native#text/plain
+packages/fcl-net/src/tests/readme.txt svneol=native#text/plain
+packages/fcl-net/src/tests/rpccli.pp svneol=native#text/plain
+packages/fcl-net/src/tests/rpcserv.pp svneol=native#text/plain
+packages/fcl-net/src/tests/svrclass.pp svneol=native#text/plain
+packages/fcl-net/src/tests/svrclass_xmlrpc.pp svneol=native#text/plain
+packages/fcl-net/src/xmlrpc.pp svneol=native#text/plain
+packages/fcl-passrc/src/Makefile svneol=native#text/plain
+packages/fcl-passrc/src/Makefile.fpc svneol=native#text/plain
+packages/fcl-passrc/src/fpmake.inc svneol=native#text/plain
+packages/fcl-passrc/src/fpmake.pp svneol=native#text/plain
+packages/fcl-passrc/src/pastree.pp svneol=native#text/plain
+packages/fcl-passrc/src/paswrite.pp svneol=native#text/plain
+packages/fcl-passrc/src/pparser.pp svneol=native#text/plain
+packages/fcl-passrc/src/pscanner.pp svneol=native#text/plain
+packages/fcl-passrc/src/readme.txt svneol=native#text/plain
+packages/fcl-web/src/Makefile svneol=native#text/plain
+packages/fcl-web/src/Makefile.fpc svneol=native#text/plain
+packages/fcl-web/src/README svneol=native#text/plain
+packages/fcl-web/src/custcgi.pp svneol=native#text/plain
+packages/fcl-web/src/fpcgi.pp svneol=native#text/plain
+packages/fcl-web/src/fpdatasetform.pp svneol=native#text/plain
+packages/fcl-web/src/fphtml.pp svneol=native#text/plain
+packages/fcl-web/src/fphttp.pp svneol=native#text/plain
+packages/fcl-web/src/fptemplate.pp svneol=native#text/plain
+packages/fcl-web/src/fpweb.pp svneol=native#text/plain
+packages/fcl-web/src/htmlelements.pp svneol=native#text/plain
+packages/fcl-web/src/htmlwriter.pp svneol=native#text/plain
+packages/fcl-web/src/httpdefs.pp svneol=native#text/plain
+packages/fcl-web/src/tagsimpl.inc svneol=native#text/plain
+packages/fcl-web/src/tagsintf.inc svneol=native#text/plain
+packages/fcl-web/src/websession.pp svneol=native#text/plain
+packages/fcl-web/src/webutil.pp svneol=native#text/plain
+packages/fcl-web/src/wtagsimpl.inc svneol=native#text/plain
+packages/fcl-web/src/wtagsintf.inc svneol=native#text/plain
+packages/fcl-xml/src/Makefile svneol=native#text/plain
+packages/fcl-xml/src/Makefile.fpc svneol=native#text/plain
+packages/fcl-xml/src/README -text
+packages/fcl-xml/src/dom.pp svneol=native#text/plain
+packages/fcl-xml/src/dom_html.pp svneol=native#text/plain
+packages/fcl-xml/src/fpmake.inc svneol=native#text/plain
+packages/fcl-xml/src/fpmake.pp svneol=native#text/plain
+packages/fcl-xml/src/htmwrite.pp svneol=native#text/plain
+packages/fcl-xml/src/names.inc svneol=native#text/plain
+packages/fcl-xml/src/sax.pp svneol=native#text/plain
+packages/fcl-xml/src/sax_html.pp svneol=native#text/plain
+packages/fcl-xml/src/sax_xml.pp svneol=native#text/plain
+packages/fcl-xml/src/xhtml.pp svneol=native#text/plain
+packages/fcl-xml/src/xmlcfg.pp svneol=native#text/plain
+packages/fcl-xml/src/xmlread.pp svneol=native#text/plain
+packages/fcl-xml/src/xmlstreaming.pp svneol=native#text/plain
+packages/fcl-xml/src/xmlwrite.pp svneol=native#text/plain
+packages/fcl-xml/src/xpath.pp svneol=native#text/plain
 packages/fpmake.pp svneol=native#text/plain
 packages/fpmake.pp svneol=native#text/plain
 rtl/COPYING -text
 rtl/COPYING -text
 rtl/COPYING.FPC -text
 rtl/COPYING.FPC -text

+ 266 - 287
.gitignore

@@ -149,295 +149,8 @@ fcl/*.exe
 fcl/*.o
 fcl/*.o
 fcl/*.ppu
 fcl/*.ppu
 fcl/*.s
 fcl/*.s
-fcl/amiga/*.bak
-fcl/amiga/*.exe
-fcl/amiga/*.o
-fcl/amiga/*.ppu
-fcl/amiga/*.s
-fcl/amiga/fpcmade.*
-fcl/amiga/units
-fcl/beos/*.bak
-fcl/beos/*.exe
-fcl/beos/*.o
-fcl/beos/*.ppu
-fcl/beos/*.s
-fcl/beos/fpcmade.*
-fcl/beos/units
-fcl/darwin/*.bak
-fcl/darwin/*.exe
-fcl/darwin/*.o
-fcl/darwin/*.ppu
-fcl/darwin/*.s
-fcl/darwin/fpcmade.*
-fcl/darwin/units
-fcl/db/*.bak
-fcl/db/*.exe
-fcl/db/*.o
-fcl/db/*.ppu
-fcl/db/*.s
-fcl/db/dbase/*.bak
-fcl/db/dbase/*.exe
-fcl/db/dbase/*.o
-fcl/db/dbase/*.ppu
-fcl/db/dbase/*.s
-fcl/db/dbase/fpcmade.*
-fcl/db/dbase/units
-fcl/db/fpcmade.*
-fcl/db/memds/*.bak
-fcl/db/memds/*.exe
-fcl/db/memds/*.o
-fcl/db/memds/*.ppu
-fcl/db/memds/*.s
-fcl/db/memds/fpcmade.*
-fcl/db/memds/units
-fcl/db/sdf/*.bak
-fcl/db/sdf/*.exe
-fcl/db/sdf/*.o
-fcl/db/sdf/*.ppu
-fcl/db/sdf/*.s
-fcl/db/sdf/fpcmade.*
-fcl/db/sdf/units
-fcl/db/sqldb/*.bak
-fcl/db/sqldb/*.exe
-fcl/db/sqldb/*.o
-fcl/db/sqldb/*.ppu
-fcl/db/sqldb/*.s
-fcl/db/sqldb/fpcmade.*
-fcl/db/sqldb/interbase/*.bak
-fcl/db/sqldb/interbase/*.exe
-fcl/db/sqldb/interbase/*.o
-fcl/db/sqldb/interbase/*.ppu
-fcl/db/sqldb/interbase/*.s
-fcl/db/sqldb/interbase/fpcmade.*
-fcl/db/sqldb/interbase/units
-fcl/db/sqldb/mysql/*.bak
-fcl/db/sqldb/mysql/*.exe
-fcl/db/sqldb/mysql/*.o
-fcl/db/sqldb/mysql/*.ppu
-fcl/db/sqldb/mysql/*.s
-fcl/db/sqldb/mysql/fpcmade.*
-fcl/db/sqldb/mysql/units
-fcl/db/sqldb/postgres/*.bak
-fcl/db/sqldb/postgres/*.exe
-fcl/db/sqldb/postgres/*.o
-fcl/db/sqldb/postgres/*.ppu
-fcl/db/sqldb/postgres/*.s
-fcl/db/sqldb/postgres/fpcmade.*
-fcl/db/sqldb/postgres/units
-fcl/db/sqldb/units
-fcl/db/sqlite/*.bak
-fcl/db/sqlite/*.exe
-fcl/db/sqlite/*.o
-fcl/db/sqlite/*.ppu
-fcl/db/sqlite/*.s
-fcl/db/sqlite/fpcmade.*
-fcl/db/sqlite/units
-fcl/db/units
-fcl/db/unmaintained/ddg/*.bak
-fcl/db/unmaintained/ddg/*.exe
-fcl/db/unmaintained/ddg/*.o
-fcl/db/unmaintained/ddg/*.ppu
-fcl/db/unmaintained/ddg/*.s
-fcl/db/unmaintained/ddg/fpcmade.*
-fcl/db/unmaintained/ddg/units
-fcl/db/unmaintained/interbase/*.bak
-fcl/db/unmaintained/interbase/*.exe
-fcl/db/unmaintained/interbase/*.o
-fcl/db/unmaintained/interbase/*.ppu
-fcl/db/unmaintained/interbase/*.s
-fcl/db/unmaintained/interbase/fpcmade.*
-fcl/db/unmaintained/interbase/units
-fcl/db/unmaintained/mysql/*.bak
-fcl/db/unmaintained/mysql/*.exe
-fcl/db/unmaintained/mysql/*.o
-fcl/db/unmaintained/mysql/*.ppu
-fcl/db/unmaintained/mysql/*.s
-fcl/db/unmaintained/mysql/fpcmade.*
-fcl/db/unmaintained/mysql/units
-fcl/db/unmaintained/odbc/*.bak
-fcl/db/unmaintained/odbc/*.exe
-fcl/db/unmaintained/odbc/*.o
-fcl/db/unmaintained/odbc/*.ppu
-fcl/db/unmaintained/odbc/*.s
-fcl/db/unmaintained/odbc/fpcmade.*
-fcl/db/unmaintained/odbc/units
-fcl/emx/*.bak
-fcl/emx/*.exe
-fcl/emx/*.o
-fcl/emx/*.ppu
-fcl/emx/*.s
-fcl/emx/fpcmade.*
-fcl/emx/units
 fcl/fpcmade.*
 fcl/fpcmade.*
-fcl/fpcunit/*.bak
-fcl/fpcunit/*.exe
-fcl/fpcunit/*.o
-fcl/fpcunit/*.ppu
-fcl/fpcunit/*.s
-fcl/fpcunit/demo/*.bak
-fcl/fpcunit/demo/*.exe
-fcl/fpcunit/demo/*.o
-fcl/fpcunit/demo/*.ppu
-fcl/fpcunit/demo/*.s
-fcl/fpcunit/demo/consolerunner/*.bak
-fcl/fpcunit/demo/consolerunner/*.exe
-fcl/fpcunit/demo/consolerunner/*.o
-fcl/fpcunit/demo/consolerunner/*.ppu
-fcl/fpcunit/demo/consolerunner/*.s
-fcl/fpcunit/demo/consolerunner/fpcmade.*
-fcl/fpcunit/demo/consolerunner/units
-fcl/fpcunit/demo/fpcmade.*
-fcl/fpcunit/demo/units
-fcl/fpcunit/exampletests/*.bak
-fcl/fpcunit/exampletests/*.exe
-fcl/fpcunit/exampletests/*.o
-fcl/fpcunit/exampletests/*.ppu
-fcl/fpcunit/exampletests/*.s
-fcl/fpcunit/exampletests/fpcmade.*
-fcl/fpcunit/exampletests/units
-fcl/fpcunit/fpcmade.*
-fcl/fpcunit/tests/*.bak
-fcl/fpcunit/tests/*.exe
-fcl/fpcunit/tests/*.o
-fcl/fpcunit/tests/*.ppu
-fcl/fpcunit/tests/*.s
-fcl/fpcunit/tests/fpcmade.*
-fcl/fpcunit/tests/units
-fcl/fpcunit/units
-fcl/freebsd/*.bak
-fcl/freebsd/*.exe
-fcl/freebsd/*.o
-fcl/freebsd/*.ppu
-fcl/freebsd/*.s
-fcl/freebsd/fpcmade.*
-fcl/freebsd/units
-fcl/go32v2/*.bak
-fcl/go32v2/*.exe
-fcl/go32v2/*.o
-fcl/go32v2/*.ppu
-fcl/go32v2/*.s
-fcl/go32v2/fpcmade.*
-fcl/go32v2/units
-fcl/image/*.bak
-fcl/image/*.exe
-fcl/image/*.o
-fcl/image/*.ppu
-fcl/image/*.s
-fcl/image/fpcmade.*
-fcl/image/units
-fcl/inc/*.bak
-fcl/inc/*.exe
-fcl/inc/*.o
-fcl/inc/*.ppu
-fcl/inc/*.s
-fcl/inc/fpcmade.*
-fcl/inc/units
-fcl/linux/*.bak
-fcl/linux/*.exe
-fcl/linux/*.o
-fcl/linux/*.ppu
-fcl/linux/*.s
-fcl/linux/fpcmade.*
-fcl/linux/units
-fcl/net/*.bak
-fcl/net/*.exe
-fcl/net/*.o
-fcl/net/*.ppu
-fcl/net/*.s
-fcl/net/fpcmade.*
-fcl/net/tests/*.bak
-fcl/net/tests/*.exe
-fcl/net/tests/*.o
-fcl/net/tests/*.ppu
-fcl/net/tests/*.s
-fcl/net/tests/fpcmade.*
-fcl/net/tests/units
-fcl/net/units
-fcl/netware/*.bak
-fcl/netware/*.exe
-fcl/netware/*.o
-fcl/netware/*.ppu
-fcl/netware/*.s
-fcl/netware/fpcmade.*
-fcl/netware/units
-fcl/netwlibc/*.bak
-fcl/netwlibc/*.exe
-fcl/netwlibc/*.o
-fcl/netwlibc/*.ppu
-fcl/netwlibc/*.s
-fcl/netwlibc/fpcmade.*
-fcl/netwlibc/units
-fcl/os2/*.bak
-fcl/os2/*.exe
-fcl/os2/*.o
-fcl/os2/*.ppu
-fcl/os2/*.s
-fcl/os2/fpcmade.*
-fcl/os2/units
-fcl/passrc/*.bak
-fcl/passrc/*.exe
-fcl/passrc/*.o
-fcl/passrc/*.ppu
-fcl/passrc/*.s
-fcl/passrc/fpcmade.*
-fcl/passrc/units
-fcl/qnx/*.bak
-fcl/qnx/*.exe
-fcl/qnx/*.o
-fcl/qnx/*.ppu
-fcl/qnx/*.s
-fcl/qnx/fpcmade.*
-fcl/qnx/units
-fcl/shedit/*.bak
-fcl/shedit/*.exe
-fcl/shedit/*.o
-fcl/shedit/*.ppu
-fcl/shedit/*.s
-fcl/shedit/fpcmade.*
-fcl/shedit/gtk/*.bak
-fcl/shedit/gtk/*.exe
-fcl/shedit/gtk/*.o
-fcl/shedit/gtk/*.ppu
-fcl/shedit/gtk/*.s
-fcl/shedit/gtk/fpcmade.*
-fcl/shedit/gtk/units
-fcl/shedit/units
-fcl/template/*.bak
-fcl/template/*.exe
-fcl/template/*.o
-fcl/template/*.ppu
-fcl/template/*.s
-fcl/template/fpcmade.*
-fcl/template/units
-fcl/tests/*.bak
-fcl/tests/*.exe
-fcl/tests/*.o
-fcl/tests/*.ppu
-fcl/tests/*.s
-fcl/tests/fpcmade.*
-fcl/tests/intl/*.bak
-fcl/tests/intl/*.exe
-fcl/tests/intl/*.o
-fcl/tests/intl/*.ppu
-fcl/tests/intl/*.s
-fcl/tests/intl/fpcmade.*
-fcl/tests/intl/units
-fcl/tests/units
 fcl/units
 fcl/units
-fcl/unix/*.bak
-fcl/unix/*.exe
-fcl/unix/*.o
-fcl/unix/*.ppu
-fcl/unix/*.s
-fcl/unix/fpcmade.*
-fcl/unix/units
-fcl/xml/*.bak
-fcl/xml/*.exe
-fcl/xml/*.o
-fcl/xml/*.ppu
-fcl/xml/*.s
-fcl/xml/fpcmade.*
-fcl/xml/units
 /fpcmade.*
 /fpcmade.*
 fv/*.bak
 fv/*.bak
 fv/*.exe
 fv/*.exe
@@ -1671,6 +1384,272 @@ packages/extra/zlib/*.ppu
 packages/extra/zlib/*.s
 packages/extra/zlib/*.s
 packages/extra/zlib/fpcmade.*
 packages/extra/zlib/fpcmade.*
 packages/extra/zlib/units
 packages/extra/zlib/units
+packages/fcl-base/src/amiga/*.bak
+packages/fcl-base/src/amiga/*.exe
+packages/fcl-base/src/amiga/*.o
+packages/fcl-base/src/amiga/*.ppu
+packages/fcl-base/src/amiga/*.s
+packages/fcl-base/src/amiga/fpcmade.*
+packages/fcl-base/src/amiga/units
+packages/fcl-base/src/beos/*.bak
+packages/fcl-base/src/beos/*.exe
+packages/fcl-base/src/beos/*.o
+packages/fcl-base/src/beos/*.ppu
+packages/fcl-base/src/beos/*.s
+packages/fcl-base/src/beos/fpcmade.*
+packages/fcl-base/src/beos/units
+packages/fcl-base/src/darwin/*.bak
+packages/fcl-base/src/darwin/*.exe
+packages/fcl-base/src/darwin/*.o
+packages/fcl-base/src/darwin/*.ppu
+packages/fcl-base/src/darwin/*.s
+packages/fcl-base/src/darwin/fpcmade.*
+packages/fcl-base/src/darwin/units
+packages/fcl-base/src/emx/*.bak
+packages/fcl-base/src/emx/*.exe
+packages/fcl-base/src/emx/*.o
+packages/fcl-base/src/emx/*.ppu
+packages/fcl-base/src/emx/*.s
+packages/fcl-base/src/emx/fpcmade.*
+packages/fcl-base/src/emx/units
+packages/fcl-base/src/freebsd/*.bak
+packages/fcl-base/src/freebsd/*.exe
+packages/fcl-base/src/freebsd/*.o
+packages/fcl-base/src/freebsd/*.ppu
+packages/fcl-base/src/freebsd/*.s
+packages/fcl-base/src/freebsd/fpcmade.*
+packages/fcl-base/src/freebsd/units
+packages/fcl-base/src/go32v2/*.bak
+packages/fcl-base/src/go32v2/*.exe
+packages/fcl-base/src/go32v2/*.o
+packages/fcl-base/src/go32v2/*.ppu
+packages/fcl-base/src/go32v2/*.s
+packages/fcl-base/src/go32v2/fpcmade.*
+packages/fcl-base/src/go32v2/units
+packages/fcl-base/src/inc/*.bak
+packages/fcl-base/src/inc/*.exe
+packages/fcl-base/src/inc/*.o
+packages/fcl-base/src/inc/*.ppu
+packages/fcl-base/src/inc/*.s
+packages/fcl-base/src/inc/fpcmade.*
+packages/fcl-base/src/inc/units
+packages/fcl-base/src/linux/*.bak
+packages/fcl-base/src/linux/*.exe
+packages/fcl-base/src/linux/*.o
+packages/fcl-base/src/linux/*.ppu
+packages/fcl-base/src/linux/*.s
+packages/fcl-base/src/linux/fpcmade.*
+packages/fcl-base/src/linux/units
+packages/fcl-base/src/netware/*.bak
+packages/fcl-base/src/netware/*.exe
+packages/fcl-base/src/netware/*.o
+packages/fcl-base/src/netware/*.ppu
+packages/fcl-base/src/netware/*.s
+packages/fcl-base/src/netware/fpcmade.*
+packages/fcl-base/src/netware/units
+packages/fcl-base/src/netwlibc/*.bak
+packages/fcl-base/src/netwlibc/*.exe
+packages/fcl-base/src/netwlibc/*.o
+packages/fcl-base/src/netwlibc/*.ppu
+packages/fcl-base/src/netwlibc/*.s
+packages/fcl-base/src/netwlibc/fpcmade.*
+packages/fcl-base/src/netwlibc/units
+packages/fcl-base/src/os2/*.bak
+packages/fcl-base/src/os2/*.exe
+packages/fcl-base/src/os2/*.o
+packages/fcl-base/src/os2/*.ppu
+packages/fcl-base/src/os2/*.s
+packages/fcl-base/src/os2/fpcmade.*
+packages/fcl-base/src/os2/units
+packages/fcl-base/src/qnx/*.bak
+packages/fcl-base/src/qnx/*.exe
+packages/fcl-base/src/qnx/*.o
+packages/fcl-base/src/qnx/*.ppu
+packages/fcl-base/src/qnx/*.s
+packages/fcl-base/src/qnx/fpcmade.*
+packages/fcl-base/src/qnx/units
+packages/fcl-base/src/unix/*.bak
+packages/fcl-base/src/unix/*.exe
+packages/fcl-base/src/unix/*.o
+packages/fcl-base/src/unix/*.ppu
+packages/fcl-base/src/unix/*.s
+packages/fcl-base/src/unix/fpcmade.*
+packages/fcl-base/src/unix/units
+packages/fcl-base/tests/*.bak
+packages/fcl-base/tests/*.exe
+packages/fcl-base/tests/*.o
+packages/fcl-base/tests/*.ppu
+packages/fcl-base/tests/*.s
+packages/fcl-base/tests/fpcmade.*
+packages/fcl-base/tests/intl/*.bak
+packages/fcl-base/tests/intl/*.exe
+packages/fcl-base/tests/intl/*.o
+packages/fcl-base/tests/intl/*.ppu
+packages/fcl-base/tests/intl/*.s
+packages/fcl-base/tests/intl/fpcmade.*
+packages/fcl-base/tests/intl/units
+packages/fcl-base/tests/units
+packages/fcl-db/src/*.bak
+packages/fcl-db/src/*.exe
+packages/fcl-db/src/*.o
+packages/fcl-db/src/*.ppu
+packages/fcl-db/src/*.s
+packages/fcl-db/src/dbase/*.bak
+packages/fcl-db/src/dbase/*.exe
+packages/fcl-db/src/dbase/*.o
+packages/fcl-db/src/dbase/*.ppu
+packages/fcl-db/src/dbase/*.s
+packages/fcl-db/src/dbase/fpcmade.*
+packages/fcl-db/src/dbase/units
+packages/fcl-db/src/fpcmade.*
+packages/fcl-db/src/memds/*.bak
+packages/fcl-db/src/memds/*.exe
+packages/fcl-db/src/memds/*.o
+packages/fcl-db/src/memds/*.ppu
+packages/fcl-db/src/memds/*.s
+packages/fcl-db/src/memds/fpcmade.*
+packages/fcl-db/src/memds/units
+packages/fcl-db/src/sdf/*.bak
+packages/fcl-db/src/sdf/*.exe
+packages/fcl-db/src/sdf/*.o
+packages/fcl-db/src/sdf/*.ppu
+packages/fcl-db/src/sdf/*.s
+packages/fcl-db/src/sdf/fpcmade.*
+packages/fcl-db/src/sdf/units
+packages/fcl-db/src/sqldb/*.bak
+packages/fcl-db/src/sqldb/*.exe
+packages/fcl-db/src/sqldb/*.o
+packages/fcl-db/src/sqldb/*.ppu
+packages/fcl-db/src/sqldb/*.s
+packages/fcl-db/src/sqldb/fpcmade.*
+packages/fcl-db/src/sqldb/interbase/*.bak
+packages/fcl-db/src/sqldb/interbase/*.exe
+packages/fcl-db/src/sqldb/interbase/*.o
+packages/fcl-db/src/sqldb/interbase/*.ppu
+packages/fcl-db/src/sqldb/interbase/*.s
+packages/fcl-db/src/sqldb/interbase/fpcmade.*
+packages/fcl-db/src/sqldb/interbase/units
+packages/fcl-db/src/sqldb/mysql/*.bak
+packages/fcl-db/src/sqldb/mysql/*.exe
+packages/fcl-db/src/sqldb/mysql/*.o
+packages/fcl-db/src/sqldb/mysql/*.ppu
+packages/fcl-db/src/sqldb/mysql/*.s
+packages/fcl-db/src/sqldb/mysql/fpcmade.*
+packages/fcl-db/src/sqldb/mysql/units
+packages/fcl-db/src/sqldb/postgres/*.bak
+packages/fcl-db/src/sqldb/postgres/*.exe
+packages/fcl-db/src/sqldb/postgres/*.o
+packages/fcl-db/src/sqldb/postgres/*.ppu
+packages/fcl-db/src/sqldb/postgres/*.s
+packages/fcl-db/src/sqldb/postgres/fpcmade.*
+packages/fcl-db/src/sqldb/postgres/units
+packages/fcl-db/src/sqldb/units
+packages/fcl-db/src/sqlite/*.bak
+packages/fcl-db/src/sqlite/*.exe
+packages/fcl-db/src/sqlite/*.o
+packages/fcl-db/src/sqlite/*.ppu
+packages/fcl-db/src/sqlite/*.s
+packages/fcl-db/src/sqlite/fpcmade.*
+packages/fcl-db/src/sqlite/units
+packages/fcl-db/src/units
+packages/fcl-db/src/unmaintained/ddg/*.bak
+packages/fcl-db/src/unmaintained/ddg/*.exe
+packages/fcl-db/src/unmaintained/ddg/*.o
+packages/fcl-db/src/unmaintained/ddg/*.ppu
+packages/fcl-db/src/unmaintained/ddg/*.s
+packages/fcl-db/src/unmaintained/ddg/fpcmade.*
+packages/fcl-db/src/unmaintained/ddg/units
+packages/fcl-db/src/unmaintained/interbase/*.bak
+packages/fcl-db/src/unmaintained/interbase/*.exe
+packages/fcl-db/src/unmaintained/interbase/*.o
+packages/fcl-db/src/unmaintained/interbase/*.ppu
+packages/fcl-db/src/unmaintained/interbase/*.s
+packages/fcl-db/src/unmaintained/interbase/fpcmade.*
+packages/fcl-db/src/unmaintained/interbase/units
+packages/fcl-db/src/unmaintained/mysql/*.bak
+packages/fcl-db/src/unmaintained/mysql/*.exe
+packages/fcl-db/src/unmaintained/mysql/*.o
+packages/fcl-db/src/unmaintained/mysql/*.ppu
+packages/fcl-db/src/unmaintained/mysql/*.s
+packages/fcl-db/src/unmaintained/mysql/fpcmade.*
+packages/fcl-db/src/unmaintained/mysql/units
+packages/fcl-db/src/unmaintained/odbc/*.bak
+packages/fcl-db/src/unmaintained/odbc/*.exe
+packages/fcl-db/src/unmaintained/odbc/*.o
+packages/fcl-db/src/unmaintained/odbc/*.ppu
+packages/fcl-db/src/unmaintained/odbc/*.s
+packages/fcl-db/src/unmaintained/odbc/fpcmade.*
+packages/fcl-db/src/unmaintained/odbc/units
+packages/fcl-fpcunit/src/*.bak
+packages/fcl-fpcunit/src/*.exe
+packages/fcl-fpcunit/src/*.o
+packages/fcl-fpcunit/src/*.ppu
+packages/fcl-fpcunit/src/*.s
+packages/fcl-fpcunit/src/demo/*.bak
+packages/fcl-fpcunit/src/demo/*.exe
+packages/fcl-fpcunit/src/demo/*.o
+packages/fcl-fpcunit/src/demo/*.ppu
+packages/fcl-fpcunit/src/demo/*.s
+packages/fcl-fpcunit/src/demo/consolerunner/*.bak
+packages/fcl-fpcunit/src/demo/consolerunner/*.exe
+packages/fcl-fpcunit/src/demo/consolerunner/*.o
+packages/fcl-fpcunit/src/demo/consolerunner/*.ppu
+packages/fcl-fpcunit/src/demo/consolerunner/*.s
+packages/fcl-fpcunit/src/demo/consolerunner/fpcmade.*
+packages/fcl-fpcunit/src/demo/consolerunner/units
+packages/fcl-fpcunit/src/demo/fpcmade.*
+packages/fcl-fpcunit/src/demo/units
+packages/fcl-fpcunit/src/exampletests/*.bak
+packages/fcl-fpcunit/src/exampletests/*.exe
+packages/fcl-fpcunit/src/exampletests/*.o
+packages/fcl-fpcunit/src/exampletests/*.ppu
+packages/fcl-fpcunit/src/exampletests/*.s
+packages/fcl-fpcunit/src/exampletests/fpcmade.*
+packages/fcl-fpcunit/src/exampletests/units
+packages/fcl-fpcunit/src/fpcmade.*
+packages/fcl-fpcunit/src/tests/*.bak
+packages/fcl-fpcunit/src/tests/*.exe
+packages/fcl-fpcunit/src/tests/*.o
+packages/fcl-fpcunit/src/tests/*.ppu
+packages/fcl-fpcunit/src/tests/*.s
+packages/fcl-fpcunit/src/tests/fpcmade.*
+packages/fcl-fpcunit/src/tests/units
+packages/fcl-fpcunit/src/units
+packages/fcl-image/src/*.bak
+packages/fcl-image/src/*.exe
+packages/fcl-image/src/*.o
+packages/fcl-image/src/*.ppu
+packages/fcl-image/src/*.s
+packages/fcl-image/src/fpcmade.*
+packages/fcl-image/src/units
+packages/fcl-net/src/*.bak
+packages/fcl-net/src/*.exe
+packages/fcl-net/src/*.o
+packages/fcl-net/src/*.ppu
+packages/fcl-net/src/*.s
+packages/fcl-net/src/fpcmade.*
+packages/fcl-net/src/tests/*.bak
+packages/fcl-net/src/tests/*.exe
+packages/fcl-net/src/tests/*.o
+packages/fcl-net/src/tests/*.ppu
+packages/fcl-net/src/tests/*.s
+packages/fcl-net/src/tests/fpcmade.*
+packages/fcl-net/src/tests/units
+packages/fcl-net/src/units
+packages/fcl-passrc/src/*.bak
+packages/fcl-passrc/src/*.exe
+packages/fcl-passrc/src/*.o
+packages/fcl-passrc/src/*.ppu
+packages/fcl-passrc/src/*.s
+packages/fcl-passrc/src/fpcmade.*
+packages/fcl-passrc/src/units
+packages/fcl-xml/src/*.bak
+packages/fcl-xml/src/*.exe
+packages/fcl-xml/src/*.o
+packages/fcl-xml/src/*.ppu
+packages/fcl-xml/src/*.s
+packages/fcl-xml/src/fpcmade.*
+packages/fcl-xml/src/units
 packages/fpcmade.*
 packages/fpcmade.*
 packages/units
 packages/units
 rtl/*.bak
 rtl/*.bak

+ 0 - 504
fcl/COPYING

@@ -1,504 +0,0 @@
-		  GNU LESSER GENERAL PUBLIC LICENSE
-		       Version 2.1, February 1999
-
- Copyright (C) 1991, 1999 Free Software Foundation, Inc.
-     59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-[This is the first released version of the Lesser GPL.  It also counts
- as the successor of the GNU Library Public License, version 2, hence
- the version number 2.1.]
-
-			    Preamble
-
-  The licenses for most software are designed to take away your
-freedom to share and change it.  By contrast, the GNU General Public
-Licenses are intended to guarantee your freedom to share and change
-free software--to make sure the software is free for all its users.
-
-  This license, the Lesser General Public License, applies to some
-specially designated software packages--typically libraries--of the
-Free Software Foundation and other authors who decide to use it.  You
-can use it too, but we suggest you first think carefully about whether
-this license or the ordinary General Public License is the better
-strategy to use in any particular case, based on the explanations below.
-
-  When we speak of free software, we are referring to freedom of use,
-not price.  Our General Public Licenses are designed to make sure that
-you have the freedom to distribute copies of free software (and charge
-for this service if you wish); that you receive source code or can get
-it if you want it; that you can change the software and use pieces of
-it in new free programs; and that you are informed that you can do
-these things.
-
-  To protect your rights, we need to make restrictions that forbid
-distributors to deny you these rights or to ask you to surrender these
-rights.  These restrictions translate to certain responsibilities for
-you if you distribute copies of the library or if you modify it.
-
-  For example, if you distribute copies of the library, whether gratis
-or for a fee, you must give the recipients all the rights that we gave
-you.  You must make sure that they, too, receive or can get the source
-code.  If you link other code with the library, you must provide
-complete object files to the recipients, so that they can relink them
-with the library after making changes to the library and recompiling
-it.  And you must show them these terms so they know their rights.
-
-  We protect your rights with a two-step method: (1) we copyright the
-library, and (2) we offer you this license, which gives you legal
-permission to copy, distribute and/or modify the library.
-
-  To protect each distributor, we want to make it very clear that
-there is no warranty for the free library.  Also, if the library is
-modified by someone else and passed on, the recipients should know
-that what they have is not the original version, so that the original
-author's reputation will not be affected by problems that might be
-introduced by others.
-
-  Finally, software patents pose a constant threat to the existence of
-any free program.  We wish to make sure that a company cannot
-effectively restrict the users of a free program by obtaining a
-restrictive license from a patent holder.  Therefore, we insist that
-any patent license obtained for a version of the library must be
-consistent with the full freedom of use specified in this license.
-
-  Most GNU software, including some libraries, is covered by the
-ordinary GNU General Public License.  This license, the GNU Lesser
-General Public License, applies to certain designated libraries, and
-is quite different from the ordinary General Public License.  We use
-this license for certain libraries in order to permit linking those
-libraries into non-free programs.
-
-  When a program is linked with a library, whether statically or using
-a shared library, the combination of the two is legally speaking a
-combined work, a derivative of the original library.  The ordinary
-General Public License therefore permits such linking only if the
-entire combination fits its criteria of freedom.  The Lesser General
-Public License permits more lax criteria for linking other code with
-the library.
-
-  We call this license the "Lesser" General Public License because it
-does Less to protect the user's freedom than the ordinary General
-Public License.  It also provides other free software developers Less
-of an advantage over competing non-free programs.  These disadvantages
-are the reason we use the ordinary General Public License for many
-libraries.  However, the Lesser license provides advantages in certain
-special circumstances.
-
-  For example, on rare occasions, there may be a special need to
-encourage the widest possible use of a certain library, so that it becomes
-a de-facto standard.  To achieve this, non-free programs must be
-allowed to use the library.  A more frequent case is that a free
-library does the same job as widely used non-free libraries.  In this
-case, there is little to gain by limiting the free library to free
-software only, so we use the Lesser General Public License.
-
-  In other cases, permission to use a particular library in non-free
-programs enables a greater number of people to use a large body of
-free software.  For example, permission to use the GNU C Library in
-non-free programs enables many more people to use the whole GNU
-operating system, as well as its variant, the GNU/Linux operating
-system.
-
-  Although the Lesser General Public License is Less protective of the
-users' freedom, it does ensure that the user of a program that is
-linked with the Library has the freedom and the wherewithal to run
-that program using a modified version of the Library.
-
-  The precise terms and conditions for copying, distribution and
-modification follow.  Pay close attention to the difference between a
-"work based on the library" and a "work that uses the library".  The
-former contains code derived from the library, whereas the latter must
-be combined with the library in order to run.
-
-		  GNU LESSER GENERAL PUBLIC LICENSE
-   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
-  0. This License Agreement applies to any software library or other
-program which contains a notice placed by the copyright holder or
-other authorized party saying it may be distributed under the terms of
-this Lesser General Public License (also called "this License").
-Each licensee is addressed as "you".
-
-  A "library" means a collection of software functions and/or data
-prepared so as to be conveniently linked with application programs
-(which use some of those functions and data) to form executables.
-
-  The "Library", below, refers to any such software library or work
-which has been distributed under these terms.  A "work based on the
-Library" means either the Library or any derivative work under
-copyright law: that is to say, a work containing the Library or a
-portion of it, either verbatim or with modifications and/or translated
-straightforwardly into another language.  (Hereinafter, translation is
-included without limitation in the term "modification".)
-
-  "Source code" for a work means the preferred form of the work for
-making modifications to it.  For a library, complete source code means
-all the source code for all modules it contains, plus any associated
-interface definition files, plus the scripts used to control compilation
-and installation of the library.
-
-  Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope.  The act of
-running a program using the Library is not restricted, and output from
-such a program is covered only if its contents constitute a work based
-on the Library (independent of the use of the Library in a tool for
-writing it).  Whether that is true depends on what the Library does
-and what the program that uses the Library does.
-  
-  1. You may copy and distribute verbatim copies of the Library's
-complete source code as you receive it, in any medium, provided that
-you conspicuously and appropriately publish on each copy an
-appropriate copyright notice and disclaimer of warranty; keep intact
-all the notices that refer to this License and to the absence of any
-warranty; and distribute a copy of this License along with the
-Library.
-
-  You may charge a fee for the physical act of transferring a copy,
-and you may at your option offer warranty protection in exchange for a
-fee.
-
-  2. You may modify your copy or copies of the Library or any portion
-of it, thus forming a work based on the Library, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
-    a) The modified work must itself be a software library.
-
-    b) You must cause the files modified to carry prominent notices
-    stating that you changed the files and the date of any change.
-
-    c) You must cause the whole of the work to be licensed at no
-    charge to all third parties under the terms of this License.
-
-    d) If a facility in the modified Library refers to a function or a
-    table of data to be supplied by an application program that uses
-    the facility, other than as an argument passed when the facility
-    is invoked, then you must make a good faith effort to ensure that,
-    in the event an application does not supply such function or
-    table, the facility still operates, and performs whatever part of
-    its purpose remains meaningful.
-
-    (For example, a function in a library to compute square roots has
-    a purpose that is entirely well-defined independent of the
-    application.  Therefore, Subsection 2d requires that any
-    application-supplied function or table used by this function must
-    be optional: if the application does not supply it, the square
-    root function must still compute square roots.)
-
-These requirements apply to the modified work as a whole.  If
-identifiable sections of that work are not derived from the Library,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works.  But when you
-distribute the same sections as part of a whole which is a work based
-on the Library, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote
-it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Library.
-
-In addition, mere aggregation of another work not based on the Library
-with the Library (or with a work based on the Library) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
-  3. You may opt to apply the terms of the ordinary GNU General Public
-License instead of this License to a given copy of the Library.  To do
-this, you must alter all the notices that refer to this License, so
-that they refer to the ordinary GNU General Public License, version 2,
-instead of to this License.  (If a newer version than version 2 of the
-ordinary GNU General Public License has appeared, then you can specify
-that version instead if you wish.)  Do not make any other change in
-these notices.
-
-  Once this change is made in a given copy, it is irreversible for
-that copy, so the ordinary GNU General Public License applies to all
-subsequent copies and derivative works made from that copy.
-
-  This option is useful when you wish to copy part of the code of
-the Library into a program that is not a library.
-
-  4. You may copy and distribute the Library (or a portion or
-derivative of it, under Section 2) in object code or executable form
-under the terms of Sections 1 and 2 above provided that you accompany
-it with the complete corresponding machine-readable source code, which
-must be distributed under the terms of Sections 1 and 2 above on a
-medium customarily used for software interchange.
-
-  If distribution of object code is made by offering access to copy
-from a designated place, then offering equivalent access to copy the
-source code from the same place satisfies the requirement to
-distribute the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
-  5. A program that contains no derivative of any portion of the
-Library, but is designed to work with the Library by being compiled or
-linked with it, is called a "work that uses the Library".  Such a
-work, in isolation, is not a derivative work of the Library, and
-therefore falls outside the scope of this License.
-
-  However, linking a "work that uses the Library" with the Library
-creates an executable that is a derivative of the Library (because it
-contains portions of the Library), rather than a "work that uses the
-library".  The executable is therefore covered by this License.
-Section 6 states terms for distribution of such executables.
-
-  When a "work that uses the Library" uses material from a header file
-that is part of the Library, the object code for the work may be a
-derivative work of the Library even though the source code is not.
-Whether this is true is especially significant if the work can be
-linked without the Library, or if the work is itself a library.  The
-threshold for this to be true is not precisely defined by law.
-
-  If such an object file uses only numerical parameters, data
-structure layouts and accessors, and small macros and small inline
-functions (ten lines or less in length), then the use of the object
-file is unrestricted, regardless of whether it is legally a derivative
-work.  (Executables containing this object code plus portions of the
-Library will still fall under Section 6.)
-
-  Otherwise, if the work is a derivative of the Library, you may
-distribute the object code for the work under the terms of Section 6.
-Any executables containing that work also fall under Section 6,
-whether or not they are linked directly with the Library itself.
-
-  6. As an exception to the Sections above, you may also combine or
-link a "work that uses the Library" with the Library to produce a
-work containing portions of the Library, and distribute that work
-under terms of your choice, provided that the terms permit
-modification of the work for the customer's own use and reverse
-engineering for debugging such modifications.
-
-  You must give prominent notice with each copy of the work that the
-Library is used in it and that the Library and its use are covered by
-this License.  You must supply a copy of this License.  If the work
-during execution displays copyright notices, you must include the
-copyright notice for the Library among them, as well as a reference
-directing the user to the copy of this License.  Also, you must do one
-of these things:
-
-    a) Accompany the work with the complete corresponding
-    machine-readable source code for the Library including whatever
-    changes were used in the work (which must be distributed under
-    Sections 1 and 2 above); and, if the work is an executable linked
-    with the Library, with the complete machine-readable "work that
-    uses the Library", as object code and/or source code, so that the
-    user can modify the Library and then relink to produce a modified
-    executable containing the modified Library.  (It is understood
-    that the user who changes the contents of definitions files in the
-    Library will not necessarily be able to recompile the application
-    to use the modified definitions.)
-
-    b) Use a suitable shared library mechanism for linking with the
-    Library.  A suitable mechanism is one that (1) uses at run time a
-    copy of the library already present on the user's computer system,
-    rather than copying library functions into the executable, and (2)
-    will operate properly with a modified version of the library, if
-    the user installs one, as long as the modified version is
-    interface-compatible with the version that the work was made with.
-
-    c) Accompany the work with a written offer, valid for at
-    least three years, to give the same user the materials
-    specified in Subsection 6a, above, for a charge no more
-    than the cost of performing this distribution.
-
-    d) If distribution of the work is made by offering access to copy
-    from a designated place, offer equivalent access to copy the above
-    specified materials from the same place.
-
-    e) Verify that the user has already received a copy of these
-    materials or that you have already sent this user a copy.
-
-  For an executable, the required form of the "work that uses the
-Library" must include any data and utility programs needed for
-reproducing the executable from it.  However, as a special exception,
-the materials to be distributed need not include anything that is
-normally distributed (in either source or binary form) with the major
-components (compiler, kernel, and so on) of the operating system on
-which the executable runs, unless that component itself accompanies
-the executable.
-
-  It may happen that this requirement contradicts the license
-restrictions of other proprietary libraries that do not normally
-accompany the operating system.  Such a contradiction means you cannot
-use both them and the Library together in an executable that you
-distribute.
-
-  7. You may place library facilities that are a work based on the
-Library side-by-side in a single library together with other library
-facilities not covered by this License, and distribute such a combined
-library, provided that the separate distribution of the work based on
-the Library and of the other library facilities is otherwise
-permitted, and provided that you do these two things:
-
-    a) Accompany the combined library with a copy of the same work
-    based on the Library, uncombined with any other library
-    facilities.  This must be distributed under the terms of the
-    Sections above.
-
-    b) Give prominent notice with the combined library of the fact
-    that part of it is a work based on the Library, and explaining
-    where to find the accompanying uncombined form of the same work.
-
-  8. You may not copy, modify, sublicense, link with, or distribute
-the Library except as expressly provided under this License.  Any
-attempt otherwise to copy, modify, sublicense, link with, or
-distribute the Library is void, and will automatically terminate your
-rights under this License.  However, parties who have received copies,
-or rights, from you under this License will not have their licenses
-terminated so long as such parties remain in full compliance.
-
-  9. You are not required to accept this License, since you have not
-signed it.  However, nothing else grants you permission to modify or
-distribute the Library or its derivative works.  These actions are
-prohibited by law if you do not accept this License.  Therefore, by
-modifying or distributing the Library (or any work based on the
-Library), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Library or works based on it.
-
-  10. Each time you redistribute the Library (or any work based on the
-Library), the recipient automatically receives a license from the
-original licensor to copy, distribute, link with or modify the Library
-subject to these terms and conditions.  You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties with
-this License.
-
-  11. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License.  If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Library at all.  For example, if a patent
-license would not permit royalty-free redistribution of the Library by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Library.
-
-If any portion of this section is held invalid or unenforceable under any
-particular circumstance, the balance of the section is intended to apply,
-and the section as a whole is intended to apply in other circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system which is
-implemented by public license practices.  Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
-  12. If the distribution and/or use of the Library is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Library under this License may add
-an explicit geographical distribution limitation excluding those countries,
-so that distribution is permitted only in or among countries not thus
-excluded.  In such case, this License incorporates the limitation as if
-written in the body of this License.
-
-  13. The Free Software Foundation may publish revised and/or new
-versions of the Lesser General Public License from time to time.
-Such new versions will be similar in spirit to the present version,
-but may differ in detail to address new problems or concerns.
-
-Each version is given a distinguishing version number.  If the Library
-specifies a version number of this License which applies to it and
-"any later version", you have the option of following the terms and
-conditions either of that version or of any later version published by
-the Free Software Foundation.  If the Library does not specify a
-license version number, you may choose any version ever published by
-the Free Software Foundation.
-
-  14. If you wish to incorporate parts of the Library into other free
-programs whose distribution conditions are incompatible with these,
-write to the author to ask for permission.  For software which is
-copyrighted by the Free Software Foundation, write to the Free
-Software Foundation; we sometimes make exceptions for this.  Our
-decision will be guided by the two goals of preserving the free status
-of all derivatives of our free software and of promoting the sharing
-and reuse of software generally.
-
-			    NO WARRANTY
-
-  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
-WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
-EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
-OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
-KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
-LIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
-THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
-
-  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
-WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
-AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
-FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
-CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
-LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
-RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
-FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
-SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
-DAMAGES.
-
-		     END OF TERMS AND CONDITIONS
-
-           How to Apply These Terms to Your New Libraries
-
-  If you develop a new library, and you want it to be of the greatest
-possible use to the public, we recommend making it free software that
-everyone can redistribute and change.  You can do so by permitting
-redistribution under these terms (or, alternatively, under the terms of the
-ordinary General Public License).
-
-  To apply these terms, attach the following notices to the library.  It is
-safest to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least the
-"copyright" line and a pointer to where the full notice is found.
-
-    <one line to give the library's name and a brief idea of what it does.>
-    Copyright (C) <year>  <name of author>
-
-    This library is free software; you can redistribute it and/or
-    modify it under the terms of the GNU Lesser General Public
-    License as published by the Free Software Foundation; either
-    version 2.1 of the License, or (at your option) any later version.
-
-    This library is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-    Lesser General Public License for more details.
-
-    You should have received a copy of the GNU Lesser General Public
-    License along with this library; if not, write to the Free Software
-    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-
-Also add information on how to contact you by electronic and paper mail.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the library, if
-necessary.  Here is a sample; alter the names:
-
-  Yoyodyne, Inc., hereby disclaims all copyright interest in the
-  library `Frob' (a library for tweaking knobs) written by James Random Hacker.
-
-  <signature of Ty Coon>, 1 April 1990
-  Ty Coon, President of Vice
-
-That's all there is to it!
-
-

+ 0 - 25
fcl/COPYING.FPC

@@ -1,25 +0,0 @@
-This is the file COPYING.FPC, it applies to the Free Pascal Run-Time Library 
-(RTL) and packages (packages) distributed by members of the Free Pascal 
-Development Team.
-
-The source code of the Free Pascal Runtime Libraries and packages are 
-distributed under the Library GNU General Public License 
-(see the file COPYING) with the following modification:
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent modules,
-and to copy and distribute the resulting executable under terms of your choice,
-provided that you also meet, for each linked independent module, the terms
-and conditions of the license of that module. An independent module is a module
-which is not derived from or based on this library. If you modify this
-library, you may extend this exception to your version of the library, but you are
-not obligated to do so. If you do not wish to do so, delete this exception
-statement from your version.
-
-If you didn't receive a copy of the file COPYING, contact:
-      Free Software Foundation
-      675 Mass Ave
-      Cambridge, MA  02139
-      USA
-

+ 0 - 30
fcl/dbtests/dbtestframework.pas

@@ -1,30 +0,0 @@
-program dbtestframework;
-
-{$IFDEF FPC}
-  {$mode objfpc}{$H+}
-{$ENDIF}
-
-{$APPTYPE CONSOLE}
-
-uses
-  SysUtils,
-  fpcunit, testregistry, testreport,
-  toolsunit,
-  testbasics, testsqlfieldtypes, testdbbasics;
-  
-var
-  FXMLResultsWriter: TXMLResultsWriter;
-  testResult: TTestResult;
-begin
-  testResult := TTestResult.Create;
-  FXMLResultsWriter := TXMLResultsWriter.Create;
-  try
-    testResult.AddListener(FXMLResultsWriter);
-    FXMLResultsWriter.WriteHeader;
-    GetTestRegistry.Run(testResult);
-    FXMLResultsWriter.WriteResult(testResult);
-  finally
-    testResult.Free;
-    FXMLResultsWriter.Free;
-  end;
-end.

+ 0 - 2340
fcl/shedit/Makefile

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

+ 0 - 22
fcl/shedit/Makefile.fpc

@@ -1,22 +0,0 @@
-#
-#   Makefile.fpc for XML for FCL
-#
-
-[package]
-main=fcl
-
-[target]
-units=doc_text shedit sh_xml sh_pas
-exampledirs=gtk
-
-[compiler]
-options=-S2
-
-[install]
-fpcpackage=y
-
-[default]
-fpcdir=../..
-
-[rules]
-.NOTPARALLEL:

+ 0 - 130
fcl/shedit/README

@@ -1,130 +0,0 @@
-# $Id: README,v 1.1 2000/07/13 06:33:44 michael Exp $
-
-! Note: This version is not completed yet !
-
-
-This is SHEdit for Free Pascal, an object-oriented text editor engine with
-support for:
-- syntax highlighting
-- clipboard (cut, copy & paste)
-- undo/redo buffers
-- fully customizable behaviour
-- multiple views (editors) for a single document at a time
-- completely independent of any toolkit; it even can be used both in text and
-  in graphics modes
-
-
-Architecture
-------------
-
-There are three basic classes in SHEdit:
-- Document
-- Editor
-- Renderer
-
-The document class (TTextDoc) in doc_text.pp is quite simple, it just
-stores a text (ASCII) document as a collection of strings.
-What you have to know about TTextDoc is that it stores a 32-bit value for
-each line, which it doesn't modify on its own. The lower 8 bits of these
-LineFlags are reserved for syntax highlighting (SH): The first bit determines
-if the other SH flags are valid; and the remaining 7 bits can be used to
-indicate SH states which do not end at the end of the line.
-
-
-The editor itself is encapsulated in the class TSHTextEdit (in unit shedit.pp).
-It can only work in conjunction with a renderer, which is responsible for
-displaying the document. When you create a TSHTextEdit, the constructor expects
-two arguments: The document to use, and the renderer to use.
-
-The renderer itself is declared as an abstract interface class (i.e. all
-methods are 'virtual abstract'), this interface is called ISHRenderer.
-When you want to use SHEdit in your own programs, you will have to provide
-an implementation of the methods declared in ISHRenderer. There is a reference
-implementation for GTK, gtkdemo.
-
-
-Renderer interface
-------------------
-
-This interface is quite simple; just note that SHEdit expects all corrdinates
-relative to the upper left corner of the document (0/0), and it uses the
-cell size (width and height) of the characters as base unit. For example,
-the coordinate X=3/Y=2 references the fourth character in the third line.
-
-
-procedure InvalidateLines(y1, y2: Integer);
-  The renderer should initiate the redrawing of the lines between y1 and y2.
-  It is recommended to use the Invalidate commands of the underlying graphics
-  or windowing toolkit; but an implementation may choose to simply call
-  TSHTextEdit.DrawContent.
-
-procedure ClearRect(x1, y1, x2, y2: Integer);
-  The renderer must clear the given rectangle in the background (whitespace)
-  color.
-
-procedure DrawTextLine(x1, x2, y: Integer; s: PChar);
-  This is the most complex method: The renderer has to draw a complete line of
-  text, which is given in "s". The vertical position is line "y", x1 and x2
-  specify a horizontal clipping span.
-  "s" has a very special format, as it contains highlighting tags:
-  You can process "s" character by character, as usual. BUT when you encounter
-  a special escape character (LF_Escape, defined in doc_text.pp) the renderer
-  has to switch to the font style/color given in the following character. This
-  character is just a index in the range ASCII #1..#255, the renderer must know
-  himself what to do with this index. These highlighting tags are generated by
-  a special highlighting function, see below.
-
-procedure ShowCursor(x, y: Integer);
-procedure HideCursor(x, y: Integer);
-  The cursor should be drawn or be hidden, its position is given in "x" and
-  "y". SHEdit does its own reference counting, i.e. it won't call HideCursor
-  for an already invisible cursor, and it won't call ShowCursor for a visible
-  cursor. If the cursor position changes, SHEdit will call HideCursor with
-  the old position and then ShowCursor with the new position as arguments.
-
-function GetVertPos: Integer;
-  This function shall return the vertical scrolling position of the window
-  which is managed by the renderer.
-
-procedure SetVertPos(y: Integer);
-  Sets the vertical scrolling position.
-
-function GetPageHeight: Integer;
-  Gets the height of the visible part of the document.
-
-procedure SetLineCount(count: Integer);
-  SHEdit calls this method if the number of lines in the document has changed.
-
-function GetClipboard: String;
-  GetClipboard is called by SHEdit if the user wants to paste the contents of
-  the clipboard into the document. GetClipboard must check if the system's
-  clipboard contains valid text data and return it; if not, it has to return
-  an empty string.
-
-procedure SetClipboard(Content: String);
-  This method is used to set the content of the clipboard after a
-  "ClipboardCut" or "ClipboardCopy" action occured.
-
-
-
-Highlighters and document type specific features
-------------------------------------------------
-
-TSHTextEdit does not perform any syntax highlighting, and it always acts as a
-normal text editor without any fancy extra feature.
-This can easily be changed by deriving your own class from TSHTextEdit.
-Currently there are two special editor classes: TSHPasEdit (unit sh_pas.pp) and
-TSHXMLEdit (unit sh_xml.pp).
-
-TSHPasEdit supports syntax highlighting for Pascal sources, and it adds auto
-indent facilities to SHEdit (currently, when you press the Enter key, it will
-add as many spaces as the previous line to the new created line).
-
-TSHXMLEdit just adds syntax highlighting for XML and DTD documents.
-
-Please note that currently there is no framework for handling with different
-kinds of documents. It is up to the program which wants to use SHEdit to
-determine which editor class to use.
-
-
-- Sebastian Guenther, [email protected]

+ 0 - 18
fcl/shedit/classes.txt

@@ -1,18 +0,0 @@
-TObject
-  TCollectionItem
-     TKeyboardActionDescr		Assigns names to keyboard actions
-     TShortcut				Connects a keyboard shortcut with an action description
-  TUndoInfo				Generic undo information
-    TUndoEdit				Undo informations for inserted characters
-    TUndoDelLeft			Undo informations for left deleted characters
-    TUndoDelRight			Undo informations for right deleted characters
-  TSelection				Holds a selection (start and end coordinates)
-  ISHWidget				Generic SH widget interface
-    TGtkSHWidget			SHWidget implementation for GTK+
-    <other platform dependent
-     implementations>
-  TSHTextEdit				Generic editor engine
-    TSHPasEdit				Editor engine for Pascal source files
-    TSHXMLEdit				Editor engine for XML files
-    <other classes and highlighters for
-     additional languages>

+ 0 - 407
fcl/shedit/doc_text.pp

@@ -1,407 +0,0 @@
-{
-
-    "SHEdit" - Text editor with syntax highlighting
-    Copyright (C) 1999-2000 by Sebastian Guenther ([email protected])
-
-    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.
-}
-
-// Generic text document class
-
-unit doc_text;
-
-{$MODE objfpc}
-{$H+}
-
-interface
-
-uses Classes;
-
-type
-  PLine = ^TLine;
-  TLine = record
-    info: Pointer;
-    flags: LongWord;
-    s: AnsiString;
-  end;
-
-  PLineArray = ^TLineArray;
-  TLineArray = array[0..MaxInt div SizeOf(TLine) - 1] of TLine;
-
-const
-
-  {TLine.flags Syntax Highlighting Flags}
-  LF_SH_Valid      = $01;
-  LF_SH_Multiline1 = $02;
-  LF_SH_Multiline2 = $04;
-  LF_SH_Multiline3 = $08;
-  LF_SH_Multiline4 = $10;
-  LF_SH_Multiline5 = $20;
-  LF_SH_Multiline6 = $40;
-  LF_SH_Multiline7 = $80;
-
-  {Escape character for syntax highlighting (marks start of sh sequence,
-   next character is color/sh element number, beginning at #1}
-  LF_Escape = #10;
-
-type
-
-  TTextDoc = class;
-
-  TDocLineEvent = procedure(Sender: TTextDoc; Line: Integer) of object;
-
-  TViewInfo = class(TCollectionItem)
-  public
-    OnLineInsert, OnLineRemove, OnLineChange: TDocLineEvent;
-    OnClearDocument, OnModifiedChange: TNotifyEvent;
-  end;
-
-  TTextDoc = class
-  protected
-    RefCount: LongInt;
-    FLineEnding: String;
-    FModified: Boolean;
-    FLineWidth,
-    FLineCount: LongInt;
-    FLines: PLineArray;
-    FViewInfos: TCollection;
-    procedure SetModified(AModified: Boolean);
-    function  GetLineText(LineNumber: Integer): String;
-    procedure SetLineText(LineNumber: Integer; const NewText: String);
-    function  GetLineLen(LineNumber: Integer): Integer;
-    function  GetLineFlags(LineNumber: Integer): Byte;
-    procedure SetLineFlags(LineNumber: Integer; NewFlags: Byte);
-  public
-    constructor Create;
-    destructor Destroy; override;
-    procedure AddRef;
-    procedure Release;
-    procedure Clear;
-    procedure LoadFromStream(AStream: TStream);
-    procedure LoadFromFile(const filename: String);
-    procedure SaveToStream(AStream: TStream);
-    procedure SaveToFile(const filename: String);
-
-    procedure InsertLine(BeforeLine: Integer; const s: String);
-    procedure AddLine(const s: String);
-    procedure RemoveLine(LineNumber: Integer);
-
-    property LineEnding: String read FLineEnding write FLineEnding;
-    property Modified: Boolean read FModified write SetModified;
-    property LineWidth: Integer read FLineWidth;
-    property LineCount: Integer read FLineCount;
-    property LineText[LineNumber: Integer]: String read GetLineText write SetLineText;
-    property LineLen[LineNumber: Integer]: Integer read GetLineLen;
-    property LineFlags[LineNumber: Integer]: Byte read GetLineFlags write SetLineFlags;
-
-    property ViewInfos: TCollection read FViewInfos;
-  end;
-
-
-implementation
-
-uses Strings;
-
-
-constructor TTextDoc.Create;
-begin
-  FModified := False;
-{$IFDEF Unix}
-  LineEnding := #10;
-{$ELSE}
-  LineEnding := #13#10;
-{$ENDIF}
-  FLines := nil;
-  FLineCount := 0;
-  FLineWidth := 0;
-  FViewInfos := TCollection.Create(TViewInfo);
-  RefCount := 1;
-end;
-
-destructor TTextDoc.Destroy;
-var
-  i: Integer;
-begin
-  if Assigned(FLines) then
-  begin
-    for i := 0 to FLineCount - 1 do
-      SetLength(FLines^[i].s, 0);
-    FreeMem(FLines);
-  end;
-
-  FViewInfos.Free;
-  inherited Destroy;
-end;
-
-procedure TTextDoc.AddRef;
-begin
-  Inc(RefCount);
-end;
-
-procedure TTextDoc.Release;
-begin
-  ASSERT(RefCount > 0);
-  Dec(RefCount);
-  if RefCount = 0 then
-    Self.Free;
-end;
-
-procedure TTextDoc.Clear;
-var
-  i: Integer;
-begin
-  if Assigned(FLines) then
-  begin
-    for i := 0 to FLineCount - 1 do
-      SetLength(FLines^[i].s, 0);
-    FreeMem(FLines);
-    FLineCount:=0;
-  end;
-
-  FLineWidth:=0;
-
-  for i := 0 to FViewInfos.Count - 1 do
-    if Assigned(TViewInfo(FViewInfos.Items[i]).OnClearDocument) then
-      TViewInfo(FViewInfos.Items[i]).OnClearDocument(Self);
-end;
-
-procedure TTextDoc.InsertLine(BeforeLine: Integer; const s: String);
-var
-  l: PLine;
-  i: Integer;
-begin
-  if (BeforeLine < 0) or (BeforeLine > FLineCount) then
-    exit;  // !!!: throw an exception
-
-  ReAllocMem(FLines, (FLineCount + 1) * SizeOf(TLine));
-  Move(FLines^[BeforeLine], FLines^[BeforeLine + 1], (FLineCount - BeforeLine) * SizeOf(TLine));
-  l := @FLines^[BeforeLine];
-  FillChar(l^, SizeOf(TLine), 0);
-  l^.s := s;
-
-  Inc(FLineCount);
-  if Length(s) > FLineWidth then
-    FLineWidth := Length(s);
-
-  for i := 0 to FViewInfos.Count - 1 do
-    if Assigned(TViewInfo(FViewInfos.Items[i]).OnLineInsert) then
-      TViewInfo(FViewInfos.Items[i]).OnLineInsert(Self, BeforeLine);
-end;
-
-procedure TTextDoc.AddLine(const s: String);
-begin
-  InsertLine(FLineCount, s);
-end;
-
-procedure TTextDoc.RemoveLine(LineNumber: Integer);
-var
-  i: Integer;
-begin
-  SetLength(FLines^[LineNumber].s, 0);  // Free the string for this line
-  ReAllocMem(FLines, (FLineCount - 1) * SizeOf(TLine));
-  if LineNumber < FLineCount - 1 then
-    Move(FLines^[LineNumber + 1], FLines^[LineNumber],(FLineCount - LineNumber - 1) * SizeOf(TLine));
-  Dec(FLineCount);
-
-  for i := 0 to FViewInfos.Count - 1 do
-    if Assigned(TViewInfo(FViewInfos.Items[i]).OnLineRemove) then
-      TViewInfo(FViewInfos.Items[i]).OnLineRemove(Self, LineNumber);
-  Modified := True;
-end;
-
-procedure TTextDoc.LoadFromStream(AStream: TStream);
-
-  procedure ProcessLine(const s: String);
-  var
-    s2: String;
-    i: Integer;
-  begin
-    // Expand tabs to spaces
-    s2 := '';
-    for i := 1 to Length(s) do
-      if s[i] = #9 then
-      begin
-        repeat
-          s2 := s2 + ' '
-        until (Length(s2) mod 8) = 0;
-      end else
-        s2 := s2 + s[i];
-    AddLine(s2);
-  end;
-
-var
-  NewData: array[0..1023] of Byte;
-  buffer, p: PChar;
-  BytesInBuffer, BytesRead, OldBufSize, LastEndOfLine, i, LineLength: Integer;
-  line: String;
-begin
-  Clear;
-  SetLength(line, 0);
-  BytesInBuffer := 0;
-  buffer := nil;
-
-  while True do
-  begin
-    BytesRead := AStream.Read(NewData, SizeOf(NewData));
-    if BytesRead <= 0 then
-      break;
-    OldBufSize := BytesInBuffer;
-
-    // Append the new received data to the read buffer
-    Inc(BytesInBuffer, BytesRead);
-    ReallocMem(buffer, BytesInBuffer);
-    Move(NewData, buffer[OldBufSize], BytesRead);
-
-    LastEndOfLine := 0;
-    if OldBufSize > 0 then
-      i := OldBufSize - 1
-    else
-      i := 0;
-
-    while i <= BytesInBuffer - 2 do
-    begin
-      if (buffer[i] = #13) or (buffer[i] = #10) then
-      begin
-        LineLength := i - LastEndOfLine;
-        SetLength(line, LineLength);
-        if LineLength > 0 then
-          Move(buffer[LastEndOfLine], line[1], LineLength);
-
-        ProcessLine(line);
-
-        if ((buffer[i] = #13) and (buffer[i + 1] = #10)) or
-           ((buffer[i] = #10) and (buffer[i + 1] = #13)) then
-          Inc(i);
-        LastEndOfLine := i + 1;
-      end;
-      Inc(i);
-    end;
-
-    if LastEndOfLine > 0 then
-    begin
-      // Remove all processed lines from the buffer
-      Dec(BytesInBuffer, LastEndOfLine);
-      GetMem(p, BytesInBuffer);
-      Move(buffer[LastEndOfLine], p^, BytesInBuffer);
-      FreeMem(buffer);
-      buffer := p;
-    end;
-  end;
-
-  if BytesInBuffer > 0 then
-    if buffer[BytesInBuffer - 1] in [#13, #10] then
-    begin
-      SetLength(line, BytesInBuffer - 1);
-      if BytesInBuffer > 1 then
-        Move(buffer^, line[1], BytesInBuffer - 1);
-      ProcessLine(line);
-      ProcessLine('');
-    end else
-    begin
-      SetLength(line, BytesInBuffer);
-      if BytesInBuffer > 1 then
-        Move(buffer^, line[1], BytesInBuffer);
-      ProcessLine(line);
-    end;
-
-  if Assigned(buffer) then
-    FreeMem(buffer);
-end;
-
-
-procedure TTextDoc.LoadFromFile(const filename: String);
-var
-  stream: TFileStream;
-begin
-  stream := TFileStream.Create(filename, fmOpenRead);
-  LoadFromStream(stream);
-  stream.Free;
-end;
-
-procedure TTextDoc.SaveToStream(AStream: TStream);
-var
-  i: Integer;
-begin
-  for i := 0 to FLineCount - 2 do
-  begin
-    AStream.Write(FLines^[i].s, Length(FLines^[i].s));
-    AStream.Write(FLineEnding, Length(FLineEnding));
-  end;
-  if FLineCount > 0 then
-    AStream.Write(FLines^[FLineCount - 1].s, Length(FLines^[FLineCount - 1].s));
-end;
-
-procedure TTextDoc.SaveToFile(const filename: String);
-var
-  stream: TFileStream;
-begin
-  stream := TFileStream.Create(filename, fmCreate);
-  SaveToStream(stream);
-  stream.Free;
-end;
-
-procedure TTextDoc.SetModified(AModified: Boolean);
-var
-  i: Integer;
-begin
-  if AModified = FModified then
-    exit;
-  FModified := AModified;
-
-  for i := 0 to FViewInfos.Count - 1 do
-    if Assigned(TViewInfo(FViewInfos.Items[i]).OnModifiedChange) then
-      TViewInfo(FViewInfos.Items[i]).OnModifiedChange(Self);
-end;
-
-function TTextDoc.GetLineText(LineNumber: Integer): String;
-begin
-  if (LineNumber < 0) or (LineNumber >= FLineCount) then
-    Result := ''
-  else
-    Result := FLines^[LineNumber].s;
-end;
-
-procedure TTextDoc.SetLineText(LineNumber: Integer; const NewText: String);
-var
-  i: Integer;
-begin
-  if FLines^[LineNumber].s <> NewText then
-  begin
-    FLines^[LineNumber].s := NewText;
-    if Length(NewText) > FLineWidth then
-      FLineWidth := Length(NewText);
-    Modified := True;
-    for i := 0 to FViewInfos.Count - 1 do
-      if Assigned(TViewInfo(FViewInfos.Items[i]).OnLineChange) then
-        TViewInfo(FViewInfos.Items[i]).OnLineChange(Self, LineNumber);
-  end;
-end;
-
-function TTextDoc.GetLineLen(LineNumber: Integer): Integer;
-begin
-  if (LineNumber < 0) or (LineNumber >= FLineCount) then
-    Result := 0
-  else
-    Result := Length(FLines^[LineNumber].s);
-end;
-
-function TTextDoc.GetLineFlags(LineNumber: Integer): Byte;
-begin
-  if (LineNumber < 0) or (LineNumber >= FLineCount) then
-    Result := 0
-  else
-    Result := FLines^[LineNumber].flags;
-end;
-
-procedure TTextDoc.SetLineFlags(LineNumber: Integer; NewFlags: Byte);
-begin
-  FLines^[LineNumber].flags := NewFlags;
-end;
-
-
-end.

+ 0 - 258
fcl/shedit/drawing.inc

@@ -1,258 +0,0 @@
-{
-
-    "SHEdit" - Text editor with syntax highlighting
-    Copyright (C) 1999-2000 by Sebastian Guenther ([email protected])
-
-    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.
-}
-
-
-// Drawing code of TSHTextEdit (renderer for syntax highlighting engine);
-// also handles cursor drawing
-
-
-procedure TSHTextEdit.DoHighlighting(var flags: Byte; source, dest: PChar);
-begin
-  StrCopy(dest, source);
-end;
-
-function TSHTextEdit.CalcSHFlags(FlagsIn: Byte; source: String): Byte;
-var
-  s: PChar;
-  flags: Byte;
-begin
-  GetMem(s, Length(source) * 3 + 4);
-  flags := FlagsIn;
-  DoHighlighting(flags, PChar(source), s);
-  FreeMem(s, Length(source) * 3 + 4);
-  Result := flags;
-end;
-
-procedure TSHTextEdit.HideCursor;
-begin
-  Dec(CursorVisible);
-  if CursorVisible >= 0 then
-    FWidget.HideCursor(CursorX, CursorY);
-end;
-
-procedure TSHTextEdit.ShowCursor;
-begin
-  Inc(CursorVisible);
-  if CursorVisible = 1 then
-    FWidget.ShowCursor(CursorX, CursorY);
-end;
-
-
-procedure TSHTextEdit.ChangeInLine(line: Integer);
-var
-  CurLine: Integer;
-  OldFlags, NewFlags: Byte;
-begin
-  // Determine how many lines must be redrawn
-
-  CurLine := line;
-  if CurLine = 0 then
-    NewFlags := 0
-  else
-    NewFlags := FDoc.LineFlags[CurLine - 1];
-
-  while CurLine < FDoc.LineCount - 1 do begin
-    NewFlags := CalcSHFlags(NewFlags, FDoc.LineText[CurLine]);
-    OldFlags := FDoc.LineFlags[CurLine + 1] and not LF_SH_Valid;
-    FDoc.LineFlags[CurLine + 1] := NewFlags or LF_SH_Valid;
-    if OldFlags = (NewFlags and not LF_SH_Valid) then break;
-    Inc(CurLine);
-  end;
-
-  // Redraw all lines with changed SH flags
-  FWidget.InvalidateRect(FWidget.HorzPos, line, FWidget.PageWidth, (CurLine - line) + 1);
-end;
-
-
-procedure TSHTextEdit.DrawContent(x, y, w, h: Integer);
-var
-  x2, y2: Integer;
-
-  procedure PostprocessOutput(py: Integer);
-  begin
-    // Erase free space below the text area
-    if py < y2 then
-      FWidget.ClearRect(x, py, w, y2 - py);
-
-    if (FCursorX >= x) and (FCursorY >= y) and
-      (FCursorX <= x2) and (FCursorY <= y2) then
-      ShowCursor;
-  end;
-
-  // If Lenght(s) < x, add as many spaces to s so that x will be at
-  // the end of s.
-  procedure ProvideSpace(var s: String; x: Integer);
-  begin
-    while Length(s) < x do
-      s := s + ' ';
-  end;
-
-var
-  i, cx, LineNumber, CheckLine: Integer;
-  OrigStr, s, s2: PChar;
-  spos, smem: Integer;
-  flags: Byte;
-  InSel: Boolean;
-  LastCol: Char;
-  LineWithSpace: String;        // used for virtual whitespace expanding
-
-begin
-
-  if x < 0 then begin
-    Inc(w, x);
-    x := 0;
-  end;
-  if y < 0 then begin
-    Inc(h, y);
-    y := 0;
-  end;
-  if (w < 0) or (h < 0) then exit;
-
-  x2 := x + w;
-  y2 := y + h;
-
-  if (FCursorX >= x) and (FCursorY >= y) and
-    (FCursorX <= x2) and (FCursorY <= y2) then
-    //HideCursor;
-    Dec(CursorVisible);
-
-  if (FDoc = nil) or (FDoc.LineCount <= y) then begin
-    PostprocessOutput(y);
-    exit;
-  end;
-
-  LineNumber := y;
-
-  // Check if syntax highlighting flags are valid:
-  if (FDoc.LineFlags[LineNumber] and LF_SH_Valid) <> 0 then
-    flags := FDoc.LineFlags[LineNumber] and not LF_SH_Valid
-  else begin
-    // search for last valid line before the first line to be drawn
-    CheckLine := LineNumber;
-    while (CheckLine >= 0) and
-      ((FDoc.LineFlags[CheckLine] and LF_SH_Valid) = 0) do Dec(CheckLine);
-    if CheckLine >= 0 then begin
-      flags := FDoc.LineFlags[CheckLine] and not LF_SH_Valid;
-      // Recalc SH flags for all lines between last valid and first visible line
-      while (CheckLine < LineNumber) do begin
-        flags := CalcSHFlags(flags, FDoc.LineText[CheckLine]);
-        FDoc.LineFlags[CheckLine] := flags or LF_SH_Valid;
-        Inc(CheckLine);
-      end;
-    end else
-      flags := 0;
-  end;
-
-
-  // if FSel.IsValid then writeln('Selection: ',FSel.OStartX,',',FSel.OStartY,'-',FSel.OEndX,',',FSel.OEndY);
-
-  while (LineNumber < FDoc.LineCount) and (LineNumber <= y2) do begin
-    i := 0;
-
-    // Do virtual whitespace expanding
-    LineWithSpace := FDoc.LineText[LineNumber];
-    if LineNumber = FSel.OStartY then
-      ProvideSpace(LineWithSpace, FSel.OStartX);
-    if LineNumber = FSel.OEndY then
-      ProvideSpace(LineWithSpace, FSel.OEndX);
-    if LineNumber = FCursorY then
-      ProvideSpace(LineWithSpace, FCursorX);
-
-    // Call syntax highlighter for this line
-
-    smem := Length(LineWithSpace) * 3 + 8;
-    GetMem(s, smem);
-    FDoc.LineFlags[LineNumber] := flags or LF_SH_Valid;
-    OrigStr := PChar(LineWithSpace);
-    DoHighlighting(flags, OrigStr, s);
-
-    // Handle current selection
-    if FSel.IsValid then
-      if (LineNumber > FSel.OStartY) and (LineNumber < FSel.OEndY) then begin
-        ASSERT(smem > StrLen(OrigStr) + 2);
-        s[0] := LF_Escape;
-        s[1] := Chr(shSelected);
-        StrCopy(@s[2], OrigStr);
-      end else if OrigStr[0] = #0 then begin
-        if LineNumber = FSel.OStartY then begin
-          ASSERT(smem >= 3);
-          s[0] := LF_Escape;
-          s[1] := Chr(shSelected);
-          s[2] := #0;
-        end;
-      end else if ((LineNumber = FSel.OStartY) or (LineNumber = FSel.OEndY))
-        and not FSel.IsEmpty then begin
-        s2 := StrNew(s);
-        spos := 0;
-        i := 0;
-        cx := 0;
-        if LineNumber > FSel.OStartY then begin
-          ASSERT(smem >= 2);
-          s[0] := LF_Escape;
-          s[1] := Chr(shSelected);
-          InSel := True;
-          spos := 2;
-        end else
-          InSel := False;
-        LastCol := Chr(shDefault);
-        while True do begin
-          ASSERT(i <= StrLen(s2));
-          if s2[i] = LF_Escape then begin
-            LastCol := s2[i + 1];
-            if not InSel then begin
-              ASSERT(smem > spos + 1);
-              s[spos] := LF_Escape;
-              s[spos + 1] := LastCol;
-              Inc(spos, 2);
-            end;
-            Inc(i, 2);
-          end else begin
-            if InSel then begin
-              if (LineNumber = FSel.OEndY) and (cx = FSel.OEndX) then begin
-                ASSERT(smem > spos + 1);
-                s[spos] := LF_Escape;
-                s[spos + 1] := LastCol;
-                Inc(spos, 2);
-                InSel := False;
-              end;
-            end else
-              if (LineNumber = FSel.OStartY) and (cx = FSel.OStartX) then begin
-                ASSERT(smem > spos + 1);
-                s[spos] := LF_Escape;
-                s[spos + 1] := Chr(shSelected);
-                Inc(spos, 2);
-                InSel := True;
-              end;
-            if s2[i] = #0 then break;    // only exit of 'while' loop!
-            ASSERT(smem > spos);
-            s[spos] := s2[i];
-            Inc(spos);
-            Inc(i);
-            Inc(cx);
-          end;
-        end;
-        ASSERT(smem > spos);
-        s[spos] := #0;
-        StrDispose(s2);
-      end;
-
-    FWidget.DrawTextLine(x, x2, LineNumber, s);
-
-    FreeMem(s);
-    Inc(LineNumber);
-  end;
-
-  PostprocessOutput(LineNumber);
-end;
-
-

+ 0 - 9
fcl/shedit/fpmake.inc

@@ -1,9 +0,0 @@
-{ Make shedit directory and all subdirectories }
-{ FULLFCL will be defined if included from fcl directory }
-
-Targets.ResetDefaults;  
-Targets.DefaultDir:='shedit';
-T:=Targets.AddUnit('doc_text');
-T:=Targets.AddUnit('shedit');
-T:=Targets.AddUnit('sh_xml');
-T:=Targets.AddUnit('sh_pas');

+ 0 - 2996
fcl/shedit/gtk/Makefile

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

+ 0 - 20
fcl/shedit/gtk/Makefile.fpc

@@ -1,20 +0,0 @@
-#
-#   Makefile.fpc for GTK shedit
-#
-
-[target]
-units=gtkshedit
-programs=gtkdemo
-
-[require]
-packages=fcl gtk
-
-[install]
-fpcpackage=y
-
-[default]
-fpcdir=../../..
-
-
-[rules]
-.NOTPARALLEL:

+ 0 - 109
fcl/shedit/gtk/gtkdemo.pp

@@ -1,109 +0,0 @@
-{
-
-    GTK (demo) implementation for shedit
-    Copyright (C) 1999-2000 by Sebastian Guenther ([email protected])
-
-    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+}
-
-program GTKDemo;
-uses
-  SysUtils, Classes,
-  Doc_text, shedit, sh_pas, sh_xml,
-  GDK, GTK, GtkSHEdit;
-
-
-function CreateTextEditWidget(ADoc: TTextDoc): TGtkSHWidget;
-begin
-  Result := TGtkSHWidget.Create(ADoc, TSHTextEdit);
-end;
-
-function CreatePasEditWidget(ADoc: TTextDoc): TGtkSHWidget;
-var
-  e: TSHPasEdit;
-begin
-  Result := TGtkSHWidget.Create(ADoc, TSHPasEdit);
-  e := Result.Edit as TSHPasEdit;
-
-  e.shSymbol     := Result.AddSHStyle('Symbol',        colBrown,       colDefault, fsNormal);
-  e.shKeyword    := Result.AddSHStyle('Keyword',       colBlack,       colDefault, fsBold);
-  e.shComment    := Result.AddSHStyle('Comment',       colDarkCyan,    colDefault, fsItalics);
-  e.shDirective  := Result.AddSHStyle('Directive',     colRed,         colDefault, fsItalics);
-  e.shNumbers    := Result.AddSHStyle('Numbers',       colDarkMagenta, colDefault, fsNormal);
-  e.shCharacters := Result.AddSHStyle('Characters',    colDarkBlue,    colDefault, fsNormal);
-  e.shStrings    := Result.AddSHStyle('Strings',       colBlue,        colDefault, fsNormal);
-  e.shAssembler  := Result.AddSHStyle('Assembler',     colDarkGreen,   colDefault, fsNormal);
-end;
-
-function CreateXMLEditWidget(ADoc: TTextDoc): TGtkSHWidget;
-var
-  e: TSHXMLEdit;
-begin
-  Result := TGtkSHWidget.Create(ADoc, TSHXMLEdit);
-  e := Result.Edit as TSHXMLEdit;
-
-  e.shTag        := Result.AddSHStyle('Tag',           colBlack,       colDefault, fsBold);
-  e.shTagName    := Result.AddSHStyle('Tag Name',      colBlack,       colDefault, fsBold);
-  e.shDefTagName := Result.AddSHStyle('Definition Tag Name', colDarkGreen, colDefault, fsBold);
-  e.shArgName    := Result.AddSHStyle('Argument Name', colBrown,       colDefault, fsNormal);
-  e.shString     := Result.AddSHStyle('String',        colBlue,        colDefault, fsNormal);
-  e.shReference  := Result.AddSHStyle('Reference',     colDarkMagenta, colDefault, fsNormal);
-  e.shInvalid    := Result.AddSHStyle('Invalid',       colRed,         colDefault, fsNormal);
-  e.shComment    := Result.AddSHStyle('Comment',       colDarkCyan,    colDefault, fsItalics);
-  e.shCDATA      := Result.AddSHStyle('CDATA',         colDarkGreen,   colDefault, fsNormal);
-end;
-
-
-var
-  MainWindow, Notebook: PGtkWidget;
-  Pages: array[0..2] of TGtkSHWidget;
-  PasDoc, XMLDoc, TxtDoc: TTextDoc;
-
-procedure OnMainWindowDestroyed; cdecl;
-begin
-  gtk_main_quit;
-end;
-
-begin
-
-  gtk_init(@argc, @argv);
-
-  // Create main window
-  MainWindow := gtk_window_new(GTK_WINDOW_TOPLEVEL);
-  gtk_widget_set_usize(MainWindow, 600, 400);
-  gtk_window_set_title(PGtkWindow(MainWindow), 'FPC SHEdit GTK Demo');
-  gtk_signal_connect(PGtkObject(MainWindow), 'destroy', GTK_SIGNAL_FUNC(@OnMainWindowDestroyed), nil);
-
-  // Set up documents
-  PasDoc := TTextDoc.Create; PasDoc.LoadFromFile('gtkdemo.pp');
-  XMLDoc := TTextDoc.Create; XMLDoc.LoadFromFile('simple.xml');
-  TxtDoc := TTextDoc.Create; TxtDoc.LoadFromFile('gtkshedit.pp');
-
-  // Create notebook pages (editor widgets)
-  Pages[0] := CreatePasEditWidget (PasDoc);
-  Pages[1] := CreateXMLEditWidget (XMLDoc);
-  Pages[2] := CreateTextEditWidget(TxtDoc);
-
-  // Create notebook
-  Notebook := gtk_notebook_new;
-  gtk_notebook_append_page(PGtkNotebook(Notebook), Pages[0].Widget, gtk_label_new('Pascal'));
-  gtk_notebook_append_page(PGtkNotebook(Notebook), Pages[1].Widget, gtk_label_new('XML'));
-  gtk_notebook_append_page(PGtkNotebook(Notebook), Pages[2].Widget, gtk_label_new('Text'));
-  gtk_container_add(PGtkContainer(MainWindow), Notebook);
-  gtk_widget_show(Notebook);
-  gtk_widget_show(MainWindow);
-  Pages[0].SetFocus;
-  gtk_main;
-
-  Pages[2].Free;
-  Pages[1].Free;
-  Pages[0].Free;
-end.

+ 0 - 586
fcl/shedit/gtk/gtkshedit.pp

@@ -1,586 +0,0 @@
-{
-
-    GTK implementation for SHEdit
-    Copyright (C) 1999-2000 by Sebastian Guenther ([email protected])
-
-    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 GtkSHEdit;
-interface
-
-{$MODE objfpc}
-{$H+}
-
-uses
-  SysUtils, Classes,
-  GDK, GTK,
-  doc_text, SHEdit;
-
-const
-  colBlack       = $000000;
-  colDarkBlue    = $000080;
-  colBlue        = $0000ff;
-  colDarkGreen   = $008000;
-  colGreen       = $00ff00;
-  colDarkCyan    = $008080;
-  colCyan        = $00ffff;
-  colBrown       = $800000;
-  colRed         = $ff0000;
-  colDarkMagenta = $800080;
-  colMagenta     = $ff00ff;
-  colDarkYellow  = $808000;
-  colYellow      = $ffff00;
-  colGray        = $808080;
-  colGrey        = colGray;
-  colLightGray   = $c0c0c0;
-  colLightGrey   = colLightGray;
-  colWhite       = $ffffff;
-  colInvalid     = $ff000000;
-  colDefault     = $ffffffff;
-
-type
-
-  TSHFontStyle = (fsNormal, fsBold, fsItalics, fsBoldItalics);
-
-  TSHStyle = record
-    Name: String[32];
-    Color, Background: LongWord;
-    FontStyle: TSHFontStyle;
-  end;
-
-  TSHStyleArray = array[1..255] of TSHStyle;  // Notice the 1!
-  PSHStyleArray = ^TSHStyleArray;
-
-
-  {This class is a kind of widget class which implements the ISHWidget
-   interface for drawing syntax highlighted text}
-  TGtkSHWidget = class(ISHWidget)
-  protected
-    SHStyles: PSHStyleArray;
-    SHStyleCount: Integer;              // # of currently registered styles
-    shWhitespace: Integer;
-    CurGCColor: LongWord;
-
-    hadj, vadj: PGtkAdjustment;
-    PaintBox: PGtkWidget;
-    FEdit: TSHTextEdit;
-    LeftIndent: Integer;
-    CharW, CharH: Integer;
-    Font: array[TSHFontStyle] of PGdkFont; // Fonts for content drawing
-    gc: PGdkGC;
-    GdkWnd: PGdkWindow;
-
-    procedure SetGCColor(AColor: LongWord);
-
-    // ISHWidget Implemenation:
-
-    procedure InvalidateRect(x, y, w, h: Integer); override;
-
-    // Drawing
-    procedure ClearRect(x, y, w, h: Integer); override;
-    procedure DrawTextLine(x1, x2, y: Integer; s: PChar); override;
-
-    // Cursor
-    procedure ShowCursor(x, y: Integer); override;
-    procedure HideCursor(x, y: Integer); override;
-
-    // Scrolling support
-    function  GetHorzPos: Integer; override;
-    procedure SetHorzPos(x: Integer); override;
-    function  GetVertPos: Integer; override;
-    procedure SetVertPos(y: Integer); override;
-    function  GetPageWidth: Integer; override;
-    function  GetPageHeight: Integer; override;
-    function  GetLineWidth: Integer; override;
-    procedure SetLineWidth(count: Integer); override;
-    function  GetLineCount: Integer; override;
-    procedure SetLineCount(count: Integer); override;
-
-    // Clipboard support
-    function  GetClipboard: String; override;
-    procedure SetClipboard(Content: String); override;
-
-  public
-    Widget: PGtkWidget;  // this is the outer editor widget
-
-    constructor Create(ADoc: TTextDoc; AEditClass: TSHTextEditClass);
-    destructor Destroy; override;
-
-    procedure SetFocus;
-
-    function  AddSHStyle(AName: String; AColor, ABackground: LongWord;
-      AStyle: TSHFontStyle): Integer;
-    property Edit: TSHTextEdit read FEdit;
-  end;
-
-
-implementation
-
-var
-  InternalClipboardContent: String;
-
-{*****************************************************************************
-                              GTK/GDK Callbacks
-*****************************************************************************}
-
-procedure TGtkSHWidget_Expose(GtkWidget: PGtkWidget; event: PGdkEventExpose;
-  widget: TGtkSHWidget); cdecl;
-var
-  x, y, w, h: Integer;
-begin
-  x := (event^.area.x - widget.LeftIndent) div widget.CharW;
-  y := event^.area.y div widget.CharH;
-  w := (event^.area.x + event^.area.width + widget.CharW - 1) div widget.CharW - x;
-  h := (event^.area.y + event^.area.height + widget.CharH - 1) div widget.CharH - y;
-//  WriteLn(Format('Expose(%d/%d, %dx%d) for %s', [x, y, w, h, FEdit.ClassName]));
-
-  widget.GdkWnd := widget.PaintBox^.window;
-  widget.GC := gdk_gc_new(widget.GdkWnd);
-  widget.CurGCColor := 0;         // Reset color, because we have a new GC!
-  gdk_gc_copy(widget.GC, PGtkStyle(widget.PaintBox^.thestyle)^.
-    fg_gc[widget.PaintBox^.state]);
-
-  widget.FEdit.AdjustCursorToRange;
-  widget.FEdit.DrawContent(x, y, w, h);
-end;
-
-
-function TGtkSHWidget_KeyPressed(GtkWidget: PGtkWidget; Event: PGdkEventKey;
-  widget: TGtkSHWidget): Integer; cdecl;
-var
-  KeyState,
-  KeyCode: LongWord;
-  KeyMods: TShiftState;
-begin
-  Result := 1;
-
-  case Event^.KeyVal of
-    GDK_Return       : KeyCode:=13;
-    GDK_KP_Insert    : KeyCode:=GDK_Insert;
-    GDK_KP_Home      : KeyCode:=GDK_Home;
-    GDK_KP_Left      : KeyCode:=GDK_Left;
-    GDK_KP_Up        : KeyCode:=GDK_Up;
-    GDK_KP_Right     : KeyCode:=GDK_Right;
-    GDK_KP_Down      : KeyCode:=GDK_Down;
-    GDK_KP_Page_Up   : KeyCode:=GDK_Page_Up;
-    GDK_KP_Page_Down : KeyCode:=GDK_Page_Down;
-    GDK_KP_End       : KeyCode:=GDK_End;
-    GDK_Scroll_Lock,
-    GDK_Num_Lock,
-    GDK_Shift_L..GDK_Hyper_R :
-      begin
-        // Don't let modifier keys trough as normal keys
-        // *** This doesn't work reliably! (sg)
-        exit;
-      end;
-  else
-    KeyCode:=Event^.KeyVal;
-  end;
-  KeyState:=Event^.State;
-
-  // WriteLn('KeyCode ', KeyCode,'   keystate ',KeyState);
-
-  // Calculate the Key modifiers (shiftstate)
-  KeyMods := [];
-  if (KeyState and 1) <> 0 then KeyMods := KeyMods + [ssShift];
-  if (KeyState and 2) <> 0 then KeyMods := KeyMods + [ssCaps];
-  if (KeyState and 4) <> 0 then KeyMods := KeyMods + [ssCtrl];
-  if (KeyState and 8) <> 0 then KeyMods := KeyMods + [ssAlt];
-  if (KeyState and $10) <> 0 then KeyMods := KeyMods + [ssNum];
-  if (KeyState and $40) <> 0 then KeyMods := KeyMods + [ssSuper];
-  if (KeyState and $80) <> 0 then KeyMods := KeyMods + [ssScroll];
-  if (KeyState and $100) <> 0 then KeyMods := KeyMods + [ssLeft];
-  if (KeyState and $200) <> 0 then KeyMods := KeyMods + [ssMiddle];
-  if (KeyState and $400) <> 0 then KeyMods := KeyMods + [ssRight];
-  if (KeyState and $2000) <> 0 then KeyMods := KeyMods + [ssAltGr];
-
-  widget.FEdit.KeyPressed(KeyCode,KeyMods);
-end;
-
-
-function TGtkSHWidget_ButtonPressEvent(GtkWidget: PGtkWidget;
-  event: PGdkEventButton; widget: TGtkSHWidget): Integer; cdecl;
-begin
-  widget.FEdit.CursorX := Round((event^.x - widget.LeftIndent) / widget.CharW);
-  widget.FEdit.CursorY := Trunc(event^.y) div widget.CharH;
-  widget.SetFocus;
-  Result := 1;
-end;
-
-
-function TGtkSHWidget_FocusInEvent(GtkWidget: PGtkWidget;
-  event: PGdkEventFocus; widget: TGtkSHWidget): Integer; cdecl;
-begin
-//  Writeln('focus in');
-  widget.FEdit.FocusIn;
-  result:=1;
-end;
-
-
-function TGtkSHWidget_FocusOutEvent(GtkWidget: PGtkWidget; event: PGdkEventFocus; widget: TGtkSHWidget): Integer; cdecl;
-begin
-//  Writeln('focus out');
-  widget.FEdit.FocusOut;
-  result:=1;
-end;
-
-
-{*****************************************************************************
-                                 TGtkSHWidget
-*****************************************************************************}
-
-constructor TGtkSHWidget.Create(ADoc: TTextDoc; AEditClass: TSHTextEditClass);
-var
-  lfd: String;    // Logical font descriptor
-  i: Integer;
-begin
-  inherited Create;
-
-  // Create fonts
-  for i := 0 to 3 do begin
-    lfd := '-*-courier-';
-    if (i and 1) <> 0 then lfd := lfd + 'bold'
-    else lfd := lfd + 'medium';
-    lfd := lfd + '-';
-    if (i and 2) <> 0 then lfd := lfd + 'i'
-    else lfd := lfd + 'r';
-    lfd := lfd + '-normal--14-*-*-*-*-*-iso8859-1';
-    Font[TSHFontStyle(i)] := gdk_font_load(PChar(lfd));
-  end;
-
-  CharW := gdk_char_width(Font[fsBold], ' ');
-  CharH := 14 {=FontHeight} + 3;   // *** find better way to determine max. cell height
-
-  LeftIndent := CharW;
-
-  // Create scrolled window and drawing area
-
-  hadj := PGtkAdjustment(gtk_adjustment_new(0, 0, 200, 1, 10, 100));
-  vadj := PGtkAdjustment(gtk_adjustment_new(0, 0, 200, 1, 10, 100));
-  Widget := gtk_scrolled_window_new(hadj, vadj);
-
-  PaintBox := gtk_drawing_area_new;
-
-  gtk_scrolled_window_add_with_viewport(PGtkScrolledWindow(Widget), PaintBox);
-  gtk_widget_show(PaintBox);
-
-  gtk_widget_set_flags(PGtkWidget(PaintBox),GTK_CAN_FOCUS);
-
-  gtk_signal_connect(PGtkObject(PaintBox), 'expose-event',
-    GTK_SIGNAL_FUNC(@TGtkSHWidget_Expose), self);
-  gtk_signal_connect_after(PGtkObject(PaintBox), 'key-press-event',
-    GTK_SIGNAL_FUNC(@TGtkSHWidget_Keypressed), self);
-  gtk_signal_connect(PGtkObject(PaintBox), 'button-press-event',
-    GTK_SIGNAL_FUNC(@TGtkSHWidget_ButtonPressEvent), self);
-  gtk_signal_connect_after(PGtkObject(PaintBox), 'focus-in-event',
-    GTK_SIGNAL_FUNC(@TGtkSHWidget_FocusInEvent), self);
-  gtk_signal_connect_after(PGtkObject(PaintBox), 'focus-out-event',
-    GTK_SIGNAL_FUNC(@TGtkSHWidget_FocusOutEvent), self);
-
-  gtk_widget_set_events(PGtkWidget(Paintbox),
-    GDK_EXPOSURE_MASK or GDK_KEY_PRESS_MASK or GDK_KEY_RELEASE_MASK or
-    GDK_BUTTON_PRESS_MASK or GDK_ENTER_NOTIFY_MASK or GDK_LEAVE_NOTIFY_MASK);
-
-  gtk_widget_show(Widget);
-
-
-  FEdit := AEditClass.Create(ADoc, Self);
-  shWhitespace      := AddSHStyle('Whitespace', colBlack, colWhite,    fsNormal);
-  FEdit.shDefault    := AddSHStyle('Default',    colBlack, colWhite,    fsNormal);
-  FEdit.shSelected   := AddSHStyle('Selected',   colWhite, colDarkBlue, fsNormal);
-{ Install keys }
-  FEdit.AddKeyDef(@FEdit.CursorUp, selClear, 'Cursor up', GDK_Up, []);
-  FEdit.AddKeyDef(@FEdit.CursorDown, selClear, 'Cursor down', GDK_Down, []);
-  FEdit.AddKeyDef(@FEdit.CursorLeft, selClear, 'Cursor left', GDK_Left, []);
-  FEdit.AddKeyDef(@FEdit.CursorRight, selClear, 'Cursor right', GDK_Right, []);
-  FEdit.AddKeyDef(@FEdit.CursorHome, selClear, 'Cursor Home', GDK_Home, []);
-  FEdit.AddKeyDef(@FEdit.CursorEnd, selClear, 'Cursor Home', GDK_End, []);
-  FEdit.AddKeyDef(@FEdit.CursorPageUp, selClear, 'Cursor PageUp', GDK_Page_Up, []);
-  FEdit.AddKeyDef(@FEdit.CursorPageDown, selClear, 'Cursor PageDown', GDK_Page_Down, []);
-  FEdit.AddKeyDef(@FEdit.CursorDocBegin, selClear, 'Cursor Document Start', GDK_Page_Up, [ssCtrl]);
-  FEdit.AddKeyDef(@FEdit.CursorDocEnd, selClear, 'Cursor Document End', GDK_Page_Down, [ssCtrl]);
-
-  FEdit.AddKeyDef(@FEdit.CursorUp, selExtend, 'Selection up', GDK_Up, [ssShift]);
-  FEdit.AddKeyDef(@FEdit.CursorDown, selExtend, 'Selection down', GDK_Down, [ssShift]);
-  FEdit.AddKeyDef(@FEdit.CursorLeft, selExtend, 'Selection left', GDK_Left, [ssShift]);
-  FEdit.AddKeyDef(@FEdit.CursorRight, selExtend, 'Selection right', GDK_Right, [ssShift]);
-  FEdit.AddKeyDef(@FEdit.CursorHome, selExtend, 'Selection Home', GDK_Home, [ssShift]);
-  FEdit.AddKeyDef(@FEdit.CursorEnd, selExtend, 'Selection Home', GDK_End, [ssShift]);
-  FEdit.AddKeyDef(@FEdit.CursorPageUp, selExtend, 'Selection PageUp', GDK_Page_Up, [ssShift]);
-  FEdit.AddKeyDef(@FEdit.CursorPageDown, selExtend, 'Selection PageDown', GDK_Page_Down, [ssShift]);
-  FEdit.AddKeyDef(@FEdit.CursorDocBegin, selExtend, 'Selection Document Start', GDK_Page_Up, [ssCtrl,ssShift]);
-  FEdit.AddKeyDef(@FEdit.CursorDocEnd, selExtend, 'Selection Document End', GDK_Page_Down, [ssCtrl,ssShift]);
-
-  FEdit.AddKeyDef(@FEdit.ToggleOverwriteMode, selNothing, 'Toggle overwrite mode', GDK_Insert, []);
-  FEdit.AddKeyDef(@FEdit.EditDelLeft, selClear, 'Delete char left of cursor', GDK_Backspace, []);
-  FEdit.AddKeyDef(@FEdit.EditDelRight, selClear, 'Delete char right of cursor', GDK_Delete_Key, []);
-  FEdit.AddKeyDef(@FEdit.EditDelLine, selClear, 'Delete current line', Ord('Y'), [ssCtrl]);
-  FEdit.AddKeyDef(@FEdit.EditDelLine, selClear, 'Delete current line', Ord('y'), [ssCtrl]);
-  FEdit.AddKeyDef(@FEdit.EditUndo, selClear, 'Undo last action', GDK_Backspace, [ssAlt]);
-  FEdit.AddKeyDef(@FEdit.EditRedo, selClear, 'Redo last undone action', GDK_Backspace, [ssShift, ssAlt]);
-end;
-
-destructor TGtkSHWidget.Destroy;
-begin
-  FreeMem(SHStyles);
-  FEdit.Free;
-  inherited Destroy;
-end;
-
-
-function TGtkSHWidget.AddSHStyle(AName: String; AColor, ABackground: LongWord; AStyle: TSHFontStyle): Integer;
-begin
-  ReAllocMem(SHStyles, SizeOf(TSHStyle) * (SHStyleCount + 1));
-  Inc(SHStyleCount);
-  SHStyles^[SHStyleCount].Name       := AName;
-  SHStyles^[SHStyleCount].Color      := AColor;
-  SHStyles^[SHStyleCount].Background := ABackground;
-  SHStyles^[SHStyleCount].FontStyle  := AStyle;
-  Result := SHStyleCount;
-end;
-
-
-procedure TGtkSHWidget.SetGCColor(AColor: LongWord);
-var
-  c: TGdkColor;
-begin
-  if AColor <> CurGCColor then begin
-    c.pixel := 0;
-    c.red   := (((AColor shr 16) and 255) * 65535) div 255;
-    c.green := (((AColor shr 8) and 255) * 65535) div 255;
-    c.blue  := ((AColor and 255) * 65535) div 255;
-    gdk_colormap_alloc_color(gdk_colormap_get_system, @c, False, True);
-    gdk_gc_set_foreground(gc, @c);
-    CurGCColor := AColor;
-  end;
-end;
-
-
-procedure TGtkSHWidget.ClearRect(x, y, w, h: Integer);
-begin
-  SetGCColor(SHStyles^[shWhitespace].Background);
-  gdk_draw_rectangle(PGdkDrawable(GdkWnd), GC, 1,
-    x * CharW + LeftIndent, y * CharH, w * CharW, h * CharH);
-end;
-
-
-procedure TGtkSHWidget.InvalidateRect(x, y, w, h: Integer);
-var
-  r : TGdkRectangle;
-begin
-  r.x := x * CharW + LeftIndent;
-  r.y := y * CharH;
-  r.Width := w * CharW;
-  r.Height := h * CharH;
-  gtk_widget_draw(PGtkWidget(PaintBox), @r);
-end;
-
-
-procedure TGtkSHWidget.DrawTextLine(x1, x2, y: Integer; s: PChar);
-var
-  CurColor: LongWord;
-  CurX1, CurX2: Integer;
-
-  procedure DoErase;
-  begin
-    SetGCColor(CurColor);
-    if CurX1 < x1 then
-      CurX1 := x1;
-    if CurX2 > CurX1 then begin
-      gdk_draw_rectangle(PGdkDrawable(GdkWnd), GC, 1,
-        CurX1 * CharW + LeftIndent, y * CharH, (CurX2 - CurX1) * CharW, CharH);
-    end;
-    CurX1 := CurX2;
-  end;
-
-var
-  RequestedColor: Integer;
-  NewColor: LongWord;
-  hs : PChar;
-begin
-
-  // Erase the (potentially multi-coloured) background
-
-  hs := s;
-  CurColor := SHStyles^[shWhitespace].Background;
-
-  CurX1 := 0;
-  CurX2 := 0;
-  while (hs[0] <> #0) and (CurX2 <= x2) do begin
-    case hs[0] of
-      LF_Escape: begin
-          NewColor := SHStyles^[Ord(hs[1])].Background;
-          if NewColor = colDefault then
-            NewColor := SHStyles^[shWhitespace].Background;
-          if NewColor <> CurColor then begin
-            DoErase;
-            CurColor := NewColor;
-          end;
-          Inc(hs, 2);
-        end;
-      #9: begin
-          repeat
-            Inc(CurX2);
-          until (CurX2 and 7) = 0;
-          Inc(hs);
-        end;
-      else begin
-        Inc(hs);
-        Inc(CurX2);
-      end;
-    end;
-  end;
-  CurX2 := x2;
-  DoErase;
-
-
-  // Draw text line
-
-  RequestedColor := shWhitespace;
-  CurX1 := 0;
-  while s[0] <> #0 do
-    case s[0] of
-      LF_Escape: begin
-          RequestedColor := Ord(s[1]);
-          Inc(s, 2);
-        end;
-      #9: begin
-          repeat
-            Inc(CurX1);
-          until (CurX1 and 7) = 0;
-          Inc(s);
-        end;
-      ' ': begin
-          Inc(s);
-          Inc(CurX1);
-        end;
-      else begin
-        if (CurX1 >= x1) and (CurX1 <= x2) then begin
-          SetGCColor(SHStyles^[RequestedColor].Color);
-          gdk_draw_text(PGdkDrawable(GdkWnd),
-            Font[SHStyles^[RequestedColor].FontStyle], GC,
-            CurX1 * CharW + LeftIndent, (y + 1) * CharH - 3, s, 1);
-        end;
-        Inc(s);
-        Inc(CurX1);
-      end;
-    end;
-end;
-
-
-procedure TGtkSHWidget.SetFocus;
-begin
-  gtk_window_set_focus(PGtkWindow(gtk_widget_get_toplevel(Paintbox)),Paintbox);
-end;
-
-
-procedure TGtkSHWidget.ShowCursor(x, y: Integer);
-begin
-//  writeln('Showcursor ',x,',',y);
-  if assigned(GdkWnd) then
-   begin
-     SetGCColor(colBlack);
-     gdk_draw_rectangle(PGdkDrawable(GdkWnd), GC, 1, x*CharW + LeftIndent, y*CharH, 2, CharH);
-   end;
-end;
-
-
-procedure TGtkSHWidget.HideCursor(x, y: Integer);
-var
-  r : TGdkRectangle;
-begin
-//  writeln('Hidecursor ',x,',',y);
-  r.x := x * CharW + LeftIndent;
-  r.y := y * CharH;
-  r.Width := 2;
-  r.Height := CharH;
-  gtk_widget_draw(PGtkWidget(PaintBox), @r);
-end;
-
-
-function TGtkSHWidget.GetLineWidth: Integer;
-begin
-  Result := (Trunc(hadj^.upper)-LeftIndent) div CharW;
-end;
-
-
-procedure TGtkSHWidget.SetLineWidth(count: Integer);
-begin
-  hadj^.upper := count * CharW + LeftIndent;
-  gtk_adjustment_changed(hadj);
-  gtk_widget_set_usize(PaintBox, Trunc(hadj^.upper), Trunc(vadj^.upper));
-end;
-
-
-function TGtkSHWidget.GetLineCount: Integer;
-begin
-  Result := Trunc(vadj^.upper) div CharH;
-end;
-
-
-procedure TGtkSHWidget.SetLineCount(count: Integer);
-begin
-  vadj^.upper := (count+1) * CharH;
-  gtk_adjustment_changed(vadj);
-  gtk_widget_set_usize(PaintBox, Trunc(hadj^.upper), Trunc(vadj^.upper));
-end;
-
-
-function TGtkSHWidget.GetClipboard: String;
-begin
-  Result := InternalClipboardContent;
-end;
-
-
-procedure TGtkSHWidget.SetClipboard(Content: String);
-begin
-  InternalClipboardContent := Content;
-end;
-
-
-function TGtkSHWidget.GetHorzPos: Integer;
-begin
-  Result := Trunc(hadj^.value);
-  if Result>0 then
-   Result:=(Result-LeftIndent) div CharW;
-end;
-
-
-procedure TGtkSHWidget.SetHorzPos(x: Integer);
-begin
-  if x>0 then
-   x:=x*CharW+LeftIndent;
-  gtk_adjustment_set_value(hadj, x);
-end;
-
-
-function TGtkSHWidget.GetVertPos: Integer;
-begin
-  Result := (Trunc(vadj^.value)+CharH-1) div CharH;
-end;
-
-
-procedure TGtkSHWidget.SetVertPos(y: Integer);
-begin
-  gtk_adjustment_set_value(vadj, y*CharH);
-end;
-
-
-function TGtkSHWidget.GetPageWidth: Integer;
-begin
-  Result := Trunc(hadj^.page_size) div CharW;
-end;
-
-
-function TGtkSHWidget.GetPageHeight: Integer;
-begin
-  Result := Trunc(vadj^.page_size) div CharH;
-end;
-
-end.

+ 0 - 490
fcl/shedit/keys.inc

@@ -1,490 +0,0 @@
-{
-
-    "SHEdit" - Text editor with syntax highlighting
-    Copyright (C) 1999-2000 by Sebastian Guenther ([email protected])
-
-    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.
-}
-
-
-// TSHTextEdit: Implementation of keyboard handling methods
-
-
-function TSHTextEdit.AddKeyboardAction(AMethod: TKeyboardActionProc;ASelectionAction:TSelectionAction;ADescr: String): TKeyboardActionDescr;
-begin
-  Result := TKeyboardActionDescr(KeyboardActions.Add);
-  Result.Descr := ADescr;
-  Result.Method := AMethod;
-  Result.SelectionAction := ASelectionAction;
-end;
-
-
-function TSHTextEdit.AddKeyboardAssignment(AKeyCode: Integer; AShiftState: TShiftState; AAction: TKeyboardActionDescr): TShortcut;
-begin
-  Result := TShortcut(Shortcuts.Add);
-  Result.KeyCode := AKeyCode;
-  Result.ShiftState := AShiftState;
-  Result.Action := AAction;
-end;
-
-
-procedure TSHTextEdit.AddKeyDef(AMethod: TKeyboardActionProc; ASelectionAction:TSelectionAction; ADescr: String; AKeyCode: Integer; AShiftState: TShiftState);
-begin
-  AddKeyboardAssignment(AKeyCode, AShiftState,AddKeyboardAction(AMethod, ASelectionAction, ADescr));
-end;
-
-
-procedure TSHTextEdit.ToggleOverwriteMode;
-begin
-  OverwriteMode := not OverwriteMode;  // *** specify signal for change
-end;
-
-
-procedure TSHTextEdit.AdjustCursorToRange;
-begin
-  if FCursorY < FWidget.VertPos then begin
-    HideCursor;
-    FCursorY := FWidget.VertPos;
-    ShowCursor;
-  end else if FCursorY > FWidget.VertPos + FWidget.PageHeight then begin
-    HideCursor;
-    FCursorY := FWidget.VertPos + FWidget.PageHeight - 1;
-    ShowCursor;
-  end;
-
-  if FCursorX < FWidget.HorzPos then begin
-    HideCursor;
-    FCursorX := FWidget.HorzPos;
-    ShowCursor;
-  end else if FCursorX > FWidget.HorzPos + FWidget.PageWidth then begin
-    HideCursor;
-    FCursorX := FWidget.HorzPos + FWidget.PageWidth - 1;
-    ShowCursor;
-  end;
-end;
-
-
-procedure TSHTextEdit.AdjustRangeToCursor;
-var
-  py : integer;
-begin
-  if FCursorY < FWidget.VertPos then
-    FWidget.VertPos := FCursorY
-  else if FCursorY >= FWidget.VertPos + FWidget.PageHeight then begin
-    py := FCursorY - FWidget.PageHeight + 1;
-    if py < 0 then
-      FWidget.VertPos:=0
-    else
-      FWidget.VertPos:=py;
-  end;
-  if FCursorX < FWidget.HorzPos then
-    FWidget.HorzPos := FCursorX
-  else if FCursorX >= FWidget.HorzPos + FWidget.PageWidth then begin
-    py := FCursorX - FWidget.PageWidth + 1;
-    if py < 0 then
-      FWidget.HorzPos := 0
-    else
-      FWidget.HorzPos := py;
-  end;
-end;
-
-
-procedure TSHTextEdit.CursorUp;
-begin
-  if FCursorY > 0 then
-    Dec(FCursorY);
-end;
-
-
-procedure TSHTextEdit.CursorDown;
-begin
-  if FCursorY < FDoc.LineCount - 1 then
-    Inc(FCursorY);
-end;
-
-
-procedure TSHTextEdit.CursorLeft;
-begin
-  Dec(FCursorX);
-  if FCursorX < 0 then
-    if FCursorY>0 then begin
-      Dec(FCursorY);
-      FCursorX := FDoc.LineLen[FCursorY];
-    end else
-      FCursorX := 0;
-end;
-
-
-procedure TSHTextEdit.CursorRight;
-begin
-  Inc(FCursorX);
-end;
-
-
-procedure TSHTextEdit.CursorDocBegin;
-begin
-  FCursorX := 0;
-  FCursorY := 0;
-end;
-
-
-procedure TSHTextEdit.CursorDocEnd;
-begin
-  FCursorY := FDoc.LineCount-1;
-  FCursorX := FDoc.LineLen[FCursorY];
-end;
-
-
-procedure TSHTextEdit.CursorHome;
-begin
-  FCursorX := 0;
-  AdjustRangeToCursor;
-end;
-
-
-procedure TSHTextEdit.CursorEnd;
-begin
-  FCursorX := FDoc.LineLen[FCursorY];
-  AdjustRangeToCursor;
-end;
-
-
-procedure TSHTextEdit.CursorPageUp;
-begin
-  Dec(FCursorY, FWidget.PageHeight);
-  if FCursorY < 0 then
-    FCursorY := 0;
-end;
-
-
-procedure TSHTextEdit.CursorPageDown;
-begin
-  Inc(FCursorY, FWidget.PageHeight);
-  if FCursorY > FDoc.LineCount - 1 then
-    FCursorY := FDoc.LineCount - 1;
-end;
-
-
-procedure TSHTextEdit.EditDelLeft;
-var
-  s: String;
-begin
-  if FCursorX > 0 then begin
-    s := FDoc.LineText[FCursorY];
-    Dec(FCursorX);
-    AddUndoInfo(TUndoDelLeft.Create(s[FCursorX + 1]), True);
-    s := Copy(s, 1, FCursorX) + Copy(s, FCursorX + 2, Length(s));
-    FDoc.LineText[FCursorY] := s;
-    ChangeInLine(FCursorY);
-  end else if FCursorY > 0 then begin
-    FCursorX := FDoc.LineLen[FCursorY - 1];
-    FDoc.LineText[FCursorY - 1] := FDoc.LineText[FCursorY - 1] +
-      FDoc.LineText[FCursorY];
-    Dec(FCursorY);
-    FDoc.RemoveLine(FCursorY + 1);
-    AddUndoInfo(TUndoDelLeft.Create(#13), True);
-  end;
-end;
-
-procedure TSHTextEdit.EditDelRight;
-var
-  s: String;
-begin
-  if FCursorX < FDoc.LineLen[FCursorY] then begin
-    s := FDoc.LineText[FCursorY];
-    AddUndoInfo(TUndoDelRight.Create(s[FCursorX + 1]), True);
-    s := Copy(s, 1, FCursorX) + Copy(s, FCursorX + 2, Length(s));
-    FDoc.LineText[FCursorY] := s;
-    ChangeInLine(FCursorY);
-  end else if FCursorY < FDoc.LineCount - 1 then begin
-    FDoc.LineText[FCursorY] := FDoc.LineText[FCursorY] +
-      FDoc.LineText[FCursorY + 1];
-    FDoc.RemoveLine(FCursorY + 1);
-    AddUndoInfo(TUndoDelRight.Create(#13), True);
-  end;
-end;
-
-procedure TSHTextEdit.EditDelLine;
-var
-  DeletedText: String;
-begin
-  DeletedText := FDoc.LineText[FCursorY];
-  if FDoc.LineCount = 1 then
-    FDoc.LineText[FCursorY] := ''
-  else
-    FDoc.RemoveLine(FCursorY);
-
-  if FCursorY >= FDoc.LineCount then
-    FCursorY := FDoc.LineCount - 1;
-  FCursorX := 0;
-
-  AddUndoInfo(TUndoDelRight.Create(DeletedText + #13), True);
-
-  ChangeInLine(FCursorY);
-end;
-
-procedure TSHTextEdit.EditUndo;
-var
-  info: TUndoInfo;
-begin
-  if LastUndoInfo = nil then exit;
-
-  info := LastUndoInfo;
-  LastUndoInfo := LastRedoInfo;
-  info.DoUndo(Self);
-  LastRedoInfo := LastUndoInfo;
-  LastUndoInfo := info;
-
-  // Free undo info
-  if info.Prev <> nil then
-    info.Prev.Next := info.Next
-  else
-    FDoc.Modified := False;
-  LastUndoInfo := info.Prev;
-  info.Free;
-end;
-
-procedure TSHTextEdit.EditRedo;
-var
-  info: TUndoInfo;
-begin
-  if LastRedoInfo = nil then exit;
-
-  info := LastRedoInfo;
-  info.DoUndo(Self);
-
-  // Free redo info
-  if info.Prev <> nil then
-    info.Prev.Next := info.Next;
-  LastRedoInfo := info.Prev;
-  info.Free;
-end;
-
-procedure TSHTextEdit.ClipboardCut;
-begin
-  WriteLn('ClipboardCut: Not implemented yet');
-  ClipboardCopy;
-end;
-
-procedure TSHTextEdit.ClipboardCopy;
-var
-  cbtext: String;
-  y: Integer;
-begin
-  if FSel.OStartY = FSel.OEndY then
-    cbtext := Copy(FDoc.LineText[FSel.OStartY],
-      FSel.OStartX + 1, FSel.OEndX - FSel.OStartX)
-  else begin
-    cbtext := Copy(FDoc.LineText[FSel.OStartY],
-      FSel.OStartX + 1, FDoc.LineLen[FSel.OStartY]) + #10;
-    for y := FSel.OStartY + 1 to FSel.OEndY - 1 do
-      cbtext := cbtext + FDoc.LineText[y] + #10;
-    cbtext := cbtext + Copy(FDoc.LineText[FSel.OEndY], 1, FSel.OEndX);
-  end;
-
-  FWidget.SetClipboard(cbtext);
-end;
-
-procedure TSHTextEdit.ClipboardPaste;
-var
-  cbtext: String;
-begin
-  cbtext := FWidget.GetClipboard;
-  ExecKeys(cbtext, True);
-end;
-
-procedure TSHTextEdit.KeyReturn; begin end;
-
-function TSHTextEdit.ExecKey(Key: Char; BlockMode: Boolean): Boolean;
-var
-  s, s2: String;
-  i: Integer;
-begin
-  Result := True;
-  case Key of
-    #9: begin
-        s := FDoc.LineText[FCursorY];
-        s2 := ' ';
-        i := 1;
-        while ((FCursorX + i) mod 4) <> 0 do begin
-          s2 := s2 + ' ';
-          Inc(i);
-        end;
-        s := Copy(s, 1, FCursorX) + s2 + Copy(s, FCursorX + 1, Length(s));
-        FDoc.LineText[FCursorY] := s;
-        Inc(FCursorX, i);
-        AddUndoInfo(TUndoEdit.Create(i), True);
-        ChangeInLine(FCursorY);
-      end;
-    #13: begin
-        s := FDoc.LineText[FCursorY];
-        FDoc.LineText[FCursorY] := Copy(s, 1, FCursorX);
-        FDoc.InsertLine(FCursorY + 1, Copy(s, FCursorX + 1, Length(s)));
-        CursorX := 0;
-        Inc(FCursorY);
-        AddUndoInfo(TUndoEdit.Create, True);
-        if not BlockMode then KeyReturn;
-      end;
-    #32..#255:
-      begin
-        s := FDoc.LineText[FCursorY];
-        if FCursorX>=Length(s) then
-          s := s + Space(FCursorX-length(s)) + Key
-        else
-          if OverwriteMode then
-            s := Copy(s, 1, FCursorX) + Key + Copy(s, FCursorX + 2, Length(s))
-          else
-            s := Copy(s, 1, FCursorX) + Key + Copy(s, FCursorX + 1, Length(s));
-        FDoc.LineText[FCursorY] := s;
-        Inc(FCursorX);
-        AddUndoInfo(TUndoEdit.Create, True);
-        ChangeInLine(FCursorY);
-      end;
-    else Result := False;
-  end;
-end;
-
-procedure TSHTextEdit.ExecKeys(Keys: String; BlockMode: Boolean);
-var
-  s, s2: String;
-  KeysPos, i: Integer;
-  Key: Char;
-begin
-  if BlockMode then
-    AddUndoInfo(TUndoEdit.Create(0), False);  // Initialize new undo block
-
-  KeysPos := 1;
-  while KeysPos <= Length(Keys) do begin
-    case Keys[KeysPos] of
-      #9: begin
-          s := FDoc.LineText[FCursorY];
-          s2 := ' ';
-          i := 1;
-          while ((FCursorX + i) mod 4) <> 0 do begin
-            s2 := s2 + ' ';
-            Inc(i);
-          end;
-          s := Copy(s, 1, FCursorX) + s2 + Copy(s, FCursorX + 1, Length(s));
-          FDoc.LineText[FCursorY] := s;
-          Inc(FCursorX, i);
-          AddUndoInfo(TUndoEdit.Create(i), True);
-          ChangeInLine(FCursorY);
-          Inc(KeysPos);
-        end;
-      #13, #10: begin
-          s := FDoc.LineText[FCursorY];
-          FDoc.LineText[FCursorY] := Copy(s, 1, FCursorX);
-          FDoc.InsertLine(FCursorY + 1, Copy(s, FCursorX + 1, Length(s)));
-          CursorX := 0;
-          Inc(FCursorY);
-          AddUndoInfo(TUndoEdit.Create, True);
-          if not BlockMode then KeyReturn;
-          Inc(KeysPos);
-        end;
-      #32..#255: begin
-          i := 0;
-          while (KeysPos <= Length(Keys)) and (Keys[KeysPos] >= #32) do begin
-            Key := Keys[KeysPos];
-            s := FDoc.LineText[FCursorY];
-            if FCursorX>=Length(s) then
-             s := s + Space(FCursorX-length(s)) + Key
-            else
-             s := Copy(s, 1, FCursorX) + Key + Copy(s, FCursorX + 1 + Ord(OverwriteMode), Length(s));
-            FDoc.LineText[FCursorY] := s;
-            Inc(FCursorX);
-            Inc(i);
-            Inc(KeysPos);
-          end;
-          AddUndoInfo(TUndoEdit.Create(i), True);
-
-          ChangeInLine(FCursorY);
-        end;
-      else Inc(KeysPos);
-    end;
-  end;
-end;
-
-procedure TSHTextEdit.MultiDelLeft(count: Integer);
-var
-  s: String;
-begin
-  while count > 0 do begin
-    if FCursorX > 0 then begin
-      while (FCursorX > 0) and (count > 0) do begin
-        s := FDoc.LineText[FCursorY];
-        Dec(FCursorX);
-        AddUndoInfo(TUndoDelLeft.Create(s[FCursorX + 1]), True);
-        s := Copy(s, 1, FCursorX) + Copy(s, FCursorX + 2, Length(s));
-        FDoc.LineText[FCursorY] := s;
-        Dec(count);
-      end;
-      ChangeInLine(FCursorY);
-    end else if FCursorY > 0 then begin
-      FCursorX := FDoc.LineLen[FCursorY - 1];
-      FDoc.LineText[FCursorY - 1] := FDoc.LineText[FCursorY - 1] +
-        FDoc.LineText[FCursorY];
-      Dec(FCursorY);
-      FDoc.RemoveLine(FCursorY + 1);
-      AddUndoInfo(TUndoDelLeft.Create(#13), True);
-      Dec(count);
-    end else break;
-  end;
-end;
-
-function TSHTextEdit.KeyPressed(KeyCode: LongWord; ShiftState: TShiftState): Boolean;
-var
-  i: Integer;
-  shortcut: TShortcut;
-  ShortcutFound: Boolean;
-begin
-  //  WriteLn('TSHTextEdit: Key pressed: ', KeyCode);
-  LastCursorX := FCursorX;
-  LastCursorY := FCursorY;
-  StartSelectionChange;
-
-  // Check for keyboard shortcuts
-  ShortcutFound := False;
-  for i := 0 to Shortcuts.Count - 1 do begin
-    shortcut := TShortcut(Shortcuts.Items[i]);
-    if (KeyCode = shortcut.KeyCode) and
-       (ShiftState * [ssShift, ssCtrl, ssAlt] = shortcut.ShiftState) then begin
-      ShortcutFound := True;
-      break;
-    end;
-  end;
-
-  Result := True;
-
-  if ShortcutFound then begin
-    // WriteLn(shortcut.Action.Descr);
-    shortcut.Action.Method;     // Execute associated action
-    // Handle the selection extending
-    case shortcut.Action.SelectionAction of
-      selNothing: ;
-      selExtend: begin
-          if not FSel.IsValid then begin
-            FSel.StartX:=LastCursorX;
-            FSel.StartY:=LastCursorY;
-          end;
-          FSel.EndX:=FCursorX;
-          FSel.EndY:=FCursorY;
-        end;
-      selClear:
-        FSel.Clear;
-    end;
-  end else
-    if (KeyCode <= 255) and (ShiftState * [ssCtrl, ssAlt] = []) then
-      ExecKey(Chr(KeyCode), False)
-    else
-      Result := False;          // Key has not been processed
-
-  EndSelectionChange;
-  AdjustRangeToCursor;
-end;
-
-

+ 0 - 322
fcl/shedit/sh_pas.pp

@@ -1,322 +0,0 @@
-{
-
-    "SHEdit" - Text editor with syntax highlighting
-    Copyright (C) 1999-2000 by Sebastian Guenther ([email protected])
-
-    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.
-}
-
-
-// Syntax highlighting class for Pascal sources
-
-{$MODE objfpc}
-{$H+}
-
-{$IFDEF Debug}
-{$ASSERTIONS On}
-{$ENDIF}
-
-unit sh_pas;
-
-interface
-uses doc_text, shedit;
-
-type
-
-  TSHPasEdit = class(TSHTextEdit)
-  protected
-    procedure DoHighlighting(var flags: Byte; source, dest: PChar); override;
-    procedure KeyReturn; override;
-  public
-    // Syntax highlighter style indices
-    shInvalid, shSymbol, shKeyword, shComment, shDirective, shNumbers,
-      shCharacters, shStrings, shAssembler: Integer;
-  end;
-
-
-implementation
-
-uses Strings;
-
-const
-
-  LF_SH_Comment1 = LF_SH_Multiline1;    { Normal braced Comments}
-  LF_SH_Comment2 = LF_SH_Multiline2;    { (* *) Comments}
-  LF_SH_Asm      = LF_SH_Multiline3;
-
-  MaxKeywordLength = 15;
-  MaxKeyword = 60;
-
-  KeywordTable: array[0..MaxKeyword] of PChar =
-    ('AND', 'ARRAY', 'ASM', 'ASSEMBLER',
-     'BEGIN', 'BREAK',
-     'CASE', 'CONST', 'CONSTRUCTOR', 'CLASS',
-     'DEFAULT', 'DESTRUCTOR', 'DIV', 'DO', 'DOWNTO',
-     'ELSE', 'END', 'EXCEPT', 'EXIT',
-     'FINALIZATION', 'FINALLY', 'FOR', 'FUNCTION',
-     'GOTO',
-     'IF', 'IMPLEMENTATION', 'IN', 'INHERITED', 'INITIALIZATION', 'INTERFACE',
-     'NIL', 'NOT',
-     'OBJECT', 'OF', 'ON', 'OR', 'OVERRIDE',
-     'PACKED', 'PRIVATE', 'PROCEDURE', 'PROGRAM', 'PROPERTY', 'PROTECTED',
-       'PUBLIC', 'PUBLISHED',
-     'RAISE', 'RECORD', 'REPEAT', 'RESOURCESTRING',
-     'SET',
-     'THEN', 'TRY', 'TYPE',
-     'UNIT', 'UNTIL', 'USES',
-     'VAR', 'VIRTUAL',
-     'WHILE', 'WITH',
-     'XOR');
-
-  KeywordAsmIndex = 2;
-
-
-procedure TSHPasEdit.KeyReturn;
-var
-  s: String;
-  i, count: Integer;
-begin
-  // Get # of spaces in front of previous line
-  s := FDoc.LineText[CursorY - 1];
-  i := 1; count := 0;
-  while (i <= Length(s)) and (s[i] = ' ') do begin
-    Inc(i);
-    Inc(count);
-  end;
-
-  FDoc.LineText[CursorY] := Copy(s, 1, count) + FDoc.LineText[CursorY];
-  Inc(FCursorX, count);
-  AddUndoInfo(TUndoEdit.Create(count), True);
-  ChangeInLine(CursorY);
-end;
-
-
-procedure TSHPasEdit.DoHighlighting(var flags: Byte; source, dest: PChar);
-var
-  dp: Integer;          // Destination position - current offset in dest
-  LastSHPos: Integer;   // Position of last highlighting character, or 0
-
-  procedure AddSH(sh: Byte);
-  begin
-    ASSERT(sh > 0);
-    if (LastSHPos > 0) and (dp = LastSHPos + 1) then Dec(dp, 2);
-    dest[dp] := LF_Escape; Inc(dp);
-    LastSHPos := dp;
-    dest[dp] := Chr(sh); Inc(dp);
-  end;
-
-  procedure PutChar;
-  begin
-    dest[dp] := source[0]; Inc(dp); Inc(source);
-  end;
-
-  procedure ProcessComment1;
-  begin
-    while source[0] <> #0 do begin
-      if source[0] = '}' then begin
-        PutChar;
-        flags := flags and not LF_SH_Comment1;
-        AddSH(shDefault);
-        break;
-      end;
-      PutChar;
-    end;
-  end;
-
-  procedure ProcessComment2;
-  begin
-    while source[0] <> #0 do begin
-      if (source[0] = '*') and (source[1] = ')') then begin
-        PutChar; PutChar;
-        flags := flags and not LF_SH_Comment2;
-        AddSH(shDefault);
-        break;
-      end;
-      PutChar;
-    end;
-  end;
-
-
-  { Checks if we are at the beginning of a comment (or directive) and processes
-    all types of comments and directives, or returns False }
-
-  function CheckForComment: Boolean;
-  begin
-    Result := True;
-    if source[0] = '{' then begin
-      if source[1] = '$' then
-        AddSH(shDirective)
-      else
-        AddSH(shComment);
-      PutChar;
-      flags := flags or LF_SH_Comment1;
-      ProcessComment1;
-    end else if (source[0] = '(') and (source[1] = '*') then begin
-      AddSH(shComment);
-      PutChar; PutChar;
-      flags := flags or LF_SH_Comment2;
-      ProcessComment2;
-    end else if (source[0] = '/') and (source[1] = '/') then begin
-      AddSH(shComment);
-      repeat PutChar until source[0] = #0;
-      AddSH(shDefault);
-    end else
-      Result := False;
-  end;
-
-  procedure ProcessAsm;
-  var
-    LastChar: Char;
-  begin
-    LastChar := ' ';
-    while source[0] <> #0 do begin
-      if (LastChar in [' ', #9, #10, #13]) and
-        (UpCase(source[0]) = 'E') and (UpCase(source[1]) = 'N') and
-        (UpCase(source[2]) = 'D') then begin
-        AddSH(shKeyword);
-        PutChar; PutChar; PutChar;
-        flags := flags and not LF_SH_Asm;
-        AddSH(shDefault);
-        break;
-      end else
-        if CheckForComment then LastChar := ' '
-        else begin
-          LastChar := source[0];
-          PutChar;
-        end;
-    end;
-  end;
-
-  procedure ProcessSymbol;
-  begin
-    AddSH(shSymbol);
-    if (source[0] = ':') and (source[1] = '=') then
-      PutChar;
-    PutChar;
-    AddSH(shDefault);
-  end;
-
-  function CheckForKeyword: Boolean;
-  var
-    keyword, ukeyword: array[0..MaxKeywordLength] of Char;
-    i, j: Integer;
-  begin
-    i := 0;
-    while (source[i] <> #0) and (i < MaxKeywordLength) and
-      (source[i] in ['0'..'9', 'A'..'Z', 'a'..'z']) do begin
-      keyword[i] := source[i];
-      ukeyword[i] := UpCase(source[i]);
-      Inc(i);
-    end;
-    keyword[i] := #0; ukeyword[i] := #0;
-    Result := False;
-    if i < MaxKeywordLength then
-      for j := 0 to MaxKeyword do
-        if StrIComp(KeywordTable[j], ukeyword) = 0 then begin
-          Result := True; break;
-        end;
-    if not Result then exit;
-    Inc(source, i);
-    AddSH(shKeyword);
-    StrCopy(dest + dp, keyword);
-    Inc(dp, i);
-    if j <> KeywordAsmIndex then
-      AddSH(shDefault)
-    else begin
-      AddSH(shAssembler);
-      flags := flags or LF_SH_Asm;
-      ProcessAsm;
-    end;
-  end;
-
-var
-  StringLength: Integer;
-begin
-  dp := 0;
-  LastSHPos := 0;
-
-  if (flags and LF_SH_Comment1) <> 0 then begin
-    AddSH(shComment);
-    ProcessComment1;
-  end;
-
-  if (flags and LF_SH_Comment2) <> 0 then begin
-    AddSH(shComment);
-    ProcessComment2;
-  end;
-
-  if (flags and LF_SH_Asm) <> 0 then begin
-    AddSH(shAssembler);
-    ProcessAsm;
-  end;
-
-  while source[0] <> #0 do begin
-
-    if CheckForComment then continue;
-
-    case source[0] of
-      ',', ';', ':', '.', '(', ')', '[', ']', '<', '>', '=',
-      '*', '/', '+', '-', '^', '&', '@': ProcessSymbol;
-      '#': begin
-          AddSH(shCharacters);
-          PutChar;
-          if source[0] = '$' then PutChar;
-          while (source[0] >= '0') and (source[0] <= '9') do PutChar;
-          AddSH(shDefault);
-        end;
-      '$': begin
-          AddSH(shNumbers);
-          PutChar;
-          while source[0] in ['0'..'9', 'A'..'F', 'a'..'f'] do PutChar;
-          AddSH(shDefault);
-        end;
-      '0'..'9': begin
-          AddSH(shNumbers);
-          PutChar;
-          while (source[0] >= '0') and (source[0] <= '9') do PutChar;
-          AddSH(shDefault);
-        end;
-      '''': begin
-          AddSH(shStrings);
-          PutChar;
-          StringLength := 0;
-          while source[0] <> #0  do begin
-            if source[0] = '''' then
-              if source[1] = '''' then PutChar
-              else begin
-                PutChar; break;
-              end;
-            Inc(StringLength);
-            PutChar;
-          end;
-          if StringLength = 1 then
-            dest[LastSHPos] := Chr(shCharacters);
-          if (source[0] = #0) and (dest[dp - 1] <> '''') then
-            dest[LastSHPos] := Chr(shInvalid);
-          AddSH(shDefault);
-        end;
-      '_', 'A'..'Z', 'a'..'z': begin
-          if not CheckForKeyword then
-            repeat
-              PutChar
-            until not (source[0] in ['0'..'9', '_', 'A'..'Z', 'a'..'z']);
-        end;
-      ' ': PutChar;
-      else begin
-        AddSH(shInvalid);
-        PutChar;  // = found an invalid char!
-        AddSH(shDefault);
-      end;
-    end;
-  end;
-
-  dest[dp] := #0;
-end;
-
-
-end.

+ 0 - 240
fcl/shedit/sh_xml.pp

@@ -1,240 +0,0 @@
-{
-
-    "SHEdit" - Text editor with syntax highlighting
-    Copyright (C) 1999-2000 by Sebastian Guenther ([email protected])
-
-    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.
-}
-
-
-// viewer class for XML files
-
-{$MODE objfpc}
-{$H+}
-
-unit sh_xml;
-
-interface
-uses doc_text, shedit;
-
-type
-
-  TSHXMLEdit = class(TSHTextEdit)
-  protected
-    procedure DoHighlighting(var flags: Byte; source, dest: PChar); override;
-  public
-    // Syntax highlighter style indices
-    shTag, shTagName, shDefTagName, shArgName, shString, shReference,
-      shInvalid, shComment, shCDATA: Integer;
-  end;
-
-
-implementation
-
-uses Strings;
-
-const
-
-  LF_SH_Tag     = LF_SH_Multiline1;
-  LF_SH_Comment = LF_SH_Multiline2;
-  LF_SH_String1 = LF_SH_Multiline3;     // Single quotation mark
-  LF_SH_String2 = LF_SH_Multiline4;     // Double quotation mark
-  LF_SH_CDATA   = LF_SH_Multiline5;
-
-
-procedure TSHXMLEdit.DoHighlighting(var flags: Byte; source, dest: PChar);
-var
-  dp: Integer;    {Destination postion - current offset in dest}
-  LastSHPos: Integer; {Position of last highlighting character, or 0}
-
-  procedure AddSH(sh: Byte);
-  begin
-    if (LastSHPos > 0) and (dp = LastSHPos + 1) then Dec(dp, 2);
-    dest[dp] := LF_Escape; Inc(dp);
-    LastSHPos := dp;
-    dest[dp] := Chr(sh); Inc(dp);
-  end;
-
-  procedure PutChar;
-  begin
-    dest[dp] := source[0]; Inc(dp); Inc(source);
-  end;
-
-  procedure ProcessComment;
-  begin
-    flags := flags or LF_SH_Comment;
-    AddSH(shComment);
-    while source[0] <> #0 do begin
-      if (source[0] = '-') and (source[1] = '-') and (source[2] = '>') then begin
-        PutChar; PutChar; PutChar;
-        flags := flags and not LF_SH_Comment;
-        AddSH(shDefault);
-        break;
-      end;
-      PutChar;
-    end;
-  end;
-
-  procedure ProcessReference;
-  begin
-    AddSH(shReference);
-    while source[0] <> #0 do begin
-      if source[0] = ';' then begin
-        PutChar;
-        AddSH(shDefault);
-        break;
-      end else if (source[0] = '''') or (source[0] = '"') then begin
-        AddSH(shString);
-        break;
-      end else
-        PutChar;
-    end;
-  end;
-
-  procedure ProcessString(EndChar: Char);
-  begin
-    while source[0] <> #0 do begin
-      if source[0] = EndChar then begin
-        PutChar;
-        AddSH(shDefault);
-        flags := flags and not (LF_SH_String1 or LF_SH_String2);
-        break;
-      end else if source[0] = '&' then
-        ProcessReference
-      else
-        PutChar;
-    end;
-  end;
-
-  procedure ProcessTagContd;
-  var
-    c: Char;
-  begin
-    while source[0] <> #0 do begin
-      if (source[0] in ['/', '?']) and (source[1] = '>') then begin
-        AddSH(shTag);
-        PutChar;
-        PutChar;
-        AddSH(shDefault);
-        flags := flags and not LF_SH_Tag;
-        break;
-      end else if (source[0] = '>') then begin
-        AddSH(shTag);
-        PutChar;
-        AddSH(shDefault);
-        flags := flags and not LF_SH_Tag;
-        break;
-      end else if (source[0] = '''') or (source[0] = '"') then begin
-        c := source[0];
-        if source[0] = '''' then
-          flags := flags or LF_SH_String1
-        else
-          flags := flags or LF_SH_String2;
-        AddSH(shString);
-        PutChar;
-        ProcessString(c);
-      end else if source[0] in [#9, ' ', '=', '(', ')', '+', '*', '?', ','] then begin
-        AddSH(shDefault);
-        PutChar;
-      end else begin
-        AddSH(shArgName);
-        PutChar;
-      end;
-    end;
-  end;
-
-  procedure ProcessTag;
-  begin
-    flags := flags or LF_SH_Tag;
-    AddSH(shTag);
-    PutChar;
-    if source[0] = '/' then PutChar;
-    if (source[0] = '!') or (source[0] = '?') then
-      AddSH(shDefTagName)
-    else
-      AddSH(shTagName);
-    while not (source[0] in [#0, ' ', '/', '>']) do
-      PutChar;
-    AddSH(shDefault);
-    ProcessTagContd;
-  end;
-
-  procedure ProcessCDATAContd;
-  begin
-    AddSH(shCDATA);
-    while source[0] <> #0 do begin
-      if (source[0] = ']') and (source[1] = ']') and
-         (source[2] = '>') then begin
-        AddSH(shTag);
-        PutChar; PutChar; PutChar;
-        AddSH(shDefault);
-        flags := flags and not LF_SH_CDATA;
-        break;
-      end;
-      PutChar;
-    end;
-  end;
-
-  procedure ProcessCDATA;
-  var
-    i: Integer;
-  begin
-    flags := flags or LF_SH_CDATA;
-    AddSH(shTag);
-    for i := 1 to 9 do PutChar;
-    ProcessCDATAContd;
-  end;
-
-begin
-  dp := 0;
-  LastSHPos := 0;
-
-  if (flags and LF_SH_Comment) <> 0 then begin
-    AddSH(shComment);
-    ProcessComment;
-  end;
-
-  if (flags and LF_SH_String1) <> 0 then begin
-    AddSH(shString);
-    ProcessString('''');
-  end;
-  if (flags and LF_SH_String2) <> 0 then begin
-    AddSH(shString);
-    ProcessString('"');
-  end;
-
-  if (flags and LF_SH_Tag) <> 0 then
-    ProcessTagContd;
-
-  if (flags and LF_SH_CDATA) <> 0 then
-    ProcessCDATAContd;
-
-
-  while source[0] <> #0 do begin
-
-    case source[0] of
-      '<':
-          if (source[1] = '!') and (source[2] = '-') and (source[3] = '-') then
-            ProcessComment
-          else if (source[1] = '!') and (source[2] = '[') and (source[3] = 'C')
-            and (source[4] = 'D') and (source[5] = 'A') and (source[6] = 'T')
-            and (source[7] = 'A') and (source[8] = '[') then
-            ProcessCDATA
-          else
-            ProcessTag;
-      '&': ProcessReference;
-      else
-        PutChar;
-    end;
-  end;
-
-  dest[dp] := #0;
-end;
-
-
-end.

+ 0 - 553
fcl/shedit/shedit.pp

@@ -1,553 +0,0 @@
-{
-
-    "SHEdit" - Text editor with syntax highlighting
-    Copyright (C) 1999-2000 by Sebastian Guenther ([email protected])
-
-    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.
-}
-
-// ===================================================================
-//   Generic text editor widget with syntax highlighting capabilities
-// ===================================================================
-
-{$MODE objfpc}
-{$H+}
-
-unit shedit;
-
-interface
-
-uses
-  Classes, doc_text;
-
-type
-
-  TSHTextEdit = class;
-  TSHTextEditClass = class of TSHTextEdit;
-
-
-// -------------------------------------------------------------------
-//   Keyboard/action assignment handling
-// -------------------------------------------------------------------
-
-  TKeyboardActionProc = procedure of object;
-
-  TSelectionAction = (selNothing,selExtend,selClear);
-
-  TKeyboardActionDescr = class(TCollectionItem)
-  public
-    Descr: String;                      // Human readable description
-    Method: TKeyboardActionProc;
-    SelectionAction : TSelectionAction;
-  end;
-
-  TShortcut = class(TCollectionItem)
-  public
-    KeyCode: Integer;
-    ShiftState: TShiftState;
-    Action: TKeyboardActionDescr;
-  end;
-
-
-// -------------------------------------------------------------------
-//   Undo/redo buffer stuff
-// -------------------------------------------------------------------
-
-  TUndoInfo = class;
-  TUndoInfo = class
-    Prev, Next: TUndoInfo;
-    CursorX, CursorY: Integer;
-    function Merge(AEdit: TSHTextEdit; AInfo: TUndoInfo): Boolean; virtual;
-    procedure DoUndo(AEdit: TSHTextEdit); virtual; abstract;
-  end;
-
-  TUndoEdit = class(TUndoInfo)
-    NumOfChars: Integer;
-    constructor Create;
-    constructor Create(ANumOfChars: Integer);
-    function Merge(AEdit: TSHTextEdit; AInfo: TUndoInfo): Boolean; override;
-    procedure DoUndo(AEdit: TSHTextEdit); override;
-  end;
-
-  TUndoDelLeft = class(TUndoInfo)
-    DeletedString: String;
-    constructor Create(const ADeletedString: String);
-    function Merge(AEdit: TSHTextEdit; AInfo: TUndoInfo): Boolean; override;
-    procedure DoUndo(AEdit: TSHTextEdit); override;
-  end;
-
-  TUndoDelRight = class(TUndoDelLeft)
-    procedure DoUndo(AEdit: TSHTextEdit); override;
-  end;
-
-
-// -------------------------------------------------------------------
-//   Selection support
-// -------------------------------------------------------------------
-
-  TSelection = class
-  public
-    constructor Create;
-    procedure Clear;
-
-    StartX, StartY, EndX, EndY: Integer;
-
-    function IsValid: Boolean;
-    function IsEmpty: Boolean;
-    // Ordered coordinates: swaps start and end if necessary
-    function OStartX: Integer;
-    function OStartY: Integer;
-    function OEndX: Integer;
-    function OEndY: Integer;
-  end;
-
-
-// -------------------------------------------------------------------
-//   SHWidget interface
-// -------------------------------------------------------------------
-
-  ISHWidget = class
-    // Drawing
-    procedure InvalidateRect(x, y, w, h: Integer); virtual; abstract;
-    procedure ClearRect(x, y, w, h: Integer); virtual; abstract;
-    procedure DrawTextLine(x1, x2, y: Integer; s: PChar); virtual; abstract;
-
-    // Cursor placement
-    procedure ShowCursor(x, y: Integer); virtual; abstract;
-    procedure HideCursor(x, y: Integer); virtual; abstract;
-
-    // Scrolling support
-    function  GetHorzPos: Integer; virtual; abstract;
-    procedure SetHorzPos(x: Integer); virtual; abstract;
-    function  GetVertPos: Integer; virtual; abstract;
-    procedure SetVertPos(y: Integer); virtual; abstract;
-    function  GetPageWidth: Integer; virtual; abstract;
-    function  GetPageHeight: Integer; virtual; abstract;
-    function  GetLineWidth: Integer; virtual; abstract;
-    procedure SetLineWidth(count: Integer); virtual; abstract;
-    function  GetLineCount: Integer; virtual; abstract;
-    procedure SetLineCount(count: Integer); virtual; abstract;
-
-    // Clipboard support
-    function  GetClipboard: String; virtual; abstract;
-    procedure SetClipboard(Content: String); virtual; abstract;
-
-
-    property  HorzPos: Integer read GetHorzPos write SetHorzPos;
-    property  VertPos: Integer read GetVertPos write SetVertPos;
-    property  PageWidth: Integer read GetPageWidth;
-    property  PageHeight: Integer read GetPageHeight;
-    property  LineWidth: Integer read GetLineWidth write SetLineWidth;
-    property  LineCount: Integer read GetLineCount write SetLineCount;
-    property  Clipboard: String read GetClipboard write SetClipboard;
-  end;
-
-
-// -------------------------------------------------------------------
-//   SHTextEdit: The main editor class
-// -------------------------------------------------------------------
-
-  TShortcutEvent = procedure of object;
-
-  TEditLineEvent = procedure(Sender: TSHTextEdit; Line: Integer) of object;
-
-  TSHTextEdit = class
-  protected
-    // ===== Internally used stuff
-    ViewInfo: TViewInfo;                // Connection to document
-    CursorVisible: Integer;
-    OverwriteMode: Boolean;
-    LastUndoInfo, LastRedoInfo: TUndoInfo;      // tails of double linked lists
-
-    FSel: TSelection;
-    OldSelValid: Boolean;
-    OldSelStartX, OldSelStartY, OldSelEndX, OldSelEndY: Integer;
-
-    // OnKeyPressed saves the cursor position before calling key handlers
-    LastCursorX, LastCursorY: Integer;
-
-
-    function  CalcSHFlags(FlagsIn: Byte; source: String): Byte;
-    procedure ChangeInLine(line: Integer);  // Redraws screen where necessary
-    procedure AddUndoInfo(AInfo: TUndoInfo; CanMerge: Boolean);
-
-    // The default implementation does not perform any syntax highlighting:
-    procedure DoHighlighting(var flags: Byte; source, dest: PChar); virtual;
-
-    // ===== Properties
-
-    FDoc: TTextDoc;                     // Document object for text
-    FCursorX, FCursorY: Integer;        // 0/0 = upper left corner
-    FOnModifiedChange: TNotifyEvent;
-    FOnLineInsert, FOnLineRemove: TEditLineEvent;
-    FWidget: ISHWidget;
-
-    procedure SetCursorX(NewCursorX: Integer);
-    procedure SetCursorY(NewCursorY: Integer);
-
-    procedure DocumentCleared(Sender: TObject);
-    procedure ModifiedChanged(Sender: TObject);
-    procedure LineInserted(Sender: TTextDoc; Line: Integer); virtual;
-    procedure LineRemoved(Sender: TTextDoc; Line: Integer); virtual;
-    procedure LineChanged(Sender: TTextDoc; Line: Integer); virtual;
-
-    function  ExecKey(Key: Char; BlockMode: Boolean): Boolean;
-    procedure ExecKeys(Keys: String; BlockMode: Boolean);
-    procedure MultiDelLeft(Count: Integer);
-
-  public
-    // Keyboard command handlers
-    // Cursor movement
-    procedure AdjustCursorToRange;
-    procedure AdjustRangeToCursor;
-    procedure CursorUp;
-    procedure CursorDown;
-    procedure CursorLeft;
-    procedure CursorRight;
-    procedure CursorHome;
-    procedure CursorEnd;
-    procedure CursorDocBegin;
-    procedure CursorDocEnd;
-    procedure CursorPageUp;
-    procedure CursorPageDown;
-
-    // Misc
-    procedure ToggleOverwriteMode;
-    procedure EditDelLeft;
-    procedure EditDelRight;
-    procedure EditDelLine;
-    procedure EditUndo;
-    procedure EditRedo;
-    procedure ClipboardCut;
-    procedure ClipboardCopy;
-    procedure ClipboardPaste;
-
-    // Customizable keyboard handlers
-    procedure KeyReturn; virtual;
-
-  public
-    constructor Create(ADoc: TTextDoc; AWidget: ISHWidget); virtual;
-    destructor Destroy; override;
-    function  AddKeyboardAction(AMethod: TKeyboardActionProc;ASelectionAction:TSelectionAction;ADescr: String): TKeyboardActionDescr;
-    function AddKeyboardAssignment(AKeyCode: Integer; AShiftState: TShiftState;
-      AAction: TKeyboardActionDescr): TShortcut;
-    procedure AddKeyDef(AMethod: TKeyboardActionProc; ASelectionAction:TSelectionAction; ADescr: String; AKeyCode: Integer; AShiftState: TShiftState);
-
-    procedure HideCursor;
-    procedure ShowCursor;
-    procedure FocusIn;
-    procedure FocusOut;
-    procedure DrawContent(x, y, w, h: Integer);
-
-    // Return value: True=Key has been pressed, False=Key has not been processed
-    function  KeyPressed(KeyCode: LongWord; ShiftState: TShiftState): Boolean; virtual;
-
-    procedure StartSelectionChange;
-    procedure EndSelectionChange;
-
-    KeyboardActions: TCollection;
-    Shortcuts: TCollection;
-
-    shDefault, shSelected: Integer;
-
-    property Doc: TTextDoc read FDoc;
-    property CursorX: Integer read FCursorX write SetCursorX;
-    property CursorY: Integer read FCursorY write SetCursorY;
-    property Selection: TSelection read FSel write FSel;
-    property OnModifiedChange: TNotifyEvent read FOnModifiedChange write FOnModifiedChange;
-    property OnLineInsert: TEditLineEvent read FOnLineInsert write FOnLineInsert;
-    property OnLineRemove: TEditLineEvent read FOnLineRemove write FOnLineRemove;
-    property Widget: ISHWidget read FWidget;
-  end;
-
-
-
-implementation
-
-uses
-  SysUtils;
-
-
-{$INCLUDE undo.inc}
-{$INCLUDE keys.inc}
-{$INCLUDE drawing.inc}
-
-
-constructor TSelection.Create;
-begin
-  inherited Create;
-  Clear;
-end;
-
-function TSelection.IsValid: Boolean;
-begin
-  Result := StartX <> -1;
-end;
-
-function TSelection.IsEmpty: Boolean;
-begin
-  Result := (StartX = EndX) and (StartY = EndY);
-end;
-
-function TSelection.OStartX: Integer;
-begin
-  if (StartY > EndY) or ((StartY = EndY) and (StartX > EndX)) then
-    Result := EndX
-  else
-    Result := StartX;
-end;
-
-function TSelection.OStartY: Integer;
-begin
-  if (StartY > EndY) or ((StartY = EndY) and (StartX > EndX)) then
-    Result := EndY
-  else
-    Result := StartY;
-end;
-
-function TSelection.OEndX: Integer;
-begin
-  if (StartY > EndY) or ((StartY = EndY) and (StartX > EndX)) then
-    Result := StartX
-  else
-    Result := EndX;
-end;
-
-function TSelection.OEndY: Integer;
-begin
-  if (StartY > EndY) or ((StartY = EndY) and (StartX > EndX)) then
-    Result := StartY
-  else
-    Result := EndY;
-end;
-
-
-
-procedure TSelection.Clear;
-begin
-  StartX := -1;
-  StartY := -1;
-  EndX := -1;
-  EndY := -1;
-end;
-
-
-constructor TSHTextEdit.Create(ADoc: TTextDoc; AWidget: ISHWidget);
-var
-  i: Integer;
-begin
-  ASSERT(Assigned(ADoc) and Assigned(AWidget));
-
-  FDoc := ADoc;
-
-  ViewInfo := TViewInfo(FDoc.ViewInfos.Add);
-  ViewInfo.OnLineInsert := @LineInserted;
-  ViewInfo.OnLineRemove := @LineRemoved;
-  ViewInfo.OnLineChange := @LineChanged;
-  ViewInfo.OnModifiedChange := @ModifiedChanged;
-  ViewInfo.OnClearDocument := @DocumentCleared;
-
-  FWidget := AWidget;
-
-  FSel := TSelection.Create;
-
-  KeyboardActions := TCollection.Create(TKeyboardActionDescr);
-  Shortcuts := TCollection.Create(TShortcut);
-
-  Widget.LineCount := FDoc.LineCount;
-  Widget.LineWidth := FDoc.LineWidth;
-  CursorX:=0;
-  CursorY:=0;
-end;
-
-destructor TSHTextEdit.Destroy;
-var
-  buf, prev: TUndoInfo;
-begin
-  ViewInfo.Free;
-  FDoc.Release;
-  KeyboardActions.Free;
-  Shortcuts.Free;
-  FSel.Free;
-
-  buf := LastUndoInfo;
-  while Assigned(buf) do begin
-    prev := buf.prev;
-    buf.Free;
-    buf := prev;
-  end;
-
-  buf := LastRedoInfo;
-  while Assigned(buf) do begin
-    prev := buf.prev;
-    buf.Free;
-    buf := prev;
-  end;
-
-  inherited Destroy;
-end;
-
-procedure TSHTextEdit.DocumentCleared(Sender: TObject);
-begin
-  FCursorX := 0;
-  FCursorY := 0;
-  FSel.Clear;
-  AdjustRangeToCursor;
-  Widget.ClearRect(0, 0, Widget.PageWidth, Widget.PageHeight);
-end;
-
-procedure TSHTextEdit.ModifiedChanged(Sender: TObject);
-begin
-  if Assigned(OnModifiedChange) then
-    OnModifiedChange(Self);
-end;
-
-procedure TSHTextEdit.FocusIn;
-begin
-  CursorVisible := 0;
-  ShowCursor;
-end;
-
-procedure TSHTextEdit.FocusOut;
-begin
-  HideCursor;
-end;
-
-
-procedure TSHTextEdit.SetCursorX(NewCursorX: Integer);
-begin
-  HideCursor;
-  if NewCursorX >= 0 then
-    FCursorX := NewCursorX
-  else
-    FCursorX := 0;
-  if FCursorX > FDoc.LineWidth then
-    Widget.LineWidth := FCursorX + 4
-  else
-    Widget.LineWidth := FDoc.LineWidth + 4;
-  ShowCursor;
-  AdjustRangeToCursor;
-end;
-
-procedure TSHTextEdit.SetCursorY(NewCursorY: Integer);
-begin
-  HideCursor;
-  if NewCursorY >= 0 then
-    FCursorY := NewCursorY
-  else
-    FCursorY := 0;
-  ShowCursor;
-  AdjustRangeToCursor;
-end;
-
-procedure TSHTextEdit.LineInserted(Sender: TTextDoc; Line: Integer);
-begin
-  Widget.LineCount := FDoc.LineCount;
-  if FCursorX > FDoc.LineWidth then
-    Widget.LineWidth := FCursorX + 4
-  else
-    Widget.LineWidth := FDoc.LineWidth + 4;
-  if Assigned(FOnLineInsert) then
-    FOnLineInsert(Self, Line);
-  ChangeInLine(Line);
-end;
-
-procedure TSHTextEdit.LineRemoved(Sender: TTextDoc; Line: Integer);
-begin
-  Widget.LineCount := FDoc.LineCount;
-  if FCursorX > FDoc.LineWidth then
-    Widget.LineWidth := FCursorX + 4
-  else
-    Widget.LineWidth := FDoc.LineWidth + 4;
-  if Assigned(FOnLineRemove) then
-    FOnLineRemove(Self, Line);
-  ChangeInLine(Line);
-end;
-
-procedure TSHTextEdit.LineChanged(Sender: TTextDoc; Line: Integer);
-begin
-  if FCursorX > FDoc.LineWidth then
-    Widget.LineWidth := FCursorX + 4
-  else
-    Widget.LineWidth := FDoc.LineWidth + 4;
-  ChangeInLine(Line);
-end;
-
-procedure TSHTextEdit.StartSelectionChange;
-begin
-  HideCursor;
-
-  LastCursorX := FCursorX;
-  LastCursorY := FCursorY;
-  OldSelValid := FSel.IsValid;
-  if OldSelValid then begin
-    OldSelStartX := FSel.OStartX;
-    OldSelStartY := FSel.OStartY;
-    OldSelEndX := FSel.OEndX;
-    OldSelEndY := FSel.OEndY;
-  end;
-end;
-
-procedure TSHTextEdit.EndSelectionChange;
-
-  procedure RedrawArea(x1, y1, x2, y2: Integer);
-  begin
-    //WriteLn('Redraw: ', x1, '/', y1, ' - ', x2, '/', y2);
-    if y1 = y2 then
-      FWidget.InvalidateRect(x1, y1, (x2 - x1) + 1, (y2 - y1) + 1)
-    else begin
-      FWidget.InvalidateRect(x1, y1, FWidget.PageWidth + FWidget.HorzPos, 1);
-      if y1 < y2 - 1 then
-        FWidget.InvalidateRect(0, y1 + 1, FWidget.PageWidth + FWidget.HorzPos, (y2 - y1) - 1);
-      FWidget.InvalidateRect(0, y2, x2, 1);
-    end;
-  end;
-
-begin
-//WriteLn('=> TSHTextEdit.EndSelectionChange');
-  if not OldSelValid then begin
-    if FSel.IsValid then
-      RedrawArea(FSel.OStartX, FSel.OStartY, FSel.OEndX, FSel.OEndY);
-  end else begin
-    //WriteLn('Old selection: ', OldSelStartX, '/', OldSelStartY, ' - ', OldSelEndX, '/', OldSelEndY);
-    if not FSel.IsValid then begin
-      //WriteLn('No new selection');
-      RedrawArea(OldSelStartX, OldSelStartY, OldSelEndX, OldSelEndY);
-    end else begin
-      //WriteLn('New selection: ', FSel.OStartX, '/', FSel.OStartY, ' - ', FSel.OEndX, '/', FSel.OEndY);
-      // Do OldSel and FSel intersect?
-      if (OldSelEndY < FSel.OStartY) or (OldSelStartY > FSel.OEndY) or
-         ((OldSelEndY = FSel.OStartY) and (OldSelEndX <= FSel.OStartX)) or
-         ((OldSelStartY = FSel.OEndY) and (OldSelStartX >= FSel.OEndX)) then
-      begin
-        RedrawArea(OldSelStartX, OldSelStartY, OldSelEndX, OldSelEndY);
-        RedrawArea(FSel.OStartX, FSel.OStartY, FSel.OEndX, FSel.OEndY);
-      end else begin
-        // Intersection => determine smallest possible area(s) to redraw
-        // 1. Check if the start position has changed
-        if (OldSelStartX <> FSel.OStartX) or (OldSelStartY <> FSel.OStartY) then
-          if (OldSelStartY < FSel.OStartY) or ((OldSelStartY = FSel.OStartY) and
-             (OldSelStartX < FSel.OStartX)) then
-            RedrawArea(OldSelStartX, OldSelStartY, FSel.OStartX, FSel.OStartY)
-          else
-            RedrawArea(FSel.OStartX, FSel.OStartY, OldSelStartX, OldSelStartY);
-          // 2. Check if end position has changed
-          if (OldSelEndX <> FSel.OEndX) or (OldSelEndY <> FSel.OEndY) then
-            if (OldSelEndY < FSel.OEndY) or ((OldSelEndY = FSel.OEndY) and
-               (OldSelEndX < FSel.OEndX)) then
-              RedrawArea(OldSelEndX, OldSelEndY, FSel.OEndX, FSel.OEndY)
-            else
-              RedrawArea(FSel.OEndX, FSel.OEndY, OldSelEndX, OldSelEndY);
-      end;
-    end;
-  end;
-  ShowCursor;
-end;
-
-
-end.

+ 0 - 135
fcl/shedit/undo.inc

@@ -1,135 +0,0 @@
-{
-
-    "SHEdit" - Text editor with syntax highlighting
-    Copyright (C) 1999-2000 by Sebastian Guenther ([email protected])
-
-    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.
-}
-
-
-// TSHTextEdit: Undo/Redo support
-
-
-function TUndoInfo.Merge(AEdit: TSHTextEdit; AInfo: TUndoInfo): Boolean;
-begin
-  Result := False;
-end;
-
-
-constructor TUndoEdit.Create;
-begin
-  inherited Create;
-  NumOfChars := 1;
-end;
-
-constructor TUndoEdit.Create(ANumOfChars: Integer);
-begin
-  inherited Create;
-  NumOfChars := ANumOfChars;
-end;
-
-function TUndoEdit.Merge(AEdit: TSHTextEdit; AInfo: TUndoInfo): Boolean;
-begin
-//  if (CursorX <> AEdit.CursorX - TUndoEdit(AInfo).NumOfChars) or
-//     (CursorY <> AEdit.CursorY) then exit(False);
-  Inc(NumOfChars, TUndoEdit(AInfo).NumOfChars);
-  if AEdit.CursorY = CursorY + 1 then begin
-    CursorX := 0;
-    Inc(CursorY);
-  end else
-    Inc(CursorX, TUndoEdit(AInfo).NumOfChars);
-  Result := True;
-end;
-
-procedure TUndoEdit.DoUndo(AEdit: TSHTextEdit);
-begin
-  AEdit.FCursorX := CursorX;
-  AEdit.FCursorY := CursorY;
-  AEdit.MultiDelLeft(NumOfChars);
-end;
-
-
-constructor TUndoDelLeft.Create(const ADeletedString: String);
-begin
-  inherited Create;
-  DeletedString := ADeletedString;
-end;
-
-function TUndoDelLeft.Merge(AEdit: TSHTextEdit; AInfo: TUndoInfo): Boolean;
-var
-  l: Integer;
-begin
-  if TUndoDelLeft(AInfo).
-    DeletedString[Length(TUndoDelLeft(AInfo).DeletedString)] = #13 then
-    exit(False);
-
-  l := Length(TUndoDelLeft(AInfo).DeletedString);
-  if CursorY <> AEdit.CursorY then exit(False);
-  if CursorX = AEdit.CursorX + l then begin
-    DeletedString := TUndoDelLeft(AInfo).DeletedString + DeletedString;
-    Dec(CursorX, l);
-  end else if CursorX = AEdit.CursorX then
-    DeletedString := DeletedString + TUndoDelLeft(AInfo).DeletedString
-  else
-    exit(False);
-  Result := True;
-end;
-
-procedure TUndoDelLeft.DoUndo(AEdit: TSHTextEdit);
-begin
-  AEdit.FCursorX := CursorX;
-  AEdit.FCursorY := CursorY;
-  AEdit.ExecKeys(DeletedString, False);
-end;
-
-
-procedure TUndoDelRight.DoUndo(AEdit: TSHTextEdit);
-var
-  OldX, OldY: Integer;
-begin
-  OldX := CursorX;
-  OldY := CursorY;
-  AEdit.FCursorX := CursorX;
-  AEdit.FCursorY := CursorY;
-  AEdit.ExecKeys(DeletedString, False);
-  AEdit.FCursorX := OldX;
-  AEdit.FCursorY := OldY;
-end;
-
-
-
-procedure TSHTextEdit.AddUndoInfo(AInfo: TUndoInfo; CanMerge: Boolean);
-var
-  ok: Boolean;
-  info: TUndoInfo;
-begin
-  ok := False;
-  info := LastUndoInfo;
-  if CanMerge and Assigned(info) and (info.ClassType = AInfo.ClassType) then begin
-    if info.Merge(Self, AInfo) then begin
-      AInfo.Free;
-      AInfo := info;
-      ok := True;
-    end;
-  end;
-
-  if not ok then begin
-    if LastUndoInfo = nil then
-      LastUndoInfo := AInfo
-    else begin
-      AInfo.Prev := LastUndoInfo;
-      LastUndoInfo.Next := AInfo;
-      LastUndoInfo := AInfo;
-    end;
-
-    AInfo.CursorX := FCursorX;
-    AInfo.CursorY := FCursorY;
-  end;
-end;
-
-

+ 0 - 36
fcl/template/classes.pp

@@ -1,36 +0,0 @@
-{
-    This file is part of the Free Component Library (FCL)
-    Copyright (c) 1999-2000 by Michael Van Canneyt and Florian Klaempfl
-
-    Classes unit for win32
-
-    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}
-
-{ determine the type of the resource/form file }
-{$define Win16Res}
-
-unit Classes;
-
-interface
-
-uses
-  strings,
-  sysutils;
-
-{$i classesh.inc}
-
-implementation
-
-{ OS - independent class implementations are in /inc directory. }
-{$i classes.inc}
-
-end.

+ 0 - 0
fcl/template/footer


+ 0 - 13
fcl/template/header

@@ -1,13 +0,0 @@
-{
-    $Id: header,v 1.1 2000/07/13 06:33:45 michael Exp $
-    This file is part of the Free Component Library (FCL)
-    Copyright (c) 1999-2000 by 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.
-
- **********************************************************************}

+ 0 - 21
fcl/template/template.pp

@@ -1,21 +0,0 @@
-{
-    This file is part of the Free Component Library (FCL)
-    Copyright (c) 1999-2000 by xxxx
-    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 template;
-
-  interface
-
-  implementation
-
-end.

+ 0 - 94
fcl/template/thread.inc

@@ -1,94 +0,0 @@
-{
-    This file is part of the Free Component Library (FCL)
-    Copyright (c) 1999-2000 by 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.
-
- **********************************************************************}
-{****************************************************************************}
-{*                             TThread                                      *}
-{****************************************************************************}
-
-
-procedure TThread.CallOnTerminate;
-
-begin
-end;
-
-
-function TThread.GetPriority: TThreadPriority;
-
-begin
-  GetPriority:=tpNormal;
-end;
-
-
-procedure TThread.SetPriority(Value: TThreadPriority);
-
-begin
-end;
-
-
-procedure TThread.SetSuspended(Value: Boolean);
-
-begin
-end;
-
-
-procedure TThread.DoTerminate;
-
-begin
-end;
-
-
-procedure TThread.Synchronize(Method: TThreadMethod);
-
-begin
-end;
-
-
-constructor TThread.Create(CreateSuspended: Boolean);
-
-begin
-  { Should set the following variable to TRUE before }
-  { creating the new thread:                         }
-  IsMultiThread := TRUE;
-end;
-
-
-destructor TThread.Destroy;
-
-begin
-end;
-
-
-procedure TThread.Resume;
-
-begin
-end;
-
-
-procedure TThread.Suspend;
-
-begin
-end;
-
-
-procedure TThread.Terminate;
-
-begin
-end;
-
-
-function TThread.WaitFor: Integer;
-
-begin
-  WaitFor:=0;
-end;
-
-

+ 0 - 8
fcl/tests/simple.xml

@@ -1,8 +0,0 @@
-<?xml version = '1.0' encoding='UTF-8' ?>
-<!-- This is a comment -->
-<TAG>
-  <SUBTAG value="TestValue"/>
-  Just a test! This &lt; was an entity reference.
-  <EMPTYTAG/>
-  <![CDATA[A CDATA section!]]>
-</TAG>

+ 0 - 20
fcl/xml/fpmake.pp

@@ -1,20 +0,0 @@
-{$mode objfpc}
-{$H+}
-program fpmake;
-
-uses fpmkunit;
-
-Var
-  T : TTarget;
-   
-begin
-  ChangeDir('..');
-  With Installer do 
-    begin
-    {$i ../fclmake.inc}
-    {$i fpmake.inc}
-    EndPackage;
-    Run;
-    end;
-end.
-

+ 0 - 0
fcl/Makefile → packages/fcl-base/Makefile


+ 1 - 11
fcl/Makefile.fpc → packages/fcl-base/Makefile.fpc

@@ -27,16 +27,6 @@ units=adler gzcrc gzio infblock infcodes inffast inftrees infutil\
       zuncompr zutil pthreads streamio blowfish testutils fpcunit
       zuncompr zutil pthreads streamio blowfish testutils fpcunit
 
 
 [target]
 [target]
-dirs=xml image db shedit passrc net fpcunit
-dirs_freebsd=web
-dirs_darwin=web
-dirs_solaris=web
-dirs_netbsd=web
-dirs_openbsd=web
-dirs_linux=web
-dirs_win32=web
-dirs_win64=web
-dirs_wince=web
 # Leave xmlreg and registry last, they require xml.
 # Leave xmlreg and registry last, they require xml.
 units=contnrs inifiles ezcgi pipes rtfpars idea base64 gettext \
 units=contnrs inifiles ezcgi pipes rtfpars idea base64 gettext \
       iostream zstream cachecls avl_tree htmldefs testutils fpcunit \
       iostream zstream cachecls avl_tree htmldefs testutils fpcunit \
@@ -80,7 +70,7 @@ sourcedir=$(OS_TARGET) inc
 fpcpackage=y
 fpcpackage=y
 
 
 [default]
 [default]
-fpcdir=..
+fpcdir=../..
 
 
 [rules]
 [rules]
 # xmlreg needs the XML units, XML units depend on avl_tree
 # xmlreg needs the XML units, XML units depend on avl_tree

+ 0 - 0
fcl/fpmake.pp → packages/fcl-base/fpmake.pp


+ 0 - 0
fcl/amiga/classes.pp → packages/fcl-base/src/amiga/classes.pp


+ 0 - 0
fcl/amiga/eventlog.inc → packages/fcl-base/src/amiga/eventlog.inc


+ 0 - 0
fcl/amiga/pipes.inc → packages/fcl-base/src/amiga/pipes.inc


+ 0 - 0
fcl/amiga/thread.inc → packages/fcl-base/src/amiga/thread.inc


+ 0 - 0
fcl/beos/classes.pp → packages/fcl-base/src/beos/classes.pp


+ 0 - 0
fcl/beos/eventlog.inc → packages/fcl-base/src/beos/eventlog.inc


+ 0 - 0
fcl/beos/pipes.inc → packages/fcl-base/src/beos/pipes.inc


+ 0 - 0
fcl/beos/thread.inc → packages/fcl-base/src/beos/thread.inc


+ 0 - 0
fcl/go32v2/custapp.inc → packages/fcl-base/src/go32v2/custapp.inc


+ 0 - 0
fcl/go32v2/eventlog.inc → packages/fcl-base/src/go32v2/eventlog.inc


+ 0 - 0
fcl/go32v2/pipes.inc → packages/fcl-base/src/go32v2/pipes.inc


+ 0 - 0
fcl/inc/DUnitCompatibleInterface.inc → packages/fcl-base/src/inc/DUnitCompatibleInterface.inc


+ 0 - 0
fcl/inc/avl_tree.pp → packages/fcl-base/src/inc/avl_tree.pp


+ 0 - 0
fcl/inc/base64.pp → packages/fcl-base/src/inc/base64.pp


+ 0 - 0
fcl/inc/blowfish.pp → packages/fcl-base/src/inc/blowfish.pp


+ 0 - 0
fcl/inc/bufstream.pp → packages/fcl-base/src/inc/bufstream.pp


+ 0 - 0
fcl/inc/cachecls.pp → packages/fcl-base/src/inc/cachecls.pp


+ 0 - 0
fcl/inc/cgiapp.pp → packages/fcl-base/src/inc/cgiapp.pp


+ 0 - 0
fcl/inc/contnrs.pp → packages/fcl-base/src/inc/contnrs.pp


+ 0 - 0
fcl/inc/custapp.pp → packages/fcl-base/src/inc/custapp.pp


+ 0 - 0
fcl/inc/daemonapp.pp → packages/fcl-base/src/inc/daemonapp.pp


+ 0 - 0
fcl/inc/dbugintf.pp → packages/fcl-base/src/inc/dbugintf.pp


+ 0 - 0
fcl/inc/dbugmsg.pp → packages/fcl-base/src/inc/dbugmsg.pp


+ 0 - 0
fcl/inc/eventlog.pp → packages/fcl-base/src/inc/eventlog.pp


+ 0 - 0
fcl/inc/ezcgi.pp → packages/fcl-base/src/inc/ezcgi.pp


+ 0 - 0
fcl/inc/felog.inc → packages/fcl-base/src/inc/felog.inc


+ 0 - 0
fcl/inc/fpasync.pp → packages/fcl-base/src/inc/fpasync.pp


+ 0 - 0
fcl/inc/fpcunit.pp → packages/fcl-base/src/inc/fpcunit.pp


+ 0 - 0
fcl/inc/fpmake.inc → packages/fcl-base/src/inc/fpmake.inc


+ 0 - 0
fcl/fpcunit/fpmake.pp → packages/fcl-base/src/inc/fpmake.pp


+ 0 - 0
fcl/inc/gettext.pp → packages/fcl-base/src/inc/gettext.pp


+ 0 - 0
fcl/inc/htmldefs.pp → packages/fcl-base/src/inc/htmldefs.pp


+ 0 - 0
fcl/inc/idea.pp → packages/fcl-base/src/inc/idea.pp


+ 0 - 0
fcl/inc/inicol.pp → packages/fcl-base/src/inc/inicol.pp


+ 0 - 0
fcl/inc/inifiles.pp → packages/fcl-base/src/inc/inifiles.pp


+ 0 - 0
fcl/inc/iostream.pp → packages/fcl-base/src/inc/iostream.pp


+ 0 - 0
fcl/inc/libtar.pas → packages/fcl-base/src/inc/libtar.pas


+ 0 - 0
fcl/inc/pipes.pp → packages/fcl-base/src/inc/pipes.pp


+ 0 - 0
fcl/inc/pooledmm.pp → packages/fcl-base/src/inc/pooledmm.pp


+ 0 - 0
fcl/inc/process.pp → packages/fcl-base/src/inc/process.pp


+ 0 - 0
fcl/inc/process.txt → packages/fcl-base/src/inc/process.txt


+ 0 - 0
fcl/inc/regdef.inc → packages/fcl-base/src/inc/regdef.inc


+ 0 - 0
fcl/inc/regini.inc → packages/fcl-base/src/inc/regini.inc


+ 0 - 0
fcl/inc/registry.pp → packages/fcl-base/src/inc/registry.pp


+ 0 - 0
fcl/inc/resolve.pp → packages/fcl-base/src/inc/resolve.pp


+ 0 - 0
fcl/inc/rtfdata.inc → packages/fcl-base/src/inc/rtfdata.inc


+ 0 - 0
fcl/inc/rtfpars.pp → packages/fcl-base/src/inc/rtfpars.pp


+ 0 - 0
fcl/inc/rttiutils.pp → packages/fcl-base/src/inc/rttiutils.pp


+ 0 - 0
fcl/inc/simpleipc.pp → packages/fcl-base/src/inc/simpleipc.pp


+ 0 - 0
fcl/inc/ssockets.pp → packages/fcl-base/src/inc/ssockets.pp


+ 0 - 0
fcl/inc/streamcoll.pp → packages/fcl-base/src/inc/streamcoll.pp


+ 0 - 0
fcl/inc/streamex.pp → packages/fcl-base/src/inc/streamex.pp


+ 0 - 0
fcl/inc/streamio.pp → packages/fcl-base/src/inc/streamio.pp


+ 0 - 0
fcl/inc/syncobjs.pp → packages/fcl-base/src/inc/syncobjs.pp


+ 0 - 0
fcl/inc/testutils.pp → packages/fcl-base/src/inc/testutils.pp


+ 0 - 0
fcl/inc/wformat.pp → packages/fcl-base/src/inc/wformat.pp


+ 0 - 0
fcl/inc/whtml.pp → packages/fcl-base/src/inc/whtml.pp


+ 0 - 0
fcl/inc/wtex.pp → packages/fcl-base/src/inc/wtex.pp


+ 0 - 0
fcl/inc/xmlreg.pp → packages/fcl-base/src/inc/xmlreg.pp


+ 0 - 0
fcl/inc/xregreg.inc → packages/fcl-base/src/inc/xregreg.inc


+ 0 - 0
fcl/inc/zipper.pp → packages/fcl-base/src/inc/zipper.pp


+ 0 - 0
fcl/inc/zstream.pp → packages/fcl-base/src/inc/zstream.pp


+ 0 - 0
fcl/morphos/eventlog.inc → packages/fcl-base/src/morphos/eventlog.inc


+ 0 - 0
fcl/morphos/pipes.inc → packages/fcl-base/src/morphos/pipes.inc


+ 0 - 0
fcl/netware/custapp.inc → packages/fcl-base/src/netware/custapp.inc


+ 0 - 0
fcl/netware/eventlog.inc → packages/fcl-base/src/netware/eventlog.inc


+ 0 - 0
fcl/netware/pipes.inc → packages/fcl-base/src/netware/pipes.inc


+ 0 - 0
fcl/netware/resolve.inc → packages/fcl-base/src/netware/resolve.inc


+ 0 - 0
fcl/netwlibc/custapp.inc → packages/fcl-base/src/netwlibc/custapp.inc


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